From ec6292fc441c83a8aa8608dd2f88c14876212bf2 Mon Sep 17 00:00:00 2001 From: Marcel Werk Date: Thu, 25 Apr 2013 22:21:34 +0200 Subject: [PATCH] Fixed multiple issues in template administration Fixes #1247 --- wcfsetup/install/files/acp/templates/templateAdd.tpl | 1 + .../files/lib/acp/form/TemplateGroupAddForm.class.php | 8 ++------ .../lib/data/template/group/TemplateGroupEditor.class.php | 4 +++- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/wcfsetup/install/files/acp/templates/templateAdd.tpl b/wcfsetup/install/files/acp/templates/templateAdd.tpl index d7b06a59ea..a3f5bb8198 100644 --- a/wcfsetup/install/files/acp/templates/templateAdd.tpl +++ b/wcfsetup/install/files/acp/templates/templateAdd.tpl @@ -3,6 +3,7 @@

{lang}wcf.acp.template.{$action}{/lang}

+ {if $action == 'edit'}

{$template->getPath()}

{/if}
diff --git a/wcfsetup/install/files/lib/acp/form/TemplateGroupAddForm.class.php b/wcfsetup/install/files/lib/acp/form/TemplateGroupAddForm.class.php index b9f2404d34..933b935dc7 100644 --- a/wcfsetup/install/files/lib/acp/form/TemplateGroupAddForm.class.php +++ b/wcfsetup/install/files/lib/acp/form/TemplateGroupAddForm.class.php @@ -85,10 +85,6 @@ class TemplateGroupAddForm extends AbstractForm { throw new UserInputException('templateGroupName'); } - if (!preg_match('/^[a-z0-9_\-]+\/$/i', $this->templateGroupName)) { - throw new UserInputException('templateGroupName', 'notValid'); - } - $sql = "SELECT COUNT(*) AS count FROM wcf".WCF_N."_template_group WHERE templateGroupName = ?"; @@ -108,8 +104,8 @@ class TemplateGroupAddForm extends AbstractForm { throw new UserInputException('templateGroupFolderName'); } - if ($this->templateGroupFolderName == '/') { - throw new UserInputException('templateGroupFolderName', 'notUnique'); + if (!preg_match('/^[a-z0-9_\- ]+\/$/i', $this->templateGroupFolderName)) { + throw new UserInputException('templateGroupFolderName', 'notValid'); } $sql = "SELECT COUNT(*) AS count diff --git a/wcfsetup/install/files/lib/data/template/group/TemplateGroupEditor.class.php b/wcfsetup/install/files/lib/data/template/group/TemplateGroupEditor.class.php index 62c9f6c93e..f9eb21e181 100644 --- a/wcfsetup/install/files/lib/data/template/group/TemplateGroupEditor.class.php +++ b/wcfsetup/install/files/lib/data/template/group/TemplateGroupEditor.class.php @@ -51,7 +51,9 @@ class TemplateGroupEditor extends DatabaseObjectEditor implements IEditableCache * Deletes the folder of this template group. */ public function deleteFolder() { - DirectoryUtil::getInstance(WCF_DIR . 'templates/' . $this->templateGroupFolderName)->removeAll(); + if (file_exists(WCF_DIR . 'templates/' . $this->templateGroupFolderName)) { + DirectoryUtil::getInstance(WCF_DIR . 'templates/' . $this->templateGroupFolderName)->removeAll(); + } } /** -- 2.20.1