Author: olamy
Date: Wed Jan 18 13:43:23 2012
New Revision: 1232878
URL: http://svn.apache.org/viewvc?rev=1232878&view=rev
Log:
[MRM-1574] add select box for defining repository type.
Modified:
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-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=1232878&r1=1232877&r2=1232878&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
Wed Jan 18 13:43:23 2012
@@ -18,6 +18,19 @@
*/
$(function() {
+ // FIXME this must be dynamic if we do a plugin mechanism with dynamic
repositories types
+ // FIXME i18n
+
+ ManagedRepositoryType=function(type,label){
+ this.type=type;
+ this.label=label;
+ }
+
+ window.managedRepositoryTypes = [
+ new ManagedRepositoryType("default","Maven 2.x Repository"),
+ new ManagedRepositoryType("legacy", "Maven 1.x Repository")
+ ];
+
ManagedRepository=function(id,name,layout,indexDirectory,location,snapshots,releases,blockRedeployments,cronExpression,
scanned,daysOlder,retentionCount,deleteReleasedSnapshots,stageRepoNeeded){
@@ -66,6 +79,16 @@ $(function() {
//private boolean blockRedeployments = false;
this.blockRedeployments=ko.observable(blockRedeployments);
+ var self=this;
+
+ this.getTypeLabel=function(){
+ for(i=0;i<window.managedRepositoryTypes.length;i++){
+ if (window.managedRepositoryTypes[i].type==self.layout()){
+ return window.managedRepositoryTypes[i].label;
+ }
+ }
+ return "no label";
+ }
}
@@ -73,8 +96,20 @@ $(function() {
this.managedRepository=managedRepository;
this.managedRepositoriesViewModel = managedRepositoriesViewModel;
this.update = update;
+
var self = this;
+ this.availableLayouts = window.managedRepositoryTypes;
+
+ /*getAvailableLayouts=function(){
+ var layouts = new Array(window.managedRepositoryTypes.length);
+ for(var i=0;i<window.managedRepositoryTypes.length;i++){
+ layouts[i]=window.managedRepositoryTypes[i].label;
+ }
+ $.log("layouts.length:"+layouts.length)
+ return layouts;
+ }*/
+
save=function(){
var valid = $("#main-content #managed-repository-edit-form").valid();
if (valid==false) {
@@ -258,10 +293,10 @@ $(function() {
rowText: "name"
},
{
- headerText: $.i18n.prop('type'),
- rowText: "layout",
- // FIXME i18n
- title: "Repository type (default is Maven 2)"
+ headerText: $.i18n.prop('type'),
+ rowText: "getTypeLabel",
+ // FIXME i18n
+ title: "Repository type (default is Maven 2)"
}
],
pageSize: 5
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=1232878&r1=1232877&r2=1232878&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
Wed Jan 18 13:43:23 2012
@@ -137,6 +137,12 @@
<input type="text" class="xlarge" id="indexDirectory"
name="indexDirectory" size="50" data-bind="value:
managedRepository.indexDirectory"/>
</div>
</div>
+ <div class="clearfix">
+ <label for="layout">${$.i18n.prop('type')}</label>
+ <div class="input">
+ <select id="layout" data-bind="options:
availableLayouts,optionsText: 'label',optionsValue:'type',value:
managedRepository.layout"/>
+ </div>
+ </div>
<div class="clearfix">
<label for="cronExpression">${$.i18n.prop('cronExpression')}</label>
<div class="input">