aboutsummaryrefslogtreecommitdiff
path: root/public/js
diff options
context:
space:
mode:
authorPitu <[email protected]>2017-01-18 04:51:42 -0300
committerPitu <[email protected]>2017-01-18 04:51:42 -0300
commitde130602f93f05360a3838d93a0f9d1cbb470153 (patch)
treea77f54c0a5b4dc10a9a48690a06b804a2a9398ad /public/js
parentAdded browsing galleries from dashboard (diff)
downloadhost.fuwn.me-de130602f93f05360a3838d93a0f9d1cbb470153.tar.xz
host.fuwn.me-de130602f93f05360a3838d93a0f9d1cbb470153.zip
Added changing of tokens from the dashboard
Diffstat (limited to 'public/js')
-rw-r--r--public/js/panel.js106
-rw-r--r--public/js/upload.js2
2 files changed, 104 insertions, 4 deletions
diff --git a/public/js/panel.js b/public/js/panel.js
index 8857d9c..3f99ef0 100644
--- a/public/js/panel.js
+++ b/public/js/panel.js
@@ -43,7 +43,7 @@ panel.verifyToken = function(token, reloadOnError = false){
}
}
- xhr.open('GET', '/api/token/verify', true);
+ xhr.open('GET', '/api/tokens/verify', true);
xhr.setRequestHeader('type', 'admin');
xhr.setRequestHeader('token', token);
xhr.send(null);
@@ -62,6 +62,10 @@ panel.prepareDashboard = function(){
panel.getAlbums();
});
+ document.getElementById('itemTokens').addEventListener('click', function(){
+ panel.changeTokens();
+ });
+
panel.getAlbumsSidebar();
}
@@ -76,7 +80,7 @@ panel.getUploads = function(album = undefined){
return panel.verifyToken(panel.token);
var json = JSON.parse(xhr.responseText);
- console.log(json);
+
if(json.success === false)
return swal("An error ocurred", json.description, "error");
@@ -155,7 +159,7 @@ panel.getAlbums = function(){
return panel.verifyToken(panel.token);
var json = JSON.parse(xhr.responseText);
- console.log(json);
+
if(json.success === false)
return swal("An error ocurred", json.description, "error");
@@ -261,6 +265,102 @@ panel.getAlbum = function(item){
panel.getUploads(item.id);
}
+panel.changeTokens = function(){
+ panel.page.innerHTML = '';
+ var xhr = new XMLHttpRequest();
+
+ var container = document.createElement('div');
+ container.className = "container";
+ container.innerHTML = `
+ <h2 class="subtitle">Manage your tokens</h2>
+
+ <label class="label">Client token:</label>
+ <p class="control has-addons">
+ <input id="clientToken" class="input is-expanded" type="text" placeholder="Your client token">
+ <a id="submitClientToken" class="button is-primary">Save</a>
+ </p>
+
+ <label class="label">Admin token:</label>
+ <p class="control has-addons">
+ <input id="adminToken" class="input is-expanded" type="text" placeholder="Your admin token">
+ <a id="submitAdminToken" class="button is-primary">Save</a>
+ </p>
+ `;
+
+ xhr.onreadystatechange = function() {
+ if (xhr.readyState == XMLHttpRequest.DONE) {
+
+ if(xhr.responseText === 'not-authorized')
+ return panel.verifyToken(panel.token);
+
+ var json = JSON.parse(xhr.responseText);
+
+ console.log(json);
+
+ if(json.success === false)
+ return swal("An error ocurred", json.description, "error");
+
+ panel.page.appendChild(container);
+
+ document.getElementById('clientToken').value = json.clientToken;
+ document.getElementById('adminToken').value = json.adminToken;
+
+ document.getElementById('submitClientToken').addEventListener('click', function(){
+ panel.submitToken('client', document.getElementById('clientToken').value);
+ });
+
+ document.getElementById('submitAdminToken').addEventListener('click', function(){
+ panel.submitToken('admin', document.getElementById('adminToken').value);
+ });
+ }
+ }
+
+ xhr.open('GET', '/api/tokens', true);
+ xhr.setRequestHeader('auth', panel.token);
+ xhr.send(null);
+}
+
+panel.submitToken = function(type, token){
+
+ var xhr = new XMLHttpRequest();
+ xhr.onreadystatechange = function() {
+ if (xhr.readyState == XMLHttpRequest.DONE) {
+
+ if(xhr.responseText === 'not-authorized')
+ return panel.verifyToken(panel.token);
+
+ var json = JSON.parse(xhr.responseText);
+
+ console.log(json);
+
+ if(json.success === false)
+ return swal("An error ocurred", json.description, "error");
+
+ swal({
+ title: "Woohoo!",
+ text: 'Your token was changed successfully.',
+ type: "success"
+ }, function(){
+
+ if(type === 'client')
+ localStorage.token = token;
+ else if(type === 'admin')
+ localStorage.admintoken = token
+
+ location.reload();
+
+ })
+
+ }
+ }
+
+ xhr.open('POST', '/api/tokens/change', true);
+ xhr.setRequestHeader('auth', panel.token);
+ xhr.setRequestHeader('type', type);
+ xhr.setRequestHeader('token', token);
+ xhr.send(null);
+}
+
window.onload = function () {
panel.preparePage();
}
diff --git a/public/js/upload.js b/public/js/upload.js
index 0341ecc..2638ef8 100644
--- a/public/js/upload.js
+++ b/public/js/upload.js
@@ -58,7 +58,7 @@ upload.verifyToken = function(token, reloadOnError = false){
}
}
- xhr.open('GET', '/api/token/verify', true);
+ xhr.open('GET', '/api/tokens/verify', true);
xhr.setRequestHeader('type', 'client');
xhr.setRequestHeader('token', token);
xhr.send(null);