/**
  * 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');
     }
 }