diff options
-rw-r--r-- | css/redirector.css | 4 | ||||
-rw-r--r-- | js/controllers/editredirect.js | 13 | ||||
-rw-r--r-- | redirector.html | 1 |
3 files changed, 18 insertions, 0 deletions
diff --git a/css/redirector.css b/css/redirector.css index a5a1d34..e2df85f 100644 --- a/css/redirector.css +++ b/css/redirector.css @@ -81,6 +81,10 @@ input[type="radio"] { text-decoration: none; } +.btn.padded { + padding-left: 12px; + padding-right: 12px; +} .btn.grey { color:#333; diff --git a/js/controllers/editredirect.js b/js/controllers/editredirect.js index 216581d..81a4ee9 100644 --- a/js/controllers/editredirect.js +++ b/js/controllers/editredirect.js @@ -23,6 +23,19 @@ redirectorApp.controller('EditRedirectCtrl', ['$scope', function($s) { $s.$parent.showEditForm = true; }; + /** + * Duplicates a redirect. + * @param {Number} index + */ + $s.$parent.duplicateRedirect = function (index) { + var redirect = new Redirect($s.redirects[index]); + + $s.redirects.splice(index + 1, 0, redirect); + + redirect.updateExampleResult(); + $s.saveChanges(); + } + $s.saveRedirect = function() { if ($s.redirect.error) { return; //Button is already disabled, but we still get the click diff --git a/redirector.html b/redirector.html index 3f9184b..eb27611 100644 --- a/redirector.html +++ b/redirector.html @@ -190,6 +190,7 @@ <a class="btn medium red" ng-click="confirmDeleteRedirect($index)">Delete</a> <a class="btn medium grey move-up-btn" ng-class="{disabled:$first}" ng-click="moveUp($index)">▲</a> <a class="btn medium grey move-down-btn" ng-class="{disabled:$last}" ng-click="moveDown($index)">▼</a> + <a class="btn medium grey padded" ng-click="duplicateRedirect($index)">Duplicate</a> </div> </div> <label><input type="checkbox" ng-model="isSyncEnabled" ng-click="toggleSyncSetting()" /> Enable Storage Sync</label> |