Mini Shell
<?php
//////////////////////////////////////////////////////////////
//===========================================================
// edit.php(For individual softwares)
//===========================================================
// SOFTACULOUS
// Version : 1.0
// Inspired by the DESIRE to be the BEST OF ALL
// ----------------------------------------------------------
// Started by: Alons
// Date: 10th Jan 2009
// Time: 21:00 hrs
// Site: http://www.softaculous.com/ (SOFTACULOUS)
// ----------------------------------------------------------
// Please Read the Terms of use at http://www.softaculous.com
// ----------------------------------------------------------
//===========================================================
// (c)Softaculous Inc.
//===========================================================
//////////////////////////////////////////////////////////////
if(!defined('SOFTACULOUS')){
die('Hacking Attempt');
}
/////////////////////////////////////////
// All functions in this PAGE must begin
// with TWO UNDERSCORE '__' to avoid
// clashes with SOFTACULOUS Functions
// e.g. __funcname()
/////////////////////////////////////////
//////////////////////////////////////////
// Note : The path of the upgrade package
// is $software['path'].'/' . So to
// access other files use
// $software['path'].'/other_file.ext'
//////////////////////////////////////////
//The Edit process
function __edit($installation){
global $__settings, $globals, $setupcontinue, $software, $error;
$__settings = $installation;
$__settings['admin_username'] = optPOST('admin_username');
$__settings['admin_pass'] = optPOST('admin_pass');
// Do we need to reset the password ?
if(!empty($__settings['admin_pass'])){
// We need the username
if(empty($__settings['admin_username'])){
$error[] = '{{err_no_username}}';
return false;
}
// This is to get dbprefix from import.php
sp_include_once($software['path'].'/import.php');
$r = call_user_func('__import_'.$software['softname'], $__settings['softpath']);
$__settings['dbprefix'] = $r['dbprefix'];
$__settings['softdbhost'] = $r['softdbhost'];
$__settings['softdbuser'] = $r['softdbuser'];
$__settings['softdbpass'] = $r['softdbpass'];
$__settings['softdb'] = $r['softdb'];
if(!empty($error)){
return false;
}
//This is to retrieve hashed value of admin username from the database
$query = "SELECT `value` FROM `".$__settings['dbprefix']."_lychee_settings` WHERE `key` = 'username';";
$result = sdb_query($query, $__settings['softdbhost'], $__settings['softdbuser'], $__settings['softdbpass'], $__settings['softdb']);
$__settings['admin_username_db'] = $result[0]['value'];
//Creating crypted admin username hash
$__settings['admin_username_crypt'] = crypt($__settings['admin_username'], $__settings['admin_username_db']);
//Verifying admin username db hash with the crypted hash
if(!($__settings['admin_username_db'] === $__settings['admin_username_crypt'])){
$error[] = '{{err_no_such_user}}';
return false;
}else{
// This is to obtain password method from install.php
sp_include_once($software['path'].'/install.php');
//We have commented the $user variable as it reassigns hash value for $__settings['admin_username']
if(sversion_compare(phpversion(), '5.3', '<')){
sconfigure('update_pass.php');
$data = swget($__settings['softurl'].'/update_pass.php');
$data = explode('__softaculous__', $data);
//$user = $data['0'];
$pass = $data['1'];
sunlink($__settings['softpath'].'/update_pass.php');
}else{
//$user = __getHashedString($__settings['admin_username']);
$pass = __getHashedString($__settings['admin_pass']);
}
$__settings['admin_pass'] = $pass;
//$__settings['admin_username'] = $user;
if(!empty($error)){
return false;
}
// Update the password now
$update_query = "UPDATE `".$__settings['dbprefix']."_lychee_settings` SET `value` = '".$__settings['admin_pass']."' WHERE `key` = 'password';";
$result = sdb_query($update_query, $__settings['softdbhost'], $__settings['softdbuser'], $__settings['softdbpass'], $__settings['softdb']);
}
}
}
?>
Zerion Mini Shell 1.0