Load custom JS for all backends/auth mechanisms

Loading custom JS on a per-backend basis added needless complexity and
made dealing with async required. Now all backends/auth mechanisms load
custom JS in PHP
This commit is contained in:
Robin McCorkell 2015-08-11 19:18:36 +01:00
parent b6eb952ac6
commit df8f5425dc
4 changed files with 30 additions and 16 deletions

View file

@ -731,9 +731,6 @@ MountConfigListView.prototype = {
var priorityEl = $('<input type="hidden" class="priority" value="' + backendConfiguration['priority'] + '" />');
$tr.append(priorityEl);
if (backendConfiguration['custom'] && $el.find('tbody tr.'+backend.replace(/\\/g, '\\\\')).length === 1) {
OC.addScript('files_external', backendConfiguration['custom']);
}
$td.children().not('[type=hidden]').first().focus();
$tr.find('td').last().attr('class', 'remove');

View file

@ -34,11 +34,24 @@ $userStoragesService = $appContainer->query('OCA\Files_external\Service\UserStor
OCP\Util::addScript('files_external', 'settings');
OCP\Util::addStyle('files_external', 'settings');
$backends = $backendService->getBackendsVisibleFor(BackendService::VISIBILITY_PERSONAL);
$authMechanisms = $backendService->getAuthMechanismsVisibleFor(BackendService::VISIBILITY_PERSONAL);
foreach ($backends as $backend) {
if ($backend->getCustomJs()) {
\OCP\Util::addScript('files_external', $backend->getCustomJs());
}
}
foreach ($authMechanisms as $authMechanism) {
if ($authMechanism->getCustomJs()) {
\OCP\Util::addScript('files_external', $authMechanism->getCustomJs());
}
}
$tmpl = new OCP\Template('files_external', 'settings');
$tmpl->assign('encryptionEnabled', \OC::$server->getEncryptionManager()->isEnabled());
$tmpl->assign('isAdminPage', false);
$tmpl->assign('storages', $userStoragesService->getAllStorages());
$tmpl->assign('dependencies', OC_Mount_Config::dependencyMessage($backendService->getBackends()));
$tmpl->assign('backends', $backendService->getBackendsVisibleFor(BackendService::VISIBILITY_PERSONAL));
$tmpl->assign('authMechanisms', $backendService->getAuthMechanisms());
$tmpl->assign('backends', $backends);
$tmpl->assign('authMechanisms', $authMechanisms);
return $tmpl->fetchPage();

View file

@ -41,12 +41,25 @@ OCP\Util::addStyle('files_external', 'settings');
\OC_Util::addVendorScript('select2/select2');
\OC_Util::addVendorStyle('select2/select2');
$backends = $backendService->getBackendsVisibleFor(BackendService::VISIBILITY_ADMIN);
$authMechanisms = $backendService->getAuthMechanismsVisibleFor(BackendService::VISIBILITY_ADMIN);
foreach ($backends as $backend) {
if ($backend->getCustomJs()) {
\OCP\Util::addScript('files_external', $backend->getCustomJs());
}
}
foreach ($authMechanisms as $authMechanism) {
if ($authMechanism->getCustomJs()) {
\OCP\Util::addScript('files_external', $authMechanism->getCustomJs());
}
}
$tmpl = new OCP\Template('files_external', 'settings');
$tmpl->assign('encryptionEnabled', \OC::$server->getEncryptionManager()->isEnabled());
$tmpl->assign('isAdminPage', true);
$tmpl->assign('storages', $globalStoragesService->getAllStorages());
$tmpl->assign('backends', $backendService->getBackendsVisibleFor(BackendService::VISIBILITY_ADMIN));
$tmpl->assign('authMechanisms', $backendService->getAuthMechanisms());
$tmpl->assign('backends', $backends);
$tmpl->assign('authMechanisms', $authMechanisms);
$tmpl->assign('userBackends', $backendService->getBackendsAllowedVisibleFor(BackendService::VISIBILITY_PERSONAL));
$tmpl->assign('dependencies', OC_Mount_Config::dependencyMessage($backendService->getBackends()));
$tmpl->assign('allowUserMounting', $backendService->isUserMountingAllowed());

View file

@ -106,15 +106,6 @@
foreach ($storage->getAuthMechanism()->getParameters() as $parameter) {
writeParameterInput($parameter, $options, ['auth-param']);
}
$customJs = $storage->getBackend()->getCustomJs();
if (isset($customJs)) {
\OCP\Util::addScript('files_external', $customJs);
}
$customJsAuth = $storage->getAuthMechanism()->getCustomJs();
if (isset($customJsAuth)) {
\OCP\Util::addScript('files_external', $customJsAuth);
}
?>
</td>
<?php if ($_['isAdminPage']): ?>