コード例 #1
0
 protected function app_defaults()
 {
     $this->write_progress("\tRunning app_defaults");
     //set needed session settings
     $_SESSION["username"] = $this->admin_username;
     $_SESSION["domain_uuid"] = $this->global_settings->domain_uuid();
     require $this->config_php;
     require "resources/require.php";
     $_SESSION['event_socket_ip_address'] = $this->global_settings->event_host;
     $_SESSION['event_socket_port'] = $this->global_settings->event_port;
     $_SESSION['event_socket_password'] = $this->global_settings->event_password;
     //get the groups assigned to the user and then set the groups in $_SESSION["groups"]
     $sql = "SELECT * FROM v_group_users ";
     $sql .= "where domain_uuid=:domain_uuid ";
     $sql .= "and user_uuid=:user_uuid ";
     $prep_statement = $this->dbh->prepare(check_sql($sql));
     $prep_statement->bindParam(':domain_uuid', $this->global_settings->domain_uuid);
     $prep_statement->bindParam(':user_uuid', $this->admin_uuid);
     $prep_statement->execute();
     $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
     $_SESSION["groups"] = $result;
     unset($sql, $row_count, $prep_statement);
     //get the permissions assigned to the groups that the user is a member of set the permissions in $_SESSION['permissions']
     $x = 0;
     $sql = "select distinct(permission_name) from v_group_permissions ";
     foreach ($_SESSION["groups"] as $field) {
         if (strlen($field['group_name']) > 0) {
             if ($x == 0) {
                 $sql .= "where (domain_uuid = '" . $this->global_settings->domain_uuid . "' and group_name = '" . $field['group_name'] . "') ";
             } else {
                 $sql .= "or (domain_uuid = '" . $this->global_settings->domain_uuid . "' and group_name = '" . $field['group_name'] . "') ";
             }
             $x++;
         }
     }
     $prep_statement_sub = $this->dbh->prepare($sql);
     $prep_statement_sub->execute();
     $_SESSION['permissions'] = $prep_statement_sub->fetchAll(PDO::FETCH_NAMED);
     unset($sql, $prep_statement_sub);
     //include the config.php
     $db_type = $this->global_settings->db_type();
     $db_path = $this->global_settings->db_path();
     $db_host = $this->global_settings->db_host();
     $db_port = $this->global_settings->db_port();
     $db_name = $this->global_settings->db_name();
     $db_username = $this->global_settings->db_username();
     $db_password = $this->global_settings->db_password();
     //add the database structure
     require_once "resources/classes/schema.php";
     $schema = new schema();
     echo $schema->schema();
     //run all app_defaults.php files
     $default_language = $this->install_language;
     $domain = new domains();
     $domain->upgrade();
     //synchronize the config with the saved settings
     save_switch_xml();
     //do not show the apply settings reminder on the login page
     $_SESSION["reload_xml"] = false;
     //clear the menu
     $_SESSION["menu"] = "";
 }
コード例 #2
0
ファイル: install.php プロジェクト: urueedi/fusionpbx
    $prep_statementsub = $db->prepare($sql);
    $prep_statementsub->execute();
    $_SESSION['permissions'] = $prep_statementsub->fetchAll(PDO::FETCH_NAMED);
    unset($sql, $prep_statementsub);
    //make sure the database schema and installation have performed all necessary tasks
    $display_results = false;
    $display_type = 'none';
    require_once "resources/classes/schema.php";
    $obj = new schema();
    $obj->schema($db, $db_type, $db_name, $display_type);
    //run all app_defaults.php files
    require_once "resources/classes/domains.php";
    $domain = new domains();
    $domain->upgrade();
    //synchronize the config with the saved settings
    save_switch_xml();
    //do not show the apply settings reminder on the login page
    $_SESSION["reload_xml"] = false;
    //clear the menu
    $_SESSION["menu"] = "";
    //redirect to the login page
    $msg = "install complete";
    header("Location: " . PROJECT_PATH . "/logout.php?msg=" . urlencode($msg));
}
//set a default template
if (strlen($_SESSION['domain']['template']['name']) == 0) {
    $_SESSION['domain']['template']['name'] = 'enhanced';
}
//get the contents of the template and save it to the template variable
$template = file_get_contents($_SERVER["DOCUMENT_ROOT"] . PROJECT_PATH . '/themes/' . $_SESSION['domain']['template']['name'] . '/template.php');
//buffer the content