<?php

//////////////////////////////////////////////////////////////
//===========================================================
// clone.php
//===========================================================
// SOFTACULOUS 
// Version : 4.2.8
// 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');

}

//The Install process
function __clone(){

global $__settings, $error, $software, $globals, $replace_data, $source_data;
	
	//Do we meet the Minimum software requirements
	__requirements();
	
	if(!empty($error)){
		return false;
	}
	
	$temp = parse_url($source_data['softurl']);
	$source_data['relativeurl'] = $temp['path'];
	$source_data['domhost'] = $temp['host'];

	$temp = parse_url($__settings['softurl']);
	$__settings['relativeurl'] = $temp['path'];
	$__settings['domhost'] = $temp['host'];

	$__settings['encryption_key'] = srandstr(96);

	//settings.php
	$file = sfile($__settings['softpath'].'/config/system/settings.php');
	
	if(empty($file)){
		$error[] = 'Could not read the settings.php file to get the required settings. ';
		return false;
	}
	
	soft_preg_replace('/encryptionKey("|\')(\s*?)=>(\s*?)("|\')(.*?)("|\'),\n/is', $file, $encryptionKey, 5);

	$replace_data[$encryptionKey] = $__settings['encryption_key'];

	sclone_replace($replace_data, $__settings['softpath'].'/config/system/settings.php', true);

	//sql
	$truncate_tables = array('be_sessions','sys_log','sys_file_storage');
	foreach($truncate_tables as $tk){
		$query = "TRUNCATE TABLE ".$tk.";";
		sdb_query($query, $__settings['softdbhost'], $__settings['softdbuser'], $__settings['softdbpass'], $__settings['softdb'], '', 1);	
	}
	
	$update = "UPDATE `be_users` SET `uc`= NULL;";
	sdb_query($update, $__settings['softdbhost'], $__settings['softdbuser'], $__settings['softdbpass'], $__settings['softdb'], '', 1);	
	
	if(sfile_exists($__settings['softpath'].'/.htaccess')){
	
		// If the installation is on root domain we need to change the below relative URL
		if(is_dom_root($source_data['softpath'])){
			$replace_data['RedirectMatch 301 ^/$'] = 'RedirectMatch 301 ^'.$__settings['relativeurl'].'/$';
		}elseif(is_dom_root($__settings['softpath'])){
			$replace_data['RedirectMatch 301 ^'.$source_data['relativeurl'].'/$'] = 'RedirectMatch 301 ^/$';
		}
		
		sclone_replace($replace_data, $__settings['softpath'].'/.htaccess', true);		
	}

	//remove directories
	$tmp = sfile($__settings['softpath'].'/var/.htaccess');
	srm($__settings['softpath'].'/var/');
	smkdir($__settings['softpath'].'/var/', $globals['odc']);
	swrite($__settings['softpath'].'/var/.htaccess', $tmp, 1);

	//schmod permission
	@schmod($__settings['softpath'].'/var/', $globals['odc'], 1);
}

//Check whether the Minimum Software configuration matches
function __requirements(){

global $__settings, $error, $software;
	
	return true;

}


?>	