diff options
Diffstat (limited to 'apps/files_external')
-rw-r--r-- | apps/files_external/lib/amazons3.php | 12 | ||||
-rwxr-xr-x | apps/files_external/lib/config.php | 89 | ||||
-rwxr-xr-x | apps/files_external/lib/dropbox.php | 23 | ||||
-rw-r--r-- | apps/files_external/lib/ftp.php | 24 | ||||
-rw-r--r-- | apps/files_external/lib/google.php | 23 | ||||
-rw-r--r-- | apps/files_external/lib/smb.php | 28 | ||||
-rw-r--r-- | apps/files_external/lib/swift.php | 28 | ||||
-rw-r--r-- | apps/files_external/lib/webdav.php | 23 | ||||
-rw-r--r-- | apps/files_external/templates/settings.php | 294 |
9 files changed, 296 insertions, 248 deletions
diff --git a/apps/files_external/lib/amazons3.php b/apps/files_external/lib/amazons3.php index 969070360fe..352885121f9 100644 --- a/apps/files_external/lib/amazons3.php +++ b/apps/files_external/lib/amazons3.php @@ -560,4 +560,16 @@ class AmazonS3 extends \OC\Files\Storage\Common { return false; } } + + /** + * check if curl is installed + */ + public static function checkDependencies() { + if (function_exists('curl_init')) { + return true; + } else { + return array('curl'); + } + } + } diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php index 2112266efc4..242cdff911c 100755 --- a/apps/files_external/lib/config.php +++ b/apps/files_external/lib/config.php @@ -524,50 +524,85 @@ class OC_Mount_Config { * check dependencies */ public static function checkDependencies() { - $dependencyMessages = array(); + $dependencies = array(); foreach (OC_Mount_Config::$backends as $class => $backend) { if (isset($backend['has_dependencies']) and $backend['has_dependencies'] === true) { $result = $class::checkDependencies(); - if ($result !== true and OC_Mount_Config::findFirstSentence($dependencyMessages, $result) < 0) { - $dependencyMessages[] = $result; + if ($result !== true) { + foreach ($result as $key => $value) { + if (is_numeric($key)) { + OC_Mount_Config::addDependency($dependencies, $value, $backend['backend']); + } else { + OC_Mount_Config::addDependency($dependencies, $key, $backend['backend'], $value); + } + } } } } - if (count($dependencyMessages) > 0) { - return implode('<br />', $dependencyMessages); + if (count($dependencies) > 0) { + return OC_Mount_Config::generateDependencyMessage($dependencies); } return ''; } - /** - * Finds the first string in an array that has the same first sentence (or part thereof) - * as a given comparison string - * @param $arr array An array of strings - * @param $str string The string to find - * @return int The position of the first occurrence or -1 if not found - */ - private static function findFirstSentence($arr, $str) { - foreach ($arr as $i => $item) { - $itemPos = strpos($item, '.'); - $strPos = strpos($str, '.'); - - if ($itemPos < 0 && $strPos < 0) { - $itemPos = strpos($item, ','); - $strPos = strpos($str, ','); - - if ($itemPos < 0 && $strPos < 0) { - $itemPos = strlen($item); - $strPos = strlen($str); + private static function addDependency(&$dependencies, $module, $backend, $message=null) { + if (!isset($dependencies[$module])) { + $dependencies[$module] = array(); + } + + if ($message === null) { + $dependencies[$module][] = $backend; + } else { + $dependencies[$module][] = array('backend' => $backend, 'message' => $message); + } + } + + private static function generateDependencyMessage($dependencies) { + $l = new \OC_L10N('files_external'); + $dependencyMessage = ''; + foreach ($dependencies as $module => $backends) { + $dependencyGroup = array(); + foreach ($backends as $backend) { + if (is_array($backend)) { + $dependencyMessage .= '<br />' . $l->t('<b>Note:</b> ') . $backend['message']; + } else { + $dependencyGroup[] = $backend; } } - if ($itemPos === $strPos and strncasecmp($item, $str, $itemPos) === 0) { - return $i; + if (count($dependencyGroup) > 0) { + $backends = ''; + for ($i = 0; $i < count($dependencyGroup); $i++) { + if ($i > 0 && $i === count($dependencyGroup) - 1) { + $backends .= $l->t(' and '); + } elseif ($i > 0) { + $backends .= ', '; + } + $backends .= '<i>' . $dependencyGroup[$i] . '</i>'; + } + $dependencyMessage .= '<br />' . OC_Mount_Config::getSingleDependencyMessage($l, $module, $backends); } } + return $dependencyMessage; + } - return -1; + /** + * Returns a dependency missing message + * @param $l OC_L10N + * @param $module string + * @param $backend string + * @return string + */ + private static function getSingleDependencyMessage($l, $module, $backend) { + switch (strtolower($module)) { + case 'curl': + return $l->t('<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it.', $backend); + case 'ftp': + return $l->t('<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it.', $backend); + default: + return $l->t('<b>Note:</b> "%s" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it.', array($module, $backend)); + } } /** diff --git a/apps/files_external/lib/dropbox.php b/apps/files_external/lib/dropbox.php index f6a54bc0ca8..38de3360f2b 100755 --- a/apps/files_external/lib/dropbox.php +++ b/apps/files_external/lib/dropbox.php @@ -33,18 +33,6 @@ class Dropbox extends \OC\Files\Storage\Common { private static $tempFiles = array(); - /** - * check if curl is installed - */ - public static function checkDependencies() { - if (function_exists('curl_init')) { - return true; - } else { - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of Dropbox is not possible. Please ask your system administrator to install it.'); - } - } - public function __construct($params) { if (isset($params['configured']) && $params['configured'] == 'true' && isset($params['app_key']) @@ -323,4 +311,15 @@ class Dropbox extends \OC\Files\Storage\Common { return true; } + /** + * check if curl is installed + */ + public static function checkDependencies() { + if (function_exists('curl_init')) { + return true; + } else { + return array('curl'); + } + } + } diff --git a/apps/files_external/lib/ftp.php b/apps/files_external/lib/ftp.php index a6a775ff6d1..b3f8b1444ae 100644 --- a/apps/files_external/lib/ftp.php +++ b/apps/files_external/lib/ftp.php @@ -17,18 +17,6 @@ class FTP extends \OC\Files\Storage\StreamWrapper{ private static $tempFiles=array(); - /** - * check if php-ftp is installed - */ - public static function checkDependencies() { - if (function_exists('ftp_login')) { - return(true); - } else { - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it.'); - } - } - public function __construct($params) { if (isset($params['host']) && isset($params['user']) && isset($params['password'])) { $this->host=$params['host']; @@ -131,4 +119,16 @@ class FTP extends \OC\Files\Storage\StreamWrapper{ unlink($tmpFile); } } + + /** + * check if php-ftp is installed + */ + public static function checkDependencies() { + if (function_exists('ftp_login')) { + return(true); + } else { + return array('ftp'); + } + } + } diff --git a/apps/files_external/lib/google.php b/apps/files_external/lib/google.php index cfb7005c4c7..56c0d451651 100644 --- a/apps/files_external/lib/google.php +++ b/apps/files_external/lib/google.php @@ -41,18 +41,6 @@ class Google extends \OC\Files\Storage\Common { const DRAWING = 'application/vnd.google-apps.drawing'; const PRESENTATION = 'application/vnd.google-apps.presentation'; - /** - * check if curl is installed - */ - public static function checkDependencies() { - if (function_exists('curl_init')) { - return true; - } else { - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of Google Drive is not possible. Please ask your system administrator to install it.'); - } - } - public function __construct($params) { if (isset($params['configured']) && $params['configured'] === 'true' && isset($params['client_id']) && isset($params['client_secret']) @@ -598,4 +586,15 @@ class Google extends \OC\Files\Storage\Common { return false; } + /** + * check if curl is installed + */ + public static function checkDependencies() { + if (function_exists('curl_init')) { + return true; + } else { + return array('curl'); + } + } + } diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php index 6fb262323ff..3ef13b633a9 100644 --- a/apps/files_external/lib/smb.php +++ b/apps/files_external/lib/smb.php @@ -17,20 +17,6 @@ class SMB extends \OC\Files\Storage\StreamWrapper{ private $root; private $share; - /** - * check if smbclient is installed - */ - public static function checkDependencies() { - if (function_exists('shell_exec')) { - $output = shell_exec('which smbclient'); - if (!empty($output)) { - return true; - } - } - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> "smbclient" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it.'); - } - public function __construct($params) { if (isset($params['host']) && isset($params['user']) && isset($params['password']) && isset($params['share'])) { $this->host=$params['host']; @@ -148,4 +134,18 @@ class SMB extends \OC\Files\Storage\StreamWrapper{ } return $lastCtime; } + + /** + * check if smbclient is installed + */ + public static function checkDependencies() { + if (function_exists('shell_exec')) { + $output = shell_exec('which smbclient'); + if (!empty($output)) { + return true; + } + } + return array('smbclient'); + } + } diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php index a66d53fc1a8..a202d3843cb 100644 --- a/apps/files_external/lib/swift.php +++ b/apps/files_external/lib/swift.php @@ -65,16 +65,16 @@ class Swift extends \OC\Files\Storage\Common { return $path; } + const SUBCONTAINER_FILE='.subcontainers'; + /** - * check if curl is installed + * translate directory path to container name + * @param string $path + * @return string */ - public static function checkDependencies() { - if (function_exists('curl_init')) { - return true; - } else { - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of OpenStack Swift is not possible. Please ask your system administrator to install it.'); - } + private function getContainerName($path) { + $path=trim(trim($this->root, '/') . "/".$path, '/.'); + return str_replace('/', '\\', $path); } /** @@ -502,4 +502,16 @@ class Swift extends \OC\Files\Storage\Common { ), $tmpFile); unlink($tmpFile); } + + /** + * check if curl is installed + */ + public static function checkDependencies() { + if (function_exists('curl_init')) { + return true; + } else { + return array('curl'); + } + } + } diff --git a/apps/files_external/lib/webdav.php b/apps/files_external/lib/webdav.php index 0ea7a085041..b43c65e8e6c 100644 --- a/apps/files_external/lib/webdav.php +++ b/apps/files_external/lib/webdav.php @@ -23,18 +23,6 @@ class DAV extends \OC\Files\Storage\Common { private static $tempFiles = array(); - /** - * check if curl is installed - */ - public static function checkDependencies() { - if (function_exists('curl_init')) { - return true; - } else { - $l = new \OC_L10N('files_external'); - return $l->t('<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of ownCloud / WebDAV is not possible. Please ask your system administrator to install it.'); - } - } - public function __construct($params) { if (isset($params['host']) && isset($params['user']) && isset($params['password'])) { $host = $params['host']; @@ -397,5 +385,16 @@ class DAV extends \OC\Files\Storage\Common { return false; } } + + /** + * check if curl is installed + */ + public static function checkDependencies() { + if (function_exists('curl_init')) { + return true; + } else { + return array('curl'); + } + } } diff --git a/apps/files_external/templates/settings.php b/apps/files_external/templates/settings.php index e8815acaf16..84d9d3408d1 100644 --- a/apps/files_external/templates/settings.php +++ b/apps/files_external/templates/settings.php @@ -1,170 +1,162 @@ -<form id="files_external" class="section"> - <h2><?php p($l->t('External Storage')); ?></h2> - <?php if (isset($_['dependencies']) and ($_['dependencies']<>'')) print_unescaped(''.$_['dependencies'].''); ?> - <table id="externalStorage" class="grid" data-admin='<?php print_unescaped(json_encode($_['isAdminPage'])); ?>'> - <thead> +<form id="files_external"> + <fieldset class="personalblock"> + <legend><strong><?php p($l->t('External Storage')); ?></strong></legend> + <table id="externalStorage" data-admin='<?php print_unescaped(json_encode($_['isAdminPage'])); ?>'> + <thead> <tr> <th></th> <th><?php p($l->t('Folder name')); ?></th> <th><?php p($l->t('External storage')); ?></th> <th><?php p($l->t('Configuration')); ?></th> <!--<th><?php p($l->t('Options')); ?></th> --> - <?php if ($_['isAdminPage']) print_unescaped('<th>'.$l->t('Available for').'</th>'); ?> + <?php if ($_['isAdminPage']) print_unescaped('<th>'.$l->t('Applicable').'</th>'); ?> <th> </th> </tr> - </thead> - <tbody width="100%"> - <?php $_['mounts'] = array_merge($_['mounts'], array('' => array())); ?> - <?php foreach ($_['mounts'] as $mount): ?> - <tr <?php print_unescaped(($mount['mountpoint'] !== '') ? 'class="'.OC_Util::sanitizeHTML($mount['class']).'"' : 'id="addMountPoint"'); ?>> - <td class="status"> - <?php if (isset($mount['status'])): ?> - <span class="<?php p(($mount['status']) ? 'success' : 'error'); ?>"></span> - <?php endif; ?> - </td> - <td class="mountPoint"><input type="text" name="mountPoint" - value="<?php p($mount['mountpoint']); ?>" - placeholder="<?php p($l->t('Folder name')); ?>" /></td> - <?php if ($mount['mountpoint'] == ''): ?> - <td class="backend"> - <select id="selectBackend" data-configurations='<?php print_unescaped(json_encode($_['backends'])); ?>'> - <option value="" disabled selected - style="display:none;"><?php p($l->t('Add storage')); ?></option> - <?php foreach ($_['backends'] as $class => $backend): ?> - <option value="<?php p($class); ?>"><?php p($backend['backend']); ?></option> - <?php endforeach; ?> - </select> + </thead> + <tbody width="100%"> + <?php $_['mounts'] = array_merge($_['mounts'], array('' => array())); ?> + <?php foreach ($_['mounts'] as $mountPoint => $mount): ?> + <tr <?php print_unescaped(($mountPoint != '') ? 'class="'.OC_Util::sanitizeHTML($mount['class']).'"' : 'id="addMountPoint"'); ?>> + <td class="status"> + <?php if (isset($mount['status'])): ?> + <span class="<?php p(($mount['status']) ? 'success' : 'error'); ?>"></span> + <?php endif; ?> </td> - <?php else: ?> - <td class="backend" - data-class="<?php p($mount['class']); ?>"><?php p($mount['backend']); ?></td> - <?php endif; ?> - <td class ="configuration" width="100%"> - <?php if (isset($mount['options'])): ?> - <?php foreach ($mount['options'] as $parameter => $value): ?> - <?php if (isset($_['backends'][$mount['class']]['configuration'][$parameter])): ?> - <?php - $placeholder = $_['backends'][$mount['class']]['configuration'][$parameter]; - $is_optional = FALSE; - if (strpos($placeholder, '&') === 0) { - $is_optional = TRUE; - $placeholder = substr($placeholder, 1); - } - ?> - <?php if (strpos($placeholder, '*') === 0): ?> - <input type="password" - <?php if ($is_optional): ?> class="optional"<?php endif; ?> - data-parameter="<?php p($parameter); ?>" - value="<?php p($value); ?>" - placeholder="<?php p(substr($placeholder, 1)); ?>" /> - <?php elseif (strpos($placeholder, '!') === 0): ?> - <label><input type="checkbox" - data-parameter="<?php p($parameter); ?>" - <?php if ($value == 'true'): ?> checked="checked"<?php endif; ?> - /><?php p(substr($placeholder, 1)); ?></label> - <?php elseif (strpos($placeholder, '#') === 0): ?> - <input type="hidden" - data-parameter="<?php p($parameter); ?>" - value="<?php p($value); ?>" /> - <?php else: ?> - <input type="text" - <?php if ($is_optional): ?> class="optional"<?php endif; ?> - data-parameter="<?php p($parameter); ?>" - value="<?php p($value); ?>" - placeholder="<?php p($placeholder); ?>" /> + <td class="mountPoint"><input type="text" name="mountPoint" + value="<?php p($mountPoint); ?>" + placeholder="<?php p($l->t('Folder name')); ?>" /></td> + <?php if ($mountPoint == ''): ?> + <td class="backend"> + <select id="selectBackend" data-configurations='<?php print_unescaped(json_encode($_['backends'])); ?>'> + <option value="" disabled selected + style="display:none;"><?php p($l->t('Add storage')); ?></option> + <?php foreach ($_['backends'] as $class => $backend): ?> + <option value="<?php p($class); ?>"><?php p($backend['backend']); ?></option> + <?php endforeach; ?> + </select> + </td> + <?php else: ?> + <td class="backend" + data-class="<?php p($mount['class']); ?>"><?php p($mount['backend']); ?></td> + <?php endif; ?> + <td class ="configuration" width="100%"> + <?php if (isset($mount['configuration'])): ?> + <?php foreach ($mount['configuration'] as $parameter => $value): ?> + <?php if (isset($_['backends'][$mount['class']]['configuration'][$parameter])): ?> + <?php $placeholder = $_['backends'][$mount['class']]['configuration'][$parameter]; ?> + <?php if (strpos($placeholder, '*') !== false): ?> + <input type="password" + data-parameter="<?php p($parameter); ?>" + value="<?php p($value); ?>" + placeholder="<?php p(substr($placeholder, 1)); ?>" /> + <?php elseif (strpos($placeholder, '!') !== false): ?> + <label><input type="checkbox" + data-parameter="<?php p($parameter); ?>" + <?php if ($value == 'true'): ?> checked="checked"<?php endif; ?> + /><?php p(substr($placeholder, 1)); ?></label> + <?php elseif (strpos($placeholder, '&') !== false): ?> + <input type="text" + class="optional" + data-parameter="<?php p($parameter); ?>" + value="<?php p($value); ?>" + placeholder="<?php p(substr($placeholder, 5)); ?>" /> + <?php elseif (strpos($placeholder, '#') !== false): ?> + <input type="hidden" + data-parameter="<?php p($parameter); ?>" + value="<?php p($value); ?>" /> + <?php else: ?> + <input type="text" + data-parameter="<?php p($parameter); ?>" + value="<?php p($value); ?>" + placeholder="<?php p($placeholder); ?>" /> + <?php endif; ?> <?php endif; ?> + <?php endforeach; ?> + <?php if (isset($_['backends'][$mount['class']]['custom']) && !in_array('files_external/js/'.$_['backends'][$mount['class']]['custom'], \OC_Util::$scripts)): ?> + <?php OCP\Util::addScript('files_external', $_['backends'][$mount['class']]['custom']); ?> <?php endif; ?> - <?php endforeach; ?> - <?php if (isset($_['backends'][$mount['class']]['custom']) && !in_array('files_external/js/'.$_['backends'][$mount['class']]['custom'], \OC_Util::$scripts)): ?> - <?php OCP\Util::addScript('files_external', $_['backends'][$mount['class']]['custom']); ?> <?php endif; ?> - <?php endif; ?> - </td> - <?php if ($_['isAdminPage']): ?> - <td class="applicable" - align="right" - data-applicable-groups='<?php if (isset($mount['applicable']['groups'])) - print_unescaped(json_encode($mount['applicable']['groups'])); ?>' - data-applicable-users='<?php if (isset($mount['applicable']['users'])) - print_unescaped(json_encode($mount['applicable']['users'])); ?>'> - <select class="chzn-select" - multiple style="width:20em;" - data-placeholder="<?php p($l->t('No user or group')); ?>"> - <option value="all" - <?php if (empty($mount['class']) || (isset($mount['applicable']['users']) && in_array('all', $mount['applicable']['users']))) print_unescaped('selected="selected"');?> > - <?php p($l->t('All Users')); ?> - </option> - <optgroup label="<?php p($l->t('Groups')); ?>"> - <?php foreach ($_['groups'] as $group): ?> - <option value="<?php p($group); ?>(group)" - <?php if (isset($mount['applicable']['groups']) && in_array($group, $mount['applicable']['groups'])): ?> - selected="selected" - <?php endif; ?>><?php p($group); ?></option> - <?php endforeach; ?> - </optgroup> - <optgroup label="<?php p($l->t('Users')); ?>"> - <?php foreach ($_['users'] as $user): ?> - <option value="<?php p($user); ?>" - <?php if (isset($mount['applicable']['users']) && in_array($user, $mount['applicable']['users'])): ?> - selected="selected" - <?php endif; ?>><?php p($_['userDisplayNames'][$user]); ?></option> - <?php endforeach; ?> - </optgroup> - </select> </td> - <?php endif; ?> - <td <?php if ($mount['mountpoint'] != ''): ?>class="remove" - <?php else: ?>style="visibility:hidden;" - <?php endif ?>><img alt="<?php p($l->t('Delete')); ?>" - title="<?php p($l->t('Delete')); ?>" - class="svg action" - src="<?php print_unescaped(image_path('core', 'actions/delete.svg')); ?>" /></td> - </tr> - <?php endforeach; ?> - </tbody> - </table> - <br /> - - <?php if ($_['isAdminPage']): ?> + <?php if ($_['isAdminPage']): ?> + <td class="applicable" + align="right" + data-applicable-groups='<?php if (isset($mount['applicable']['groups'])) + print_unescaped(json_encode($mount['applicable']['groups'])); ?>' + data-applicable-users='<?php if (isset($mount['applicable']['users'])) + print_unescaped(json_encode($mount['applicable']['users'])); ?>'> + <select class="chzn-select" + multiple style="width:20em;" + data-placeholder="<?php p($l->t('None set')); ?>"> + <option value="all" <?php if (isset($mount['applicable']['users']) && in_array('all', $mount['applicable']['users'])) print_unescaped('selected="selected"');?> ><?php p($l->t('All Users')); ?></option> + <optgroup label="<?php p($l->t('Groups')); ?>"> + <?php foreach ($_['groups'] as $group): ?> + <option value="<?php p($group); ?>(group)" + <?php if (isset($mount['applicable']['groups']) && in_array($group, $mount['applicable']['groups'])): ?> + selected="selected" + <?php endif; ?>><?php p($group); ?></option> + <?php endforeach; ?> + </optgroup> + <optgroup label="<?php p($l->t('Users')); ?>"> + <?php foreach ($_['users'] as $user): ?> + <option value="<?php p($user); ?>" + <?php if (isset($mount['applicable']['users']) && in_array($user, $mount['applicable']['users'])): ?> + selected="selected" + <?php endif; ?>><?php p($_['userDisplayNames'][$user]); ?></option> + <?php endforeach; ?> + </optgroup> + </select> + </td> + <?php endif; ?> + <td <?php if ($mountPoint != ''): ?>class="remove" + <?php else: ?>style="visibility:hidden;" + <?php endif ?>><img alt="<?php p($l->t('Delete')); ?>" + title="<?php p($l->t('Delete')); ?>" + class="svg action" + src="<?php print_unescaped(image_path('core', 'actions/delete.svg')); ?>" /></td> + </tr> + <?php endforeach; ?> + </tbody> + </table> + <?php if (isset($_['dependencies']) and ($_['dependencies']<>'')) print_unescaped(''.$_['dependencies'].''); ?> <br /> - <input type="checkbox" name="allowUserMounting" id="allowUserMounting" - value="1" <?php if ($_['allowUserMounting'] == 'yes') print_unescaped(' checked="checked"'); ?> /> - <label for="allowUserMounting"><?php p($l->t('Enable User External Storage')); ?></label> <span id="userMountingMsg" class="msg"></span> - <p id="userMountingBackups"<?php if ($_['allowUserMounting'] != 'yes'): ?> class="hidden"<?php endif; ?>> - <?php p($l->t('Allow users to mount the following external storage')); ?><br /> - <?php $i = 0; foreach ($_['personal_backends'] as $class => $backend): ?> - <input type="checkbox" id="allowUserMountingBackends<?php p($i); ?>" name="allowUserMountingBackends[]" value="<?php p($class); ?>" <?php if ($backend['enabled']) print_unescaped(' checked="checked"'); ?> /> - <label for="allowUserMountingBackends<?php p($i); ?>"><?php p($backend['backend']); ?></label> <br /> - <?php $i++; ?> - <?php endforeach; ?> - </p> - <?php endif; ?> + <?php if ($_['isAdminPage']): ?> + <br /> + <input type="checkbox" + name="allowUserMounting" + id="allowUserMounting" + value="1" <?php if ($_['allowUserMounting'] == 'yes') print_unescaped(' checked="checked"'); ?> /> + <label for="allowUserMounting"><?php p($l->t('Enable User External Storage')); ?></label><br/> + <em><?php p($l->t('Allow users to mount their own external storage')); ?></em> + <?php endif; ?> + </fieldset> </form> <?php if ( ! $_['isAdminPage']): ?> -<form id="files_external" class="section" - method="post" - enctype="multipart/form-data" - action="<?php p(OCP\Util::linkTo('files_external', 'ajax/addRootCertificate.php')); ?>"> - <h2><?php p($l->t('SSL root certificates'));?></h2> - <table id="sslCertificate" data-admin='<?php print_unescaped(json_encode($_['isAdminPage'])); ?>'> - <tbody width="100%"> - <?php foreach ($_['certs'] as $rootCert): ?> - <tr id="<?php p($rootCert) ?>"> - <td class="rootCert"><?php p($rootCert) ?></td> - <td <?php if ($rootCert != ''): ?>class="remove" - <?php else: ?>style="visibility:hidden;" - <?php endif; ?>><img alt="<?php p($l->t('Delete')); ?>" - title="<?php p($l->t('Delete')); ?>" - class="svg action" - src="<?php print_unescaped(image_path('core', 'actions/delete.svg')); ?>" /></td> - </tr> - <?php endforeach; ?> - </tbody> - </table> - <input type="hidden" name="requesttoken" value="<?php p($_['requesttoken']); ?>"> - <input type="file" id="rootcert_import" name="rootcert_import"> - <input type="submit" name="cert_import" value="<?php p($l->t('Import Root Certificate')); ?>" /> -</form> + <form id="files_external" + method="post" + enctype="multipart/form-data" + action="<?php p(OCP\Util::linkTo('files_external', 'ajax/addRootCertificate.php')); ?>"> + <fieldset class="personalblock"> + <legend><strong><?php p($l->t('SSL root certificates'));?></strong></legend> + <table id="sslCertificate" data-admin='<?php print_unescaped(json_encode($_['isAdminPage'])); ?>'> + <tbody width="100%"> + <?php foreach ($_['certs'] as $rootCert): ?> + <tr id="<?php p($rootCert) ?>"> + <td class="rootCert"><?php p($rootCert) ?></td> + <td <?php if ($rootCert != ''): ?>class="remove" + <?php else: ?>style="visibility:hidden;" + <?php endif; ?>><img alt="<?php p($l->t('Delete')); ?>" + title="<?php p($l->t('Delete')); ?>" + class="svg action" + src="<?php print_unescaped(image_path('core', 'actions/delete.svg')); ?>" /></td> + </tr> + <?php endforeach; ?> + </tbody> + </table> + <input type="hidden" name="requesttoken" value="<?php p($_['requesttoken']); ?>"> + <input type="file" id="rootcert_import" name="rootcert_import"> + <input type="submit" name="cert_import" value="<?php p($l->t('Import Root Certificate')); ?>" /> + </fieldset> + </form> <?php endif; ?> |