]> git.immae.eu Git - perso/Immae/Projets/Nodejs/Surfer.git/blobdiff - frontend/js/app.js
Fixup the config file usage
[perso/Immae/Projets/Nodejs/Surfer.git] / frontend / js / app.js
index 1500457e0a3993c402a18860ac47a7ce2d69acbc..6303a892984868c4d496b92efe04c556033e0028 100644 (file)
@@ -35,7 +35,13 @@ function getProfile(accessToken, callback) {
         app.session.username = result.body.username;
         app.session.valid = true;
 
-        callback();
+        superagent.get('/api/settings').query({ access_token: localStorage.accessToken }).end(function (error, result) {
+            if (error) console.error(error);
+
+            app.folderListingEnabled = !!result.body.folderListingEnabled;
+
+            callback();
+        });
     });
 }
 
@@ -124,10 +130,6 @@ function open(row, event, column) {
     window.open(encode(path));
 }
 
-function up() {
-    window.location.hash = sanitize(app.path.split('/').slice(0, -1).filter(function (p) { return !!p; }).join('/'));
-}
-
 function uploadFiles(files) {
     if (!files || !files.length) return;
 
@@ -215,7 +217,9 @@ var app = new Vue({
         },
         onOptionsMenu: function (command) {
             if (command === 'folderListing') {
-                console.log('Not implemented');
+                superagent.put('/api/settings').send({ folderListingEnabled: this.folderListingEnabled }).query({ access_token: localStorage.accessToken }).end(function (error) {
+                    if (error) console.error(error);
+                });
             } else if (command === 'about') {
                 this.$msgbox({
                     title: 'About Surfer',
@@ -328,7 +332,9 @@ var app = new Vue({
             return filesize(cellValue);
         },
         loadDirectory: loadDirectory,
-        up: up,
+        onUp: function () {
+            window.location.hash = sanitize(app.path.split('/').slice(0, -1).filter(function (p) { return !!p; }).join('/'));
+        },
         open: open,
         drop: drop,
         dragOver: dragOver