aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Colletti <gnomish@gmail.com>2020-02-04 16:17:10 -0500
committerNick Colletti <gnomish@gmail.com>2020-02-04 16:17:10 -0500
commita5f18ece2764670fe05b5461ddd6ec241bc7687c (patch)
treec8ce4c93efe50b31cdd9192a2e56101eed49d1ff
parent9104b0d35c6939d27736bf9bda453733c36a5c61 (diff)
parent2294b97365f343f3dd5f36f2a6632b5bca31d148 (diff)
Merge branch 'nav-btns' into advanced_mode_with_features
-rw-r--r--css/redirector.css5
-rw-r--r--js/redirectorpage.js14
-rw-r--r--js/util.js8
-rw-r--r--redirector.html2
4 files changed, 26 insertions, 3 deletions
diff --git a/css/redirector.css b/css/redirector.css
index 5ad77a3..e12a934 100644
--- a/css/redirector.css
+++ b/css/redirector.css
@@ -235,10 +235,13 @@ button span {
color:red !important;
}
-.move-up-btn, .move-down-btn {
+.move-up-btn, .move-down-btn, .move-downbottom-btn, .move-uptop-btn {
width:45px !important;
}
+.move-downbottom-btn, .move-uptop-btn {
+ height:25px !important;
+}
.redirect-row label {
display:inline-block;
diff --git a/js/redirectorpage.js b/js/redirectorpage.js
index 84bfadf..6d0db2e 100644
--- a/js/redirectorpage.js
+++ b/js/redirectorpage.js
@@ -277,6 +277,20 @@ function moveDown(index) {
saveChanges();
}
+function moveUpTop(index) {
+ let top = REDIRECTS[0];
+ move(REDIRECTS, index, top);
+ updateBindings();
+ saveChanges();
+}
+
+function moveDownBottom(index) {
+ let bottom = REDIRECTS.length - 1;
+ move(REDIRECTS, index, bottom);
+ updateBindings();
+ saveChanges();
+}
+
//All the setup stuff for the page
function pageLoad() {
template = el('#redirect-row-template');
diff --git a/js/util.js b/js/util.js
index a751497..4249acc 100644
--- a/js/util.js
+++ b/js/util.js
@@ -36,12 +36,12 @@ function dataBind(el, dataObject) {
}
}
for (let tag of el.querySelectorAll('[data-show]')) {
- let shouldShow = boolValue(tag.getAttribute('data-show'));
+ let shouldShow = boolValue(tag.getAttribute('data-show'));
tag.style.display = shouldShow ? '' : 'none';
}
for (let tag of el.querySelectorAll('[data-disabled]')) {
let isDisabled = boolValue(tag.getAttribute('data-disabled'));
-
+
if (isDisabled) {
tag.classList.add('disabled');
tag.setAttribute('disabled', 'disabled');
@@ -82,6 +82,10 @@ function showForm(selector, dataObject) {
show(selector);
}
+function move(arr, from, to) {
+ arr.splice(to, 0, arr.splice(from, 1)[0]);
+}
+
function hideForm(selector) {
hide('#cover');
hide(selector);
diff --git a/redirector.html b/redirector.html
index 047a463..03c5714 100644
--- a/redirector.html
+++ b/redirector.html
@@ -178,8 +178,10 @@
<button class="btn medium blue" data-action="toggleDisabled"><span data-show="disabled">Enable</span><span data-show="!disabled">Disable</span></button>
<button class="btn medium green" data-action="editRedirect">Edit</button>
<button class="btn medium red" data-action="confirmDeleteRedirect">Delete</button>
+ <button class="btn medium grey move-uptop-btn" data-action="moveUpTop" data-disabled="$first">⟰</button>
<button class="btn medium grey move-up-btn" data-action="moveUp" data-disabled="$first">▲</button>
<button class="btn medium grey move-down-btn" data-action="moveDown" data-disabled="$last">▼</button>
+ <button class="btn medium grey move-downbottom-btn" data-action="moveDownBottom" data-disabled="$last">⟱</button>
<button class="btn medium grey" data-action="duplicateRedirect">Duplicate</button>
</div>
<label class="toggle-container">