/** * Load all the resources * @see Zend_Controller_Action::preDispatch() */ public function indexAction() { $session = new Zend_Session_Namespace('setup'); $session->permissions = false; $dirs = array(); $errors = array(); $applicationfolder = true; $publicfolder = true; $dirs[] = PUBLIC_PATH; $dirs[] = PUBLIC_PATH . "/media/"; $dirs[] = PUBLIC_PATH . "/documents/"; $dirs[] = PUBLIC_PATH . "/logs/"; $dirs[] = PUBLIC_PATH . "/imports/"; $dirs[] = PUBLIC_PATH . "/tmp/"; $dirs[] = PUBLIC_PATH . "/cache/"; $dirs[] = APPLICATION_PATH . "/configs/"; $dirs[] = APPLICATION_PATH . "/configs/data/"; $dirs[] = APPLICATION_PATH . "/configs/data/sql/"; // create all the directories foreach ($dirs as $dir) { if (!is_dir($dir)) { if (!@mkdir($dir)) { $errors[] = $dir; } } else { if (!Shineisp_Commons_Utilities::isWritable($dir)) { $errors[] = $dir; } } } // check the public directory if (Shineisp_Commons_Utilities::isWritable(PUBLIC_PATH)) { $this->view->public_folder = true; } else { $this->view->public_folder = false; $publicfolder = false; } // check the application config data directory if (Shineisp_Commons_Utilities::isWritable(APPLICATION_PATH . "/configs/data/")) { $this->view->application_folder = true; } else { $this->view->application_folder = false; $applicationfolder = false; } $this->view->errors = $errors; if ($publicfolder & $applicationfolder && count($errors) == 0) { $session->permissions = true; $this->_helper->redirector('index', 'localization', 'setup'); } else { return $this->_helper->viewRenderer('index'); } }