Example #1
0
    /** METHOD: ResetHTACCESS
     *  Resetst the .htaccess file
     */
    public static function Setup()
    {
        if (!isset($_POST['url_new'])) {
            return;
        }
        DUPX_Log::Info("\nWEB SERVER CONFIGURATION FILE BASIC SETUP:");
        $currdata = parse_url($_POST['url_old']);
        $newdata = parse_url($_POST['url_new']);
        $currpath = DupUtil::add_slash(isset($currdata['path']) ? $currdata['path'] : "");
        $newpath = DupUtil::add_slash(isset($newdata['path']) ? $newdata['path'] : "");
        $tmp_htaccess = <<<HTACCESS
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase {$newpath}
RewriteRule ^index\\.php\$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . {$newpath}index.php [L]
</IfModule>
# END WordPress
HTACCESS;
        file_put_contents('.htaccess', $tmp_htaccess);
        @chmod('.htaccess', 0644);
        DUPX_Log::Info("created basic .htaccess file.  If using IIS web.config this process will need to be done manually.");
    }
Example #2
0
 private static function isPathNew()
 {
     $currdata = parse_url($_POST['url_old']);
     $newdata = parse_url($_POST['url_new']);
     $currpath = DupUtil::add_slash(isset($currdata['path']) ? $currdata['path'] : "");
     $newpath = DupUtil::add_slash(isset($newdata['path']) ? $newdata['path'] : "");
     return $currpath != $newpath;
 }
Example #3
0
$patterns = array("/'WP_HOME',\\s*'.*?'/", "/'WP_SITEURL',\\s*'.*?'/");
$replace = array("'WP_HOME', " . '\'' . $_POST['url_new'] . '\'', "'WP_SITEURL', " . '\'' . $_POST['url_new'] . '\'');
$config_file = @file_get_contents('wp-config.php', true);
$config_file = preg_replace($patterns, $replace, $config_file);
file_put_contents('wp-config.php', $config_file);
//Create Snapshots directory
if (!file_exists(DUPLICATOR_SSDIR_NAME)) {
    mkdir(DUPLICATOR_SSDIR_NAME, 0755);
}
$fp = fopen(DUPLICATOR_SSDIR_NAME . '/index.php', 'w');
fclose($fp);
//WEB CONFIG FILE
$currdata = parse_url($_POST['url_old']);
$newdata = parse_url($_POST['url_new']);
$currpath = DupUtil::add_slash(isset($currdata['path']) ? $currdata['path'] : "");
$newpath = DupUtil::add_slash(isset($newdata['path']) ? $newdata['path'] : "");
if ($currpath != $newpath) {
    DupUtil::log("HTACCESS CHANGES:");
    @copy('.htaccess', '.htaccess.orig');
    @copy('web.config', 'web.config.orig');
    @unlink('.htaccess');
    @unlink('web.config');
    DupUtil::log("created backup of original .htaccess to htaccess.orig and web.config to web.config.orig");
    $tmp_htaccess = <<<HTACCESS

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase {$newpath}
RewriteRule ^index\\.php\$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
Example #4
0
<?php

$dbh = @mysqli_connect($_POST['dbhost'], $_POST['dbuser'], $_POST['dbpass'], $_POST['dbname']);
$all_tables = DupUtil::get_database_tables($dbh);
$active_plugins = DupUtil::get_active_plugins($dbh);
$old_path = $GLOBALS['FW_WPROOT'];
$new_path = DupUtil::set_safe_path($GLOBALS['CURRENT_ROOT_PATH']);
$new_path = strrpos($old_path, '/') + 1 == strlen($old_path) ? DupUtil::add_slash($new_path) : $new_path;
?>

<script type="text/javascript">
	/** **********************************************
	* METHOD:  
	* Timeout (10000000 = 166 minutes) */
	Duplicator.runUpdate = function() {
		
		//Validation
		var wp_username = $.trim($("#wp_username").val()).length || 0;
		var wp_password = $.trim($("#wp_password").val()).length || 0;
		
		if ( $.trim($("#url_new").val()) == "" )  {alert("The 'New URL' field is required!"); return false;}
		if ( $.trim($("#siteurl").val()) == "" )  {alert("The 'Site URL' field is required!"); return false;}
		if (wp_username >= 1 && wp_username < 4) {alert("The New Admin Account 'Username' must be four or more characters"); return false;}
		if (wp_username >= 4 && wp_password < 6) {alert("The New Admin Account 'Password' must be six or more characters"); return false;}

		$.ajax({
			type: "POST",
			timeout: 10000000,
			dataType: "json",			
			url: window.location.href,
			data: $('#dup-step2-input-form').serialize(),