]> source.dussan.org Git - nextcloud-server.git/commitdiff
make encryption filetype blacklist configurable
authorRobin Appelman <icewind@owncloud.com>
Wed, 22 Feb 2012 21:20:46 +0000 (22:20 +0100)
committerRobin Appelman <icewind@owncloud.com>
Wed, 22 Feb 2012 21:20:46 +0000 (22:20 +0100)
apps/files_encryption/appinfo/app.php
apps/files_encryption/js/settings.js [new file with mode: 0644]
apps/files_encryption/settings.php [new file with mode: 0644]
apps/files_encryption/templates/settings.php [new file with mode: 0644]

index 23f3955aa406a931deec7dc81fe1cd3db6757dad..68c445d5d775299801c846bfd8382aa109884c0e 100644 (file)
@@ -15,3 +15,5 @@ if(!isset($_SESSION['enckey']) and OC_User::isLoggedIn()){//force the user to re
        header("Location: ".OC::$WEBROOT.'/');
        exit();
 }
+
+OC_App::registerAdmin('files_encryption', 'settings');
diff --git a/apps/files_encryption/js/settings.js b/apps/files_encryption/js/settings.js
new file mode 100644 (file)
index 0000000..adbf0c8
--- /dev/null
@@ -0,0 +1,19 @@
+/**
+ * Copyright (c) 2011, Robin Appelman <icewind1991@gmail.com>
+ * This file is licensed under the Affero General Public License version 3 or later.
+ * See the COPYING-README file.
+ */
+
+
+$(document).ready(function(){
+       $('#encryption_blacklist').multiSelect({
+               oncheck:blackListChange,
+               onuncheck:blackListChange,
+               createText:'...',
+       });
+       
+       function blackListChange(){
+               var blackList=$('#encryption_blacklist').val().join(',');
+               OC.AppConfig.setValue('files_encryption','type_blacklist',blackList);
+       }
+})
\ No newline at end of file
diff --git a/apps/files_encryption/settings.php b/apps/files_encryption/settings.php
new file mode 100644 (file)
index 0000000..396ad1b
--- /dev/null
@@ -0,0 +1,16 @@
+<?php
+/**
+ * Copyright (c) 2011 Robin Appelman <icewind@owncloud.com>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+
+$tmpl = new OC_Template( 'files_encryption', 'settings');
+$blackList=explode(',',OC_Appconfig::getValue('files_encryption','type_blacklist','jpg,png,jpeg,avi,mpg,mpeg,mkv,mp3,oga,ogv,ogg'));
+$tmpl->assign('blacklist',$blackList);
+
+OC_Util::addScript('files_encryption','settings');
+OC_Util::addScript('core','multiselect');
+
+return $tmpl->fetchPage();
diff --git a/apps/files_encryption/templates/settings.php b/apps/files_encryption/templates/settings.php
new file mode 100644 (file)
index 0000000..724a038
--- /dev/null
@@ -0,0 +1,11 @@
+<form id="calendar">
+       <fieldset class="personalblock">
+       <strong><?php echo $l->t('Encryption'); ?></strong>
+               <?php echo $l->t("Exclude the following file types from encryption"); ?>
+               <select id='encryption_blacklist' title="<?php echo $l->t('None')?>" multiple="multiple">
+                       <?php foreach($_["blacklist"] as $type): ?>
+                               <option selected="selected" value="<?php echo $type;?>"><?php echo $type;?></option>
+                       <?php endforeach;?>
+               </select>
+       </fieldset>
+</form>