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/02/09 00:56:29 UTC
svn commit: r1242183 - 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-webapp-js/src/main/webapp/js/archiva/
archiva-webapp-js/src/main/webapp/j...
Author: olamy
Date: Wed Feb 8 23:56:29 2012
New Revision: 1242183
URL: http://svn.apache.org/viewvc?rev=1242183&view=rev
Log:
[MRM-1576] rewrite proxies connector page
fix proxyConnector properties ui binding.
Removed:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/jquery-1.7.js
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/proxy-connectors.js
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/proxy-connectors.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=1242183&r1=1242182&r2=1242183&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 Wed Feb 8 23:56:29 2012
@@ -126,3 +126,16 @@ roles.management.header=Roles Management
roles.grid.tab.title=Roles
role.edit.users.list=Users List
+#proxy connector
+proxy-connector.network-proxy.id=Network Proxy
+proxy-connector.managed.repository.id=Managed Repository
+proxy-connector.remote.repository.id=Remote Repository
+proxy-connector.policies=Policies
+proxy-connector.properties=Properties
+proxy-connectors.grid.remoterepo.grid.header=Remote Repositories
+proxy-connectors.list=Proxy Connectors
+proxy-connectors.grid.tab.title=Proxy Connectors
+proxy-connectors.grid.managedrepo.grid.header=Managed Repositories
+proxy-connectors.grid.remoterepo.title=Remote Repository
+proxy-connectors.grid.managedrepo.title=Managed Repository
+
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/proxy-connectors.js
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/proxy-connectors.js?rev=1242183&r1=1242182&r2=1242183&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/proxy-connectors.js (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/proxy-connectors.js Wed Feb 8 23:56:29 2012
@@ -21,34 +21,51 @@ $(function() {
ProxyConnector=function(sourceRepoId,targetRepoId,proxyId,blackListPatterns,whiteListPatterns,policies,properties,
disabled,order){
var self=this;
- this.modified=ko.observable(false);
//private String sourceRepoId;
this.sourceRepoId=ko.observable(sourceRepoId);
- this.sourceRepoId.subscribe(function(newValue){self.modified(true)});
+ this.sourceRepoId.subscribe(function(newValue){
+ $.log("modify sourceRepo:"+newValue);
+ self.modified(true);
+ });
//private String targetRepoId;
this.targetRepoId=ko.observable(targetRepoId);
- this.targetRepoId.subscribe(function(newValue){self.modified(true)});
+ this.targetRepoId.subscribe(function(newValue){
+ $.log("modify targetRepo:"+newValue);
+ self.modified(true);
+ });
//private String proxyId;
this.proxyId=ko.observable(proxyId);
- this.proxyId.subscribe(function(newValue){self.modified(true)});
+ this.proxyId.subscribe(function(newValue){
+ $.log("modify proxyId");
+ self.modified(true);
+ });
//private List<String> blackListPatterns;
this.blackListPatterns=ko.observableArray(blackListPatterns==null?[]:blackListPatterns);
- this.blackListPatterns.subscribe(function(newValue){self.modified(true)});
+ this.blackListPatterns.subscribe(function(newValue){
+ $.log("modify blackListPatterns");
+ self.modified(true);
+ });
//private List<String> whiteListPatterns;
this.whiteListPatterns=ko.observableArray(whiteListPatterns==null?[]:whiteListPatterns);
- this.whiteListPatterns.subscribe(function(newValue){self.modified(true)});
+ this.whiteListPatterns.subscribe(function(newValue){
+ $.log("modify whiteListPatterns");
+ self.modified(true);
+ });
//private Map<String, String> policies;
this.policies=ko.observableArray(policies==null?[]:policies);
- this.policies.subscribe(function(newValue){self.modified(true)});
+ this.policies.subscribe(function(newValue){
+ $.log("modify policies");
+ self.modified(true);
+ });
//private Map<String, String> properties;
- this.properties=ko.observableArray(properties==null?[]:properties);
+ this.properties=ko.observableArray(properties==null?new Array():properties);
this.properties.subscribe(function(newValue){
$.log("properties modified");
self.modified(true);
@@ -56,14 +73,20 @@ $(function() {
//private boolean disabled = false;
this.disabled=ko.observable(disabled);
- this.disabled.subscribe(function(newValue){self.modified(true)});
+ this.disabled.subscribe(function(newValue){
+ $.log("modify disabled");
+ self.modified(true);
+ });
//private int order = 0;
this.order=ko.observable(order);
- this.order.subscribe(function(newValue){self.modified(true)});
+ this.order.subscribe(function(newValue){
+ $.log("modify order");
+ self.modified(true);
+ });
- this.modified=ko.observable(true);
- this.modified.subscribe(function(newValue){$.log("ProxyConnector modified")});
+ this.modified=ko.observable(false);
+ this.modified.subscribe(function(newValue){$.log("ProxyConnector modified:"+newValue)});
}
PolicyInformation=function(options,defaultOption,id,name){
@@ -104,7 +127,8 @@ $(function() {
this.proxyConnectorsViewModel=proxyConnectorsViewModel;
this.update=update;
this.modified=ko.observable(false);
- getSelectedPolicyOption=function(id){
+ getSelectedPolicyOption=function(id,updateVal){
+ $.log("getSelectedPolicyOption:"+id+","+updateVal);
if (!update){
// we are on add mode so use default option
var policyInformations=self.proxyConnectorsViewModel.policyInformations();
@@ -134,7 +158,14 @@ $(function() {
}
deleteProperty=function(key){
- $.log("delete property key:"+key);
+ $.log("delete property key:"+key());
+ for(i=0;i<self.proxyConnector.properties().length;i++){
+ var entry=self.proxyConnector.properties()[i];
+ if (entry.key()==key()){
+ self.proxyConnector.properties.remove(entry);
+ }
+ }
+
}
addProperty=function(){
@@ -142,8 +173,11 @@ $(function() {
var key=mainContent.find("#property-key").val();
var value=mainContent.find("#property-value").val();
$.log("add property:"+key+":"+value+",size:"+self.proxyConnector.properties().length);
- self.proxyConnector.properties().push(new Entry(key,value));
+ var oldTab = proxyConnector.properties();
+ oldTab.push(new Entry(key,value));
+ self.proxyConnector.properties(oldTab);
$.log("add property:"+key+":"+value+",size:"+self.proxyConnector.properties().length);
+ self.proxyConnector.modified(true);
}
}
@@ -251,11 +285,13 @@ $(function() {
mainContent.find("#proxy-connectors-view-tabs").on('show', function (e) {
if ($(e.target).attr("href")=="#proxy-connectors-edit") {
- var proxyConnectorViewModel=new ProxyConnectorViewModel(new ProxyConnector(),false,self);
+ var proxyConnector=new ProxyConnector();
+ var proxyConnectorViewModel=new ProxyConnectorViewModel(proxyConnector,false,self);
+ mainContent.find("#proxy-connectors-edit").html($("#proxy-connector-edit-form-tmpl").tmpl());
ko.applyBindings(proxyConnectorViewModel,mainContent.find("#proxy-connectors-edit").get(0));
}
if ($(e.target).attr("href")=="#proxy-connectors-view") {
- $("#proxy-connectors-view-tabs-a-network-proxies-grid").html($.i18n.prop("add"));
+ $("#proxy-connectors-view-tabs-a-network-proxies-grid").html($.i18n.prop("proxy-connectors.grid.tab.title"));
}
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/proxy-connectors.html
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/proxy-connectors.html?rev=1242183&r1=1242182&r2=1242183&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/proxy-connectors.html (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/proxy-connectors.html Wed Feb 8 23:56:29 2012
@@ -36,7 +36,7 @@
</table>
<div id="proxy-connectorsPagination"></div>
</div>
- <div id="proxy-connectors-edit" class="tab-pane" data-bind='template: {name:"proxy-connector-edit-form-tmpl",data: proxyConnector}'></div>
+ <div id="proxy-connectors-edit" class="tab-pane"></div>
</div>
</script>
@@ -45,7 +45,7 @@
<thead>
<tr>
<th title="${$.i18n.prop('proxy-connectors.grid.managedrepo.title')}">
- ${$.i18n.prop('proxy-connectors.grid.remoterepo.grid.header')}
+ ${$.i18n.prop('proxy-connectors.grid.managedrepo.grid.header')}
</th>
<th title="${$.i18n.prop('proxy-connectors.grid.remoterepo.title')}">
${$.i18n.prop('proxy-connectors.grid.remoterepo.grid.header')}
@@ -107,73 +107,74 @@
</script>
<script id="proxy-connector-edit-form-tmpl" type='text/x-jquery-tmpl'>
- <form id="proxy-connector-edit-form" class="form-horizontal">
- <fieldset id="remote-repository-edit-fieldset">
- <div class="control-group">
- <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.network-proxy.id')}</label>
- <div class="controls">
- <select id="proxyId"
- data-bind="options: proxyConnectorsViewModel.networkProxies, optionsText: 'id',optionsValue:'id',
- value: proxyId, optionsCaption: 'direct connection'"></select>
+
+ <form id="proxy-connector-edit-form" class="form-horizontal">
+ <fieldset id="remote-repository-edit-fieldset">
+ <div class="control-group">
+ <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.network-proxy.id')}</label>
+ <div class="controls">
+ <select id="proxyId"
+ data-bind="options: proxyConnectorsViewModel.networkProxies, optionsText: 'id',optionsValue:'id',
+ value: proxyConnector.proxyId, optionsCaption: 'direct connection'"></select>
+ </div>
</div>
- </div>
- <div class="control-group">
- <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.managed.repository.id')}</label>
- <div class="controls">
- <select id="sourceRepoId"
- data-bind="options: proxyConnectorsViewModel.managedRepositories, optionsText: 'id',optionsValue:'id',
- value: sourceRepoId"></select>
+ <div class="control-group">
+ <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.managed.repository.id')}</label>
+ <div class="controls">
+ <select id="sourceRepoId"
+ data-bind="options: proxyConnectorsViewModel.managedRepositories, optionsText: 'id',optionsValue:'id',
+ value: proxyConnector.sourceRepoId"></select>
+ </div>
</div>
- </div>
- <div class="control-group">
- <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.remote.repository.id')}</label>
- <div class="controls">
- <select id="targetRepoId"
- data-bind="options: proxyConnectorsViewModel.remoteRepositories, optionsText: 'id',optionsValue:'id',
- value: targetRepoId"></select>
+ <div class="control-group">
+ <label class="control-label" for="proxyId">${$.i18n.prop('proxy-connector.remote.repository.id')}</label>
+ <div class="controls">
+ <select id="targetRepoId"
+ data-bind="options: proxyConnectorsViewModel.remoteRepositories, optionsText: 'id',optionsValue:'id',
+ value: proxyConnector.targetRepoId"></select>
+ </div>
</div>
- </div>
- <div class="control-group span6">
- <table class="table">
- <thead>
- <th colspan="2">${$.i18n.prop('proxy-connector.policies')}</th>
- </thead>
- <tbody>
- {{each proxyConnectorsViewModel.policyInformations()}}
- {{var policyId=$value.id()}}
+ <div class="control-group span6">
+ <table class="table">
+ <thead>
+ <th colspan="2">${$.i18n.prop('proxy-connector.policies')}</th>
+ </thead>
+ <tbody data-bind="foreach: proxyConnectorsViewModel.policyInformations()">
+ <tr>
+ <td data-bind="text: name"></td>
+ <td>
+ <select id="policy-${policyId}"
+ data-bind="options: getPolicyOptions(id()),value:getSelectedPolicyOption(id())"></select>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="control-group span6">
+ <table>
+ <thead>
+ <th colspan="3" class="pull-left">${$.i18n.prop('proxy-connector.properties')}</th>
+ </thead>
<tr>
- <td>${$value.name()}</td>
- <td>
- <select id="policy-${policyId}"
- data-bind="options: getPolicyOptions(policyId),value:getSelectedPolicyOption(policyId)"></select>
- </td>
+ <td><input type="text" id="property-key"/></td>
+ <td><input type="text" id="property-value"/></td>
+ <td><a href="#" data-bind="click: function(){ addProperty() }">${$.i18n.prop('add')}</a></td>
</tr>
- {{/each}}
- </tbody>
- </table>
- </div>
- <div class="control-group span6">
- <table class="table">
- <thead>
- <th colspan="3">${$.i18n.prop('proxy-connector.properties')}</th>
- </thead>
- <tbody>
- {{each properties()}}
- {{var key=$value.key()}}
+ </table>
+
+ <table class="table">
+
+ <tbody data-bind="foreach: proxyConnector.properties">
<tr>
- <td>${key}</td>
- <td>${$value.value()}</td>
- <td><a href="#" data-bind="click: function(){ deleteProperty(key)}">${$.i18n.prop('delete')}</a></td>
+ <td data-bind="text: key"></td>
+ <td data-bind="text: value"></td>
+ <td><a href="#" data-bind="click: function(){deleteProperty(key)}">${$.i18n.prop('delete')}</a></td>
</tr>
- {{/each}}
- <tr>
- <td><input type="text" id="property-key"/></td>
- <td><input type="text" id="property-value"/></td>
- <td><a href="#" data-bind="click: function(){ addProperty() }">${$.i18n.prop('add')}</a></td>
- </tr>
- </tbody>
- </table>
- </div>
- </fieldset>
- </form>
+ </tbody>
+ </table>
+
+ </div>
+ </fieldset>
+ </form>
+
</script>