You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2012/01/17 23:35:43 UTC

svn commit: r1232617 - in /archiva/trunk/archiva-modules/archiva-web: archiva-web-common/src/main/resources/org/apache/archiva/i18n/ archiva-webapp-js/src/main/webapp/js/archiva/ archiva-webapp-js/src/main/webapp/js/archiva/templates/

Author: olamy
Date: Tue Jan 17 22:35:42 2012
New Revision: 1232617

URL: http://svn.apache.org/viewvc?rev=1232617&view=rev
Log:
display warning message when adding a repository concerns an existing directory location

Modified:
    archiva/trunk/archiva-modules/archiva-web/archiva-web-common/src/main/resources/org/apache/archiva/i18n/default.properties
    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js
    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-web-common/src/main/resources/org/apache/archiva/i18n/default.properties
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-web-common/src/main/resources/org/apache/archiva/i18n/default.properties?rev=1232617&r1=1232616&r2=1232617&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-web-common/src/main/resources/org/apache/archiva/i18n/default.properties (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-web-common/src/main/resources/org/apache/archiva/i18n/default.properties Tue Jan 17 22:35:42 2012
@@ -23,9 +23,13 @@
 #default common
 id=id
 warning.not.undone.operation=WARNING: This operation can not be undone.
+
 managedrepository.delete.content=Delete Content too ?
 
 # managed repositories screen
 managedrepository.delete.confirm=Delete Managed Repository
 managedrepository.delete.warning.message=Are you sure you want to delete the following managed repository?
-managedrepository.deleted=Managed Repository " {0} " deleted.
\ No newline at end of file
+managedrepository.deleted=Managed Repository " {0} " deleted.
+managedrepository.location.already.exists=WARNING: Repository location already exists.
+managedrepository.location.already.exists.warning.message=Are you sure you want to use this directory
+managedrepository.add.title=Add Managed Repository
\ No newline at end of file

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js?rev=1232617&r1=1232616&r2=1232617&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js Tue Jan 17 22:35:42 2012
@@ -74,6 +74,7 @@ $(function() {
     this.managedRepositoriesViewModel = managedRepositoriesViewModel;
     this.update = update;
     var self = this;
+
     save=function(){
       var valid = $("#main-content #managed-repository-edit-form").valid();
       if (valid==false) {
@@ -85,33 +86,11 @@ $(function() {
         $.ajax("restServices/archivaServices/managedRepositoriesService/updateManagedRepository",
           {
             type: "POST",
+            data: "{\"managedRepository\": " + ko.toJSON(this.managedRepository)+"}",
             contentType: 'application/json',
-            data: "{\"managedRepository\": " +  ko.toJSON(this.managedRepository)+"}",
-            dataType: 'json',
-              success: function(data) {
-                displaySuccessMessage($.i18n.prop('managedrepository.updated'));
-                activateManagedRepositoriesGridTab();
-              },
-              error: function(data) {
-                var res = $.parseJSON(data.responseText);
-                displayRestError(res);
-              }
-          }
-        );
-      } else {
-        $.log("add managedRepo");
-
-        $.ajax("restServices/archivaServices/managedRepositoriesService/addManagedRepository",
-          {
-            type: "POST",
-            contentType: 'application/json',
-            data: "{\"managedRepository\": " + ko.toJSON(self.managedRepository)+"}",
             dataType: 'json',
             success: function(data) {
-              //var repo = mapManagedRepository(data);
-              //$.log("data:"+data.responseText);
-              self.managedRepositoriesViewModel.managedRepositories.push(self.managedRepository);
-              displaySuccessMessage($.i18n.prop('managedrepository.added'));
+              displaySuccessMessage($.i18n.prop('managedrepository.updated'));
               activateManagedRepositoriesGridTab();
             },
             error: function(data) {
@@ -120,9 +99,57 @@ $(function() {
             }
           }
         );
+      } else {
+        var url="restServices/archivaServices/managedRepositoriesService/fileLocationExists";
+        url+="?fileLocation="+encodeURIComponent(self.managedRepository.location());
+        $.ajax(url,
+        {
+          type: "GET",
+          dataType: 'json',
+          success: function(data) {
+            if (data){
+              openDialogConfirm(
+                  function(){addManagedRepository(self.managedRepository),function(){window.modalConfirmDialog.modal('hide')}},
+                  $.i18n.prop('ok'), $.i18n.prop('cancel'),
+                  $.i18n.prop('managedrepository.add.title'),
+                  $("#managed-repository-location-warning-tmpl").tmpl(self.managedRepository));
+            }else{
+              addManagedRepository(self.managedRepository);
+            }
+          }
+        });
+        //addManagedRepository(self.managedRepository);
       }
     }
 
+    addManagedRepository=function(managedRepository,completeCallbackFn){
+      $.log("add managedRepo");
+      var curManagedRepository=managedRepository;
+      var callbackFn = completeCallbackFn;
+      $.ajax("restServices/archivaServices/managedRepositoriesService/addManagedRepository",
+        {
+          type: "POST",
+          contentType: 'application/json',
+          data: "{\"managedRepository\": " + ko.toJSON(managedRepository)+"}",
+          dataType: 'json',
+          success: function(data) {
+            self.managedRepositoriesViewModel.managedRepositories.push(curManagedRepository);
+            displaySuccessMessage($.i18n.prop('managedrepository.added'));
+            activateManagedRepositoriesGridTab();
+          },
+          error: function(data) {
+            var res = $.parseJSON(data.responseText);
+            displayRestError(res);
+          },
+          complete:function(data){
+            if(callbackFn){
+              callbackFn();
+            }
+          }
+        }
+      );
+    }
+
     displayGrid=function(){
       activateManagedRepositoriesGridTab();
     }
@@ -237,7 +264,7 @@ $(function() {
                 title: "Repository type (default is Maven 2)"
               }
             ],
-            pageSize: 10
+            pageSize: 5
           });
           ko.applyBindings(managedRepositoriesViewModel,$("#main-content #managed-repositories-table").get(0));
           $("#main-content #managed-repositories-pills").pills();

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html?rev=1232617&r1=1232616&r2=1232617&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html Tue Jan 17 22:35:42 2012
@@ -216,4 +216,19 @@
         ${$.i18n.prop('managedrepository.delete.content')}: <input type="checkbox" id="managedrepository-deletecontent">
     </div>
   </div>
+</script>
+<script id="managed-repository-location-warning-tmpl" type='text/x-jquery-tmpl'>
+  <div>
+    <a class="close" href="#">&#215;</a>
+    <div class="alert-message warning">
+      <p>
+        <strong>${$.i18n.prop('managedrepository.location.already.exists')}</strong>
+      </p>
+    </div>
+    <div>
+      <span><strong>${$.i18n.prop('managedrepository.location.already.exists.warning.message')}</strong>.</span>
+      <div>${$.i18n.prop('id')}: ${id()}</div>
+      <div>${$.i18n.prop('name')}: ${name()}</div>
+    </div>
+  </div>
 </script>
\ No newline at end of file