aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_encryption/js
diff options
context:
space:
mode:
authorHenrik Kjölhede <hkjolhede@gmail.com>2013-01-26 21:51:18 +0100
committerHenrik Kjölhede <hkjolhede@gmail.com>2013-01-26 21:51:18 +0100
commitb1b2eafa50db54b2613cf2bc52bfab2015d67b2f (patch)
tree68992916824e3bdd4c6ba9ab5af955420bfd8123 /apps/files_encryption/js
parenta26d50640fc4a2524255c85b10fb010676b3e22d (diff)
parentc9e25d3fab17b178759dd6d2f9488aa4cf37fbbb (diff)
downloadnextcloud-server-b1b2eafa50db54b2613cf2bc52bfab2015d67b2f.tar.gz
nextcloud-server-b1b2eafa50db54b2613cf2bc52bfab2015d67b2f.zip
Merge remote-tracking branch 'upstream/master'
Conflicts: apps/files_external/lib/config.php
Diffstat (limited to 'apps/files_encryption/js')
-rw-r--r--apps/files_encryption/js/settings-personal.js38
-rw-r--r--apps/files_encryption/js/settings.js34
2 files changed, 66 insertions, 6 deletions
diff --git a/apps/files_encryption/js/settings-personal.js b/apps/files_encryption/js/settings-personal.js
new file mode 100644
index 00000000000..1a53e99d2b4
--- /dev/null
+++ b/apps/files_encryption/js/settings-personal.js
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2012, Bjoern Schiessle <schiessle@owncloud.com>
+ * This file is licensed under the Affero General Public License version 3 or later.
+ * See the COPYING-README file.
+ */
+
+$(document).ready(function(){
+ $('input[name=encryption_mode]').change(function(){
+ var prevmode = document.getElementById('prev_encryption_mode').value
+ var client=$('input[value="client"]:checked').val()
+ ,server=$('input[value="server"]:checked').val()
+ ,user=$('input[value="user"]:checked').val()
+ ,none=$('input[value="none"]:checked').val()
+ if (client) {
+ $.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'client' });
+ if (prevmode == 'server') {
+ OC.dialogs.info(t('encryption', 'Please switch to your ownCloud client and change your encryption password to complete the conversion.'), t('encryption', 'switched to client side encryption'));
+ }
+ } else if (server) {
+ if (prevmode == 'client') {
+ OC.dialogs.form([{text:'Login password', name:'newpasswd', type:'password'},{text:'Encryption password used on the client', name:'oldpasswd', type:'password'}],t('encryption', 'Change encryption password to login password'), function(data) {
+ $.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'server', newpasswd: data[0].value, oldpasswd: data[1].value }, function(result) {
+ if (result.status != 'success') {
+ document.getElementById(prevmode+'_encryption').checked = true;
+ OC.dialogs.alert(t('encryption', 'Please check your passwords and try again.'), t('encryption', 'Could not change your file encryption password to your login password'))
+ } else {
+ console.log("alles super");
+ }
+ }, true);
+ });
+ } else {
+ $.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'server' });
+ }
+ } else {
+ $.post(OC.filePath('files_encryption', 'ajax', 'mode.php'), { mode: 'none' });
+ }
+ })
+}) \ No newline at end of file
diff --git a/apps/files_encryption/js/settings.js b/apps/files_encryption/js/settings.js
index 6fc70eba7f6..60563bde859 100644
--- a/apps/files_encryption/js/settings.js
+++ b/apps/files_encryption/js/settings.js
@@ -11,14 +11,36 @@ $(document).ready(function(){
onuncheck:blackListChange,
createText:'...',
});
-
+
function blackListChange(){
var blackList=$('#encryption_blacklist').val().join(',');
OC.AppConfig.setValue('files_encryption','type_blacklist',blackList);
}
- $('#enable_encryption').change(function(){
- var checked=$('#enable_encryption').is(':checked');
- OC.AppConfig.setValue('files_encryption','enable_encryption',(checked)?'true':'false');
- });
-});
+ //TODO: Handle switch between client and server side encryption
+ $('input[name=encryption_mode]').change(function(){
+ var client=$('input[value="client"]:checked').val()
+ ,server=$('input[value="server"]:checked').val()
+ ,user=$('input[value="user"]:checked').val()
+ ,none=$('input[value="none"]:checked').val()
+ ,disable=false
+ if (client) {
+ OC.AppConfig.setValue('files_encryption','mode','client');
+ disable = true;
+ } else if (server) {
+ OC.AppConfig.setValue('files_encryption','mode','server');
+ disable = true;
+ } else if (user) {
+ OC.AppConfig.setValue('files_encryption','mode','user');
+ disable = true;
+ } else {
+ OC.AppConfig.setValue('files_encryption','mode','none');
+ }
+ if (disable) {
+ document.getElementById('server_encryption').disabled = true;
+ document.getElementById('client_encryption').disabled = true;
+ document.getElementById('user_encryption').disabled = true;
+ document.getElementById('none_encryption').disabled = true;
+ }
+ })
+}) \ No newline at end of file