Version Description
- Update: Add ticket id to support view.
- Fix: Add UTF Encoding on file names being backed up and restored
- Fix: Multiple new backup success messages after backup
- Fix: Add wp_slash function to support Wordpress versions 3.6 and lower
Download this release
Release Info
Developer | cssimmon |
Plugin | Backup and Restore WordPress – WPBackItUp Backup Plugin |
Version | 1.10.3 |
Comparing to | |
See all releases |
Code changes from version 1.10.2 to 1.10.3
- js/wpbackitup_admin.js +9 -2
- lib/includes/class-job.php +48 -2
- lib/includes/class-logger.php +14 -14
- lib/includes/class-wpbackitup-admin.php +25 -13
- lib/includes/job_backup.php +12 -12
- lib/includes/job_restore.php +3 -3
- readme.txt +7 -1
- views/support.php +12 -12
- wp-backitup.php +2 -2
js/wpbackitup_admin.js
CHANGED
@@ -259,6 +259,8 @@
|
|
259 |
});
|
260 |
}
|
261 |
|
|
|
|
|
262 |
/* define backup response_reader function */
|
263 |
function wpbackitup_get_backup_response() {
|
264 |
//This function is required because of 504 gateway timeouts
|
@@ -278,6 +280,10 @@
|
|
278 |
console.log("JSON Backup Status:" + jsonData.backupStatus);
|
279 |
console.log("JSON Backup Message:" + jsonData.backupMessage);
|
280 |
|
|
|
|
|
|
|
|
|
281 |
switch (jsonData.backupStatus) {
|
282 |
case 'success':
|
283 |
console.log("JSON success response received.");
|
@@ -470,6 +476,7 @@
|
|
470 |
|
471 |
/* show backup status, backup errors */
|
472 |
$('.backup-status').show();
|
|
|
473 |
window.intervalDefine = setInterval(wpbackitup_get_backup_status, 5000);
|
474 |
}
|
475 |
|
@@ -720,8 +727,8 @@
|
|
720 |
$('#datatable').prepend(newRow);
|
721 |
$('#datatable tr:first').hide().show('slow'); // just an animation to show newly added row
|
722 |
|
723 |
-
if(total_rows >= data.backupRetained)
|
724 |
-
|
725 |
|
726 |
wpbackitup_add_viewlog_onclick();
|
727 |
|
259 |
});
|
260 |
}
|
261 |
|
262 |
+
//global to track backup response.
|
263 |
+
var backup_response=false;
|
264 |
/* define backup response_reader function */
|
265 |
function wpbackitup_get_backup_response() {
|
266 |
//This function is required because of 504 gateway timeouts
|
280 |
console.log("JSON Backup Status:" + jsonData.backupStatus);
|
281 |
console.log("JSON Backup Message:" + jsonData.backupMessage);
|
282 |
|
283 |
+
//If response aleady received
|
284 |
+
if (backup_response) return;
|
285 |
+
backup_response=true;
|
286 |
+
|
287 |
switch (jsonData.backupStatus) {
|
288 |
case 'success':
|
289 |
console.log("JSON success response received.");
|
476 |
|
477 |
/* show backup status, backup errors */
|
478 |
$('.backup-status').show();
|
479 |
+
backup_response=false;
|
480 |
window.intervalDefine = setInterval(wpbackitup_get_backup_status, 5000);
|
481 |
}
|
482 |
|
727 |
$('#datatable').prepend(newRow);
|
728 |
$('#datatable tr:first').hide().show('slow'); // just an animation to show newly added row
|
729 |
|
730 |
+
//if(total_rows >= data.backupRetained)
|
731 |
+
// $('#datatable tr:last').hide();
|
732 |
|
733 |
wpbackitup_add_viewlog_onclick();
|
734 |
|
lib/includes/class-job.php
CHANGED
@@ -287,7 +287,53 @@ class WPBackItUp_Job {
|
|
287 |
array_walk_recursive($meta_value, 'WPBackItUp_Utility::encode_items');
|
288 |
}
|
289 |
|
290 |
-
return update_post_meta( $this->job_id, $meta_name
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
291 |
}
|
292 |
|
293 |
public function get_job_meta($meta_name){
|
@@ -295,7 +341,7 @@ class WPBackItUp_Job {
|
|
295 |
|
296 |
$job_meta = get_post_meta($this->job_id,$meta_name,true);
|
297 |
|
298 |
-
//
|
299 |
if (is_array($job_meta)){
|
300 |
array_walk_recursive($job_meta, 'WPBackItUp_Utility::decode_items');
|
301 |
}
|
287 |
array_walk_recursive($meta_value, 'WPBackItUp_Utility::encode_items');
|
288 |
}
|
289 |
|
290 |
+
return update_post_meta( $this->job_id, $meta_name,$this->wpb_slash($meta_value));
|
291 |
+
}
|
292 |
+
|
293 |
+
/**
|
294 |
+
* Add slashes to a string or array of strings.
|
295 |
+
*
|
296 |
+
* This should be used when preparing data for core API that expects slashed data.
|
297 |
+
* This should not be used to escape data going directly into an SQL query.
|
298 |
+
*
|
299 |
+
* @since 3.6.0
|
300 |
+
*
|
301 |
+
* @param string|array $value String or array of strings to slash.
|
302 |
+
* @return string|array Slashed $value
|
303 |
+
*/
|
304 |
+
private function wpb_slash( $value ) {
|
305 |
+
//only available 3.6 or later
|
306 |
+
if (function_exists('wp_slash')) return wp_slash($value);
|
307 |
+
|
308 |
+
if ( is_array( $value ) ) {
|
309 |
+
foreach ( $value as $k => $v ) {
|
310 |
+
if ( is_array( $v ) ) {
|
311 |
+
$value[$k] = $this->wpb_slash( $v );
|
312 |
+
} else {
|
313 |
+
$value[$k] = addslashes( $v );
|
314 |
+
}
|
315 |
+
}
|
316 |
+
} else {
|
317 |
+
$value = addslashes( $value );
|
318 |
+
}
|
319 |
+
|
320 |
+
return $value;
|
321 |
+
}
|
322 |
+
|
323 |
+
/**
|
324 |
+
* Remove slashes from a string or array of strings.
|
325 |
+
*
|
326 |
+
* This should be used to remove slashes from data passed to core API that
|
327 |
+
* expects data to be unslashed.
|
328 |
+
*
|
329 |
+
* @since 3.6.0
|
330 |
+
*
|
331 |
+
* @param string|array $value String or array of strings to unslash.
|
332 |
+
* @return string|array Unslashed $value
|
333 |
+
*/
|
334 |
+
function wpb_
|
335 |
+
( $value ) {
|
336 |
+
return stripslashes_deep( $value );
|
337 |
}
|
338 |
|
339 |
public function get_job_meta($meta_name){
|
341 |
|
342 |
$job_meta = get_post_meta($this->job_id,$meta_name,true);
|
343 |
|
344 |
+
//Decode the array values
|
345 |
if (is_array($job_meta)){
|
346 |
array_walk_recursive($job_meta, 'WPBackItUp_Utility::decode_items');
|
347 |
}
|
lib/includes/class-logger.php
CHANGED
@@ -130,7 +130,18 @@ class WPBackItUp_Logger {
|
|
130 |
try{
|
131 |
if (true===$this->logging){
|
132 |
|
133 |
-
$this->log("**SYSTEM INFO**");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
134 |
|
135 |
$this->log("\n--Site Info--");
|
136 |
$this->log('Site URL:' . site_url());
|
@@ -144,7 +155,6 @@ class WPBackItUp_Logger {
|
|
144 |
$this->log('WP_DEBUG:' . ( defined( 'WP_DEBUG' ) ? WP_DEBUG ? 'Enabled' : 'Disabled' : 'Not set' ));
|
145 |
$this->log('Memory Limit:' . WP_MEMORY_LIMIT );
|
146 |
|
147 |
-
|
148 |
$this->log("\n--WordPress Active Plugins--");
|
149 |
// Check if get_plugins() function exists. This is required on the front end of the
|
150 |
// site, since it is in a file that is normally only loaded in the admin.
|
@@ -175,7 +185,6 @@ class WPBackItUp_Logger {
|
|
175 |
$this->log('Webserver Info:' . $_SERVER['SERVER_SOFTWARE']);
|
176 |
$this->log('MySQL Version:' . $wpdb->db_version());
|
177 |
|
178 |
-
|
179 |
$this->log("\n--PHP Info--");
|
180 |
$this->log("PHP Info:" . phpversion());
|
181 |
$this->log("Operating System:" . php_uname());
|
@@ -198,18 +207,9 @@ class WPBackItUp_Logger {
|
|
198 |
$this->log('Upload Max Filesize:' . ini_get( 'upload_max_filesize' ));
|
199 |
$this->log('Max Input Vars:' . ini_get( 'max_input_vars' ));
|
200 |
$this->log('Display Errors:' . ( ini_get( 'display_errors' ) ? 'On (' . ini_get( 'display_errors' ) . ')' : 'N/A' ));
|
|
|
201 |
|
202 |
-
|
203 |
-
$this->log("\n--WP BackItUp Info--");
|
204 |
-
$this->log("WPBACKITUP License Active: " . ($WPBackitup->license_active() ? 'true' : 'false'));
|
205 |
-
$prefix='WPBACKITUP';
|
206 |
-
foreach (get_defined_constants() as $key=>$value)
|
207 |
-
{
|
208 |
-
if (substr($key,0,strlen($prefix))==$prefix) {
|
209 |
-
$this->log($key . ':' . $value);
|
210 |
-
}
|
211 |
-
}
|
212 |
-
$this->log("**END SYSTEM INFO**");
|
213 |
}
|
214 |
} catch(Exception $e) {
|
215 |
//Dont do anything
|
130 |
try{
|
131 |
if (true===$this->logging){
|
132 |
|
133 |
+
$this->log("\n**SYSTEM INFO**");
|
134 |
+
|
135 |
+
$this->log("\n--WP BackItUp Info--");
|
136 |
+
|
137 |
+
$this->log("WPBACKITUP License Active: " . ($WPBackitup->license_active() ? 'true' : 'false'));
|
138 |
+
$prefix='WPBACKITUP';
|
139 |
+
foreach (get_defined_constants() as $key=>$value)
|
140 |
+
{
|
141 |
+
if (substr($key,0,strlen($prefix))==$prefix) {
|
142 |
+
$this->log($key . ':' . $value);
|
143 |
+
}
|
144 |
+
}
|
145 |
|
146 |
$this->log("\n--Site Info--");
|
147 |
$this->log('Site URL:' . site_url());
|
155 |
$this->log('WP_DEBUG:' . ( defined( 'WP_DEBUG' ) ? WP_DEBUG ? 'Enabled' : 'Disabled' : 'Not set' ));
|
156 |
$this->log('Memory Limit:' . WP_MEMORY_LIMIT );
|
157 |
|
|
|
158 |
$this->log("\n--WordPress Active Plugins--");
|
159 |
// Check if get_plugins() function exists. This is required on the front end of the
|
160 |
// site, since it is in a file that is normally only loaded in the admin.
|
185 |
$this->log('Webserver Info:' . $_SERVER['SERVER_SOFTWARE']);
|
186 |
$this->log('MySQL Version:' . $wpdb->db_version());
|
187 |
|
|
|
188 |
$this->log("\n--PHP Info--");
|
189 |
$this->log("PHP Info:" . phpversion());
|
190 |
$this->log("Operating System:" . php_uname());
|
207 |
$this->log('Upload Max Filesize:' . ini_get( 'upload_max_filesize' ));
|
208 |
$this->log('Max Input Vars:' . ini_get( 'max_input_vars' ));
|
209 |
$this->log('Display Errors:' . ( ini_get( 'display_errors' ) ? 'On (' . ini_get( 'display_errors' ) . ')' : 'N/A' ));
|
210 |
+
$this->log('Curl Installed:' . (function_exists('curl_version') ?'True' : 'False'));
|
211 |
|
212 |
+
$this->log("\n**END SYSTEM INFO**");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
}
|
214 |
} catch(Exception $e) {
|
215 |
//Dont do anything
|
lib/includes/class-wpbackitup-admin.php
CHANGED
@@ -841,17 +841,30 @@ class WPBackitup_Admin {
|
|
841 |
set_transient('error-support-email', __('Please enter a valid email', $this->namespace), 60);
|
842 |
}
|
843 |
|
844 |
-
if(empty($_POST['support_subject']))
|
845 |
-
{
|
846 |
-
$error=true;
|
847 |
-
set_transient('error-support-subject', __('Please enter a short description of your problem', $this->namespace), 60);
|
848 |
-
}
|
849 |
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
855 |
|
856 |
$include_logs=false;
|
857 |
if(!empty($_POST['support_include_logs']))
|
@@ -895,13 +908,12 @@ class WPBackitup_Admin {
|
|
895 |
$utility = new WPBackItUp_Utility($logger);
|
896 |
$support_to_address = WPBACKITUP__SUPPORT_EMAIL;
|
897 |
$support_from_email=$_POST['support_email'];
|
898 |
-
$support_subject = '
|
899 |
-
|
900 |
|
901 |
$site_info = 'WordPress Site: <a href="' . home_url() . '" target="_blank">' . home_url() .'</a><br/>';
|
902 |
$site_info .="WP BackItUp License Type: " . $this->license_type_description() .' <br />';
|
903 |
|
904 |
-
$support_body=$site_info . '<br/><br/>' . $_POST['support_body'];
|
905 |
|
906 |
|
907 |
$utility->send_email($support_to_address,$support_subject,$support_body,$logs_attachment,$support_from_email);
|
841 |
set_transient('error-support-email', __('Please enter a valid email', $this->namespace), 60);
|
842 |
}
|
843 |
|
|
|
|
|
|
|
|
|
|
|
844 |
|
845 |
+
if(empty($_POST['support_ticket_id']))
|
846 |
+
{
|
847 |
+
$error=true;
|
848 |
+
set_transient('error-support-ticket', __('Please enter your support ticket id', $this->namespace), 60);
|
849 |
+
}else {
|
850 |
+
if(!is_numeric($_POST['support_ticket_id']))
|
851 |
+
{
|
852 |
+
$error=true;
|
853 |
+
set_transient('error-support-ticket', __('Please only enter numbers in this field', $this->namespace), 60);
|
854 |
+
}
|
855 |
+
}
|
856 |
+
|
857 |
+
// if(empty($_POST['support_subject']))
|
858 |
+
// {
|
859 |
+
// $error=true;
|
860 |
+
// set_transient('error-support-subject', __('Please enter a short description of your problem', $this->namespace), 60);
|
861 |
+
// }
|
862 |
+
|
863 |
+
// if(empty($_POST['support_body']))
|
864 |
+
// {
|
865 |
+
// $error=true;
|
866 |
+
// set_transient('error-support-body', __('Please enter your problem description', $this->namespace), 60);
|
867 |
+
// }
|
868 |
|
869 |
$include_logs=false;
|
870 |
if(!empty($_POST['support_include_logs']))
|
908 |
$utility = new WPBackItUp_Utility($logger);
|
909 |
$support_to_address = WPBACKITUP__SUPPORT_EMAIL;
|
910 |
$support_from_email=$_POST['support_email'];
|
911 |
+
$support_subject = '[#' .trim($_POST['support_ticket_id']) .']';
|
|
|
912 |
|
913 |
$site_info = 'WordPress Site: <a href="' . home_url() . '" target="_blank">' . home_url() .'</a><br/>';
|
914 |
$site_info .="WP BackItUp License Type: " . $this->license_type_description() .' <br />';
|
915 |
|
916 |
+
$support_body=$site_info . '<br/><br/><b>Customer Comments:</b><br/><br/>' . $_POST['support_body'];
|
917 |
|
918 |
|
919 |
$utility->send_email($support_to_address,$support_subject,$support_body,$logs_attachment,$support_from_email);
|
lib/includes/job_backup.php
CHANGED
@@ -291,22 +291,22 @@ if ('task_preparing'==$current_task) {
|
|
291 |
//Generate the list of files to be backed up and update the tasks info
|
292 |
|
293 |
$plugins_file_list = $wp_backup->get_plugins_file_list();
|
294 |
-
$backup_job->update_job_meta('backup_plugins_filelist'
|
295 |
-
$backup_job->update_job_meta('backup_plugins_filelist_remaining'
|
296 |
|
297 |
$themes_file_list = $wp_backup->get_themes_file_list();
|
298 |
-
$backup_job->update_job_meta('backup_themes_filelist'
|
299 |
-
$backup_job->update_job_meta('backup_themes_filelist_remaining'
|
300 |
|
301 |
//some folders excluded
|
302 |
$uploads_file_list = $wp_backup->get_uploads_file_list();
|
303 |
-
$backup_job->update_job_meta('backup_uploads_filelist'
|
304 |
-
$backup_job->update_job_meta('backup_uploads_filelist_remaining'
|
305 |
|
306 |
//some folders excluded
|
307 |
$others_file_list = $wp_backup->get_other_file_list();
|
308 |
-
$backup_job->update_job_meta('backup_others_filelist'
|
309 |
-
$backup_job->update_job_meta('backup_others_filelist_remaining'
|
310 |
|
311 |
|
312 |
set_status('preparing',$complete,false);
|
@@ -403,7 +403,7 @@ if ('task_backup_themes'==$current_task) {
|
|
403 |
end_backup( 120, false );
|
404 |
}else{
|
405 |
//update the file list with remaining files
|
406 |
-
$backup_job->update_job_meta('backup_themes_filelist_remaining'
|
407 |
|
408 |
$themes_remaining_files_count= count($themes_remaining_files);
|
409 |
$themes_batch_count = $themes_file_list_count-$themes_remaining_files_count;
|
@@ -450,7 +450,7 @@ if ('task_backup_plugins'==$current_task) {
|
|
450 |
end_backup( 121, false );
|
451 |
} else {
|
452 |
//update the file list with remaining files
|
453 |
-
$backup_job->update_job_meta('backup_plugins_filelist_remaining'
|
454 |
|
455 |
$plugins_remaining_files_count= count($plugins_remaining_files);
|
456 |
$plugins_batch_count = $plugins_file_list_count-$plugins_remaining_files_count;
|
@@ -501,7 +501,7 @@ if ('task_backup_uploads'==$current_task) {
|
|
501 |
end_backup( 122, false );
|
502 |
} else {
|
503 |
//update the file list with remaining files
|
504 |
-
$backup_job->update_job_meta( 'backup_uploads_filelist_remaining'
|
505 |
|
506 |
$uploads_remaining_files_count = count( $uploads_remaining_files );
|
507 |
$uploads_batch_count = $uploads_file_list_count - $uploads_remaining_files_count;
|
@@ -551,7 +551,7 @@ if ('task_backup_other'==$current_task) {
|
|
551 |
end_backup( 123, false );
|
552 |
} else {
|
553 |
//update the file list with remaining files
|
554 |
-
$backup_job->update_job_meta( 'backup_others_filelist_remaining',
|
555 |
|
556 |
$others_remaining_files_count = count( $others_remaining_files );
|
557 |
$others_batch_count = $others_file_list_count - $others_remaining_files_count;
|
291 |
//Generate the list of files to be backed up and update the tasks info
|
292 |
|
293 |
$plugins_file_list = $wp_backup->get_plugins_file_list();
|
294 |
+
$backup_job->update_job_meta('backup_plugins_filelist',$plugins_file_list);
|
295 |
+
$backup_job->update_job_meta('backup_plugins_filelist_remaining',$plugins_file_list);
|
296 |
|
297 |
$themes_file_list = $wp_backup->get_themes_file_list();
|
298 |
+
$backup_job->update_job_meta('backup_themes_filelist',$themes_file_list);
|
299 |
+
$backup_job->update_job_meta('backup_themes_filelist_remaining',$themes_file_list);
|
300 |
|
301 |
//some folders excluded
|
302 |
$uploads_file_list = $wp_backup->get_uploads_file_list();
|
303 |
+
$backup_job->update_job_meta('backup_uploads_filelist',$uploads_file_list);
|
304 |
+
$backup_job->update_job_meta('backup_uploads_filelist_remaining',$uploads_file_list);
|
305 |
|
306 |
//some folders excluded
|
307 |
$others_file_list = $wp_backup->get_other_file_list();
|
308 |
+
$backup_job->update_job_meta('backup_others_filelist',$others_file_list);
|
309 |
+
$backup_job->update_job_meta('backup_others_filelist_remaining',$others_file_list);
|
310 |
|
311 |
|
312 |
set_status('preparing',$complete,false);
|
403 |
end_backup( 120, false );
|
404 |
}else{
|
405 |
//update the file list with remaining files
|
406 |
+
$backup_job->update_job_meta('backup_themes_filelist_remaining',$themes_remaining_files);
|
407 |
|
408 |
$themes_remaining_files_count= count($themes_remaining_files);
|
409 |
$themes_batch_count = $themes_file_list_count-$themes_remaining_files_count;
|
450 |
end_backup( 121, false );
|
451 |
} else {
|
452 |
//update the file list with remaining files
|
453 |
+
$backup_job->update_job_meta('backup_plugins_filelist_remaining',$plugins_remaining_files);
|
454 |
|
455 |
$plugins_remaining_files_count= count($plugins_remaining_files);
|
456 |
$plugins_batch_count = $plugins_file_list_count-$plugins_remaining_files_count;
|
501 |
end_backup( 122, false );
|
502 |
} else {
|
503 |
//update the file list with remaining files
|
504 |
+
$backup_job->update_job_meta( 'backup_uploads_filelist_remaining',$uploads_remaining_files);
|
505 |
|
506 |
$uploads_remaining_files_count = count( $uploads_remaining_files );
|
507 |
$uploads_batch_count = $uploads_file_list_count - $uploads_remaining_files_count;
|
551 |
end_backup( 123, false );
|
552 |
} else {
|
553 |
//update the file list with remaining files
|
554 |
+
$backup_job->update_job_meta( 'backup_others_filelist_remaining', $others_remaining_files );
|
555 |
|
556 |
$others_remaining_files_count = count( $others_remaining_files );
|
557 |
$others_batch_count = $others_file_list_count - $others_remaining_files_count;
|
lib/includes/job_restore.php
CHANGED
@@ -247,8 +247,8 @@ if ('task_preparing'==$current_task) {
|
|
247 |
$logger->log_info(__METHOD__,'Fetch backups pattern:' .$backup_path_pattern);
|
248 |
$backup_set = glob( $backup_path_pattern);
|
249 |
if ( is_array($backup_set) && count($backup_set)>0){
|
250 |
-
$restore_job->update_job_meta('backup_set'
|
251 |
-
$restore_job->update_job_meta('backup_set_remaining'
|
252 |
}else{
|
253 |
fatal_error($task,'222','No zip files found (pattern):' . $backup_path_pattern);
|
254 |
}
|
@@ -316,7 +316,7 @@ if ('task_unzip_backup_set'==$current_task) {
|
|
316 |
} else {
|
317 |
|
318 |
array_shift( $backup_set_list ); //remove from list
|
319 |
-
$restore_job->update_job_meta('backup_set_remaining'
|
320 |
|
321 |
if (is_array($backup_set_list) && count($backup_set_list)>0){
|
322 |
//CONTINUE
|
247 |
$logger->log_info(__METHOD__,'Fetch backups pattern:' .$backup_path_pattern);
|
248 |
$backup_set = glob( $backup_path_pattern);
|
249 |
if ( is_array($backup_set) && count($backup_set)>0){
|
250 |
+
$restore_job->update_job_meta('backup_set',$backup_set);
|
251 |
+
$restore_job->update_job_meta('backup_set_remaining',$backup_set);
|
252 |
}else{
|
253 |
fatal_error($task,'222','No zip files found (pattern):' . $backup_path_pattern);
|
254 |
}
|
316 |
} else {
|
317 |
|
318 |
array_shift( $backup_set_list ); //remove from list
|
319 |
+
$restore_job->update_job_meta('backup_set_remaining',$backup_set_list);
|
320 |
|
321 |
if (is_array($backup_set_list) && count($backup_set_list)>0){
|
322 |
//CONTINUE
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.wpbackitup.com
|
|
4 |
Tags: backup, back up, backups, backup wordpress, backup database, backup plugin, backup and restore, database, database backup, database restore, db, db backup, db restore, download database, full backup, mysql backup, restore, restore database,restore wordpress, restore wordpress backup,restoring wordpress, website backup, wordpress backup, wordpress restore, plugin, backup buddy
|
5 |
Requires at least: 3.8.0
|
6 |
Tested up to: 4.1
|
7 |
-
Stable tag: 1.10.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -151,6 +151,12 @@ Our online documentation and full list of FAQs can be found at [www.wpbackitup.c
|
|
151 |
|
152 |
|
153 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
= 1.10.2 =
|
155 |
* Update: Display backup file set name instead of date
|
156 |
* Fix: Backup plugins error when no files on last folder
|
4 |
Tags: backup, back up, backups, backup wordpress, backup database, backup plugin, backup and restore, database, database backup, database restore, db, db backup, db restore, download database, full backup, mysql backup, restore, restore database,restore wordpress, restore wordpress backup,restoring wordpress, website backup, wordpress backup, wordpress restore, plugin, backup buddy
|
5 |
Requires at least: 3.8.0
|
6 |
Tested up to: 4.1
|
7 |
+
Stable tag: 1.10.2
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
151 |
|
152 |
|
153 |
== Changelog ==
|
154 |
+
= 1.10.3 =
|
155 |
+
* Update: Add ticket id to support view.
|
156 |
+
* Fix: Add UTF Encoding on file names being backed up and restored
|
157 |
+
* Fix: Multiple new backup success messages after backup
|
158 |
+
* Fix: Add wp_slash function to support Wordpress versions 3.6 and lower
|
159 |
+
|
160 |
= 1.10.2 =
|
161 |
* Update: Display backup file set name instead of date
|
162 |
* Fix: Backup plugins error when no files on last folder
|
views/support.php
CHANGED
@@ -39,8 +39,9 @@
|
|
39 |
<?php wp_nonce_field($namespace . "-support-form"); ?>
|
40 |
<div class="widget">
|
41 |
<h3 class="promo"><i class="fa fa-envelope"></i> Email Logs to Support</h3>
|
42 |
-
<p><b>
|
43 |
-
<p
|
|
|
44 |
<p><input <?php echo($disabled) ; ?> type="text" name="support_email" value="<?php echo $support_email; ?>" size="30" placeholder="your email address">
|
45 |
<?php
|
46 |
if ( false !== ( $msg = get_transient('error-support-email') ) && $msg)
|
@@ -51,18 +52,17 @@
|
|
51 |
?>
|
52 |
</p>
|
53 |
|
54 |
-
<p><input <?php echo($disabled) ; ?> type="text" name="
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
</p>
|
64 |
|
65 |
-
<p><textarea <?php echo($disabled) ; ?> name="support_body" rows="4" cols="50" style="width:450px;height:150px;" placeholder="problem description"><?php echo get_transient('support_body'); ?></textarea>
|
66 |
<?php
|
67 |
if ( false !== ( $msg = get_transient('error-support-body') ) && $msg)
|
68 |
{
|
39 |
<?php wp_nonce_field($namespace . "-support-form"); ?>
|
40 |
<div class="widget">
|
41 |
<h3 class="promo"><i class="fa fa-envelope"></i> Email Logs to Support</h3>
|
42 |
+
<p><b>This form should be used to send log files to support only.</b></p>
|
43 |
+
<p>Please make sure to open a support ticket via WP BackItUp <a href="https://www.wpbackitup.com/support" target="_blank">support portal.</a> before using this form.</p>
|
44 |
+
<p><em><?php _e('The ticket id you receive from your support request should be entered in the ticket id field below.', $namespace); ?></em></p>
|
45 |
<p><input <?php echo($disabled) ; ?> type="text" name="support_email" value="<?php echo $support_email; ?>" size="30" placeholder="your email address">
|
46 |
<?php
|
47 |
if ( false !== ( $msg = get_transient('error-support-email') ) && $msg)
|
52 |
?>
|
53 |
</p>
|
54 |
|
55 |
+
<p><input <?php echo($disabled) ; ?> type="text" name="support_ticket_id" value="" size="30" placeholder="support ticket id">
|
56 |
+
<?php
|
57 |
+
if ( false !== ( $msg = get_transient('error-support-ticket') ) && $msg)
|
58 |
+
{
|
59 |
+
echo '<span class="error">'.$msg.'</span>';
|
60 |
+
delete_transient('error-support-ticket');
|
61 |
+
}
|
62 |
+
?>
|
|
|
63 |
</p>
|
64 |
|
65 |
+
<p><textarea <?php echo($disabled) ; ?> name="support_body" rows="4" cols="50" style="width:450px;height:150px;" placeholder="problem description or additional information"><?php echo get_transient('support_body'); ?></textarea>
|
66 |
<?php
|
67 |
if ( false !== ( $msg = get_transient('error-support-body') ) && $msg)
|
68 |
{
|
wp-backitup.php
CHANGED
@@ -13,7 +13,7 @@
|
|
13 |
Plugin Name: WP Backitup
|
14 |
Plugin URI: http://www.wpbackitup.com
|
15 |
Description: Backup your content, settings, themes, plugins and media in just a few simple clicks.
|
16 |
-
Version: 1.10.
|
17 |
Author: Chris Simmons
|
18 |
Author URI: http://www.wpbackitup.com
|
19 |
License: GPL3
|
@@ -35,7 +35,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
35 |
*/
|
36 |
|
37 |
define( 'WPBACKITUP__NAMESPACE', 'wp-backitup' );
|
38 |
-
define( 'WPBACKITUP__VERSION', '1.10.
|
39 |
define( 'WPBACKITUP__DEBUG', false );
|
40 |
define( 'WPBACKITUP__MINIMUM_WP_VERSION', '3.0' );
|
41 |
define( 'WPBACKITUP__ITEM_NAME', 'WP Backitup' );
|
13 |
Plugin Name: WP Backitup
|
14 |
Plugin URI: http://www.wpbackitup.com
|
15 |
Description: Backup your content, settings, themes, plugins and media in just a few simple clicks.
|
16 |
+
Version: 1.10.3
|
17 |
Author: Chris Simmons
|
18 |
Author URI: http://www.wpbackitup.com
|
19 |
License: GPL3
|
35 |
*/
|
36 |
|
37 |
define( 'WPBACKITUP__NAMESPACE', 'wp-backitup' );
|
38 |
+
define( 'WPBACKITUP__VERSION', '1.10.3');
|
39 |
define( 'WPBACKITUP__DEBUG', false );
|
40 |
define( 'WPBACKITUP__MINIMUM_WP_VERSION', '3.0' );
|
41 |
define( 'WPBACKITUP__ITEM_NAME', 'WP Backitup' );
|