function check_writable_recurse($dirName)
{
    if ($dirName[0] == ".") {
        return true;
    }
    if (!is_dir($dirName)) {
        return false;
    }
    $dirHandle = opendir($dirName);
    while (false !== ($incFile = readdir($dirHandle))) {
        if ($incFile != "." && $incFile != "..") {
            if (is_file("{$dirName}/{$incFile}")) {
                if (!is_writable("{$dirName}/{$incFile}")) {
                    return false;
                } elseif (is_dir("{$dirName}/{$incFile}")) {
                    if (!check_writable_recurse("{$dirName}/{$incFile}")) {
                        return false;
                    }
                }
            }
        }
    }
    echo $incFile;
    return true;
}
Example #2
0
 function step_one()
 {
     $requirements = array();
     if (array_key_exists('HTTP_MOD_REWRITE', $_SERVER)) {
         $requirements['mod_rewrite'] = true;
     } else {
         $requirements['mod_rewrite'] = false;
     }
     $requirements['short_tags'] = ini_get('short_open_tag') == "1";
     $requirements['writable'] = check_writable_recurse(".");
     $requirements['php_version'] = check_php_version("5.0");
     $requirements['mysql_available'] = function_exists("mysql_connect") && function_exists("mysql_select_db") && function_exists("mysql_query");
     $data['requirements'] = $requirements;
     $this->show->backend('maintenance/step_one', $data);
 }
Example #3
0
 function index()
 {
     $current_version = $this->BuilderEngine->get_option('version');
     $remote_version = file_get_contents("http://update-server.builderengine.com/check.php?version=" . $current_version . '&time=' . time());
     if ($current_version == $remote_version) {
         redirect('/admin', 'location');
     }
     $requirements = array();
     $requirements['writable'] = check_writable_recurse(".");
     $requirements['php_version'] = check_php_version("5.0");
     $requirements['mysql_available'] = function_exists("mysql_connect") && function_exists("mysql_select_db") && function_exists("mysql_query");
     $requirements['mod_rewrite'] = getenv(HTTP_MOD_REWRITE) == "On";
     $data['requirements'] = $requirements;
     $this->show->backend('maintenance/update', $data);
 }
Example #4
0
 function index()
 {
     $updates = json_decode($this->update_check());
     if ($updates->result && $updates->available_updates > 0) {
         $requirements = array();
         $requirements['writable'] = check_writable_recurse(".");
         $requirements['php_version'] = check_php_version("5.0");
         $requirements['mysql_available'] = function_exists("mysql_connect") && function_exists("mysql_select_db") && function_exists("mysql_query");
         $requirements['mod_rewrite'] = getenv(HTTP_MOD_REWRITE) == "On";
         $data['requirements'] = $requirements;
         //$this->show->backend('maintenance/update', $data);
         $this->load->helper('bs_progressbar');
         $this->show->backend('maintenance_update', $data);
     } else {
         redirect('/admin', 'location');
         die;
     }
 }