diff --git a/apps/files_sharing/controller/adminsettingscontroller.php b/apps/files_sharing/controller/adminsettingscontroller.php index 7125641617..fed3147a99 100644 --- a/apps/files_sharing/controller/adminsettingscontroller.php +++ b/apps/files_sharing/controller/adminsettingscontroller.php @@ -15,35 +15,46 @@ class AdminSettingsController extends ApiController { /** * @param string $theme * @param string $template - * @return type Description * @return \OCA\Files_Sharing\Http\MailTemplateResponse */ public function render( $theme, $template ) { - $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); - return $template->getResponse(); + try { + $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); + return $template->getResponse(); + } catch (\Exception $ex) { + return new JSONResponse(array('message' => $ex->getMessage()), $ex->getCode()); + } } /** * @param string $theme * @param string $template * @param string $content - * @return array + * @return JSONResponse */ public function update( $theme, $template, $content ) { - $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); - $template->setContent( $content ); - return new JSONResponse(); + try { + $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); + $template->setContent( $content ); + return new JSONResponse(); + } catch (\Exception $ex) { + return new JSONResponse(array('message' => $ex->getMessage()), $ex->getCode()); + } } /** * @param string $theme * @param string $template - * @return array + * @return JSONResponse */ public function reset( $theme, $template ) { - $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); - $template->reset(); - return new JSONResponse(); + try { + $template = new \OCA\Files_Sharing\MailTemplate( $theme, $template ); + $template->reset(); + return new JSONResponse(); + } catch (\Exception $ex) { + return new JSONResponse(array('message' => $ex->getMessage()), $ex->getCode()); + } } } diff --git a/apps/files_sharing/js/settings-admin.js b/apps/files_sharing/js/settings-admin.js index 0362af0232..fa9b236ea9 100644 --- a/apps/files_sharing/js/settings-admin.js +++ b/apps/files_sharing/js/settings-admin.js @@ -7,9 +7,9 @@ $(document).ready(function() { ).done(function( result ) { $( '#mailTemplateSettings textarea' ).val(result); }).fail(function( result ) { - alert(result); + OC.dialogs.alert(result.message, t('files_sharing', 'Could not load template')); }); - } + }; // load default template var theme = $( '#mts-theme' ).val(); @@ -41,11 +41,11 @@ $(document).ready(function() { $.post( OC.generateUrl('apps/files_sharing/settings/mailtemplate'), { theme: theme, template: template, content: content } - ).done(function( result ) { + ).done(function() { var data = { status:'success', data:{message:t('files_sharing', 'Saved')} }; OC.msg.finishedSaving('#mts-msg', data); - }).fail(function( result ) { - var data = { status:'error', data:{message:t('files_sharing', 'Error')} }; + }).fail(function(result) { + var data = { status: 'error', data:{message:result.responseJSON.message} }; OC.msg.finishedSaving('#mts-msg', data); }); } @@ -55,13 +55,12 @@ $(document).ready(function() { function() { var theme = $( '#mts-theme' ).val(); var template = $( '#mts-template' ).val(); - var content = $( '#mailTemplateSettings textarea' ).val(); OC.msg.startSaving('#mts-msg'); $.ajax({ type: "DELETE", url: OC.generateUrl('apps/files_sharing/settings/mailtemplate'), data: { theme: theme, template: template } - }).done(function( result ) { + }).done(function() { var data = { status:'success', data:{message:t('files_sharing', 'Reset')} }; OC.msg.finishedSaving('#mts-msg', data); @@ -69,8 +68,8 @@ $(document).ready(function() { var theme = $( '#mts-theme' ).val(); var template = $( '#mts-template' ).val(); loadTemplate(theme, template); - }).fail(function( result ) { - var data = { status:'error', data:{message:t('files_sharing', 'Error')} }; + }).fail(function(result) { + var data = { status: 'error', data:{message:result.responseJSON.message} }; OC.msg.finishedSaving('#mts-msg', data); }); } diff --git a/apps/files_sharing/lib/mailtemplate.php b/apps/files_sharing/lib/mailtemplate.php index cb08b534d6..ca1b0234cc 100644 --- a/apps/files_sharing/lib/mailtemplate.php +++ b/apps/files_sharing/lib/mailtemplate.php @@ -19,7 +19,7 @@ class MailTemplate extends \OC_Template { //determine valid theme names $this->editableThemes = self::getEditableThemes(); - //for now hardcode the valid mail template paths + //for now hard code the valid mail template paths $this->editableTemplates = self::getEditableTemplates(); } @@ -34,6 +34,7 @@ class MailTemplate extends \OC_Template { list($path, $template) = $this->findTemplate($this->theme, $app, $name, ''); return new MailTemplateResponse($template); } + throw new SecurityException('Template not editable.', 403); } public function renderContent() { diff --git a/core/templates/mail.html b/core/templates/mail.html deleted file mode 100644 index 3382dbf81d..0000000000 --- a/core/templates/mail.html +++ /dev/null @@ -1,38 +0,0 @@ - - -
- - - - - - - - - - - - - - - - - - -
  -{{theme.name}} -
 
  -t('Hey there,

just letting you know that %s shared %s with you.
View it!

', array($_['user_displayname'], $_['filename'], $_['link']))); -if ( isset($_['expiration']) ) { - p($l->t("The share will expire on %s.", array($_['expiration']))); - print_unescaped('

'); -} -p($l->t('Cheers!')); -?> -
 
 --
-{{theme.name}} - -{{theme.slogan}} -
{{theme.baseurl}} -
 
-