<?php
ini_set('include_path', '.');
require_once('env-parser.php');
require_once('file-util.php');
require_once('db-util.php');
require_once('app-util.php');
require_once('upgrade-app.php');
$config_files = array( '/' => array( array('settings.php.in', 'engine/settings.php'), array('htaccess.in', '.htaccess')));
$schema_files = array( 'schema.sql' => 'main' );
$reconf_schema_files = array( 'reconfigure.sql' => 'main' );
$remove_schema_files = array( 'remove.sql' => 'main' );
$psa_params = array ( );
$db_ids = array ( 'main' );
$web_ids = array ( '/' );
$settings_params = array ('site_name', 'admin', 'admin_password', 'admin_email' );
$settings_enum_params = array ( 'locale' => array( 'en-US' => 'en', 'fr-FR' => 'fr', 'de-DE' => 'de' ) );
$crypt_settings_params = array ( );
$psa_modify_hash = get_psa_modify_hash($psa_params);
$db_modify_hash = get_db_modify_hash($db_ids);
$web_modify_hash = get_web_modify_hash($web_ids);
$settings_modify_hash = get_settings_modify_hash($settings_params);
$settings_enum_modify_hash = get_settings_enum_modify_hash($settings_enum_params);
$crypt_settings_modify_hash = get_crypt_settings_modify_hash($crypt_settings_params);
$additional_modify_hash = get_additional_modify_hash();
if(!$db_modify_hash['@@DB_MAIN_PREFIX@@']){
$db_modify_hash['@@DB_MAIN_PREFIX@@'] = 'elgg_';
}
$settings_modify_hash['@@SITE_SECRET@@']=md5(rand() . microtime());
$settings_modify_hash['@@SALT@@']=substr(md5(microtime() . rand()), 0, 8);
$settings_modify_hash['@@ADMIN_PASSWORD@@']=md5($settings_modify_hash['@@ADMIN_PASSWORD@@'].$settings_modify_hash['@@SALT@@']);
$command = $argv[1];
if(count($argv) < 2)
{
print "Usage: configure (install | upgrade <version> | configure | remove)\n";
exit(1);
}
if($command == "upgrade")
{
if($argv[2] && $argv[3]){
//upgrade_app($argv[2], $argv[3], $config_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash);
exit(0);
}
else{
print "Error: upgrade version or release not specified.\n";
exit(1);
}
}
if($command == "install")
{
configure($config_files, $schema_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash);
exit(0);
}
if($command == "remove")
{
remove_app($remove_schema_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash);
exit(0);
}
if($command == "configure")
{
configure($config_files, $reconf_schema_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash);
exit(0);
}
print "Error: unknown command $command.\n";
exit(1);
?>