예제 #1
0
	function getTemplatedetails() {
		$app = JFactory::getApplication ();
		$tBaseDir	= JPath::clean(KPATH_SITE.'/template');
		$template = $app->getUserState ( 'kunena.edit.template');
		$details	= KunenaTemplateHelper::parseXmlFile($tBaseDir, $template);

		return $details;
	}
예제 #2
0
 function getTemplatedetails()
 {
     $template = $this->app->getUserState('kunena.edit.template');
     $details = KunenaTemplateHelper::parseXmlFile($template);
     if (empty($template)) {
         $template = $this->getState('template');
         $details = KunenaTemplateHelper::parseXmlFile($template);
     }
     return $details;
 }
예제 #3
0
 /**
  *
  */
 function uninstall()
 {
     $cid = $this->app->input->get('cid', array(), 'method', 'array');
     $id = array_shift($cid);
     $template = $id;
     if (!JSession::checkToken('post')) {
         $this->app->enqueueMessage(JText::_('COM_KUNENA_ERROR_TOKEN'), 'error');
         $this->setRedirect(KunenaRoute::_($this->baseurl, false));
         return;
     }
     // Initialize variables
     $otemplate = KunenaTemplateHelper::parseXmlFile($id);
     if (!$otemplate) {
         $this->app->enqueueMessage(JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_TEMPLATE_NOT_SPECIFIED'), 'error');
         $this->setRedirect(KunenaRoute::_($this->baseurl, false));
         return;
     }
     if (in_array($id, $this->locked)) {
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_CTRL_TEMPLATES_ERROR_UNINSTALL_SYSTEM_TEMPLATE', $otemplate->name), 'error');
         $this->setRedirect(KunenaRoute::_($this->baseurl, false));
         return;
     }
     if (KunenaTemplateHelper::isDefault($template)) {
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_CTRL_TEMPLATES_ERROR_UNINSTALL_DEFAULT_TEMPLATE', $otemplate->name), 'error');
         $this->setRedirect(KunenaRoute::_($this->baseurl, false));
         return;
     }
     $tpl = KPATH_SITE . '/template/' . $template;
     // Delete the template directory
     if (is_dir($tpl)) {
         $retval = KunenaFolder::delete($tpl);
         // Clear all cache, just in case.
         KunenaCacheHelper::clearAll();
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_TEMPLATE_MANAGER_UNINSTALL_SUCCESS', $id));
     } else {
         $this->app->enqueueMessage(JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_TEMPLATE') . ' ' . JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_UNINSTALL') . ': ' . JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_DIR_NOT_EXIST'));
         $retval = false;
     }
     $this->setRedirect(KunenaRoute::_($this->baseurl, false));
 }
예제 #4
0
 function uninstall()
 {
     jimport('joomla.filesystem.folder');
     $cid = JRequest::getVar('cid', array(), 'method', 'array');
     $id = array_shift($cid);
     $template = $id;
     if (!JRequest::checkToken()) {
         $this->app->enqueueMessage(JText::_('COM_KUNENA_ERROR_TOKEN'), 'error');
         $this->app->redirect(KunenaRoute::_($this->baseurl, false));
     }
     // templates to prevent to remove
     $templates_locked = array('blue_eagle', 'mirage');
     $otemplate = KunenaTemplateHelper::parseXmlFile($id);
     // Initialize variables
     $retval = true;
     if (!$otemplate) {
         $this->app->enqueueMessage(JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_TEMPLATE_NOT_SPECIFIED'), 'error');
         $this->app->redirect(KunenaRoute::_($this->baseurl, false));
     }
     if (in_array($id, $templates_locked)) {
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_CTRL_TEMPLATES_ERROR_UNINSTALL_SYSTEM_TEMPLATE', $otemplate->name), 'error');
         $this->app->redirect(KunenaRoute::_($this->baseurl, false));
     }
     if (KunenaTemplateHelper::isDefault($template)) {
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_CTRL_TEMPLATES_ERROR_UNINSTALL_DEFAULT_TEMPLATE', $otemplate->name), 'error');
         $this->app->redirect(KunenaRoute::_($this->baseurl, false));
         return;
     }
     $tpl = KPATH_SITE . '/template/' . $template;
     // Delete the template directory
     if (JFolder::exists($tpl)) {
         $retval = JFolder::delete($tpl);
         $this->app->enqueueMessage(JText::sprintf('COM_KUNENA_A_TEMPLATE_MANAGER_UNINSTALL_SUCCESS', $id));
     } else {
         JError::raiseWarning(100, JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_TEMPLATE') . ' ' . JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_UNINSTALL') . ': ' . JText::_('COM_KUNENA_A_TEMPLATE_MANAGER_DIR_NOT_EXIST'));
         $retval = false;
     }
     $this->app->redirect(KunenaRoute::_($this->baseurl, false));
 }