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/26 23:57:48 UTC

svn commit: r1236436 - in /archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js: archiva/network-proxies.js archiva/repositories.js archiva/templates/network-proxies.html redback/user.js

Author: olamy
Date: Thu Jan 26 22:57:48 2012
New Revision: 1236436

URL: http://svn.apache.org/viewvc?rev=1236436&view=rev
Log:
[MRM-1578] REST call for add/update network proxy

Modified:
    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/network-proxies.js
    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/network-proxies.html
    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/network-proxies.js
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/network-proxies.js?rev=1236436&r1=1236435&r2=1236436&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/network-proxies.js (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/network-proxies.js Thu Jan 26 22:57:48 2012
@@ -50,7 +50,48 @@ $(function() {
     var self=this;
 
     save=function(){
+      if (!$("#main-content #network-proxy-edit-form").valid()){
+        return;
+      }
+      clearUserMessages();
+      if (update){
+        $.ajax("restServices/archivaServices/networkProxyService/updateNetworkProxy",
+          {
+            type: "POST",
+            contentType: 'application/json',
+            data: "{\"networkProxy\": " + ko.toJSON(networkProxy)+"}",
+            dataType: 'json',
+            success: function(data) {
+              displaySuccessMessage($.i18n.prop('networkproxy.updated'));
+              activateNetworkProxiesGridTab();
+            },
+            error: function(data) {
+              var res = $.parseJSON(data.responseText);
+              displayRestError(res);
+            }
+          }
+        );
+      } else {
+
+        $.ajax("restServices/archivaServices/networkProxyService/addNetworkProxy",
+          {
+            type: "POST",
+            contentType: 'application/json',
+            data: "{\"networkProxy\": " + ko.toJSON(networkProxy)+"}",
+            dataType: 'json',
+            success: function(data) {
+              self.networkProxiesViewModel.networkProxies.push(self.networkProxy);
+              displaySuccessMessage($.i18n.prop('networkproxy.added'));
+              activateNetworkProxiesGridTab();
+            },
+            error: function(data) {
+              var res = $.parseJSON(data.responseText);
+              displayRestError(res);
+            }
+          }
+        );
 
+      }
     }
 
     displayGrid=function(){
@@ -66,7 +107,12 @@ $(function() {
     this.gridViewModel = null;
 
     editNetworkProxy=function(networkProxy){
+      $.log("editNetworkProxy");
       $("#main-content #network-proxies-edit a").html($.i18n.prop("edit"));
+      var viewModel = new NetworkProxyViewModel(networkProxy,true,self);
+      ko.applyBindings(viewModel,$("#main-content #network-proxies-edit").get(0));
+      activateNetworkProxyFormValidation();
+      activateNetworkProxyEditTab();
     }
 
     removeNetworkProxy=function(networkProxy){
@@ -87,7 +133,7 @@ $(function() {
       if ($(e.target).attr("href")=="#network-proxies-edit") {
         var viewModel = new NetworkProxyViewModel(new NetworkProxy(),false,networkProxiesViewModel);
         ko.applyBindings(viewModel,$("#main-content #network-proxies-edit").get(0));
-        //activateManagedRepositoryFormValidation();
+        activateNetworkProxyFormValidation();
       }
       if ($(e.target).attr("href")=="#network-proxies-view") {
         $("#main-content #network-proxies-edit a").html($.i18n.prop("add"));
@@ -141,21 +187,26 @@ $(function() {
     );
   }
 
+  activateNetworkProxyFormValidation=function(){
+    $("#main-content #network-proxy-edit-form").validate();
+  }
+
   activateNetworkProxiesGridTab=function(){
     $("#main-content #network-proxies-view-tabs-li-edit").removeClass("active");
     $("#main-content #network-proxies-edit").removeClass("active");
-    // activate roles grid tab
+
     $("#main-content #network-proxies-view-tabs-li-grid").addClass("active");
     $("#main-content #network-proxies-view").addClass("active");
     $("#main-content #network-proxies-view-tabs-li-edit a").html($.i18n.prop("add"));
   }
 
   activateNetworkProxyEditTab=function(){
-    $("#main-content #remote-repositories-view-li").removeClass("active");
-    $("#main-content #remote-repositories-view").removeClass("active");
-    // activate role edit tab
-    $("#main-content #remote-repository-edit-li").addClass("active");
-    $("#main-content #remote-repository-edit").addClass("active");
+    $("#main-content #network-proxies-view-tabs-li-grid").removeClass("active");
+    $("#main-content #network-proxies-view").removeClass("active");
+
+    $("#main-content #network-proxies-view-tabs-li-edit").addClass("active");
+    $("#main-content #network-proxies-edit").addClass("active");
+
   }
 
   mapNetworkProxy=function(data){

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=1236436&r1=1236435&r2=1236436&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 Thu Jan 26 22:57:48 2012
@@ -431,7 +431,7 @@ $(function() {
   activateManagedRepositoriesGridTab=function(){
     $("#main-content #managed-repository-edit-li").removeClass("active");
     $("#main-content #managed-repository-edit").removeClass("active");
-    // activate roles grid tab
+
     $("#main-content #managed-repositories-view-li").addClass("active");
     $("#main-content #managed-repositories-view").addClass("active");
     $("#main-content #managed-repository-edit-li a").html($.i18n.prop("add"));
@@ -440,7 +440,7 @@ $(function() {
   activateManagedRepositoryEditTab=function(){
     $("#main-content #managed-repositories-view-li").removeClass("active");
     $("#main-content #managed-repositories-view").removeClass("active");
-    // activate role edit tab
+
     $("#main-content #managed-repository-edit-li").addClass("active");
     $("#main-content #managed-repository-edit").addClass("active");
   }
@@ -676,7 +676,7 @@ $(function() {
   activateRemoteRepositoriesGridTab=function(){
     $("#main-content #remote-repository-edit-li").removeClass("active");
     $("#main-content #remote-repository-edit").removeClass("active");
-    // activate roles grid tab
+
     $("#main-content #remote-repositories-view-li").addClass("active");
     $("#main-content #remote-repositories-view").addClass("active");
     $("#main-content #remote-repository-edit-li a").html($.i18n.prop("add"));
@@ -685,7 +685,7 @@ $(function() {
   activateRemoteRepositoryEditTab=function(){
     $("#main-content #remote-repositories-view-li").removeClass("active");
     $("#main-content #remote-repositories-view").removeClass("active");
-    // activate role edit tab
+
     $("#main-content #remote-repository-edit-li").addClass("active");
     $("#main-content #remote-repository-edit").addClass("active");
   }

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/network-proxies.html
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/network-proxies.html?rev=1236436&r1=1236435&r2=1236436&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/network-proxies.html (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/network-proxies.html Thu Jan 26 22:57:48 2012
@@ -86,21 +86,21 @@
         <div class="clearfix">
           <label for="port">${$.i18n.prop('port')}</label>
           <div class="input">
-            <input type="text" class="xlarge required" id="port" name="port" size="6"
+            <input type="text" class="xlarge required digits" id="port" name="port" size="6"
                    data-bind="value: networkProxy.port"/>
           </div>
         </div>
         <div class="clearfix">
           <label for="username">${$.i18n.prop('username')}</label>
           <div class="input">
-            <input type="text" class="xlarge required" id="username" name="username" size="50"
+            <input type="text" class="xlarge" id="username" name="username" size="50"
                    data-bind="value: networkProxy.username"/>
           </div>
         </div>
         <div class="clearfix">
           <label for="password">${$.i18n.prop('password')}</label>
           <div class="input">
-            <input type="text" class="xlarge required" id="password" name="password" size="50"
+            <input type="text" class="xlarge" id="password" name="password" size="50"
                    data-bind="value: networkProxy.password"/>
           </div>
         </div>

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js?rev=1236436&r1=1236435&r2=1236436&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js Thu Jan 26 22:57:48 2012
@@ -34,7 +34,8 @@ $(function() {
    * @param passwordChangeRequired
    * @param ownerViewModel
    */
-  User=function(username, password, confirmPassword,fullName,email,permanent,validated,timestampAccountCreation,timestampLastLogin,timestampLastPasswordChange,locked,passwordChangeRequired,ownerViewModel) {
+  User=function(username, password, confirmPassword,fullName,email,permanent,validated,timestampAccountCreation,
+                timestampLastLogin,timestampLastPasswordChange,locked,passwordChangeRequired,ownerViewModel) {
       // Potentially Editable Field.
       this.username = ko.observable(username);
       // Editable Fields.
@@ -630,7 +631,9 @@ $(function() {
    * @param data User response from redback rest api
    */
   mapUser=function(data) {
-    return new User(data.username, data.password, null,data.fullName,data.email,data.permanent,data.validated,data.timestampAccountCreation,data.timestampLastLogin,data.timestampLastPasswordChange,data.locked,data.passwordChangeRequired,self);
+    return new User(data.username, data.password, null,data.fullName,data.email,data.permanent,data.validated,
+                    data.timestampAccountCreation,data.timestampLastLogin,data.timestampLastPasswordChange,
+                    data.locked,data.passwordChangeRequired,self);
   }