Author: olamy
Date: Fri Aug 10 21:56:24 2012
New Revision: 1371828
URL: http://svn.apache.org/viewvc?rev=1371828&view=rev
Log:
handle navigation for metatadata tab in artifact detail view
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js?rev=1371828&r1=1371827&r2=1371828&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
Fri Aug 10 21:56:24 2012
@@ -256,10 +256,10 @@ function() {
}
}
generalDisplayArtifactDetailsVersionView(groupId,artifactId,version,repositoryId,
- function(){
+
function(artifactVersionDetailViewModel){
$("#main-content
#"+tabToActivate).tab('show')
if(contentDisplayFn){
-
contentDisplayFn(groupId,artifactId,version);
+
contentDisplayFn(groupId,artifactId,version,artifactVersionDetailViewModel);
}
}
);
@@ -362,6 +362,49 @@ function() {
checkArtifactDetailContent(groupId,artifactId,version,repositoryId,"artifact-details-used-by-content-a","artifact-details-used-by-content",calculateUsedBy);
});
+ var
calculateMetadatas=function(groupId,artifactId,version,artifactVersionDetailViewModel){
+
+ var metadatasContentDiv=$("#main-content
#artifact-details-metadatas-content" );
+ var
metadatasUrl="restServices/archivaServices/browseService/metadatas/"+encodeURIComponent(groupId);
+ metadatasUrl+="/"+encodeURIComponent(artifactId);
+ metadatasUrl+="/"+encodeURIComponent(version);
+ var selectedRepo=getSelectedBrowsingRepository();
+ if (selectedRepo){
+ metadatasUrl+="?repositoryId="+encodeURIComponent(selectedRepo);
+ }
+
+ //fixe self.entries not in the scope
+
+ $.ajax(metadatasUrl, {
+ type: "GET",
+ dataType: 'json',
+ success: function(data) {
+ var entries= $.map(data,function(e,i){
+ return new MetadataEntry( e.key, e.value,false);
+ });
+ artifactVersionDetailViewModel.entries(entries);
+ }
+ });
+ }
+
+
this.get('#artifact-metadatas/:groupId/:artifactId/:version',function(context){
+
+ var repositoryId = this.params.repositoryId;
+ var groupId= this.params.groupId;
+ var artifactId= this.params.artifactId;
+ var version= this.params.version;
+
checkArtifactDetailContent(groupId,artifactId,version,repositoryId,"artifact-details-metadatas-content-a",null,calculateMetadatas);
+ });
+
+
this.get('#artifact-metadatas~:repositoryId/:groupId/:artifactId/:version',function(context){
+
+ var repositoryId = this.params.repositoryId;
+ var groupId= this.params.groupId;
+ var artifactId= this.params.artifactId;
+ var version= this.params.version;
+
checkArtifactDetailContent(groupId,artifactId,version,repositoryId,"artifact-details-metadatas-content-a",null,calculateMetadatas);
+ });
+
this.get('#browse/:groupId',function(context){
var groupId = this.params.groupId;
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js?rev=1371828&r1=1371827&r2=1371828&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/search.js
Fri Aug 10 21:56:24 2012
@@ -318,25 +318,13 @@ define("archiva.search",["jquery","i18n"
}
if
($(e.target).attr("href")=="#artifact-details-metadatas-content") {
- $.log("artifact metadata");
- var
metadatasContentDiv=mainContent.find("#artifact-details-metadatas-content" );
- var
metadatasUrl="restServices/archivaServices/browseService/metadatas/"+encodeURIComponent(groupId);
- metadatasUrl+="/"+encodeURIComponent(artifactId);
- metadatasUrl+="/"+encodeURIComponent(version);
- var selectedRepo=getSelectedBrowsingRepository();
- if (selectedRepo){
-
metadatasUrl+="?repositoryId="+encodeURIComponent(selectedRepo);
+ var location ="#artifact-metadatas";
+ if (self.repositoryId){
+ location+="~"+self.repositoryId;
}
- $.ajax(metadatasUrl, {
- type: "GET",
- dataType: 'json',
- success: function(data) {
- var entries= $.map(data,function(e,i){
- return new MetadataEntry( e.key, e.value,false);
- });
- self.entries(entries);
- }
- });
+
location+="/"+self.groupId+"/"+self.artifactId+"/"+self.version;
+
+ window.sammyArchivaApplication.setLocation(location);
return;
}
@@ -357,7 +345,7 @@ define("archiva.search",["jquery","i18n"
}
});
if(afterCallbackFn){
- afterCallbackFn();
+ afterCallbackFn(self);
}
}