Version Description
Download this release
Release Info
Developer | cory@lamle.org |
Plugin | Duplicator – WordPress Migration Plugin |
Version | 1.2.48 |
Comparing to | |
See all releases |
Code changes from version 1.2.46 to 1.2.48
- define.php +1 -1
- duplicator.php +1 -1
- installer/build/assets/inc.css.php +2 -1
- installer/build/ctrls/ctrl.step1.php +4 -14
- installer/build/ctrls/ctrl.step2.php +14 -16
- installer/build/view.help.php +2 -2
- installer/build/view.step1.php +48 -39
- installer/build/view.step2.php +15 -9
- installer/build/view.step3.php +5 -7
- installer/build/view.step4.php +3 -4
- readme.txt +1 -1
- views/settings/packages.php +2 -2
define.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
//Prevent directly browsing to the file
|
3 |
if (function_exists('plugin_dir_url'))
|
4 |
{
|
5 |
-
define('DUPLICATOR_VERSION', '1.2.
|
6 |
define('DUPLICATOR_HOMEPAGE', 'https://snapcreek.com/duplicator/duplicator-free/');
|
7 |
define('DUPLICATOR_PLUGIN_URL', plugin_dir_url(__FILE__));
|
8 |
define('DUPLICATOR_SITE_URL', get_site_url());
|
2 |
//Prevent directly browsing to the file
|
3 |
if (function_exists('plugin_dir_url'))
|
4 |
{
|
5 |
+
define('DUPLICATOR_VERSION', '1.2.48');
|
6 |
define('DUPLICATOR_HOMEPAGE', 'https://snapcreek.com/duplicator/duplicator-free/');
|
7 |
define('DUPLICATOR_PLUGIN_URL', plugin_dir_url(__FILE__));
|
8 |
define('DUPLICATOR_SITE_URL', get_site_url());
|
duplicator.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Duplicator
|
4 |
Plugin URI: https://snapcreek.com/duplicator/duplicator-free/
|
5 |
Description: Migrate and backup a copy of your WordPress files and database. Duplicate and move a site from one location to another quickly.
|
6 |
-
Version: 1.2.
|
7 |
Author: Snap Creek
|
8 |
Author URI: http://www.snapcreek.com/duplicator/
|
9 |
Text Domain: duplicator
|
3 |
Plugin Name: Duplicator
|
4 |
Plugin URI: https://snapcreek.com/duplicator/duplicator-free/
|
5 |
Description: Migrate and backup a copy of your WordPress files and database. Duplicate and move a site from one location to another quickly.
|
6 |
+
Version: 1.2.48
|
7 |
Author: Snap Creek
|
8 |
Author URI: http://www.snapcreek.com/duplicator/
|
9 |
Text Domain: duplicator
|
installer/build/assets/inc.css.php
CHANGED
@@ -89,6 +89,7 @@
|
|
89 |
STEP 1 VIEW
|
90 |
====================================== */
|
91 |
table.s1-archive-local {width:100%}
|
|
|
92 |
table.s1-archive-local td {padding:4px 4px 4px 4px}
|
93 |
table.s1-archive-local td:first-child {font-weight:bold; width:55px}
|
94 |
div#s1-area-sys-setup {padding:5px 0 0 10px}
|
@@ -108,7 +109,7 @@
|
|
108 |
div.s1-reqs div.title:hover {background-color:#dfdfdf; cursor:pointer}
|
109 |
div.s1-reqs div.info {padding:8px 8px 20px 8px; background-color:#fff; display:none; line-height:18px; font-size: 12px}
|
110 |
div.s1-reqs div.info a {color:#485AA3;}
|
111 |
-
div.s1-archive-failed-msg {padding:15px; border:1px dashed
|
112 |
div.s1-err-msg {padding:8px; border:1px dashed #999; margin:20px 0 20px 0px; border-radius:5px; color:maroon}
|
113 |
|
114 |
/*Terms and Notices*/
|
89 |
STEP 1 VIEW
|
90 |
====================================== */
|
91 |
table.s1-archive-local {width:100%}
|
92 |
+
table.s1-archive-local tr {vertical-align:top}
|
93 |
table.s1-archive-local td {padding:4px 4px 4px 4px}
|
94 |
table.s1-archive-local td:first-child {font-weight:bold; width:55px}
|
95 |
div#s1-area-sys-setup {padding:5px 0 0 10px}
|
109 |
div.s1-reqs div.title:hover {background-color:#dfdfdf; cursor:pointer}
|
110 |
div.s1-reqs div.info {padding:8px 8px 20px 8px; background-color:#fff; display:none; line-height:18px; font-size: 12px}
|
111 |
div.s1-reqs div.info a {color:#485AA3;}
|
112 |
+
div.s1-archive-failed-msg {padding:15px; border:1px dashed maroon; font-size: 12px; border-radius:5px;}
|
113 |
div.s1-err-msg {padding:8px; border:1px dashed #999; margin:20px 0 20px 0px; border-radius:5px; color:maroon}
|
114 |
|
115 |
/*Terms and Notices*/
|
installer/build/ctrls/ctrl.step1.php
CHANGED
@@ -1,7 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
//POST PARAMS
|
4 |
-
$_POST['archive_name'] = isset($_POST['archive_name']) ? $_POST['archive_name'] : null;
|
5 |
$_POST['archive_engine'] = isset($_POST['archive_engine']) ? $_POST['archive_engine'] : 'manual';
|
6 |
$_POST['archive_filetime'] = (isset($_POST['archive_filetime'])) ? $_POST['archive_filetime'] : 'current';
|
7 |
$_POST['retain_config'] = (isset($_POST['retain_config']) && $_POST['retain_config'] == '1') ? true : false;
|
@@ -15,7 +14,7 @@ ksort($POST_LOG);
|
|
15 |
$php_max_time = @ini_get("max_execution_time");
|
16 |
$php_max_time = ($php_max_time == 0) ? "[0] time limit restriction disabled" : "[{$php_max_time}] time limit restriction enabled";
|
17 |
$root_path = DUPX_U::setSafePath($GLOBALS['CURRENT_ROOT_PATH']);
|
18 |
-
$package_path = "{$root_path}/{$
|
19 |
$ajax1_start = DUPX_U::getMicrotime();
|
20 |
$zip_support = class_exists('ZipArchive') ? 'Enabled' : 'Not Enabled';
|
21 |
$JSON = array();
|
@@ -77,8 +76,8 @@ DUPX_Log::info($log, 2);
|
|
77 |
$log = "--------------------------------------\n";
|
78 |
$log .= "ARCHIVE EXTRACTION\n";
|
79 |
$log .= "--------------------------------------\n";
|
80 |
-
$log .= "NAME:\t{$
|
81 |
-
$log .= "SIZE:\t".DUPX_U::readableByteSize(@filesize($
|
82 |
$log .= "ZIP:\t{$zip_support} (ZipArchive Support)";
|
83 |
DUPX_Log::info($log);
|
84 |
|
@@ -86,15 +85,6 @@ DUPX_Log::info($log);
|
|
86 |
if ($_POST['archive_engine'] == 'manual') {
|
87 |
DUPX_Log::info("\n** PACKAGE EXTRACTION IS IN MANUAL MODE ** \n");
|
88 |
} else {
|
89 |
-
if ($GLOBALS['FW_PACKAGE_NAME'] != $_POST['archive_name']) {
|
90 |
-
$log = "\n--------------------------------------\n";
|
91 |
-
$log .= "WARNING: This package set may be incompatible! \nBelow is a summary of the package this installer was built with and the package used. \n";
|
92 |
-
$log .= "To guarantee accuracy the installer and archive should match. For details see the online FAQs.";
|
93 |
-
$log .= "\nCREATED WITH:\t{$GLOBALS['FW_PACKAGE_NAME']} \nPROCESSED WITH:\t{$_POST['archive_name']} \n";
|
94 |
-
$log .= "--------------------------------------\n";
|
95 |
-
DUPX_Log::info($log);
|
96 |
-
}
|
97 |
-
|
98 |
if (!class_exists('ZipArchive')) {
|
99 |
DUPX_Log::info("ERROR: Stopping install process. Trying to extract without ZipArchive module installed. Please use the 'Manual Package extraction' mode to extract zip file.");
|
100 |
DUPX_Log::error(ERR_ZIPARCHIVE);
|
@@ -102,7 +92,7 @@ if ($_POST['archive_engine'] == 'manual') {
|
|
102 |
|
103 |
$target = $root_path;
|
104 |
$zip = new ZipArchive();
|
105 |
-
if ($zip->open($
|
106 |
|
107 |
DUPX_Log::info("\n>>> START EXTRACTION:");
|
108 |
if (!$zip->extractTo($target)) {
|
1 |
<?php
|
2 |
|
3 |
//POST PARAMS
|
|
|
4 |
$_POST['archive_engine'] = isset($_POST['archive_engine']) ? $_POST['archive_engine'] : 'manual';
|
5 |
$_POST['archive_filetime'] = (isset($_POST['archive_filetime'])) ? $_POST['archive_filetime'] : 'current';
|
6 |
$_POST['retain_config'] = (isset($_POST['retain_config']) && $_POST['retain_config'] == '1') ? true : false;
|
14 |
$php_max_time = @ini_get("max_execution_time");
|
15 |
$php_max_time = ($php_max_time == 0) ? "[0] time limit restriction disabled" : "[{$php_max_time}] time limit restriction enabled";
|
16 |
$root_path = DUPX_U::setSafePath($GLOBALS['CURRENT_ROOT_PATH']);
|
17 |
+
$package_path = "{$root_path}/{$GLOBALS['FW_PACKAGE_NAME']}";
|
18 |
$ajax1_start = DUPX_U::getMicrotime();
|
19 |
$zip_support = class_exists('ZipArchive') ? 'Enabled' : 'Not Enabled';
|
20 |
$JSON = array();
|
76 |
$log = "--------------------------------------\n";
|
77 |
$log .= "ARCHIVE EXTRACTION\n";
|
78 |
$log .= "--------------------------------------\n";
|
79 |
+
$log .= "NAME:\t{$GLOBALS['FW_PACKAGE_NAME']}\n";
|
80 |
+
$log .= "SIZE:\t".DUPX_U::readableByteSize(@filesize($GLOBALS['FW_PACKAGE_NAME']))."\n";
|
81 |
$log .= "ZIP:\t{$zip_support} (ZipArchive Support)";
|
82 |
DUPX_Log::info($log);
|
83 |
|
85 |
if ($_POST['archive_engine'] == 'manual') {
|
86 |
DUPX_Log::info("\n** PACKAGE EXTRACTION IS IN MANUAL MODE ** \n");
|
87 |
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
if (!class_exists('ZipArchive')) {
|
89 |
DUPX_Log::info("ERROR: Stopping install process. Trying to extract without ZipArchive module installed. Please use the 'Manual Package extraction' mode to extract zip file.");
|
90 |
DUPX_Log::error(ERR_ZIPARCHIVE);
|
92 |
|
93 |
$target = $root_path;
|
94 |
$zip = new ZipArchive();
|
95 |
+
if ($zip->open($GLOBALS['FW_PACKAGE_NAME']) === TRUE) {
|
96 |
|
97 |
DUPX_Log::info("\n>>> START EXTRACTION:");
|
98 |
if (!$zip->extractTo($target)) {
|
installer/build/ctrls/ctrl.step2.php
CHANGED
@@ -11,7 +11,6 @@ $_POST['dbnbsp'] = (isset($_POST['dbnbsp']) && $_POST['dbnbsp'] == '1') ? true
|
|
11 |
$_POST['ssl_admin'] = (isset($_POST['ssl_admin'])) ? true : false;
|
12 |
$_POST['cache_wp'] = (isset($_POST['cache_wp'])) ? true : false;
|
13 |
$_POST['cache_path'] = (isset($_POST['cache_path'])) ? true : false;
|
14 |
-
$_POST['archive_name'] = isset($_POST['archive_name']) ? $_POST['archive_name'] : null;
|
15 |
$_POST['retain_config'] = (isset($_POST['retain_config']) && $_POST['retain_config'] == '1') ? true : false;
|
16 |
$_POST['dbcollatefb'] = isset($_POST['dbcollatefb']) ? $_POST['dbcollatefb'] : false;
|
17 |
|
@@ -43,7 +42,7 @@ if (isset($_GET['dbtest']))
|
|
43 |
$dbErr = mysqli_connect_error();
|
44 |
|
45 |
$dbFound = mysqli_select_db($dbConn, $_POST['dbname']);
|
46 |
-
$port_view = (is_int($baseport) || substr($_POST['dbhost'], -1) == ":") ? "Port=[Set in Host]" : "Port=
|
47 |
|
48 |
$tstSrv = ($dbConn) ? "<div class='dupx-pass'>Success</div>" : "<div class='dupx-fail'>Fail</div>";
|
49 |
$tstDB = ($dbFound) ? "<div class='dupx-pass'>Success</div>" : "<div class='dupx-fail'>Fail</div>";
|
@@ -57,38 +56,37 @@ if (isset($_GET['dbtest']))
|
|
57 |
$dbversion_compat_fail = $dbConn && version_compare($dbversion_compat, $GLOBALS['FW_VERSION_DB']) < 0;
|
58 |
|
59 |
$tstInfo = ($dbversion_info_fail)
|
60 |
-
? "<div class='dupx-notice'>
|
61 |
-
: "<div class='dupx-pass'>
|
62 |
|
63 |
$tstCompat = ($dbversion_compat_fail)
|
64 |
-
? "<div class='dupx-notice'>This Server: [
|
65 |
-
: "<div class='dupx-pass'>This Server: [
|
66 |
|
67 |
-
$html .=
|
68 |
<div class='s2-db-test'>
|
69 |
<small>
|
70 |
Using Connection String:<br/>
|
71 |
-
Host=
|
72 |
</small>
|
73 |
<table class='s2-db-test-dtls'>
|
74 |
<tr>
|
75 |
<td>Host:</td>
|
76 |
-
<td>
|
77 |
</tr>
|
78 |
<tr>
|
79 |
<td>Database:</td>
|
80 |
-
<td>
|
81 |
</tr>
|
82 |
<tr>
|
83 |
<td>Version:</td>
|
84 |
-
<td>
|
85 |
</tr>
|
86 |
<tr>
|
87 |
<td>Compatibility:</td>
|
88 |
-
<td>
|
89 |
</tr>
|
90 |
-
</table>
|
91 |
-
DATA;
|
92 |
|
93 |
//--------------------------------
|
94 |
//WARNING: Unable to connect
|
@@ -101,7 +99,7 @@ DATA;
|
|
101 |
{
|
102 |
$tblcount = DUPX_DB::countTables($dbConn, $_POST['dbname']);
|
103 |
$html .= ($tblcount > 0)
|
104 |
-
? "<div class='warn-msg'><b>WARNING:</b> " . sprintf(ERR_DBEMPTY, $_POST['dbname'], $tblcount) . "</div>"
|
105 |
: '';
|
106 |
}
|
107 |
|
@@ -435,7 +433,7 @@ if ($result = mysqli_query($dbh, "SHOW TABLES")) {
|
|
435 |
|
436 |
if ($dbtable_count == 0) {
|
437 |
DUPX_Log::error("No tables where created during step 2 of the install. Please review the <a href='".$GLOBALS["LOG_FILE_NAME"]."' target='install_log'>".$GLOBALS["LOG_FILE_NAME"]."</a> file for
|
438 |
-
ERROR messages. You may have to manually run the installer-
|
439 |
during the package creation process then the database server version your using may not be compatible with this script.\n");
|
440 |
}
|
441 |
|
11 |
$_POST['ssl_admin'] = (isset($_POST['ssl_admin'])) ? true : false;
|
12 |
$_POST['cache_wp'] = (isset($_POST['cache_wp'])) ? true : false;
|
13 |
$_POST['cache_path'] = (isset($_POST['cache_path'])) ? true : false;
|
|
|
14 |
$_POST['retain_config'] = (isset($_POST['retain_config']) && $_POST['retain_config'] == '1') ? true : false;
|
15 |
$_POST['dbcollatefb'] = isset($_POST['dbcollatefb']) ? $_POST['dbcollatefb'] : false;
|
16 |
|
42 |
$dbErr = mysqli_connect_error();
|
43 |
|
44 |
$dbFound = mysqli_select_db($dbConn, $_POST['dbname']);
|
45 |
+
$port_view = (is_int($baseport) || substr($_POST['dbhost'], -1) == ":") ? "Port=[Set in Host]" : "Port=".htmlentities($_POST['dbport']);
|
46 |
|
47 |
$tstSrv = ($dbConn) ? "<div class='dupx-pass'>Success</div>" : "<div class='dupx-fail'>Fail</div>";
|
48 |
$tstDB = ($dbFound) ? "<div class='dupx-pass'>Success</div>" : "<div class='dupx-fail'>Fail</div>";
|
56 |
$dbversion_compat_fail = $dbConn && version_compare($dbversion_compat, $GLOBALS['FW_VERSION_DB']) < 0;
|
57 |
|
58 |
$tstInfo = ($dbversion_info_fail)
|
59 |
+
? "<div class='dupx-notice'>".htmlentities($dbversion_info)."</div>"
|
60 |
+
: "<div class='dupx-pass'>".htmlentities($dbversion_info)."</div>";
|
61 |
|
62 |
$tstCompat = ($dbversion_compat_fail)
|
63 |
+
? "<div class='dupx-notice'>This Server: [".htmlentities($dbversion_compat)."] -- Package Server: [".htmlentities($GLOBALS['FW_VERSION_DB'])."]</div>"
|
64 |
+
: "<div class='dupx-pass'>This Server: [".htmlentities($dbversion_compat)."] -- Package Server: [".htmlentities($GLOBALS['FW_VERSION_DB'])."]</div>";
|
65 |
|
66 |
+
$html .= "
|
67 |
<div class='s2-db-test'>
|
68 |
<small>
|
69 |
Using Connection String:<br/>
|
70 |
+
Host=".htmlentities($_POST['dbhost'])."; Database=".htmlentities($_POST['dbname'])."; Uid=".htmlentities($_POST['dbuser'])."; Pwd=".htmlentities($_POST['dbpass'])."; {$port_view}
|
71 |
</small>
|
72 |
<table class='s2-db-test-dtls'>
|
73 |
<tr>
|
74 |
<td>Host:</td>
|
75 |
+
<td>".$tstSrv."</td>
|
76 |
</tr>
|
77 |
<tr>
|
78 |
<td>Database:</td>
|
79 |
+
<td>".$tstDB."</td>
|
80 |
</tr>
|
81 |
<tr>
|
82 |
<td>Version:</td>
|
83 |
+
<td>".$tstInfo."</td>
|
84 |
</tr>
|
85 |
<tr>
|
86 |
<td>Compatibility:</td>
|
87 |
+
<td>".$tstCompat."</td>
|
88 |
</tr>
|
89 |
+
</table>";
|
|
|
90 |
|
91 |
//--------------------------------
|
92 |
//WARNING: Unable to connect
|
99 |
{
|
100 |
$tblcount = DUPX_DB::countTables($dbConn, $_POST['dbname']);
|
101 |
$html .= ($tblcount > 0)
|
102 |
+
? "<div class='warn-msg'><b>WARNING:</b> " . sprintf(ERR_DBEMPTY, htmlentities($_POST['dbname']), htmlentities($tblcount)) . "</div>"
|
103 |
: '';
|
104 |
}
|
105 |
|
433 |
|
434 |
if ($dbtable_count == 0) {
|
435 |
DUPX_Log::error("No tables where created during step 2 of the install. Please review the <a href='".$GLOBALS["LOG_FILE_NAME"]."' target='install_log'>".$GLOBALS["LOG_FILE_NAME"]."</a> file for
|
436 |
+
ERROR messages. You may have to manually run the installer-data_[HASH].sql with a tool like phpmyadmin to validate the data input. If you have enabled compatibility mode
|
437 |
during the package creation process then the database server version your using may not be compatible with this script.\n");
|
438 |
}
|
439 |
|
installer/build/view.help.php
CHANGED
@@ -222,7 +222,7 @@ STEP 1
|
|
222 |
<tr>
|
223 |
<td>Logging</td>
|
224 |
<td>
|
225 |
-
The level of detail that will be sent to the log file (
|
226 |
Note if you use Debug the amount of data written can be very large. Debug is only recommended for support.
|
227 |
</td>
|
228 |
</tr>
|
@@ -315,7 +315,7 @@ STEP 2
|
|
315 |
<br/><br/>
|
316 |
|
317 |
<b>Manual SQL Execution:</b><sup>pro</sup> This options requires that you manually run your own SQL import to an existing database before running the installer.
|
318 |
-
When this action is selected the dup-
|
319 |
be a valid WordPress installed database. This option is viable when you need to run advanced search and replace options on the database.
|
320 |
<br/><br/>
|
321 |
|
222 |
<tr>
|
223 |
<td>Logging</td>
|
224 |
<td>
|
225 |
+
The level of detail that will be sent to the log file (dup-installer-log_[HASH].txt). The recommend setting for most installs should be 'Light'.
|
226 |
Note if you use Debug the amount of data written can be very large. Debug is only recommended for support.
|
227 |
</td>
|
228 |
</tr>
|
315 |
<br/><br/>
|
316 |
|
317 |
<b>Manual SQL Execution:</b><sup>pro</sup> This options requires that you manually run your own SQL import to an existing database before running the installer.
|
318 |
+
When this action is selected the dup-database_[hash].sql file found inside the dup-installer folder of the archive.zip file will NOT be ran. The database your connecting to should already
|
319 |
be a valid WordPress installed database. This option is viable when you need to run advanced search and replace options on the database.
|
320 |
<br/><br/>
|
321 |
|
installer/build/view.step1.php
CHANGED
@@ -90,13 +90,16 @@ $req_success = ($all_req == 'Pass');
|
|
90 |
$req_notice = ($all_notice == 'Good');
|
91 |
$all_success = ($req_success && $req_notice);
|
92 |
$agree_msg = "To enable this button the checkbox above under the 'Terms & Notices' must be checked.";
|
|
|
|
|
|
|
|
|
93 |
?>
|
94 |
|
95 |
|
96 |
<form id='s1-input-form' method="post" class="content-form" >
|
97 |
<input type="hidden" name="action_ajax" value="1" />
|
98 |
<input type="hidden" name="action_step" value="1" />
|
99 |
-
<input type="hidden" name="archive_name" value="<?php echo $GLOBALS['FW_PACKAGE_NAME'] ?>" />
|
100 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
101 |
|
102 |
<div class="hdr-main">
|
@@ -140,45 +143,27 @@ ARCHIVE
|
|
140 |
<tr>
|
141 |
<td colspan="2"><div class="hdr-sub3">File Details</div></td>
|
142 |
</tr>
|
143 |
-
<tr style="vertical-align:top">
|
144 |
-
<td>Size:</td>
|
145 |
-
<td>
|
146 |
-
<?php
|
147 |
-
$projectedSize = DUPX_U::readableByteSize($GLOBALS['FW_PACKAGE_EST_SIZE']);
|
148 |
-
$actualSize = DUPX_U::readableByteSize($arcSize);
|
149 |
-
echo "{$actualSize}<br/>";
|
150 |
-
if ($arcSizeStatus == 'Fail' ) {
|
151 |
-
echo "<span class='dupx-fail'>The archive file size is currently <b>{$actualSize}</b> and its estimated file size should be around <b>{$projectedSize}</b>. "
|
152 |
-
. "The archive file may not have been fully downloaded to the server. If so please wait for the file to completely download and then refresh this page.<br/><br/>";
|
153 |
-
|
154 |
-
echo "This warning is only shown when the file has more than a 10% size ratio difference from when it was originally built. Please review the file sizes "
|
155 |
-
. "to make sure the archive was downloaded to this server correctly if the download is complete.</span>";
|
156 |
-
}
|
157 |
-
?>
|
158 |
-
</td>
|
159 |
-
</tr>
|
160 |
-
<tr>
|
161 |
-
<td>Name:</td>
|
162 |
-
<td><?php echo "{$GLOBALS['FW_PACKAGE_NAME']}";?> </td>
|
163 |
-
</tr>
|
164 |
-
<tr>
|
165 |
-
<td>Path:</td>
|
166 |
-
<td><?php echo "{$GLOBALS['CURRENT_ROOT_PATH']}";?> </td>
|
167 |
-
</tr>
|
168 |
<tr>
|
169 |
<td>Status:</td>
|
170 |
<td>
|
171 |
<?php if ($arcStatus != 'Fail') : ?>
|
172 |
-
<span class="dupx-pass">File Found</span>
|
173 |
<?php else : ?>
|
174 |
<div class="s1-archive-failed-msg">
|
175 |
<b class="dupx-fail">Archive File Not Found!</b><br/>
|
176 |
-
The
|
177 |
-
|
|
|
|
|
178 |
<br/><br/>
|
179 |
|
180 |
-
|
181 |
-
|
|
|
|
|
|
|
|
|
|
|
182 |
<?php
|
183 |
//DETECT ARCHIVE FILES
|
184 |
$zip_files = DUPX_Server::getZipFiles();
|
@@ -198,6 +183,30 @@ ARCHIVE
|
|
198 |
<?php endif; ?>
|
199 |
</td>
|
200 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
<tr>
|
202 |
<td>Format:</td>
|
203 |
<td>
|
@@ -223,7 +232,7 @@ ARCHIVE
|
|
223 |
the issue. Please check the contents of the zip archive and be sure its contents match the layout of your site.
|
224 |
<br/><br/>
|
225 |
|
226 |
-
Files such as dup-
|
227 |
<a href="https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=invalid_ar_fmt#faq-installer-020-q" target="_help">The archive format is changing on my Mac what might be the problem?</a>
|
228 |
</div>
|
229 |
<?php endif; ?>
|
@@ -558,10 +567,11 @@ NOTICES
|
|
558 |
<b>After Install:</b> When you are done with the installation you must remove these files/directories:
|
559 |
<ul>
|
560 |
<li>installer.php</li>
|
561 |
-
<li>dup-installer-data__<?php echo $GLOBALS['PACKAGE_HASH'];?>.sql</li>
|
562 |
<li>installer-backup.php</li>
|
563 |
-
<li
|
564 |
-
<li>dup-
|
|
|
|
|
565 |
</ul>
|
566 |
|
567 |
These files contain sensitive information and should not remain on a production system for system integrity and security protection.
|
@@ -622,7 +632,7 @@ Auto Posts to view.step2.php
|
|
622 |
========================================= -->
|
623 |
<form id='s1-result-form' method="post" class="content-form" style="display:none">
|
624 |
|
625 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">installer-log.txt</a></div>
|
626 |
<div class="hdr-main">
|
627 |
Step <span class="step">1</span> of 4: Deployment
|
628 |
</div>
|
@@ -631,9 +641,8 @@ Auto Posts to view.step2.php
|
|
631 |
<div class="dupx-debug">
|
632 |
<input type="hidden" name="action_step" value="2" />
|
633 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
634 |
-
<input type="hidden" name="archive_name" value="<?php echo $GLOBALS['FW_PACKAGE_NAME'] ?>" />
|
635 |
<input type="hidden" name="logging" id="ajax-logging" />
|
636 |
-
|
637 |
<input type="hidden" name="retain_config" id="ajax-retain-config" />
|
638 |
<input type="hidden" name="json" id="ajax-json" />
|
639 |
<textarea id='ajax-json-debug' name='json_debug_view'></textarea>
|
@@ -713,7 +722,7 @@ Auto Posts to view.step2.php
|
|
713 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
714 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
715 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
716 |
-
status += "- Check the <a href='<?php echo $GLOBALS["LOG_FILE_NAME"];?>' target='install_log'
|
717 |
status += "- Check the web server and PHP error logs. <br/>";
|
718 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_ajaxextract_tofaq#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
719 |
$('#ajaxerr-data').html(status);
|
90 |
$req_notice = ($all_notice == 'Good');
|
91 |
$all_success = ($req_success && $req_notice);
|
92 |
$agree_msg = "To enable this button the checkbox above under the 'Terms & Notices' must be checked.";
|
93 |
+
|
94 |
+
//Get Size Data
|
95 |
+
$projectedSize = DUPX_U::readableByteSize($GLOBALS['FW_PACKAGE_EST_SIZE']);
|
96 |
+
$actualSize = DUPX_U::readableByteSize($arcSize);
|
97 |
?>
|
98 |
|
99 |
|
100 |
<form id='s1-input-form' method="post" class="content-form" >
|
101 |
<input type="hidden" name="action_ajax" value="1" />
|
102 |
<input type="hidden" name="action_step" value="1" />
|
|
|
103 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
104 |
|
105 |
<div class="hdr-main">
|
143 |
<tr>
|
144 |
<td colspan="2"><div class="hdr-sub3">File Details</div></td>
|
145 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
146 |
<tr>
|
147 |
<td>Status:</td>
|
148 |
<td>
|
149 |
<?php if ($arcStatus != 'Fail') : ?>
|
150 |
+
<span class="dupx-pass">Archive File Found</span>
|
151 |
<?php else : ?>
|
152 |
<div class="s1-archive-failed-msg">
|
153 |
<b class="dupx-fail">Archive File Not Found!</b><br/>
|
154 |
+
The installer file and the archive are bound together as a package when the archive is built. They must be downloaded together and used
|
155 |
+
together at install time. The archive file name should <u>not</u> be changed when it is downloaded because the file name is strongly bound
|
156 |
+
to the installer. When downloading the package files make sure both files are from the same package line in the packages view within the
|
157 |
+
Duplicator WordPress admin.
|
158 |
<br/><br/>
|
159 |
|
160 |
+
The full archive file name must be <u>exactly</u> the same as when it was built (character for character), or the installer will not work properly.
|
161 |
+
To find out the exact archive name that is bound to this installer open the installer.php file with a text editor and search for the text
|
162 |
+
$GLOBALS['FW_PACKAGE_NAME']. Check to see what that value is assigned to and that should be the name of the archive file placed in the same path
|
163 |
+
as this installer.
|
164 |
+
<br/><br/>
|
165 |
+
|
166 |
+
The following zip files were found at the deployment path:
|
167 |
<?php
|
168 |
//DETECT ARCHIVE FILES
|
169 |
$zip_files = DUPX_Server::getZipFiles();
|
183 |
<?php endif; ?>
|
184 |
</td>
|
185 |
</tr>
|
186 |
+
<tr>
|
187 |
+
<tr>
|
188 |
+
<td>Path:</td>
|
189 |
+
<td><?php echo "{$GLOBALS['CURRENT_ROOT_PATH']}";?> </td>
|
190 |
+
</tr>
|
191 |
+
<td>Size:</td>
|
192 |
+
<td>
|
193 |
+
<?php if ($arcSizeStatus == 'Pass' ) : ?>
|
194 |
+
<?php echo "{$actualSize}"?>
|
195 |
+
<?php elseif ($arcStatus == 'Fail') : ?>
|
196 |
+
<span class="dupx-fail">Archive file not found!</span>
|
197 |
+
<?php else : ?>
|
198 |
+
<div class="s1-archive-failed-msg">
|
199 |
+
<b class='dupx-fail'>Archive File Size Incorrect!</b><br/>
|
200 |
+
The archive is showing a size that is currently as <b><?php echo $actualSize; ?></b>. Its estimated file size should be around
|
201 |
+
<b><?php echo $projectedSize; ?></b>. The archive file may not have been fully downloaded to the server. If so please wait for the file
|
202 |
+
to completely download and then refresh this page.<br/><br/>
|
203 |
+
|
204 |
+
This warning is only shown when the file has more than a 10% size ratio difference from when it was originally built. Please review the file sizes
|
205 |
+
to make sure the archive was downloaded to this server correctly when the download is complete.
|
206 |
+
</div>
|
207 |
+
<?php endif; ?>
|
208 |
+
</td>
|
209 |
+
</tr>
|
210 |
<tr>
|
211 |
<td>Format:</td>
|
212 |
<td>
|
232 |
the issue. Please check the contents of the zip archive and be sure its contents match the layout of your site.
|
233 |
<br/><br/>
|
234 |
|
235 |
+
Files such as dup-database_[HASH].sql and wp-config.php should be at the root of the archive. For more details see the FAQ article
|
236 |
<a href="https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=invalid_ar_fmt#faq-installer-020-q" target="_help">The archive format is changing on my Mac what might be the problem?</a>
|
237 |
</div>
|
238 |
<?php endif; ?>
|
567 |
<b>After Install:</b> When you are done with the installation you must remove these files/directories:
|
568 |
<ul>
|
569 |
<li>installer.php</li>
|
|
|
570 |
<li>installer-backup.php</li>
|
571 |
+
<li>dup-installer-data_[HASH].sql</li>
|
572 |
+
<li>dup-database_[HASH].sql</li>
|
573 |
+
<li>dup-installer-log_[HASH].txt</li>
|
574 |
+
<li>[HASH]_archive.zip</li>
|
575 |
</ul>
|
576 |
|
577 |
These files contain sensitive information and should not remain on a production system for system integrity and security protection.
|
632 |
========================================= -->
|
633 |
<form id='s1-result-form' method="post" class="content-form" style="display:none">
|
634 |
|
635 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">dup-installer-log.txt</a></div>
|
636 |
<div class="hdr-main">
|
637 |
Step <span class="step">1</span> of 4: Deployment
|
638 |
</div>
|
641 |
<div class="dupx-debug">
|
642 |
<input type="hidden" name="action_step" value="2" />
|
643 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
|
|
644 |
<input type="hidden" name="logging" id="ajax-logging" />
|
645 |
+
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="0" />
|
646 |
<input type="hidden" name="retain_config" id="ajax-retain-config" />
|
647 |
<input type="hidden" name="json" id="ajax-json" />
|
648 |
<textarea id='ajax-json-debug' name='json_debug_view'></textarea>
|
722 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
723 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
724 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
725 |
+
status += "- Check the <a href='<?php echo $GLOBALS["LOG_FILE_NAME"];?>' target='install_log'>dup-installer-log.txt</a> file for warnings or errors.<br/>";
|
726 |
status += "- Check the web server and PHP error logs. <br/>";
|
727 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_ajaxextract_tofaq#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
728 |
$('#ajaxerr-data').html(status);
|
installer/build/view.step2.php
CHANGED
@@ -9,11 +9,10 @@ VIEW: STEP 2- INPUT -->
|
|
9 |
<form id='s2-input-form' method="post" class="content-form" data-parsley-validate="true" data-parsley-excluded="input[type=hidden], [disabled], :hidden">
|
10 |
<input type="hidden" name="action_ajax" value="2" />
|
11 |
<input type="hidden" name="action_step" value="2" />
|
12 |
-
<input type="hidden" name="archive_name" value="<?php echo $GLOBALS['FW_PACKAGE_NAME'] ?>" />
|
13 |
<input type="hidden" name="logging" id="logging" value="<?php echo $_POST['logging'] ?>" />
|
14 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
15 |
|
16 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">installer-log.txt</a></div>
|
17 |
<div class="hdr-main">
|
18 |
Step <span class="step">2</span> of 4: Install Database
|
19 |
</div>
|
@@ -183,7 +182,7 @@ Auto Posts to view.step3.php
|
|
183 |
========================================= -->
|
184 |
<form id='s2-result-form' method="post" class="content-form" style="display:none">
|
185 |
|
186 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">installer-log.txt</a></div>
|
187 |
<div class="hdr-main">
|
188 |
Step <span class="step">2</span> of 4: Install Database
|
189 |
</div>
|
@@ -192,7 +191,6 @@ Auto Posts to view.step3.php
|
|
192 |
<div class="dupx-debug">
|
193 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
194 |
<input type="hidden" name="action_step" value="3" />
|
195 |
-
<input type="hidden" name="archive_name" value="<?php echo $GLOBALS['FW_PACKAGE_NAME'] ?>" />
|
196 |
<input type="hidden" name="logging" id="ajax-logging" />
|
197 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
198 |
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="<?php echo $_POST['exe_safe_mode']; ?>"/>
|
@@ -221,7 +219,7 @@ Auto Posts to view.step3.php
|
|
221 |
<div id="ajaxerr-area" style="display:none">
|
222 |
<p>Please try again an issue has occurred.</p>
|
223 |
<div style="padding: 0px 10px 10px 0px;">
|
224 |
-
<div id="ajaxerr-data">An unknown issue has occurred with the file and database set up process. Please see the installer-log.txt file for more details.</div>
|
225 |
<div style="text-align:center; margin:10px auto 0px auto">
|
226 |
<input type="button" class="default-btn" onclick='DUPX.hideErrorResult()' value="« Try Again" /><br/><br/>
|
227 |
<i style='font-size:11px'>See online help for more details at <a href='https://snapcreek.com/ticket?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_ajaxstep2_ticket' target='_blank'>snapcreek.com</a></i>
|
@@ -261,6 +259,14 @@ Auto Posts to view.step3.php
|
|
261 |
|
262 |
|
263 |
<script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
264 |
/* Confirm Dialog to validate run */
|
265 |
DUPX.confirmDeployment = function()
|
266 |
{
|
@@ -270,9 +276,9 @@ DUPX.confirmDeployment = function()
|
|
270 |
return;
|
271 |
}
|
272 |
|
273 |
-
$('#dlg-dbhost').html($("#dbhost").val());
|
274 |
-
$('#dlg-dbname').html($("#dbname").val());
|
275 |
-
$('#dlg-dbuser').html($("#dbuser").val());
|
276 |
|
277 |
modal({
|
278 |
type: 'confirm',
|
@@ -332,7 +338,7 @@ DUPX.runDeployment = function()
|
|
332 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
333 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
334 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
335 |
-
status += "- Check the <a href='
|
336 |
status += "- Check the web server and PHP error logs. <br/>";
|
337 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step2deploy_timout#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
338 |
$('#ajaxerr-data').html(status);
|
9 |
<form id='s2-input-form' method="post" class="content-form" data-parsley-validate="true" data-parsley-excluded="input[type=hidden], [disabled], :hidden">
|
10 |
<input type="hidden" name="action_ajax" value="2" />
|
11 |
<input type="hidden" name="action_step" value="2" />
|
|
|
12 |
<input type="hidden" name="logging" id="logging" value="<?php echo $_POST['logging'] ?>" />
|
13 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
14 |
|
15 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">dup-installer-log.txt</a></div>
|
16 |
<div class="hdr-main">
|
17 |
Step <span class="step">2</span> of 4: Install Database
|
18 |
</div>
|
182 |
========================================= -->
|
183 |
<form id='s2-result-form' method="post" class="content-form" style="display:none">
|
184 |
|
185 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">dup-installer-log.txt</a></div>
|
186 |
<div class="hdr-main">
|
187 |
Step <span class="step">2</span> of 4: Install Database
|
188 |
</div>
|
191 |
<div class="dupx-debug">
|
192 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
193 |
<input type="hidden" name="action_step" value="3" />
|
|
|
194 |
<input type="hidden" name="logging" id="ajax-logging" />
|
195 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
196 |
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="<?php echo $_POST['exe_safe_mode']; ?>"/>
|
219 |
<div id="ajaxerr-area" style="display:none">
|
220 |
<p>Please try again an issue has occurred.</p>
|
221 |
<div style="padding: 0px 10px 10px 0px;">
|
222 |
+
<div id="ajaxerr-data">An unknown issue has occurred with the file and database set up process. Please see the dup-installer-log.txt file for more details.</div>
|
223 |
<div style="text-align:center; margin:10px auto 0px auto">
|
224 |
<input type="button" class="default-btn" onclick='DUPX.hideErrorResult()' value="« Try Again" /><br/><br/>
|
225 |
<i style='font-size:11px'>See online help for more details at <a href='https://snapcreek.com/ticket?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_ajaxstep2_ticket' target='_blank'>snapcreek.com</a></i>
|
259 |
|
260 |
|
261 |
<script>
|
262 |
+
DUPX.escapeHtml = function(unsafe) {
|
263 |
+
return unsafe
|
264 |
+
.replace(/&/g, "&")
|
265 |
+
.replace(/</g, "<")
|
266 |
+
.replace(/>/g, ">")
|
267 |
+
.replace(/"/g, """)
|
268 |
+
.replace(/'/g, "'");
|
269 |
+
}
|
270 |
/* Confirm Dialog to validate run */
|
271 |
DUPX.confirmDeployment = function()
|
272 |
{
|
276 |
return;
|
277 |
}
|
278 |
|
279 |
+
$('#dlg-dbhost').html(DUPX.escapeHtml($("#dbhost").val()));
|
280 |
+
$('#dlg-dbname').html(DUPX.escapeHtml($("#dbname").val()));
|
281 |
+
$('#dlg-dbuser').html(DUPX.escapeHtml($("#dbuser").val()));
|
282 |
|
283 |
modal({
|
284 |
type: 'confirm',
|
338 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
339 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
340 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
341 |
+
status += "- Check the <a href='<?php echo $GLOBALS["LOG_FILE_NAME"];?>' target='install_log'>dup-installer-log.txt</a> file for warnings or errors.<br/>";
|
342 |
status += "- Check the web server and PHP error logs. <br/>";
|
343 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step2deploy_timout#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
344 |
$('#ajaxerr-data').html(status);
|
installer/build/view.step3.php
CHANGED
@@ -20,7 +20,6 @@ VIEW: STEP 3- INPUT -->
|
|
20 |
<input type="hidden" name="action_step" value="3" />
|
21 |
<input type="hidden" name="logging" value="<?php echo $_POST['logging'] ?>" />
|
22 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
23 |
-
<input type="hidden" name="archive_name" value="<?php echo $_POST['archive_name'] ?>" />
|
24 |
<input type="hidden" name="json" value="<?php echo $_POST['json']; ?>" />
|
25 |
<input type="hidden" name="dbhost" value="<?php echo $_POST['dbhost'] ?>" />
|
26 |
<input type="hidden" name="dbport" value="<?php echo $_POST['dbport'] ?>" />
|
@@ -32,7 +31,7 @@ VIEW: STEP 3- INPUT -->
|
|
32 |
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="<?php echo $_POST['exe_safe_mode'] ?>" />
|
33 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
34 |
|
35 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">installer-log.txt</a></div>
|
36 |
<div class="hdr-main">
|
37 |
Step <span class="step">3</span> of 4: Update Data
|
38 |
</div>
|
@@ -186,7 +185,7 @@ VIEW: STEP 3 - AJAX RESULT
|
|
186 |
========================================= -->
|
187 |
<form id='s3-result-form' method="post" class="content-form" style="display:none">
|
188 |
|
189 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">installer-log.txt</a></div>
|
190 |
<div class="hdr-main">
|
191 |
Step <span class="step">3</span> of 4: Update Data
|
192 |
</div>
|
@@ -195,9 +194,8 @@ VIEW: STEP 3 - AJAX RESULT
|
|
195 |
<div class="dupx-debug">
|
196 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
197 |
<input type="hidden" name="action_step" value="4" />
|
198 |
-
<input type="hidden" name="archive_name" value="<?php echo $_POST['archive_name'] ?>" />
|
199 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
200 |
-
|
201 |
<input type="hidden" name="url_new" id="ajax-url_new" />
|
202 |
<input type="hidden" name="json" id="ajax-json" />
|
203 |
<br/>
|
@@ -217,7 +215,7 @@ VIEW: STEP 3 - AJAX RESULT
|
|
217 |
<div id="ajaxerr-area" style="display:none">
|
218 |
<p>Please try again an issue has occurred.</p>
|
219 |
<div style="padding: 0px 10px 10px 10px;">
|
220 |
-
<div id="ajaxerr-data">An unknown issue has occurred with the update data set up process. Please see the installer-log.txt file for more details.</div>
|
221 |
<div style="text-align:center; margin:10px auto 0px auto">
|
222 |
<input type="button" class="default-btn" onclick='DUPX.hideErrorResult2()' value="« Try Again" /><br/><br/>
|
223 |
<i style='font-size:11px'>See online help for more details at <a href='https://snapcreek.com/ticket?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step3_ajax' target='_blank'>snapcreek.com</a></i>
|
@@ -268,7 +266,7 @@ DUPX.runUpdate = function()
|
|
268 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
269 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
270 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
271 |
-
status += "- Check the <a href='<?php echo $GLOBALS["LOG_FILE_NAME"];?>' target='install_log'>installer-log.txt</a> file for warnings or errors.<br/>";
|
272 |
status += "- Check the web server and PHP error logs. <br/>";
|
273 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step3_ajax_rundepl#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
274 |
$('#ajaxerr-data').html(status);
|
20 |
<input type="hidden" name="action_step" value="3" />
|
21 |
<input type="hidden" name="logging" value="<?php echo $_POST['logging'] ?>" />
|
22 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
|
|
23 |
<input type="hidden" name="json" value="<?php echo $_POST['json']; ?>" />
|
24 |
<input type="hidden" name="dbhost" value="<?php echo $_POST['dbhost'] ?>" />
|
25 |
<input type="hidden" name="dbport" value="<?php echo $_POST['dbport'] ?>" />
|
31 |
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="<?php echo $_POST['exe_safe_mode'] ?>" />
|
32 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
33 |
|
34 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">dup-installer-log.txt</a></div>
|
35 |
<div class="hdr-main">
|
36 |
Step <span class="step">3</span> of 4: Update Data
|
37 |
</div>
|
185 |
========================================= -->
|
186 |
<form id='s3-result-form' method="post" class="content-form" style="display:none">
|
187 |
|
188 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="install_log">dup-installer-log.txt</a></div>
|
189 |
<div class="hdr-main">
|
190 |
Step <span class="step">3</span> of 4: Update Data
|
191 |
</div>
|
194 |
<div class="dupx-debug">
|
195 |
<input type="hidden" name="secure-pass" value="<?php echo $_POST['secure-pass']; ?>" />
|
196 |
<input type="hidden" name="action_step" value="4" />
|
|
|
197 |
<input type="hidden" name="retain_config" value="<?php echo $_POST['retain_config']; ?>" />
|
198 |
+
<input type="hidden" name="exe_safe_mode" id="exe-safe-mode" value="<?php echo $_POST['exe_safe_mode']; ?>"/>
|
199 |
<input type="hidden" name="url_new" id="ajax-url_new" />
|
200 |
<input type="hidden" name="json" id="ajax-json" />
|
201 |
<br/>
|
215 |
<div id="ajaxerr-area" style="display:none">
|
216 |
<p>Please try again an issue has occurred.</p>
|
217 |
<div style="padding: 0px 10px 10px 10px;">
|
218 |
+
<div id="ajaxerr-data">An unknown issue has occurred with the update data set up process. Please see the dup-installer-log.txt file for more details.</div>
|
219 |
<div style="text-align:center; margin:10px auto 0px auto">
|
220 |
<input type="button" class="default-btn" onclick='DUPX.hideErrorResult2()' value="« Try Again" /><br/><br/>
|
221 |
<i style='font-size:11px'>See online help for more details at <a href='https://snapcreek.com/ticket?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step3_ajax' target='_blank'>snapcreek.com</a></i>
|
266 |
status += "<b>Status:</b> " + xhr.statusText + "<br/>";
|
267 |
status += "<b>Response:</b> " + xhr.responseText + "";
|
268 |
status += "<hr/><b>Additional Troubleshooting Tips:</b><br/>";
|
269 |
+
status += "- Check the <a href='<?php echo $GLOBALS["LOG_FILE_NAME"];?>' target='install_log'>dup-installer-log.txt</a> file for warnings or errors.<br/>";
|
270 |
status += "- Check the web server and PHP error logs. <br/>";
|
271 |
status += "- For timeout issues visit the <a href='https://snapcreek.com/duplicator/docs/faqs-tech/?utm_source=duplicator_free&utm_medium=wordpress_plugin&utm_campaign=problem_resolution&utm_content=inst_step3_ajax_rundepl#faq-trouble-100-q' target='_blank'>Timeout FAQ Section</a><br/>";
|
272 |
$('#ajaxerr-data').html(status);
|
installer/build/view.step4.php
CHANGED
@@ -1,13 +1,12 @@
|
|
1 |
<?php
|
2 |
$_POST['url_new'] = isset($_POST['url_new']) ? DUPX_U::sanitize($_POST['url_new']) : '';
|
3 |
-
$_POST['archive_name'] = isset($_POST['archive_name']) ? $_POST['archive_name'] : '';
|
4 |
$_POST['retain_config'] = isset($_POST['retain_config']) && $_POST['retain_config'] == '1' ? true : false;
|
5 |
$_POST['exe_safe_mode'] = isset($_POST['exe_safe_mode']) ? $_POST['exe_safe_mode'] : 0;
|
6 |
|
7 |
$admin_base = basename($GLOBALS['FW_WPLOGIN_URL']);
|
8 |
|
9 |
$safe_mode = $_POST['exe_safe_mode'];
|
10 |
-
$admin_redirect = rtrim($_POST['url_new'], "/") . "/wp-admin/admin.php?page=duplicator-tools&tab=diagnostics§ion=info&package={$
|
11 |
$admin_redirect = urlencode($admin_redirect);
|
12 |
$admin_url_qry = (strpos($admin_base, '?') === false) ? '?' : '&';
|
13 |
$admin_login = rtrim($_POST['url_new'], '/') . "/{$admin_base}{$admin_url_qry}redirect_to={$admin_redirect}";
|
@@ -26,7 +25,7 @@ DUPX.getAdminLogin = function() {
|
|
26 |
VIEW: STEP 4 - INPUT -->
|
27 |
<form id='s4-input-form' method="post" class="content-form" style="line-height:20px">
|
28 |
<input type="hidden" name="url_new" id="url_new" value="<?php echo $url_new_rtrim; ?>" />
|
29 |
-
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">installer-log.txt</a></div>
|
30 |
|
31 |
<div class="hdr-main">
|
32 |
Step <span class="step">4</span> of 4: Test Site
|
@@ -132,7 +131,7 @@ VIEW: STEP 4 - INPUT -->
|
|
132 |
<div class="s4-err-title">STEP 2 - INSTALL NOTICES:</div>
|
133 |
<b data-bind="with: status.step2">ERRORS (<span data-bind="text: query_errs"></span>)</b><br/>
|
134 |
<div class="info-error">
|
135 |
-
Queries that error during the deploy step are logged to the <a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="dpro-installer">
|
136 |
and marked with an **ERROR** status. If you experience a few errors (under 5), in many cases they can be ignored as long as your site is working correctly.
|
137 |
However if you see a large amount of errors or you experience an issue with your site then the error messages in the log file will need to be investigated.
|
138 |
<br/><br/>
|
1 |
<?php
|
2 |
$_POST['url_new'] = isset($_POST['url_new']) ? DUPX_U::sanitize($_POST['url_new']) : '';
|
|
|
3 |
$_POST['retain_config'] = isset($_POST['retain_config']) && $_POST['retain_config'] == '1' ? true : false;
|
4 |
$_POST['exe_safe_mode'] = isset($_POST['exe_safe_mode']) ? $_POST['exe_safe_mode'] : 0;
|
5 |
|
6 |
$admin_base = basename($GLOBALS['FW_WPLOGIN_URL']);
|
7 |
|
8 |
$safe_mode = $_POST['exe_safe_mode'];
|
9 |
+
$admin_redirect = rtrim($_POST['url_new'], "/") . "/wp-admin/admin.php?page=duplicator-tools&tab=diagnostics§ion=info&package={$GLOBALS['FW_PACKAGE_NAME']}&safe_mode={$safe_mode}";
|
10 |
$admin_redirect = urlencode($admin_redirect);
|
11 |
$admin_url_qry = (strpos($admin_base, '?') === false) ? '?' : '&';
|
12 |
$admin_login = rtrim($_POST['url_new'], '/') . "/{$admin_base}{$admin_url_qry}redirect_to={$admin_redirect}";
|
25 |
VIEW: STEP 4 - INPUT -->
|
26 |
<form id='s4-input-form' method="post" class="content-form" style="line-height:20px">
|
27 |
<input type="hidden" name="url_new" id="url_new" value="<?php echo $url_new_rtrim; ?>" />
|
28 |
+
<div class="dupx-logfile-link"><a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>?now=<?php echo $GLOBALS['NOW_DATE'] ?>" target="install_log">dup-installer-log.txt</a></div>
|
29 |
|
30 |
<div class="hdr-main">
|
31 |
Step <span class="step">4</span> of 4: Test Site
|
131 |
<div class="s4-err-title">STEP 2 - INSTALL NOTICES:</div>
|
132 |
<b data-bind="with: status.step2">ERRORS (<span data-bind="text: query_errs"></span>)</b><br/>
|
133 |
<div class="info-error">
|
134 |
+
Queries that error during the deploy step are logged to the <a href="<?php echo $GLOBALS["LOG_FILE_NAME"];?>" target="dpro-installer">dup-installer-log.txt</a> file and
|
135 |
and marked with an **ERROR** status. If you experience a few errors (under 5), in many cases they can be ignored as long as your site is working correctly.
|
136 |
However if you see a large amount of errors or you experience an issue with your site then the error messages in the log file will need to be investigated.
|
137 |
<br/><br/>
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: migration, backup, restore, move, migrate, duplicate, transfer, clone, aut
|
|
4 |
Requires at least: 4.0
|
5 |
Tested up to: 4.9
|
6 |
Requires PHP: 5.2.17
|
7 |
-
Stable tag: 1.2.
|
8 |
License: GPLv2
|
9 |
|
10 |
WordPress migration and backups are much easier with Duplicator! Clone, backup, move and transfer an entire site from one location to another.
|
4 |
Requires at least: 4.0
|
5 |
Tested up to: 4.9
|
6 |
Requires PHP: 5.2.17
|
7 |
+
Stable tag: 1.2.48
|
8 |
License: GPLv2
|
9 |
|
10 |
WordPress migration and backups are much easier with Duplicator! Clone, backup, move and transfer an entire site from one location to another.
|
views/settings/packages.php
CHANGED
@@ -16,7 +16,7 @@ if (isset($_POST['action']) && $_POST['action'] == 'save') {
|
|
16 |
//Package
|
17 |
$mysqldump_enabled = isset($_POST['package_dbmode']) && $_POST['package_dbmode'] == 'mysql' ? "1" : "0";
|
18 |
if (isset($_POST['package_mysqldump_path'])) {
|
19 |
-
$mysqldump_exe_file = DUP_Util::safePath(
|
20 |
$mysqldump_exe_file = DUP_DB::escSQL(strip_tags($mysqldump_exe_file), true);
|
21 |
}
|
22 |
|
@@ -156,7 +156,7 @@ $mysqlDumpFound = ($mysqlDumpPath) ? true : false;
|
|
156 |
data-tooltip-title="<?php _e("mysqldump path:", 'duplicator'); ?>"
|
157 |
data-tooltip="<?php _e('An optional path to the mysqldump program. Add a custom path if the path to mysqldump is not properly detected or needs to be changed.', 'duplicator'); ?>"></i>
|
158 |
<label><?php _e("Custom Path:", 'duplicator'); ?></label><br/>
|
159 |
-
<input type="text" name="package_mysqldump_path" id="package_mysqldump_path" value="<?php echo $package_mysqldump_path; ?>" placeholder="<?php _e("/usr/bin/mypath/mysqldump.exe", 'duplicator'); ?>" />
|
160 |
<div class="dup-feature-notfound">
|
161 |
<?php
|
162 |
if (!$mysqlDumpFound && strlen($mysqldump_exe_file)) {
|
16 |
//Package
|
17 |
$mysqldump_enabled = isset($_POST['package_dbmode']) && $_POST['package_dbmode'] == 'mysql' ? "1" : "0";
|
18 |
if (isset($_POST['package_mysqldump_path'])) {
|
19 |
+
$mysqldump_exe_file = DUP_Util::safePath(sanitize_text_field(trim($_POST['package_mysqldump_path'])));
|
20 |
$mysqldump_exe_file = DUP_DB::escSQL(strip_tags($mysqldump_exe_file), true);
|
21 |
}
|
22 |
|
156 |
data-tooltip-title="<?php _e("mysqldump path:", 'duplicator'); ?>"
|
157 |
data-tooltip="<?php _e('An optional path to the mysqldump program. Add a custom path if the path to mysqldump is not properly detected or needs to be changed.', 'duplicator'); ?>"></i>
|
158 |
<label><?php _e("Custom Path:", 'duplicator'); ?></label><br/>
|
159 |
+
<input type="text" name="package_mysqldump_path" id="package_mysqldump_path" value="<?php echo esc_attr($package_mysqldump_path); ?>" placeholder="<?php _e("/usr/bin/mypath/mysqldump.exe", 'duplicator'); ?>" />
|
160 |
<div class="dup-feature-notfound">
|
161 |
<?php
|
162 |
if (!$mysqlDumpFound && strlen($mysqldump_exe_file)) {
|