]> source.dussan.org Git - archiva.git/commitdiff
[MRM-863] Paginate Used By tab
authorOlivier Lamy <olamy@apache.org>
Thu, 18 Oct 2012 11:44:51 +0000 (11:44 +0000)
committerOlivier Lamy <olamy@apache.org>
Thu, 18 Oct 2012 11:44:51 +0000 (11:44 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1399591 13f79535-47bb-0310-9956-ffa450edef68

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

index 57590873d4a962e7704053efa2ae623579e55dcc..2d84a910db7c1ce4ad0149e426d290675cbd167c 100644 (file)
@@ -507,8 +507,8 @@ function(jquery,ui,sammy,tmpl,i18n,jqueryCookie,bootstrap,archivaSearch,jqueryVa
 
         var calculateUsedBy=function(groupId,artifactId,version){
           var dependeesContentDiv=$("#main-content" ).find("#artifact-details-used-by-content" );
-          if( $.trim(dependeesContentDiv.html()).length<1){
-            dependeesContentDiv.html(mediumSpinnerImg());
+          //if( $.trim(dependeesContentDiv.html()).length<1){
+            dependeesContentDiv.append(mediumSpinnerImg());
             var dependeesUrl="restServices/archivaServices/browseService/dependees/"+encodeURIComponent(groupId);
             dependeesUrl+="/"+encodeURIComponent(artifactId);
             dependeesUrl+="/"+encodeURIComponent(version);
@@ -521,10 +521,25 @@ function(jquery,ui,sammy,tmpl,i18n,jqueryCookie,bootstrap,archivaSearch,jqueryVa
               dataType: 'json',
               success: function(data) {
                 var artifacts=mapArtifacts(data);
-                dependeesContentDiv.html($("#dependees_tmpl").tmpl({artifacts: artifacts}));
+                //dependeesContentDiv.html($("#dependees_tmpl").tmpl({artifacts: artifacts}));
+                var gridViewModel = new ko.simpleGrid.viewModel({
+                  data: artifacts,
+                  columns: [],
+                  pageSize: 2,
+                  gridUpdateCallBack: function(){
+                    // no op
+                  }
+                });
+                $.log("artifacts:"+artifacts.length);
+                dependeesContentDiv.find("#artifact-usedby-table").attr("data-bind",
+                                         "simpleGrid: gridViewModel,simpleGridTemplate:'dependees_tmpl',pageLinksId:'usedbyPagination',data:'artifacts'");
+                ko.applyBindings({artifacts:artifacts,gridViewModel:gridViewModel},dependeesContentDiv.get(0));
+              },
+              complete: function(){
+                removeMediumSpinnerImg(("#artifact-details-used-by-content"));
               }
             });
-          }
+          //}
         };
 
         this.get('#artifact-used-by/:groupId/:artifactId/:version',function(context){
index fb0493cdc235afa3d0ee4188765d1f2f47e0f7b4..076d8ca60a97eb6c9b272c837e0235d07ffea393 100644 (file)
 
       <div id="artifact-details-download-content" class="tab-pane"></div>
 
-      <div id="artifact-details-used-by-content" class="tab-pane"></div>
+      <div id="artifact-details-used-by-content" class="tab-pane">
+          <table class="table table-striped table-bordered" id="artifact-usedby-table">
+          </table>
+          <div id="usedbyPagination"></div>
+      </div>
 
       <div id="artifact-details-mailing-list-content" class="tab-pane">
         {{if projectVersionMetadata.mailingLists && projectVersionMetadata.mailingLists.length>0}}
   <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}}
+    {{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}}
+          {{if row.scope}}
+            |&nbsp;<b>${$.i18n.prop('browse.artifact.scope')}:</b>&nbsp;${row.scope}
+          {{/if}}
+        </td>
+      </tr>
+    {{/each}}
 
   </tbody>
 </script>
 </script>
 
 <script id="dependees_tmpl" type="text/html">
+    fooo
     <ul>
-    {{each(i,artifact) artifacts}}
+    {{each(i, artifact) itemsOnCurrentPage()}}
+
       <li>
           {{var entries=artifact.crumbEntries()}}
           {{each(j,crumbEntry) entries}}