示例#1
0
 public function installAction()
 {
     if ($module = $this->getRequest()->getParam('name')) {
         foreach ($dirs as $module) {
             $installer = new Installer_Model_Installer();
             $installer->setModuleName($module)->install();
         }
         die('done');
     }
     die('pas ok');
 }
 public function installAction()
 {
     try {
         if ($module = $this->getRequest()->getParam('name')) {
             $installer = new Installer_Model_Installer();
             $installer->setModuleName($module)->install();
             $html = array('success' => 1);
         } else {
             throw new Exception($this->_("No directory provided"));
         }
     } catch (Exception $e) {
         $html = array('message' => $e->getMessage());
     }
     $this->getLayout()->setHtml(Zend_Json::encode($html));
 }
示例#3
0
 public function installpostAction()
 {
     try {
         $html = array('success' => 1);
         if ($module = $this->getRequest()->getParam('name')) {
             $installer = new Installer_Model_Installer();
             $installer->setModuleName($module)->install();
             $html = array('success' => 1);
         } else {
             throw new Exception($this->_("No directory provided"));
         }
     } catch (Exception $e) {
         $html = array('error' => 1, 'message' => $e->getMessage());
     }
     $this->_sendHtml($html);
 }
示例#4
0
 protected function _initIconColor()
 {
     $this->_icon_color = "#FFFFFF";
     if (Installer_Model_Installer::hasModule("Whitelabel")) {
         $this->_icon_color = $this->getBlock("area")->getColor();
     }
     return $this;
 }
示例#5
0
 public function getWhiteLabelEditor()
 {
     if (!$this->_white_label_editor) {
         if (Installer_Model_Installer::hasModule("whitelabel")) {
             $this->_white_label_editor = new Whitelabel_Model_Editor();
             $this->_white_label_editor->find($this->getId(), "admin_id");
         } else {
             $this->_white_label_editor = new Core_Model_Default();
         }
     }
     return $this->_white_label_editor;
 }
示例#6
0
 protected function _initRequest()
 {
     Core_Model_Language::prepare();
     $frontController = $this->_front_controller;
     $this->_request = new Siberian_Controller_Request_Http();
     $this->_request->isInstalling(!Installer_Model_Installer::isInstalled());
     $this->_request->setPathInfo();
     $baseUrl = $this->_request->getScheme() . '://' . $this->_request->getHttpHost() . $this->_request->getBaseUrl();
     $this->_request->setBaseUrl($baseUrl);
     $frontController->setRequest($this->_request);
     Siberian_View::setRequest($this->_request);
     Core_Model_Default::setBaseUrl($this->_request->getBaseUrl());
 }
 public function endAction()
 {
     try {
         if (Installer_Model_Installer::isInstalled() or Installer_Model_Installer::setIsInstalled()) {
             $html = array('success' => 1);
         } else {
             throw new Exception("An error occured while finalizing the installation.");
         }
     } catch (Exception $e) {
         $html = array('message' => $e->getMessage());
         $this->getResponse()->setHttpResponseCode(400);
     }
     $this->getLayout()->setHtml(Zend_Json::encode($html));
 }
 public function preDispatch()
 {
     $this->_xml_files = array("android-app.xml" => array("is_translatable" => true, "name" => "android-app.xml", "base_path" => Core_Model_Directory::getBasePathTo("var" . DS . "apps" . DS . "android" . DS . "Siberian" . DS . "app" . DS . "src" . DS . "main" . DS . "res" . DS . "values" . DS), "user_path" => Core_Model_Directory::getBasePathTo("var" . DS . "apps" . DS . "android" . DS . "Siberian" . DS . "app" . DS . "src" . DS . "main" . DS . "res" . DS), "file_name" => "strings.xml", "info" => $this->_("Translate the 'e.g.' between parentheses only.")), "android-previewer.xml" => array("is_translatable" => Installer_Model_Installer::hasModule('Previewer'), "name" => "android-previewer.xml", "base_path" => Core_Model_Directory::getBasePathTo("var" . DS . "apps" . DS . "android" . DS . "previewer" . DS . "app" . DS . "src" . DS . "main" . DS . "res" . DS . "values" . DS), "user_path" => Core_Model_Directory::getBasePathTo("var" . DS . "apps" . DS . "android" . DS . "previewer" . DS . "app" . DS . "src" . DS . "main" . DS . "res" . DS), "file_name" => "strings.xml", "info" => $this->_("Translate the 'e.g.' between parentheses only.")));
     parent::preDispatch();
 }
示例#9
0
 protected function _canAccessWhiteLabelEditor()
 {
     return Installer_Model_Installer::hasModule("Whitelabel") && !$this->getCurrentWhiteLabelEditor() && $this->_canAccess("white_label_editor");
 }
示例#10
0
 public static function setModules($modules)
 {
     self::$_modules = array_map("strtolower", $modules);
 }
 protected function _getPackageDetails($file)
 {
     $installer = new Installer_Model_Installer();
     $installer->parse($file);
     $package = $installer->getPackageDetails();
     $path = pathinfo($file);
     $filename = $path["filename"] . "." . $path["extension"];
     return array("success" => 1, "filename" => base64_encode($filename), "package_details" => array("name" => $this->_("%s Update", $package->getName()), "version" => $package->getVersion(), "description" => $package->getDescription()));
 }
示例#12
0
 protected function _checkPermissions()
 {
     $errors = Installer_Model_Installer::checkPermissions();
     foreach ($this->_files as $file) {
         $info = pathinfo($file['destination']);
         $dirname = $info['dirname'];
         if (is_dir($dirname) and !is_writable($dirname)) {
             $dirname = str_replace(Core_Model_Directory::getBasePathTo(), '', $dirname);
             $errors[] = $dirname;
         }
     }
     if (!empty($errors)) {
         $errors = array_unique($errors);
         if (count($errors) > 1) {
             $errors = implode('<br /> - ', $errors);
             $message = $this->_("Les dossiers suivants n'ont pas les droits en écriture : <br /> - %s", $errors);
         } else {
             $error = current($errors);
             $message = $this->_("The folder %s is not writable.", $error);
         }
         $this->_addError($message);
         return false;
     }
     return true;
 }
示例#13
0
 protected function _initWhiteLabelEditor()
 {
     try {
         if (Installer_Model_Installer::hasModule("whitelabel")) {
             $this->_white_label_editor = new Whitelabel_Model_Editor();
             $this->_white_label_editor->find($this->getHttpHost(), "host");
             if (!$this->_white_label_editor->isActive()) {
                 $this->_white_label_editor->unsData();
             }
         } else {
             $this->_white_label_editor = new Core_Model_Default(array("is_active" => false));
         }
     } catch (Exception $e) {
     }
     return $this;
 }
示例#14
0
 protected function _canAccessPreviewer()
 {
     return Installer_Model_Installer::hasModule("Previewer");
 }