function getTemplateList() { return Template::getTemplateList(); }
/** * Function responsible to delete a template. * * @access public * @param string $templatename * @return void */ public function delete($templatename) { if (!Permission::model()->hasGlobalPermission('templates', 'delete')) { die('No permission'); } Yii::app()->loadHelper("admin/template"); if (array_key_exists($templatename, Template::getTemplateList()) && !Template::isStandardTemplate($templatename)) { if (rmdirr(Yii::app()->getConfig('usertemplaterootdir') . "/" . $templatename) == true) { $surveys = Survey::model()->findAllByAttributes(array('template' => $templatename)); // The default template could be the same as the one we're trying to remove $globalDefaultIsGettingDeleted = Yii::app()->getConfig('defaulttemplate') == $templatename; if ($globalDefaultIsGettingDeleted) { setGlobalSetting('defaulttemplate', 'default'); } foreach ($surveys as $s) { $s->template = Yii::app()->getConfig('defaulttemplate'); $s->save(); } Template::model()->deleteAllByAttributes(array('folder' => $templatename)); Permission::model()->deleteAllByAttributes(array('permission' => $templatename, 'entity' => 'template')); Yii::app()->setFlashMessage(sprintf(gT("Template '%s' was successfully deleted."), $templatename)); } else { Yii::app()->setFlashMessage(sprintf(gT("There was a problem deleting the template '%s'. Please check your directory/file permissions."), $templatename), 'error'); } } else { // Throw an error 500 ? } // Redirect with default templatename, editfile and screenname $this->getController()->redirect(array("admin/templates/sa/view")); }