function getTemplateList()
{
    return Template::getTemplateList();
}
Example #2
0
 /**
  * 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"));
 }