]> source.dussan.org Git - archiva.git/commitdiff
[MRM-862] Paginate Dependencies Page.
authorOlivier Lamy <olamy@apache.org>
Thu, 18 Oct 2012 03:16:53 +0000 (03:16 +0000)
committerOlivier Lamy <olamy@apache.org>
Thu, 18 Oct 2012 03:16:53 +0000 (03:16 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1399507 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/knockout.simpleGrid.js
archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/templates/archiva/search.html

index 40c69f400f1fbe0deddfd40c45da35b905224653..8c0a96cf0c380a569ccf029ff44a0dc79d46687f 100644 (file)
@@ -340,6 +340,18 @@ define("archiva.search",["jquery","i18n","jquery.tmpl","choosen","knockout","kno
             dataType: 'json',
             success: function(data) {
               self.projectVersionMetadata=mapProjectVersionMetadata(data);
+
+              //pagination for dependencies
+              self.projectVersionMetadata.dependencies=ko.observableArray(self.projectVersionMetadata.dependencies?self.projectVersionMetadata.dependencies:[]);
+              self.gridViewModel = new ko.simpleGrid.viewModel({
+                data: self.projectVersionMetadata.dependencies(),
+                columns: [],
+                pageSize: 7,
+                gridUpdateCallBack: function(){
+                  // nope
+                }
+              });
+
               ko.applyBindings(self,mainContent.find("#browse_artifact_detail" ).get(0));
               ko.applyBindings(self,mainContent.find("#browse_breadcrumb" ).get(0));
               mainContent.find("#browse-autocomplete" ).hide();
index 9e1638cd2af63b91abb562ec5fd020b3ef29815a..73cff0e4712013eaaf714a16ef7e43aaa66cd5ea 100644 (file)
@@ -43,6 +43,7 @@
           };
           this.gridUpdateCallBack = configuration.gridUpdateCallBack;
           this.pageLinksUpdateCallBack = configuration.pageLinksUpdateCallBack;
+
         }
       };
 
index 980624ec48064fe9e2e486a6d74e57605ee1b2df..fb0493cdc235afa3d0ee4188765d1f2f47e0f7b4 100644 (file)
 
 
          <div id="artifact-details-dependencies-content" class="tab-pane">
-        <table class="table">
-          <tbody>
-          {{if projectVersionMetadata.dependencies && projectVersionMetadata.dependencies.length>0}}
-          {{each(i,dependency) projectVersionMetadata.dependencies}}
-            <tr>
-              <th>${dependency.artifactId}</th>
-            </tr>
-            <tr>
-              <td>
-                {{var entries=dependency.crumbEntries()}}
-                {{each(j,crumbEntry) entries}}
-                  {{if j < entries.length - 2}}
-                    <a href="#" data-bind="click: function(){displayGroup(crumbEntry.groupId)}">${crumbEntry.displayValue}</a>
-                  {{else j == entries.length - 2}}
-                    <a href="#" data-bind="click: function(){displayArtifactDetailView(crumbEntry.groupId,crumbEntry.artifactId)}">${crumbEntry.displayValue}</a>
-                  {{else j == entries.length - 1}}
-                    &nbsp;|&nbsp;<b>${$.i18n.prop('browse.artifact.version')}:</b>&nbsp;
-                     <a href="#" data-bind="click: function(){displayArtifactVersionDetailViewModel(crumbEntry.groupId,crumbEntry.artifactId,crumbEntry.version)}">${dependency.version}</a>&nbsp;
-                  {{/if}}
-                  {{if j < entries.length - 2}}
-                     &nbsp;/&nbsp;
-                  {{/if}}
-                {{/each}}
-
-                {{if dependency.scope}}
-                  |&nbsp;<b>${$.i18n.prop('browse.artifact.scope')}:</b>&nbsp;${dependency.scope}
-                {{/if}}
-              </td>
-            </tr>
-          {{/each}}
-          {{else}}
-            ${$.i18n.prop('browse.artifact.dependencies.none')}
-          {{/if}}
-          </tbody>
-        </table>
+            <table class="table table-striped table-bordered" id="artifact-dependencies-table"
+                   data-bind="simpleGrid: gridViewModel,simpleGridTemplate:'ko_dependenciesGrid',pageLinksId:'dependenciesPagination',data:'dependencies'">
+            </table>
+            <div id="dependenciesPagination"></div>
          </div>
 
       <div id="artifact-details-dependency-tree-content" class="tab-pane"></div>
       </div>
 
     </div>
+  </div>
+</script>
+
+<script id="ko_dependenciesGrid" type="text/html">
+  <tbody>
+
+
+        {{each(i, row) itemsOnCurrentPage()}}
+          <tr>
+            <th>${row.artifactId}</th>
+          </tr>
+          <tr>
+            <td>
+              {{var entries=row.crumbEntries()}}
+              {{each(j,crumbEntry) entries}}
+                {{if j < entries.length - 2}}
+                  <a href="#" data-bind="click: function(){displayGroup(crumbEntry.groupId)}">${crumbEntry.displayValue}</a>
+                {{else j == entries.length - 2}}
+                  <a href="#" data-bind="click: function(){displayArtifactDetailView(crumbEntry.groupId,crumbEntry.artifactId)}">${crumbEntry.displayValue}</a>
+                {{else j == entries.length - 1}}
+                  &nbsp;|&nbsp;<b>${$.i18n.prop('browse.artifact.version')}:</b>&nbsp;
+                   <a href="#" data-bind="click: function(){displayArtifactVersionDetailViewModel(crumbEntry.groupId,crumbEntry.artifactId,crumbEntry.version)}">${row.version}</a>&nbsp;
+                {{/if}}
+                {{if j < entries.length - 2}}
+                   &nbsp;/&nbsp;
+                {{/if}}
+              {{/each}}
+
+              {{if row.scope}}
+                |&nbsp;<b>${$.i18n.prop('browse.artifact.scope')}:</b>&nbsp;${row.scope}
+              {{/if}}
+            </td>
+          </tr>
+        {{/each}}
+
+  </tbody>
 </script>
 
 <script id="dependency_tree_tmpl" type="text/html">