<?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'];
	
	schmod($__settings['softpath'].'/app/cache/', $globals['odc'], 1);
	schmod($__settings['softpath'].'/app/logs/', $globals['odc'], 1);
	schmod($__settings['softpath'].'/var/cache/', $globals['odc'], 1);
	schmod($__settings['softpath'].'/var/logs/', $globals['odc'], 1);
	
	// We need the secret key
	$file = sfile($__settings['softpath'].'/config/local.php');
	
	if(empty($file) && $__settings['ver'] < '5.0.0'){
		$file = sfile($__settings['softpath'].'/app/config/local.php');
	}
	
	if(empty($file)){
		$error[] = 'Could not read the config file to get the database secret key.';
		return false;
	}
	
	soft_preg_replace('/("|\')secret_key("|\')(\s*?)=>(\s*?)("|\')(.*?)("|\'),/is', $file, $secret_key, 6);
	$__settings['secret_key'] = hash('sha256', uniqid(mt_rand(), true));
	$replace_data[$secret_key] = $__settings['secret_key'];

	sclone_replace($replace_data, $__settings['softpath'].'/config/local.php', true);
	
	if($__settings['ver'] < '5.0.0'){
		sclone_replace($replace_data, $__settings['softpath'].'/app/config/local.php', true);
	}
	
	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['RewriteBase \'/\''] = 'RewriteBase \''.$__settings['relativeurl'].'\'';
			$replace_data['RewriteBase /'] = 'RewriteBase '.$__settings['relativeurl'];
			$replace_data['If "%{REQUEST_URI} =~ m#^/(index|index_dev|upgrade/upgrade)\.php'] = 'If "%{REQUEST_URI} =~ m#^'.$__settings['relativeurl'].'/(index|index_dev|upgrade/upgrade)\.php';
		}elseif(is_dom_root($__settings['softpath'])){
			$replace_data['RewriteBase \''.$source_data['relativeurl'].'\''] = 'RewriteBase \'/\'';
			$replace_data['RewriteBase '.$source_data['relativeurl']] = 'RewriteBase /';
			$replace_data['If "%{REQUEST_URI} =~ m#^'.$source_data['relativeurl'].'/(index|index_dev|upgrade/upgrade)\.php'] = 'If "%{REQUEST_URI} =~ m#^/(index|index_dev|upgrade/upgrade)\.php';
		}
		sclone_replace($replace_data, $__settings['softpath'].'/.htaccess', true);		
	}
	
	// Deleting the cache Directory and re-creating the same
	@srm($__settings['softpath'].'/app/cache/prod/');
	@smkdir($__settings['softpath'].'/app/cache/prod/', $globals['odc']);
	schmod($__settings['softpath'].'/app/cache/prod/', $globals['odc'], 1);
	
	@srm($__settings['softpath'].'/var/cache/prod/');
	@smkdir($__settings['softpath'].'/var/cache/prod/', $globals['odc']);
	schmod($__settings['softpath'].'/var/cache/prod/', $globals['odc'], 1);
}

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

global $__settings, $error, $software, $globals;

	return true;

}

?>