Example #1
0
function install_content(&$a)
{
    notice(t('Welcome to the Mistpark Social Network.') . EOL);
    $o .= check_htconfig();
    if (strlen($o)) {
        return $o;
    }
    if (strlen($a->data)) {
        $o .= manual_config($a);
        return;
    }
    $o .= check_php($phpath);
    require_once 'datetime.php';
    $tpl = file_get_contents('view/install_db.tpl');
    $o .= replace_macros($tpl, array('$tzselect' => x($_POST, 'timezone') ? select_timezone($_POST['timezone']) : select_timezone(), '$submit' => t('Submit'), '$dbhost' => x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : 'localhost', '$dbuser' => notags(trim($_POST['dbuser'])), '$dbpass' => notags(trim($_POST['dbpass'])), '$dbdata' => notags(trim($_POST['dbdata'])), '$phpath' => $phpath));
    return $o;
}
Example #2
0
function install_content(&$a)
{
    global $install_wizard_pass, $db;
    $o = '';
    $wizard_status = "";
    $install_title = t('Friendica Social Communications Server - Setup');
    if (x($a->data, 'db_conn_failed')) {
        $install_wizard_pass = 2;
        $wizard_status = t('Could not connect to database.');
    }
    if (x($a->data, 'db_create_failed')) {
        $install_wizard_pass = 2;
        $wizard_status = t('Could not create table.');
    }
    $db_return_text = "";
    if (x($a->data, 'db_installed')) {
        $txt = '<p style="font-size: 130%;">';
        $txt .= t('Your Friendica site database has been installed.') . EOL;
        $db_return_text .= $txt;
    }
    if (x($a->data, 'db_failed')) {
        $txt = t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL;
        $txt .= t('Please see the file "INSTALL.txt".') . EOL . "<hr>";
        $txt .= "<pre>" . $a->data['db_failed'] . "</pre>" . EOL;
        $db_return_text .= $txt;
    }
    if ($db && $db->connected) {
        $r = q("SELECT COUNT(*) as `total` FROM `user`");
        if ($r && count($r) && $r[0]['total']) {
            $tpl = get_markup_template('install.tpl');
            return replace_macros($tpl, array('$title' => $install_title, '$pass' => '', '$status' => t('Permission denied.'), '$text' => ''));
        }
    }
    if (x($a->data, 'txt') && strlen($a->data['txt'])) {
        $db_return_text .= manual_config($a);
    }
    if ($db_return_text != "") {
        $tpl = get_markup_template('install.tpl');
        return replace_macros($tpl, array('$title' => $install_title, '$pass' => "", '$text' => $db_return_text . what_next()));
    }
    switch ($install_wizard_pass) {
        case 1:
            // System check
            $checks = array();
            check_funcs($checks);
            check_htconfig($checks);
            check_smarty3($checks);
            check_keys($checks);
            if (x($_POST, 'phpath')) {
                $phpath = notags(trim($_POST['phpath']));
            }
            check_php($phpath, $checks);
            check_htaccess($checks);
            function check_passed($v, $c)
            {
                if ($c['required']) {
                    $v = $v && $c['status'];
                }
                return $v;
            }
            $checkspassed = array_reduce($checks, "check_passed", true);
            $tpl = get_markup_template('install_checks.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('System check'), '$checks' => $checks, '$passed' => $checkspassed, '$see_install' => t('Please see the file "INSTALL.txt".'), '$next' => t('Next'), '$reload' => t('Check again'), '$phpath' => $phpath, '$baseurl' => $a->get_baseurl()));
            return $o;
            break;
        case 2:
            // Database config
            $dbhost = x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : 'localhost';
            $dbuser = notags(trim($_POST['dbuser']));
            $dbpass = notags(trim($_POST['dbpass']));
            $dbdata = notags(trim($_POST['dbdata']));
            $phpath = notags(trim($_POST['phpath']));
            $tpl = get_markup_template('install_db.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('Database connection'), '$info_01' => t('In order to install Friendica we need to know how to connect to your database.'), '$info_02' => t('Please contact your hosting provider or site administrator if you have questions about these settings.'), '$info_03' => t('The database you specify below should already exist. If it does not, please create it before continuing.'), '$status' => $wizard_status, '$dbhost' => array('dbhost', t('Database Server Name'), $dbhost, ''), '$dbuser' => array('dbuser', t('Database Login Name'), $dbuser, ''), '$dbpass' => array('dbpass', t('Database Login Password'), $dbpass, ''), '$dbdata' => array('dbdata', t('Database Name'), $dbdata, ''), '$adminmail' => array('adminmail', t('Site administrator email address'), $adminmail, t('Your account email address must match this in order to use the web admin panel.')), '$lbl_10' => t('Please select a default timezone for your website'), '$baseurl' => $a->get_baseurl(), '$phpath' => $phpath, '$submit' => t('Submit')));
            return $o;
            break;
        case 3:
            // Site settings
            require_once 'include/datetime.php';
            $dbhost = x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : 'localhost';
            $dbuser = notags(trim($_POST['dbuser']));
            $dbpass = notags(trim($_POST['dbpass']));
            $dbdata = notags(trim($_POST['dbdata']));
            $phpath = notags(trim($_POST['phpath']));
            $adminmail = notags(trim($_POST['adminmail']));
            $timezone = x($_POST, 'timezone') ? $_POST['timezone'] : 'America/Los_Angeles';
            $tpl = get_markup_template('install_settings.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('Site settings'), '$status' => $wizard_status, '$dbhost' => $dbhost, '$dbuser' => $dbuser, '$dbpass' => $dbpass, '$dbdata' => $dbdata, '$phpath' => $phpath, '$adminmail' => array('adminmail', t('Site administrator email address'), $adminmail, t('Your account email address must match this in order to use the web admin panel.')), '$timezone' => field_timezone('timezone', t('Please select a default timezone for your website'), $timezone, ''), '$baseurl' => $a->get_baseurl(), '$submit' => t('Submit')));
            return $o;
            break;
    }
}
Example #3
0
 *  Sentrifugo Support <*****@*****.**>
 ********************************************************************************/
function getPHPVersion()
{
    $prereq = array('php' => '5.3', 'mysql' => '5.0');
    return $prereq['php'];
}
function check_php()
{
    return version_compare(PHP_VERSION, getPHPVersion()) >= 0;
}
function check_mysql()
{
    return extension_loaded('mysqli');
}
$req_arr = array('php' => check_php(), 'pdo_mysql' => extension_loaded('pdo_mysql'), 'gd' => extension_loaded('gd'), 'openssl' => extension_loaded('openssl'));
$req_html_arr = array('php' => "PHP v5.3 or greater", "pdo_mysql" => "PDO-Mysql extension for PHP (pdo_mysql)", "gd" => "GD Library (gd)", 'openssl' => "Open SSL (openssl)");
$stat_arr = array(0 => "No", 1 => "Yes");
chdir("../");
$writable_paths = array(getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "downloads", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "uploads", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "email_constants.php", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "emptabconfigure.php", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "site_constants.php", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "db_constants.php", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "application_constants.php", getcwd() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "mail_settings_constants.php", getcwd() . DIRECTORY_SEPARATOR . "logs" . DIRECTORY_SEPARATOR . "application.log", getcwd() . DIRECTORY_SEPARATOR . "application" . DIRECTORY_SEPARATOR . "modules" . DIRECTORY_SEPARATOR . "default" . DIRECTORY_SEPARATOR . "plugins" . DIRECTORY_SEPARATOR . "AccessControl.php", getcwd() . DIRECTORY_SEPARATOR . "install");
?>
<form name="frmstep1" id="frmstep1" method="post" action="" class="frm_install">
    <h3 class="page_title">Pre-requisites</h3>
    <div class="content_part">
<ul class="progress">
<?php 
$cnt = 0;
foreach ($req_arr as $req => $req_value) {
    if ($req_value == 0) {
        $cnt++;
    }
Example #4
0
function output_page($source)
{
    ?>

    <!DOCTYPE html><html dir="ltr" class="ltr_page" lang=en>
        <head>
            <meta charset="utf-8" />
            <link href="../modules/core/site.css" media="all" rel="stylesheet" type="text/css" />
            <title>Cypht Setup</title>
            <?php 
    page_style();
    ?>
        </head>
        <body>
            <form method="post">
                <table class="settings_table config_settings">
                    <?php 
    echo check_php();
    ?>
                    <?php 
    echo config_source($source);
    ?>
                    <?php 
    output_settings(read_config($source));
    ?>
                </table>
            </form>
        </body>
    </html>

<?php 
}
Example #5
0
    $curr_lang = $GLOBALS['current_language'];
}
return_module_language($curr_lang, 'UpgradeWizard');
logThis('at preflight.php');
//set the upgrade progress status.
set_upgrade_progress('preflight', 'in_progress');
$php_warnings = '';
if (version_compare(phpversion(), '5.2.0') >= 0) {
    $stop = true;
    // flag to show "next"
    if (isset($_SESSION['files'])) {
        unset($_SESSION['files']);
    }
    $errors = preflightCheck();
    $php_version = constant('PHP_VERSION');
    if (check_php($php_version) == -1) {
        $phpVersion = "<b><span class=stop>{$mod_strings['ERR_CHECKSYS_PHP_INVALID_VER']} {$php_version} </span></b>";
        $error_txt = '<span class="error">' . $phpVersion . '</span>';
        if (count($errors) == 0) {
            $errors[] = '';
        }
        $errors[] = $error_txt;
        logThis($error_txt);
    }
    $diffs = '';
    $schema = '';
    $anyScriptChanges = '';
    $db =& DBManagerFactory::getInstance();
    //Quickcreatedefs on the basis of editviewdefs
    if (substr($sugar_version, 0, 1) >= 5) {
        updateQuickCreateDefs();
Example #6
0
$path = $http_type . $_SERVER['HTTP_HOST'] . $path;
// Check to make sure the config file exists. If it doesn't then go ahead and
// send them over to the install script.
$results = array();
if (!file_exists($configfile)) {
    $link = $path . '/install.php';
} else {
    // Make sure the config file is set up and parsable
    $results = @parse_ini_file($configfile);
    if (!count($results)) {
        $link = $path . '/test.php?action=config';
    }
}
// Verify that a few important but commonly disabled PHP functions exist and
// that we're on a usable version
if (!check_php()) {
    $link = $path . '/test.php';
}
// Do the redirect if we can't continue
if (!empty($link)) {
    header("Location: {$link}");
    exit;
}
$results['load_time_begin'] = $load_time_begin;
/** This is the version.... fluf nothing more... **/
$results['version'] = '3.7.0';
$results['int_config_version'] = '16';
if (!empty($results['force_ssl'])) {
    $http_type = 'https://';
}
if ($ow_config) {
Example #7
0
    if ($maj == 5 && $min >= 3) {
        return true;
    } elseif ($maj > 5) {
        return true;
    } else {
        return false;
    }
}
if (isset($_POST['calibre_dir'])) {
    $calibre_dir = $_POST['calibre_dir'];
    $cd = check_calibre($calibre_dir);
} else {
    $calibre_dir = null;
    $cd = null;
}
$srv = $_SERVER['SERVER_SOFTWARE'];
$is_a = is_apache($srv);
if ($is_a) {
    $mre = mod_rewrite_enabled();
} else {
    $mre = false;
}
$gdv = get_gd_version();
if ($gdv >= 2) {
    $gde = true;
} else {
    $gde = false;
}
$template = $twig->loadTemplate('installcheck.html');
echo $template->render(array('page' => array('rot' => '', 'version' => '1.3.3'), 'is_a' => $is_a, 'srv' => $srv, 'mre' => $mre, 'calibre_dir' => $calibre_dir, 'cd' => $cd, 'htaccess' => file_exists('./.htaccess'), 'hsql' => has_sqlite(), 'hgd2' => $gde, 'hgd2v' => $gdv, 'dwrit' => fw('./data'), 'intl' => extension_loaded('intl'), 'mcrypt' => extension_loaded('mcrypt'), 'mwrit' => fw('./data/data.db'), 'opd' => ini_get('open_basedir'), 'php' => check_php(), 'phpv' => phpversion()));
#echo phpinfo();
Example #8
0
/**
 * @brief Get output for the setup page.
 *
 * Depending on the state we are currently in it returns different content.
 *
 * @param App &$a
 * @return string parsed HTML output
 */
function setup_content(&$a)
{
    global $install_wizard_pass, $db;
    $o = '';
    $wizard_status = '';
    $install_title = t('$Projectname Server - Setup');
    if (x(App::$data, 'db_conn_failed')) {
        $install_wizard_pass = 2;
        $wizard_status = t('Could not connect to database.');
    }
    if (x(App::$data, 'url_fail')) {
        $install_wizard_pass = 3;
        $wizard_status = t('Could not connect to specified site URL. Possible SSL certificate or DNS issue.');
        if (App::$data['url_error']) {
            $wizard_status .= ' ' . App::$data['url_error'];
        }
    }
    if (x(App::$data, 'db_create_failed')) {
        $install_wizard_pass = 2;
        $wizard_status = t('Could not create table.');
    }
    $db_return_text = '';
    if (x(App::$data, 'db_installed')) {
        $txt = '<p style="font-size: 130%;">';
        $txt .= t('Your site database has been installed.') . EOL;
        $db_return_text .= $txt;
    }
    if (x(App::$data, 'db_failed')) {
        $txt = t('You may need to import the file "install/schema_xxx.sql" manually using a database client.') . EOL;
        $txt .= t('Please see the file "install/INSTALL.txt".') . EOL . "<hr>";
        $txt .= "<pre>" . App::$data['db_failed'] . "</pre>" . EOL;
        $db_return_text .= $txt;
    }
    if ($db && $db->connected) {
        $r = q("SELECT COUNT(*) as `total` FROM `account`");
        if ($r && count($r) && $r[0]['total']) {
            $tpl = get_markup_template('install.tpl');
            return replace_macros($tpl, array('$title' => $install_title, '$pass' => '', '$status' => t('Permission denied.'), '$text' => ''));
        }
    }
    if (x(App::$data, 'txt') && strlen(App::$data['txt'])) {
        $db_return_text .= manual_config($a);
    }
    if ($db_return_text != "") {
        $tpl = get_markup_template('install.tpl');
        return replace_macros($tpl, array('$title' => $install_title, '$pass' => '', '$text' => $db_return_text . what_next()));
    }
    switch ($install_wizard_pass) {
        case 1:
            // System check
            $checks = array();
            check_funcs($checks);
            check_htconfig($checks);
            check_store($checks);
            check_smarty3($checks);
            check_keys($checks);
            if (x($_POST, 'phpath')) {
                $phpath = notags(trim($_POST['phpath']));
            }
            check_php($phpath, $checks);
            check_phpconfig($checks);
            check_htaccess($checks);
            function check_passed($v, $c)
            {
                if ($c['required']) {
                    $v = $v && $c['status'];
                }
                return $v;
            }
            $checkspassed = array_reduce($checks, "check_passed", true);
            $tpl = get_markup_template('install_checks.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('System check'), '$checks' => $checks, '$passed' => $checkspassed, '$see_install' => t('Please see the file "install/INSTALL.txt".'), '$next' => t('Next'), '$reload' => t('Check again'), '$phpath' => $phpath, '$baseurl' => z_root()));
            return $o;
            break;
        case 2:
            // Database config
            $dbhost = x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : '127.0.0.1';
            $dbuser = notags(trim($_POST['dbuser']));
            $dbport = intval(notags(trim($_POST['dbport'])));
            $dbpass = notags(trim($_POST['dbpass']));
            $dbdata = notags(trim($_POST['dbdata']));
            $dbtype = intval(notags(trim($_POST['dbtype'])));
            $phpath = notags(trim($_POST['phpath']));
            $adminmail = notags(trim($_POST['adminmail']));
            $siteurl = notags(trim($_POST['siteurl']));
            $tpl = get_markup_template('install_db.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('Database connection'), '$info_01' => t('In order to install $Projectname we need to know how to connect to your database.'), '$info_02' => t('Please contact your hosting provider or site administrator if you have questions about these settings.'), '$info_03' => t('The database you specify below should already exist. If it does not, please create it before continuing.'), '$status' => $wizard_status, '$dbhost' => array('dbhost', t('Database Server Name'), $dbhost, t('Default is 127.0.0.1')), '$dbport' => array('dbport', t('Database Port'), $dbport, t('Communication port number - use 0 for default')), '$dbuser' => array('dbuser', t('Database Login Name'), $dbuser, ''), '$dbpass' => array('dbpass', t('Database Login Password'), $dbpass, ''), '$dbdata' => array('dbdata', t('Database Name'), $dbdata, ''), '$dbtype' => array('dbtype', t('Database Type'), $dbtype, '', array(0 => 'MySQL', 1 => 'PostgreSQL')), '$adminmail' => array('adminmail', t('Site administrator email address'), $adminmail, t('Your account email address must match this in order to use the web admin panel.')), '$siteurl' => array('siteurl', t('Website URL'), z_root(), t('Please use SSL (https) URL if available.')), '$lbl_10' => t('Please select a default timezone for your website'), '$baseurl' => z_root(), '$phpath' => $phpath, '$submit' => t('Submit')));
            return $o;
            break;
        case 3:
            // Site settings
            require_once 'include/datetime.php';
            $dbhost = x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : '127.0.0.1';
            $dbport = intval(notags(trim($_POST['dbuser'])));
            $dbuser = notags(trim($_POST['dbuser']));
            $dbpass = notags(trim($_POST['dbpass']));
            $dbdata = notags(trim($_POST['dbdata']));
            $dbtype = intval(notags(trim($_POST['dbtype'])));
            $phpath = notags(trim($_POST['phpath']));
            $adminmail = notags(trim($_POST['adminmail']));
            $siteurl = notags(trim($_POST['siteurl']));
            $timezone = x($_POST, 'timezone') ? $_POST['timezone'] : 'America/Los_Angeles';
            $tpl = get_markup_template('install_settings.tpl');
            $o .= replace_macros($tpl, array('$title' => $install_title, '$pass' => t('Site settings'), '$status' => $wizard_status, '$dbhost' => $dbhost, '$dbport' => $dbport, '$dbuser' => $dbuser, '$dbpass' => $dbpass, '$dbdata' => $dbdata, '$phpath' => $phpath, '$dbtype' => $dbtype, '$adminmail' => array('adminmail', t('Site administrator email address'), $adminmail, t('Your account email address must match this in order to use the web admin panel.')), '$siteurl' => array('siteurl', t('Website URL'), z_root(), t('Please use SSL (https) URL if available.')), '$advanced' => array('advanced', t('Enable $Projectname <strong>advanced</strong> features?'), 1, t('Some advanced features, while useful - may be best suited for technically proficient audiences')), '$timezone' => array('timezone', t('Please select a default timezone for your website'), $timezone, '', get_timezones()), '$baseurl' => z_root(), '$submit' => t('Submit')));
            return $o;
            break;
    }
}
Example #9
0
}
// Check to make sure the config file exists. If it doesn't then go ahead and
// send them over to the install script.
$results = array();
if (!file_exists($configfile)) {
    $link = $path . '/install.php';
} else {
    // Make sure the config file is set up and parsable
    $results = @parse_ini_file($configfile);
    if (!count($results)) {
        $link = $path . '/test.php?action=config';
    }
}
// Verify that a few important but commonly disabled PHP functions exist and
// that we're on a usable version
if (!check_php() || !check_dependencies_folder()) {
    $link = $path . '/test.php';
}
// Do the redirect if we can't continue
if (!empty($link)) {
    header("Location: {$link}");
    exit;
}
$results['load_time_begin'] = $load_time_begin;
/** This is the version.... fluf nothing more... **/
$results['version'] = '3.8.2';
$results['int_config_version'] = '33';
if (!empty($results['force_ssl'])) {
    $http_type = 'https://';
}
if (isset($ow_config) && is_array($ow_config)) {
Example #10
0
         }
         display_list_stop();
         display_link("Corrigez et cliquez ici pour r&eacute;essayer", 'index.php?step=' . $step);
     } else {
         display_message(_LOGO_GOOD . "Les droits sur les fichiers et r&eacute;pertoires sont corrects");
         // On vide le cache, si jamais il y en a :
         $tools = new Demo_Tools();
         $folder = COPIX_TEMP_PATH . 'cache';
         $tools->dirempty($folder);
         display_link("Cliquez ici pour continuer", 'index.php?step=' . ($step + 1));
     }
     break;
 case 3:
     display_menu();
     display_title();
     $data = check_php();
     foreach ($data['errors'] as $error) {
         $msg = '';
         if ($error['level'] == 'error') {
             $msg .= _LOGO_ERROR;
         } elseif ($error['level'] == 'warning') {
             $msg .= _LOGO_WARNING;
         } elseif ($error['level'] == 'good') {
             $msg .= _LOGO_GOOD;
         }
         $msg .= $error['message'];
         display_message($msg);
     }
     if (!$data['caninstall']) {
         display_link("Corrigez et cliquez ici pour r&eacute;essayer", 'index.php?step=' . $step);
     } else {
Example #11
0
function install_content(&$a)
{
    global $db;
    $o = '';
    if (x($a->data, 'db_installed')) {
        $o .= '<h2>' . t('Proceed with Installation') . '</h2>';
        $o .= '<p style="font-size: 130%;">';
        $o .= t('Your Friendica site database has been installed.') . EOL;
        $o .= t('IMPORTANT: You will need to [manually] setup a scheduled task for the poller.') . EOL;
        $o .= t('Please see the file "INSTALL.txt".') . EOL;
        $o .= '<br />';
        $o .= '<a href="' . $a->get_baseurl() . '/register' . '">' . t('Proceed to registration') . '</a>';
        $o .= '</p>';
        return $o;
    }
    if (x($a->data, 'db_failed')) {
        $o .= t('Database import failed.') . EOL;
        $o .= t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL;
        $o .= t('Please see the file "INSTALL.txt".') . EOL;
        return $o;
    }
    if ($db && $db->connected) {
        $r = q("SELECT COUNT(*) as `total` FROM `user`");
        if ($r && count($r) && $r[0]['total']) {
            notice(t('Permission denied.') . EOL);
            return '';
        }
    }
    info(t('Welcome to Friendica.') . EOL);
    check_funcs();
    $o .= check_htconfig();
    if (strlen($o)) {
        return $o;
    }
    if (strlen($a->data['txt'])) {
        $o .= manual_config($a);
        return;
    }
    $o .= check_php($phpath);
    $o .= check_keys();
    require_once 'datetime.php';
    $tpl = get_markup_template('install_db.tpl');
    $o .= replace_macros($tpl, array('$lbl_01' => t('Friendica Social Communications Server'), '$lbl_02' => t('Installation'), '$lbl_03' => t('In order to install Friendica we need to know how to connect to your database.'), '$lbl_04' => t('Please contact your hosting provider or site administrator if you have questions about these settings.'), '$lbl_05' => t('The database you specify below should already exist. If it does not, please create it before continuing.'), '$lbl_06' => t('Database Server Name'), '$lbl_07' => t('Database Login Name'), '$lbl_08' => t('Database Login Password'), '$lbl_09' => t('Database Name'), '$lbl_10' => t('Please select a default timezone for your website'), '$lbl_11' => t('Site administrator email address. Your account email address must match this in order to use the web admin panel.'), '$baseurl' => $a->get_baseurl(), '$tzselect' => x($_POST, 'timezone') ? select_timezone($_POST['timezone']) : select_timezone(), '$submit' => t('Submit'), '$dbhost' => x($_POST, 'dbhost') ? notags(trim($_POST['dbhost'])) : 'localhost', '$dbuser' => notags(trim($_POST['dbuser'])), '$dbpass' => notags(trim($_POST['dbpass'])), '$dbdata' => notags(trim($_POST['dbdata'])), '$phpath' => $phpath, '$adminmail' => notags(trim($_POST['adminmail']))));
    return $o;
}