From 54fa39f72709ea6771fc976497413082fe1915bf Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Tue, 24 Jan 2012 15:53:23 +0000 Subject: [PATCH] [MRM-1574] remote repository: implements add/update/delete REST call git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1235312 13f79535-47bb-0310-9956-ffa450edef68 --- .../main/webapp/js/archiva/repositories.js | 56 ++++++++++++++++++- .../js/archiva/templates/repositories.html | 6 +- 2 files changed, 56 insertions(+), 6 deletions(-) diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js index ff95ca72d..8304baa0f 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/repositories.js @@ -529,7 +529,47 @@ $(function() { this.availableLayouts = window.managedRepositoryTypes; save=function(){ - + var valid = $("#main-content #remote-repository-edit-form").valid(); + if (valid==false) { + return; + } + clearUserMessages(); + if (update){ + $.ajax("restServices/archivaServices/remoteRepositoriesService/updateRemoteRepository", + { + type: "POST", + data: "{\"remoteRepository\": " + ko.toJSON(this.remoteRepository)+"}", + contentType: 'application/json', + dataType: 'json', + success: function(data) { + displaySuccessMessage($.i18n.prop('remoterepository.updated')); + activateRemoteRepositoriesGridTab(); + }, + error: function(data) { + var res = $.parseJSON(data.responseText); + displayRestError(res); + } + } + ); + }else { + $.ajax("restServices/archivaServices/remoteRepositoriesService/addRemoteRepository", + { + type: "POST", + data: "{\"remoteRepository\": " + ko.toJSON(this.remoteRepository)+"}", + contentType: 'application/json', + dataType: 'json', + success: function(data) { + self.remoteRepositoriesViewModel.remoteRepositories.push(self.remoteRepository); + displaySuccessMessage($.i18n.prop('remoterepository.added')); + activateRemoteRepositoriesGridTab(); + }, + error: function(data) { + var res = $.parseJSON(data.responseText); + displayRestError(res); + } + } + ); + } } displayGrid=function(){ @@ -553,7 +593,19 @@ $(function() { } removeRemoteRepository=function(remoteRepository){ - $.log("removeRemoteRepository"); + $.ajax("restServices/archivaServices/remoteRepositoriesService/deleteRemoteRepository/"+remoteRepository.id(), + { + type: "GET", + success: function(data) { + self.remoteRepositories.remove(remoteRepository); + displaySuccessMessage($.i18n.prop('remoterepository.deleted')); + }, + error: function(data) { + var res = $.parseJSON(data.responseText); + displayRestError(res); + } + } + ); } scheduleDownloadRemoteIndex=function(remoteRepository){ diff --git a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html index 59412cc75..f6381d800 100644 --- a/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html +++ b/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/templates/repositories.html @@ -397,7 +397,7 @@
- +
@@ -414,9 +414,7 @@
- - - +
-- 2.39.5