Version Description
- Optimized migration process.
- Fixed some bugs in the plugin code.
- Optimized the plugin code.
Download this release
Release Info
Developer | wpvivid |
Plugin | Migration, Backup, Staging – WPvivid |
Version | 0.9.43 |
Comparing to | |
See all releases |
Code changes from version 0.9.42 to 0.9.43
- admin/class-wpvivid-admin.php +104 -112
- admin/partials/wpvivid-admin-display.php +2 -2
- admin/partials/wpvivid-backup-restore-page-display.php +62 -62
- admin/partials/wpvivid-remote-storage-page-display.php +14 -14
- admin/partials/wpvivid-schedule-page-display.php +16 -16
- admin/partials/wpvivid-settings-page-display.php +76 -76
- includes/class-wpvivid-backup-database.php +35 -5
- includes/class-wpvivid-backup-uploader.php +4 -4
- includes/class-wpvivid-backup.php +20 -15
- includes/class-wpvivid-backuplist.php +4 -4
- includes/class-wpvivid-crypt.php +146 -0
- includes/class-wpvivid-export-import.php +61 -61
- includes/class-wpvivid-exporter.php +7 -7
- includes/class-wpvivid-function-realize.php +6 -6
- includes/class-wpvivid-i18n.php +1 -1
- includes/class-wpvivid-importer.php +19 -19
- includes/class-wpvivid-interface-mainwp.php +5 -5
- includes/class-wpvivid-mail-report.php +1 -1
- includes/class-wpvivid-migrate.php +45 -44
- includes/class-wpvivid-mysqldump-wpdb.php +0 -770
- includes/class-wpvivid-mysqldump.php +11 -14
- includes/class-wpvivid-public-interface.php +5 -5
- includes/class-wpvivid-restore-database.php +91 -7
- includes/class-wpvivid-restore-site.php +19 -5
- includes/class-wpvivid-restore.php +87 -1
- includes/class-wpvivid-schedule.php +9 -9
- includes/class-wpvivid-tab-page-container.php +2 -2
- includes/class-wpvivid-taskmanager.php +1 -1
- includes/class-wpvivid-zipclass.php +1 -1
- includes/class-wpvivid.php +116 -95
- includes/customclass/class-wpvivid-amazons3-plus.php +38 -38
- includes/customclass/class-wpvivid-dropbox.php +22 -22
- includes/customclass/class-wpvivid-ftpclass.php +36 -36
- includes/customclass/class-wpvivid-google-drive.php +26 -26
- includes/customclass/class-wpvivid-one-drive.php +22 -22
- includes/customclass/class-wpvivid-s3compat.php +33 -33
- includes/customclass/class-wpvivid-sftpclass.php +33 -33
- languages/{wpvivid-bg_BG.mo → wpvivid-backuprestore-bg_BG.mo} +0 -0
- languages/{wpvivid-bg_BG.po → wpvivid-backuprestore-bg_BG.po} +2 -2
- languages/wpvivid-backuprestore-it_IT.mo +0 -0
- languages/{wpvivid-it_IT.po → wpvivid-backuprestore-it_IT.po} +299 -859
- languages/{wpvivid.pot → wpvivid-backuprestore.pot} +0 -0
- languages/wpvivid-it_IT.mo +0 -0
- readme.txt +7 -3
- wpvivid-backuprestore.php +3 -3
admin/class-wpvivid-admin.php
CHANGED
@@ -97,7 +97,7 @@ class WPvivid_Admin {
|
|
97 |
|
98 |
$menu['id']='wpvivid_admin_menu_backup';
|
99 |
$menu['parent']='wpvivid_admin_menu';
|
100 |
-
$menu['title']=__('Backup & Restore', 'wpvivid');
|
101 |
$menu['tab']='admin.php?page=WPvivid&tab-backup';
|
102 |
$menu['href']=$admin_url . 'admin.php?page=WPvivid&tab-backup';
|
103 |
$menu['capability']='administrator';
|
@@ -111,7 +111,7 @@ class WPvivid_Admin {
|
|
111 |
{
|
112 |
$submenu['parent_slug']=$this->plugin_name;
|
113 |
$submenu['page_title']='WPvivid Backup';
|
114 |
-
$submenu['menu_title']=__('Backup & Restore', 'wpvivid');
|
115 |
$submenu['capability']='administrator';
|
116 |
$submenu['menu_slug']=$this->plugin_name;
|
117 |
$submenu['function']=array($this, 'display_plugin_setup_page');
|
@@ -120,7 +120,7 @@ class WPvivid_Admin {
|
|
120 |
|
121 |
$submenu['parent_slug']=$this->plugin_name;
|
122 |
$submenu['page_title']='WPvivid Backup';
|
123 |
-
$submenu['menu_title']=__('Settings', 'wpvivid');
|
124 |
$submenu['capability']='administrator';
|
125 |
$submenu['menu_slug']='wpvivid-setting';
|
126 |
$submenu['function']=array($this, 'display_plugin_setup_page');
|
@@ -136,39 +136,39 @@ class WPvivid_Admin {
|
|
136 |
|
137 |
$html = '<div class="postbox">
|
138 |
<h2>
|
139 |
-
<div style="float: left; margin-right: 5px;"><span style="margin: 0; padding: 0">'.__('Current Version:', 'wpvivid').' '.$wpvivid_version.'</span></div>
|
140 |
<div style="float: left; margin-right: 5px;"><span style="margin: 0; padding: 0">|</span></div>
|
141 |
<div style="float: left; margin-left: 0;">
|
142 |
-
<span style="margin: 0; padding: 0"><a href="https://wordpress.org/plugins/wpvivid-backuprestore/#developers" target="_blank" style="text-decoration: none;">'.__('ChangeLog', 'wpvivid').'</a></span>
|
143 |
</div>
|
144 |
<div style="clear: both;"></div>
|
145 |
</h2>
|
146 |
</div>
|
147 |
<div id="wpvivid_backup_schedule_part"></div>
|
148 |
<div class="postbox">
|
149 |
-
<h2><span>'.__('Troubleshooting', 'wpvivid').'</span></h2>
|
150 |
<div class="inside">
|
151 |
<table class="widefat" cellpadding="0">
|
152 |
<tbody>
|
153 |
<tr class="alternate">
|
154 |
-
<td class="row-title">'.__('Read <a href="https://wpvivid.com/troubleshooting-issues-wpvivid-backup-plugin" target="_blank">Troubleshooting page</a> for faster solutions.', 'wpvivid').'</td>
|
155 |
</tr>
|
156 |
<tr>
|
157 |
-
<td class="row-title">'.__('Adjust <a href="https://wpvivid.com/wpvivid-backup-plugin-advanced-settings.html" target="_blank">Advanced Settings</a> for higher task success rate.', 'wpvivid').'</td>
|
158 |
</tr>
|
159 |
</tbody>
|
160 |
</table>
|
161 |
</div>
|
162 |
</div>
|
163 |
<div class="postbox">
|
164 |
-
<h2><span>'.__('How-to', 'wpvivid').'</span></h2>
|
165 |
<div class="inside">
|
166 |
<table class="widefat" cellpadding="0">
|
167 |
<tbody>
|
168 |
-
<tr class="alternate"><td class="row-title"><a href="https://wpvivid.com/get-started-settings.html" target="_blank">'.__('WPvivid Backup Settings', 'wpvivid').'</a></td></tr>
|
169 |
-
<tr><td class="row-title"><a href="https://wpvivid.com/get-started-create-a-manual-backup.html" target="_blank">'.__('Create a Manual Backup', 'wpvivid').'</a></td></tr>
|
170 |
-
<tr class="alternate"><td class="row-title"><a href="https://wpvivid.com/get-started-restore-site.html" target="_blank">'.__('Restore Your Site from a Backup', 'wpvivid').'</a></td></tr>
|
171 |
-
<tr><td class="row-title"><a href="https://wpvivid.com/get-started-transfer-site.html" target="_blank">'.__('Migrate WordPress', 'wpvivid').'</a></td></tr>
|
172 |
</tbody>
|
173 |
</table>
|
174 |
</div>
|
@@ -206,11 +206,11 @@ class WPvivid_Admin {
|
|
206 |
wp_localize_script($this->plugin_name, 'wpvivid_ajax_object', array('ajax_url' => admin_url('admin-ajax.php'),'ajax_nonce'=>wp_create_nonce('wpvivid_ajax')));
|
207 |
|
208 |
wp_localize_script($this->plugin_name, 'wpvividlion', array(
|
209 |
-
'warning' => __('Warning:', 'wpvivid'),
|
210 |
-
'error' => __('Error:', 'wpvivid'),
|
211 |
-
'remotealias' => __('Warning: An alias for remote storage is required.', 'wpvivid'),
|
212 |
-
'remoteexist' => __('Warning: The alias already exists in storage list.', 'wpvivid'),
|
213 |
-
'backup_calc_timeout' => __('Calculating the size of files, folder and database timed out. If you continue to receive this error, please go to the plugin settings, uncheck \'Calculate the size of files, folder and database before backing up\', save changes, then try again.', 'wpvivid'),
|
214 |
));
|
215 |
|
216 |
wp_enqueue_script('plupload-all');
|
@@ -358,7 +358,7 @@ class WPvivid_Admin {
|
|
358 |
if($need_review=='not')
|
359 |
{
|
360 |
WPvivid_Setting::update_option('wpvivid_need_review','show');
|
361 |
-
$msg = __('Cheers! WPvivid Backup plugin has restored successfully your website. If you found WPvivid Backup plugin helpful, a 5-star rating would be highly appreciated, which motivates us to keep providing new features.', 'wpvivid');
|
362 |
WPvivid_Setting::update_option('wpvivid_review_msg',$msg);
|
363 |
}
|
364 |
else{
|
@@ -451,10 +451,10 @@ class WPvivid_Admin {
|
|
451 |
echo '<div class="notice notice-info is-dismissible" id="wpvivid_notice_rate">
|
452 |
<p>' . $review_msg . '</p>
|
453 |
<div style="padding-bottom: 10px;">
|
454 |
-
<span><input type="button" class="button-primary" option="review" name="rate-now" value="'.esc_attr('Rate Us', 'wpvivid').'" /></span>
|
455 |
-
<span><input type="button" class="button-secondary" option="review" name="ask-later" value="'.esc_attr('Maybe Later', 'wpvivid').'" /></span>
|
456 |
-
<span><input type="button" class="button-secondary" option="review" name="never-ask" value="'.esc_attr('Never', 'wpvivid').'" /></span>
|
457 |
-
<span><input type="button" class="button-secondary" option="review" name="already-done" value="'.esc_attr('Already Done', 'wpvivid').'" /></span>
|
458 |
</div>
|
459 |
</div>';
|
460 |
}
|
@@ -469,10 +469,10 @@ class WPvivid_Admin {
|
|
469 |
echo '<div class="notice notice-info is-dismissible" id="wpvivid_notice_rate">
|
470 |
<p>' . $review_msg . '</p>
|
471 |
<div style="padding-bottom: 10px;">
|
472 |
-
<span><input type="button" class="button-primary" option="review" name="rate-now" value="'.esc_attr('Rate Us', 'wpvivid').'" /></span>
|
473 |
-
<span><input type="button" class="button-secondary" option="review" name="ask-later" value="'.esc_attr('Maybe Later', 'wpvivid').'" /></span>
|
474 |
-
<span><input type="button" class="button-secondary" option="review" name="never-ask" value="'.esc_attr('Never', 'wpvivid').'" /></span>
|
475 |
-
<span><input type="button" class="button-secondary" option="review" name="already-done" value="'.esc_attr('Already Done', 'wpvivid').'" /></span>
|
476 |
</div>
|
477 |
</div>';
|
478 |
}
|
@@ -508,7 +508,7 @@ class WPvivid_Admin {
|
|
508 |
$amazons3_notice = WPvivid_Setting::get_option('wpvivid_amazons3_notice', 'not init');
|
509 |
if($amazons3_notice === 'not init')
|
510 |
{
|
511 |
-
$notice_message = __('As Amazon S3 and DigitalOcean Space have upgraded their connection methods, please delete the previous connections and re-add your Amazon S3/DigitalOcean Space accounts to make sure the connections work.', 'wpvivid');
|
512 |
echo '<div class="notice notice-warning" id="wpvivid_amazons3_notice">
|
513 |
<p>' . $notice_message . '</p>
|
514 |
<div style="padding-bottom: 10px;">
|
@@ -560,21 +560,21 @@ class WPvivid_Admin {
|
|
560 |
}
|
561 |
}
|
562 |
if($figure == 1){
|
563 |
-
echo '<div class="notice notice-error"><p>'.sprintf(__('The %s extension is not detected. Please install the extension first.', 'wpvivid'), $msg).'</p></div>';
|
564 |
}
|
565 |
else{
|
566 |
-
echo '<div class="notice notice-error"><p>'.sprintf(__('The %s extensions are not detected. Please install the extensions first.', 'wpvivid'), $msg).'</p></div>';
|
567 |
}
|
568 |
}
|
569 |
|
570 |
if (!class_exists('PclZip')) include_once(ABSPATH.'/wp-admin/includes/class-pclzip.php');
|
571 |
if (!class_exists('PclZip')) {
|
572 |
-
echo '<div class="notice notice-error"><p>'.__('Class PclZip is not detected. Please update or reinstall your WordPress.', 'wpvivid').'</p></div>';
|
573 |
}
|
574 |
|
575 |
$hide_notice = get_option('wpvivid_hide_wp_cron_notice', false);
|
576 |
if(defined( 'DISABLE_WP_CRON' ) && DISABLE_WP_CRON && $hide_notice === false){
|
577 |
-
echo '<div class="notice notice-error notice-wp-cron is-dismissible"><p>'.__('In order to execute the scheduled backups properly, please set the DISABLE_WP_CRON constant to false.', 'wpvivid').'</p></div>';
|
578 |
}
|
579 |
}
|
580 |
|
@@ -600,17 +600,17 @@ class WPvivid_Admin {
|
|
600 |
echo WPVIVID_PLUGIN_URL;
|
601 |
?>';
|
602 |
var wpvivid_log_count = '<?php
|
603 |
-
_e(sizeof($loglist['log_list']['file']), 'wpvivid');
|
604 |
?>';
|
605 |
var wpvivid_log_array = '<?php
|
606 |
-
_e(json_encode($loglist), 'wpvivid');
|
607 |
?>';
|
608 |
var wpvivid_page_request = '<?php
|
609 |
$page_request = WPvivid_Admin::wpvivid_get_page_request();
|
610 |
-
_e($page_request, 'wpvivid');
|
611 |
?>';
|
612 |
var wpvivid_default_remote_storage = '<?php
|
613 |
-
_e($default_remote_storage, 'wpvivid');
|
614 |
?>';
|
615 |
</script>
|
616 |
<?php
|
@@ -634,44 +634,44 @@ class WPvivid_Admin {
|
|
634 |
|
635 |
public function wpvivid_add_tab_backup_restore(){
|
636 |
?>
|
637 |
-
<a href="#" id="wpvivid_tab_general" class="nav-tab wrap-nav-tab nav-tab-active" onclick="switchTabs(event,'general-page')"><?php _e('Backup & Restore', 'wpvivid'); ?></a>
|
638 |
<?php
|
639 |
}
|
640 |
|
641 |
public function wpvivid_add_tab_schedule(){
|
642 |
?>
|
643 |
-
<a href="#" id="wpvivid_tab_schedule" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'schedule-page')"><?php _e('Schedule', 'wpvivid'); ?></a>
|
644 |
<?php
|
645 |
}
|
646 |
|
647 |
public function wpvivid_add_tab_remote_storage(){
|
648 |
?>
|
649 |
-
<a href="#" id="wpvivid_tab_remote_storage" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'storage-page')"><?php _e('Remote Storage', 'wpvivid'); ?></a>
|
650 |
<?php
|
651 |
}
|
652 |
|
653 |
public function wpvivid_add_tab_setting(){
|
654 |
?>
|
655 |
-
<a href="#" id="wpvivid_tab_setting" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'settings-page')"><?php _e('Settings', 'wpvivid'); ?></a>
|
656 |
<?php
|
657 |
}
|
658 |
|
659 |
public function wpvivid_add_tab_website_info(){
|
660 |
?>
|
661 |
-
<a href="#" id="wpvivid_tab_debug" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'debug-page')"><?php _e('Debug', 'wpvivid'); ?></a>
|
662 |
<?php
|
663 |
}
|
664 |
|
665 |
public function wpvivid_add_tab_log(){
|
666 |
?>
|
667 |
-
<a href="#" id="wpvivid_tab_log" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'logs-page')"><?php _e('Logs', 'wpvivid'); ?></a>
|
668 |
<?php
|
669 |
}
|
670 |
|
671 |
public function wpvivid_add_tab_read_log(){
|
672 |
?>
|
673 |
<a href="#" id="wpvivid_tab_read_log" class="nav-tab wrap-nav-tab delete" onclick="switchTabs(event,'log-read-page')" style="display: none;">
|
674 |
-
<div style="margin-right: 15px;"><?php _e('Log', 'wpvivid'); ?></div>
|
675 |
<div class="nav-tab-delete-img">
|
676 |
<img src="<?php echo esc_url( WPVIVID_PLUGIN_URL.'/admin/partials/images/delete-tab.png' ); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_read_log', 'wrap', 'wpvivid_tab_log');" />
|
677 |
</div>
|
@@ -682,7 +682,7 @@ class WPvivid_Admin {
|
|
682 |
public function wpvivid_add_tab_mwp(){
|
683 |
?>
|
684 |
<a href="#" id="wpvivid_tab_mainwp" class="nav-tab wrap-nav-tab delete" onclick="switchTabs(event, 'mwp-page')">
|
685 |
-
<div style="margin-right: 15px;"><?php _e('MainWP', 'wpvivid'); ?></div>
|
686 |
<div class="nav-tab-delete-img">
|
687 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/delete-tab.png'); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_mainwp', 'wrap', 'wpvivid_tab_general');" />
|
688 |
</div>
|
@@ -692,7 +692,7 @@ class WPvivid_Admin {
|
|
692 |
|
693 |
public function wpvivid_add_tab_premium(){
|
694 |
?>
|
695 |
-
<a href="#" id="wpvivid_tab_premium" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'premium-page')"><?php _e('Premium', 'wpvivid'); ?></a>
|
696 |
<?php
|
697 |
}
|
698 |
|
@@ -734,7 +734,7 @@ class WPvivid_Admin {
|
|
734 |
<?php do_action('wpvivid_schedule_add_cell'); ?>
|
735 |
<tfoot>
|
736 |
<tr>
|
737 |
-
<th class="row-title"><input class="button-primary storage-account-button" id="wpvivid_schedule_save" type="submit" name="" value="<?php esc_attr_e( 'Save Changes', 'wpvivid' ); ?>" /></th>
|
738 |
<th></th>
|
739 |
</tr>
|
740 |
</tfoot>
|
@@ -821,7 +821,7 @@ class WPvivid_Admin {
|
|
821 |
?>
|
822 |
</h2>
|
823 |
<?php do_action('wpvivid_settingpage_add_page'); ?>
|
824 |
-
<div><input class="button-primary" id="wpvivid_setting_general_save" type="submit" value="<?php esc_attr_e( 'Save Changes', 'wpvivid' ); ?>" /></div>
|
825 |
</div>
|
826 |
</div>
|
827 |
<script>
|
@@ -869,18 +869,18 @@ class WPvivid_Admin {
|
|
869 |
?>
|
870 |
<div id="debug-page" class="wrap-tab-content wpvivid_tab_debug" name="tab-debug" style="display:none;">
|
871 |
<table class="widefat">
|
872 |
-
<div style="padding: 0 0 20px 10px;"><?php _e('There are two ways available to send us the debug information. The first one is recommended.', 'wpvivid'); ?></div>
|
873 |
<div style="padding-left: 10px;">
|
874 |
-
<strong><?php _e('Method 1.'); ?></strong> <?php _e('If you have configured SMTP on your site, enter your email address and click the button below to send us the relevant information (website info and errors logs) when you are encountering errors. This will help us figure out what happened. Once the issue is resolved, we will inform you by your email address.', 'wpvivid'); ?>
|
875 |
</div>
|
876 |
<div style="padding:10px 10px 0">
|
877 |
-
<span class="wpvivid-element-space-right"><?php echo __('WPvivid support email:', 'wpvivid'); ?></span><input type="text" id="wpvivid_support_mail" value="support@wpvivid.com" readonly />
|
878 |
-
<span class="wpvivid-element-space-right"><?php _e('Your email:', 'wpvivid'); ?></span><input type="text" id="wpvivid_user_mail" />
|
879 |
</div>
|
880 |
<div style="padding:10px 10px 0">
|
881 |
<div style="float: left;">
|
882 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right wpvivid-debug-text-fix" style="float: left;">
|
883 |
-
<?php _e('I am using:', 'wpvivid'); ?>
|
884 |
</div>
|
885 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
886 |
<select id="wpvivid_debug_type">
|
@@ -892,7 +892,7 @@ class WPvivid_Admin {
|
|
892 |
</div>
|
893 |
<div id="wpvivid_debug_host" style="float: left;">
|
894 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right wpvivid-debug-text-fix" style="float: left;">
|
895 |
-
<?php _e('My web hosting provider is:', 'wpvivid'); ?>
|
896 |
</div>
|
897 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
898 |
<input type="text" id="wpvivid_host_provider"/></div>
|
@@ -901,22 +901,22 @@ class WPvivid_Admin {
|
|
901 |
<div style="clear: both;"></div>
|
902 |
</div>
|
903 |
<div style="padding:0 10px;">
|
904 |
-
<textarea id="wpvivid_debug_comment" class="wp-editor-area" style="width:100%; height: 200px;" autocomplete="off" cols="60" placeholder="<?php esc_attr_e('Please describe your problem here.', 'wpvivid'); ?>" ></textarea>
|
905 |
</div>
|
906 |
<div class="schedule-tab-block">
|
907 |
-
<input class="button-primary" type="submit" value="<?php esc_attr_e( 'Send Debug Information to Us', 'wpvivid' ); ?>" onclick="wpvivid_click_send_debug_info();" />
|
908 |
</div>
|
909 |
<div style="clear:both;"></div>
|
910 |
<div style="padding-left: 10px;">
|
911 |
-
<strong><?php _e('Method 2.'); ?></strong> <?php _e('If you didn’t configure SMTP on your site, click the button below to download the relevant information (website info and error logs) to your PC when you are encountering some errors. Sending the files to us will help us diagnose what happened.', 'wpvivid'); ?>
|
912 |
</div>
|
913 |
<div class="schedule-tab-block">
|
914 |
-
<input class="button-primary" id="wpvivid_download_website_info" type="submit" name="download-website-info" value="<?php esc_attr_e( 'Download', 'wpvivid' ); ?>" />
|
915 |
</div>
|
916 |
<thead class="website-info-head">
|
917 |
<tr>
|
918 |
-
<th class="row-title" style="min-width: 260px;"><?php _e( 'Website Info Key', 'wpvivid' ); ?></th>
|
919 |
-
<th><?php _e( 'Website Info Value', 'wpvivid' ); ?></th>
|
920 |
</tr>
|
921 |
</thead>
|
922 |
<tbody class="wpvivid-websiteinfo-list" id="wpvivid_websiteinfo_list">
|
@@ -951,8 +951,8 @@ class WPvivid_Admin {
|
|
951 |
}
|
952 |
?>
|
953 |
<tr>
|
954 |
-
<td class="row-title tablelistcolumn"><label for="tablecell"><?php _e($key, 'wpvivid'); ?></label></td>
|
955 |
-
<td class="tablelistcolumn"><?php _e($website_value, 'wpvivid'); ?></td>
|
956 |
</tr>
|
957 |
<?php }} ?>
|
958 |
</tbody>
|
@@ -1029,10 +1029,10 @@ class WPvivid_Admin {
|
|
1029 |
<table class="wp-list-table widefat plugins">
|
1030 |
<thead class="log-head">
|
1031 |
<tr>
|
1032 |
-
<th class="row-title"><?php _e( 'Date', 'wpvivid' ); ?></th>
|
1033 |
-
<th><?php _e( 'Log Type', 'wpvivid' ); ?></th>
|
1034 |
-
<th><?php _e( 'Log File Name', 'wpvivid' ); ?></th>
|
1035 |
-
<th><?php _e( 'Action', 'wpvivid' ); ?></th>
|
1036 |
</tr>
|
1037 |
</thead>
|
1038 |
<tbody class="wpvivid-loglist" id="wpvivid_loglist">
|
@@ -1044,7 +1044,7 @@ class WPvivid_Admin {
|
|
1044 |
</tbody>
|
1045 |
</table>
|
1046 |
<div style="padding-top: 10px; text-align: center;">
|
1047 |
-
<input class="button-secondary log-page" id="wpvivid_pre_log_page" type="submit" value="<?php esc_attr_e( ' < Pre page ', 'wpvivid' ); ?>" />
|
1048 |
<div style="font-size: 12px; display: inline-block; padding-left: 10px;">
|
1049 |
<span id="wpvivid_log_page_info" style="line-height: 35px;">
|
1050 |
<?php
|
@@ -1055,7 +1055,7 @@ class WPvivid_Admin {
|
|
1055 |
?>
|
1056 |
</span>
|
1057 |
</div>
|
1058 |
-
<input class="button-secondary log-page" id="wpvivid_next_log_page" type="submit" value="<?php esc_attr_e( ' Next page > ', 'wpvivid' ); ?>" />
|
1059 |
<div style="float: right;">
|
1060 |
<select name="" id="wpvivid_display_log_count">
|
1061 |
<?php
|
@@ -1163,40 +1163,32 @@ class WPvivid_Admin {
|
|
1163 |
<div id="mwp-page" class="wrap-tab-content wpvivid_tab_mainwp" name="tab-mwp" style="display:none;">
|
1164 |
<div style="padding: 10px; background-color: #fff;">
|
1165 |
<div style="margin-bottom: 10px;">
|
1166 |
-
<?php echo __('If you are a MainWP user, you can set up and control WPvivid Backup Free and Pro for every child site directly from your MainWP dashboard, using our WPvivid Backup for MainWP extension.', 'wpvivid'); ?>
|
1167 |
</div>
|
1168 |
<div style="margin-bottom: 10px;">
|
1169 |
-
<input type="button" class="button-primary" id="wpvivid_download_mainwp_extension" value="<?php esc_attr_e('Download WPvivid Backup for MainWP', 'wpvivid'); ?>" />
|
1170 |
</div>
|
1171 |
<div style="margin-bottom: 10px;">
|
1172 |
-
<?php _e('1. Create and download backups for a specific child site', 'wpvivid'); ?>
|
1173 |
</div>
|
1174 |
<div style="margin-bottom: 10px;">
|
1175 |
-
<?php _e('2. Set backup schedules for all child sites', 'wpvivid'); ?>
|
1176 |
</div>
|
1177 |
<div style="margin-bottom: 10px;">
|
1178 |
<?php
|
1179 |
-
echo __('3. Set WPvivid Backup Free and Pro settings for all child sites', 'wpvivid');
|
1180 |
?>
|
1181 |
</div>
|
1182 |
<div style="margin-bottom: 10px;">
|
1183 |
<?php
|
1184 |
-
echo __('4. Install, claim and update WPvivid Backup Pro for child sites in bulk', 'wpvivid');
|
1185 |
?>
|
1186 |
</div>
|
1187 |
-
<div
|
1188 |
-
<?php
|
1189 |
-
echo __('5. Set up remote storage for child sites in bulk (for WPvivid Backup Pro only)', 'wpvivid');
|
1190 |
-
?>
|
1191 |
-
</div>
|
1192 |
-
<div style="margin-bottom: 10px;">
|
1193 |
<?php
|
1194 |
-
echo __('
|
1195 |
?>
|
1196 |
</div>
|
1197 |
-
<div>
|
1198 |
-
<input type="button" class="button-primary" id="wpvivid_ask_for_discount" value="<?php esc_attr_e('Ask For A 40% OFF Discount', 'wpvivid'); ?>" />
|
1199 |
-
</div>
|
1200 |
</div>
|
1201 |
</div>
|
1202 |
<script>
|
@@ -1218,38 +1210,38 @@ class WPvivid_Admin {
|
|
1218 |
<table class="wp-list-table widefat plugins" style="border-collapse: collapse;">
|
1219 |
<thead>
|
1220 |
<tr class="backup-list-head" style="border-bottom: 0;">
|
1221 |
-
<th><?php _e('Pro Version Features', 'wpvivid'); ?></th>
|
1222 |
-
<th style="text-align:center;"><?php _e('Basic', 'wpvivid'); ?></th>
|
1223 |
-
<th style="text-align:center;"><?php _e('Freelancer', 'wpvivid'); ?></th>
|
1224 |
-
<th style="text-align:center;"><?php _e('Ultimate', 'wpvivid'); ?></th>
|
1225 |
</tr>
|
1226 |
</thead>
|
1227 |
<tbody class="wpvivid-backuplist">
|
1228 |
<tr style="">
|
1229 |
<td>
|
1230 |
-
<p><strong><?php _e('Websites', 'wpvivid'); ?></strong></p>
|
1231 |
-
<p><strong><?php _e('Backup:', 'wpvivid'); ?></strong> <?php _e('Custom Content', 'wpvivid'); ?></p>
|
1232 |
-
<p style="color: #dd9933;"><strong><?php _e('Backup:', 'wpvivid'); ?></strong> <?php _e('Incremental Backup', 'wpvivid'); ?></p>
|
1233 |
-
<p><strong><?php _e('Backup:', 'wpvivid'); ?></strong> <?php _e('Create a restore point', 'wpvivid'); ?></p>
|
1234 |
-
<p><strong><?php _e('Backup:', 'wpvivid'); ?></strong> <?php _e('Include/exclude files/folders', 'wpvivid'); ?></p>
|
1235 |
-
<p><strong><?php _e('Migration:', 'wpvivid'); ?></strong> <?php _e('Custom Content', 'wpvivid'); ?></p>
|
1236 |
-
<p><strong><?php _e('Migration:', 'wpvivid'); ?></strong> <?php _e('Migration via remote storage', 'wpvivid'); ?></p>
|
1237 |
-
<p><strong><?php _e('Remote Storage:', 'wpvivid'); ?></strong> <?php _e('Custom Directory (leading cloud storage providers)', 'wpvivid'); ?></p>
|
1238 |
-
<p><strong><?php _e('Remote Storage:', 'wpvivid'); ?></strong> <?php _e('WASABI/Pcloud (Only Pro)', 'wpvivid'); ?></p>
|
1239 |
-
<p style="color: #dd9933;"><strong><?php _e('Schedule:', 'wpvivid'); ?></strong> <?php _e('Incremental Backup Schedule', 'wpvivid'); ?></p>
|
1240 |
-
<p><strong><?php _e('Schedule:', 'wpvivid'); ?></strong> <?php _e('Custom Timezone', 'wpvivid'); ?></p>
|
1241 |
-
<p><strong><?php _e('Schedule:', 'wpvivid'); ?></strong> <?php _e('Custom content for each schedule', 'wpvivid'); ?></p>
|
1242 |
-
<p><strong><?php _e('Schedule:', 'wpvivid'); ?></strong> <?php _e('Custom start time of schedule', 'wpvivid'); ?></p>
|
1243 |
-
<p><strong><?php _e('Restore:', 'wpvivid'); ?></strong> <?php _e('Restore a website from remote storage', 'wpvivid'); ?></p>
|
1244 |
-
<p><strong><?php _e('Restore:', 'wpvivid'); ?></strong> <?php _e('Restore what you want from a backup', 'wpvivid'); ?></p>
|
1245 |
-
<p><strong><?php _e('Email Reports:', 'wpvivid'); ?></strong> <?php _e('Send email reports to multiple email addresses', 'wpvivid'); ?></p>
|
1246 |
-
<p style="color: #dd9933;"><strong><?php _e('Staging (add-on):', 'wpvivid'); ?></strong> <?php _e('Create a sub-directory staging site with one-click', 'wpvivid'); ?></p>
|
1247 |
-
<p style="color: #dd9933;"><strong><?php _e('Staging (add-on):', 'wpvivid'); ?></strong> <?php _e('Publish a staging site to a live site with one-click', 'wpvivid'); ?></p>
|
1248 |
-
<p style="color: #dd9933;"><strong><?php _e('Roles & Capabilities (add-on):', 'wpvivid'); ?></strong> <?php _e('Display the individual sections according to user roles & capabilities', 'wpvivid'); ?></p>
|
1249 |
-
<p><strong><?php _e('Support:', 'wpvivid'); ?></strong> <?php _e('Ticket 7x24 support', 'wpvivid'); ?></p>
|
1250 |
</td>
|
1251 |
<td style="text-align:center;">
|
1252 |
-
<p><?php _e('Up to 3 sites', 'wpvivid'); ?></p>
|
1253 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1254 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1255 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
@@ -1271,7 +1263,7 @@ class WPvivid_Admin {
|
|
1271 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1272 |
</td>
|
1273 |
<td style="text-align:center;">
|
1274 |
-
<p><?php _e('Up to 100 sites', 'wpvivid'); ?></p>
|
1275 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1276 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1277 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
@@ -1293,7 +1285,7 @@ class WPvivid_Admin {
|
|
1293 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1294 |
</td>
|
1295 |
<td style="text-align:center;">
|
1296 |
-
<p><?php _e('Unlimited', 'wpvivid'); ?></p>
|
1297 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1298 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1299 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
@@ -1318,8 +1310,8 @@ class WPvivid_Admin {
|
|
1318 |
</tbody>
|
1319 |
<tfoot>
|
1320 |
<tr>
|
1321 |
-
<th><?php _e('*No credit card needed. Trial starts with the Free Trial plan with 2 sites. You can choose a plan at the end of the trial.', 'wpvivid'); ?></th>
|
1322 |
-
<th colspan="3" style="text-align:center;"><p style="margin-top: 6px;"><a href="https://wpvivid.com/pricing" class="page-title-action"><?php _e('START 14-DAY FREE TRIAL', 'wpvivid'); ?></a></p></th>
|
1323 |
</tr>
|
1324 |
</tfoot>
|
1325 |
</table>
|
97 |
|
98 |
$menu['id']='wpvivid_admin_menu_backup';
|
99 |
$menu['parent']='wpvivid_admin_menu';
|
100 |
+
$menu['title']=__('Backup & Restore', 'wpvivid-backuprestore');
|
101 |
$menu['tab']='admin.php?page=WPvivid&tab-backup';
|
102 |
$menu['href']=$admin_url . 'admin.php?page=WPvivid&tab-backup';
|
103 |
$menu['capability']='administrator';
|
111 |
{
|
112 |
$submenu['parent_slug']=$this->plugin_name;
|
113 |
$submenu['page_title']='WPvivid Backup';
|
114 |
+
$submenu['menu_title']=__('Backup & Restore', 'wpvivid-backuprestore');
|
115 |
$submenu['capability']='administrator';
|
116 |
$submenu['menu_slug']=$this->plugin_name;
|
117 |
$submenu['function']=array($this, 'display_plugin_setup_page');
|
120 |
|
121 |
$submenu['parent_slug']=$this->plugin_name;
|
122 |
$submenu['page_title']='WPvivid Backup';
|
123 |
+
$submenu['menu_title']=__('Settings', 'wpvivid-backuprestore');
|
124 |
$submenu['capability']='administrator';
|
125 |
$submenu['menu_slug']='wpvivid-setting';
|
126 |
$submenu['function']=array($this, 'display_plugin_setup_page');
|
136 |
|
137 |
$html = '<div class="postbox">
|
138 |
<h2>
|
139 |
+
<div style="float: left; margin-right: 5px;"><span style="margin: 0; padding: 0">'.__('Current Version:', 'wpvivid-backuprestore').' '.$wpvivid_version.'</span></div>
|
140 |
<div style="float: left; margin-right: 5px;"><span style="margin: 0; padding: 0">|</span></div>
|
141 |
<div style="float: left; margin-left: 0;">
|
142 |
+
<span style="margin: 0; padding: 0"><a href="https://wordpress.org/plugins/wpvivid-backuprestore/#developers" target="_blank" style="text-decoration: none;">'.__('ChangeLog', 'wpvivid-backuprestore').'</a></span>
|
143 |
</div>
|
144 |
<div style="clear: both;"></div>
|
145 |
</h2>
|
146 |
</div>
|
147 |
<div id="wpvivid_backup_schedule_part"></div>
|
148 |
<div class="postbox">
|
149 |
+
<h2><span>'.__('Troubleshooting', 'wpvivid-backuprestore').'</span></h2>
|
150 |
<div class="inside">
|
151 |
<table class="widefat" cellpadding="0">
|
152 |
<tbody>
|
153 |
<tr class="alternate">
|
154 |
+
<td class="row-title">'.__('Read <a href="https://wpvivid.com/troubleshooting-issues-wpvivid-backup-plugin" target="_blank">Troubleshooting page</a> for faster solutions.', 'wpvivid-backuprestore').'</td>
|
155 |
</tr>
|
156 |
<tr>
|
157 |
+
<td class="row-title">'.__('Adjust <a href="https://wpvivid.com/wpvivid-backup-plugin-advanced-settings.html" target="_blank">Advanced Settings</a> for higher task success rate.', 'wpvivid-backuprestore').'</td>
|
158 |
</tr>
|
159 |
</tbody>
|
160 |
</table>
|
161 |
</div>
|
162 |
</div>
|
163 |
<div class="postbox">
|
164 |
+
<h2><span>'.__('How-to', 'wpvivid-backuprestore').'</span></h2>
|
165 |
<div class="inside">
|
166 |
<table class="widefat" cellpadding="0">
|
167 |
<tbody>
|
168 |
+
<tr class="alternate"><td class="row-title"><a href="https://wpvivid.com/get-started-settings.html" target="_blank">'.__('WPvivid Backup Settings', 'wpvivid-backuprestore').'</a></td></tr>
|
169 |
+
<tr><td class="row-title"><a href="https://wpvivid.com/get-started-create-a-manual-backup.html" target="_blank">'.__('Create a Manual Backup', 'wpvivid-backuprestore').'</a></td></tr>
|
170 |
+
<tr class="alternate"><td class="row-title"><a href="https://wpvivid.com/get-started-restore-site.html" target="_blank">'.__('Restore Your Site from a Backup', 'wpvivid-backuprestore').'</a></td></tr>
|
171 |
+
<tr><td class="row-title"><a href="https://wpvivid.com/get-started-transfer-site.html" target="_blank">'.__('Migrate WordPress', 'wpvivid-backuprestore').'</a></td></tr>
|
172 |
</tbody>
|
173 |
</table>
|
174 |
</div>
|
206 |
wp_localize_script($this->plugin_name, 'wpvivid_ajax_object', array('ajax_url' => admin_url('admin-ajax.php'),'ajax_nonce'=>wp_create_nonce('wpvivid_ajax')));
|
207 |
|
208 |
wp_localize_script($this->plugin_name, 'wpvividlion', array(
|
209 |
+
'warning' => __('Warning:', 'wpvivid-backuprestore'),
|
210 |
+
'error' => __('Error:', 'wpvivid-backuprestore'),
|
211 |
+
'remotealias' => __('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore'),
|
212 |
+
'remoteexist' => __('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore'),
|
213 |
+
'backup_calc_timeout' => __('Calculating the size of files, folder and database timed out. If you continue to receive this error, please go to the plugin settings, uncheck \'Calculate the size of files, folder and database before backing up\', save changes, then try again.', 'wpvivid-backuprestore'),
|
214 |
));
|
215 |
|
216 |
wp_enqueue_script('plupload-all');
|
358 |
if($need_review=='not')
|
359 |
{
|
360 |
WPvivid_Setting::update_option('wpvivid_need_review','show');
|
361 |
+
$msg = __('Cheers! WPvivid Backup plugin has restored successfully your website. If you found WPvivid Backup plugin helpful, a 5-star rating would be highly appreciated, which motivates us to keep providing new features.', 'wpvivid-backuprestore');
|
362 |
WPvivid_Setting::update_option('wpvivid_review_msg',$msg);
|
363 |
}
|
364 |
else{
|
451 |
echo '<div class="notice notice-info is-dismissible" id="wpvivid_notice_rate">
|
452 |
<p>' . $review_msg . '</p>
|
453 |
<div style="padding-bottom: 10px;">
|
454 |
+
<span><input type="button" class="button-primary" option="review" name="rate-now" value="'.esc_attr('Rate Us', 'wpvivid-backuprestore').'" /></span>
|
455 |
+
<span><input type="button" class="button-secondary" option="review" name="ask-later" value="'.esc_attr('Maybe Later', 'wpvivid-backuprestore').'" /></span>
|
456 |
+
<span><input type="button" class="button-secondary" option="review" name="never-ask" value="'.esc_attr('Never', 'wpvivid-backuprestore').'" /></span>
|
457 |
+
<span><input type="button" class="button-secondary" option="review" name="already-done" value="'.esc_attr('Already Done', 'wpvivid-backuprestore').'" /></span>
|
458 |
</div>
|
459 |
</div>';
|
460 |
}
|
469 |
echo '<div class="notice notice-info is-dismissible" id="wpvivid_notice_rate">
|
470 |
<p>' . $review_msg . '</p>
|
471 |
<div style="padding-bottom: 10px;">
|
472 |
+
<span><input type="button" class="button-primary" option="review" name="rate-now" value="'.esc_attr('Rate Us', 'wpvivid-backuprestore').'" /></span>
|
473 |
+
<span><input type="button" class="button-secondary" option="review" name="ask-later" value="'.esc_attr('Maybe Later', 'wpvivid-backuprestore').'" /></span>
|
474 |
+
<span><input type="button" class="button-secondary" option="review" name="never-ask" value="'.esc_attr('Never', 'wpvivid-backuprestore').'" /></span>
|
475 |
+
<span><input type="button" class="button-secondary" option="review" name="already-done" value="'.esc_attr('Already Done', 'wpvivid-backuprestore').'" /></span>
|
476 |
</div>
|
477 |
</div>';
|
478 |
}
|
508 |
$amazons3_notice = WPvivid_Setting::get_option('wpvivid_amazons3_notice', 'not init');
|
509 |
if($amazons3_notice === 'not init')
|
510 |
{
|
511 |
+
$notice_message = __('As Amazon S3 and DigitalOcean Space have upgraded their connection methods, please delete the previous connections and re-add your Amazon S3/DigitalOcean Space accounts to make sure the connections work.', 'wpvivid-backuprestore');
|
512 |
echo '<div class="notice notice-warning" id="wpvivid_amazons3_notice">
|
513 |
<p>' . $notice_message . '</p>
|
514 |
<div style="padding-bottom: 10px;">
|
560 |
}
|
561 |
}
|
562 |
if($figure == 1){
|
563 |
+
echo '<div class="notice notice-error"><p>'.sprintf(__('The %s extension is not detected. Please install the extension first.', 'wpvivid-backuprestore'), $msg).'</p></div>';
|
564 |
}
|
565 |
else{
|
566 |
+
echo '<div class="notice notice-error"><p>'.sprintf(__('The %s extensions are not detected. Please install the extensions first.', 'wpvivid-backuprestore'), $msg).'</p></div>';
|
567 |
}
|
568 |
}
|
569 |
|
570 |
if (!class_exists('PclZip')) include_once(ABSPATH.'/wp-admin/includes/class-pclzip.php');
|
571 |
if (!class_exists('PclZip')) {
|
572 |
+
echo '<div class="notice notice-error"><p>'.__('Class PclZip is not detected. Please update or reinstall your WordPress.', 'wpvivid-backuprestore').'</p></div>';
|
573 |
}
|
574 |
|
575 |
$hide_notice = get_option('wpvivid_hide_wp_cron_notice', false);
|
576 |
if(defined( 'DISABLE_WP_CRON' ) && DISABLE_WP_CRON && $hide_notice === false){
|
577 |
+
echo '<div class="notice notice-error notice-wp-cron is-dismissible"><p>'.__('In order to execute the scheduled backups properly, please set the DISABLE_WP_CRON constant to false.', 'wpvivid-backuprestore').'</p></div>';
|
578 |
}
|
579 |
}
|
580 |
|
600 |
echo WPVIVID_PLUGIN_URL;
|
601 |
?>';
|
602 |
var wpvivid_log_count = '<?php
|
603 |
+
_e(sizeof($loglist['log_list']['file']), 'wpvivid-backuprestore');
|
604 |
?>';
|
605 |
var wpvivid_log_array = '<?php
|
606 |
+
_e(json_encode($loglist), 'wpvivid-backuprestore');
|
607 |
?>';
|
608 |
var wpvivid_page_request = '<?php
|
609 |
$page_request = WPvivid_Admin::wpvivid_get_page_request();
|
610 |
+
_e($page_request, 'wpvivid-backuprestore');
|
611 |
?>';
|
612 |
var wpvivid_default_remote_storage = '<?php
|
613 |
+
_e($default_remote_storage, 'wpvivid-backuprestore');
|
614 |
?>';
|
615 |
</script>
|
616 |
<?php
|
634 |
|
635 |
public function wpvivid_add_tab_backup_restore(){
|
636 |
?>
|
637 |
+
<a href="#" id="wpvivid_tab_general" class="nav-tab wrap-nav-tab nav-tab-active" onclick="switchTabs(event,'general-page')"><?php _e('Backup & Restore', 'wpvivid-backuprestore'); ?></a>
|
638 |
<?php
|
639 |
}
|
640 |
|
641 |
public function wpvivid_add_tab_schedule(){
|
642 |
?>
|
643 |
+
<a href="#" id="wpvivid_tab_schedule" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'schedule-page')"><?php _e('Schedule', 'wpvivid-backuprestore'); ?></a>
|
644 |
<?php
|
645 |
}
|
646 |
|
647 |
public function wpvivid_add_tab_remote_storage(){
|
648 |
?>
|
649 |
+
<a href="#" id="wpvivid_tab_remote_storage" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'storage-page')"><?php _e('Remote Storage', 'wpvivid-backuprestore'); ?></a>
|
650 |
<?php
|
651 |
}
|
652 |
|
653 |
public function wpvivid_add_tab_setting(){
|
654 |
?>
|
655 |
+
<a href="#" id="wpvivid_tab_setting" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'settings-page')"><?php _e('Settings', 'wpvivid-backuprestore'); ?></a>
|
656 |
<?php
|
657 |
}
|
658 |
|
659 |
public function wpvivid_add_tab_website_info(){
|
660 |
?>
|
661 |
+
<a href="#" id="wpvivid_tab_debug" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'debug-page')"><?php _e('Debug', 'wpvivid-backuprestore'); ?></a>
|
662 |
<?php
|
663 |
}
|
664 |
|
665 |
public function wpvivid_add_tab_log(){
|
666 |
?>
|
667 |
+
<a href="#" id="wpvivid_tab_log" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'logs-page')"><?php _e('Logs', 'wpvivid-backuprestore'); ?></a>
|
668 |
<?php
|
669 |
}
|
670 |
|
671 |
public function wpvivid_add_tab_read_log(){
|
672 |
?>
|
673 |
<a href="#" id="wpvivid_tab_read_log" class="nav-tab wrap-nav-tab delete" onclick="switchTabs(event,'log-read-page')" style="display: none;">
|
674 |
+
<div style="margin-right: 15px;"><?php _e('Log', 'wpvivid-backuprestore'); ?></div>
|
675 |
<div class="nav-tab-delete-img">
|
676 |
<img src="<?php echo esc_url( WPVIVID_PLUGIN_URL.'/admin/partials/images/delete-tab.png' ); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_read_log', 'wrap', 'wpvivid_tab_log');" />
|
677 |
</div>
|
682 |
public function wpvivid_add_tab_mwp(){
|
683 |
?>
|
684 |
<a href="#" id="wpvivid_tab_mainwp" class="nav-tab wrap-nav-tab delete" onclick="switchTabs(event, 'mwp-page')">
|
685 |
+
<div style="margin-right: 15px;"><?php _e('MainWP', 'wpvivid-backuprestore'); ?></div>
|
686 |
<div class="nav-tab-delete-img">
|
687 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/delete-tab.png'); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_mainwp', 'wrap', 'wpvivid_tab_general');" />
|
688 |
</div>
|
692 |
|
693 |
public function wpvivid_add_tab_premium(){
|
694 |
?>
|
695 |
+
<a href="#" id="wpvivid_tab_premium" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'premium-page')"><?php _e('Premium', 'wpvivid-backuprestore'); ?></a>
|
696 |
<?php
|
697 |
}
|
698 |
|
734 |
<?php do_action('wpvivid_schedule_add_cell'); ?>
|
735 |
<tfoot>
|
736 |
<tr>
|
737 |
+
<th class="row-title"><input class="button-primary storage-account-button" id="wpvivid_schedule_save" type="submit" name="" value="<?php esc_attr_e( 'Save Changes', 'wpvivid-backuprestore' ); ?>" /></th>
|
738 |
<th></th>
|
739 |
</tr>
|
740 |
</tfoot>
|
821 |
?>
|
822 |
</h2>
|
823 |
<?php do_action('wpvivid_settingpage_add_page'); ?>
|
824 |
+
<div><input class="button-primary" id="wpvivid_setting_general_save" type="submit" value="<?php esc_attr_e( 'Save Changes', 'wpvivid-backuprestore' ); ?>" /></div>
|
825 |
</div>
|
826 |
</div>
|
827 |
<script>
|
869 |
?>
|
870 |
<div id="debug-page" class="wrap-tab-content wpvivid_tab_debug" name="tab-debug" style="display:none;">
|
871 |
<table class="widefat">
|
872 |
+
<div style="padding: 0 0 20px 10px;"><?php _e('There are two ways available to send us the debug information. The first one is recommended.', 'wpvivid-backuprestore'); ?></div>
|
873 |
<div style="padding-left: 10px;">
|
874 |
+
<strong><?php _e('Method 1.'); ?></strong> <?php _e('If you have configured SMTP on your site, enter your email address and click the button below to send us the relevant information (website info and errors logs) when you are encountering errors. This will help us figure out what happened. Once the issue is resolved, we will inform you by your email address.', 'wpvivid-backuprestore'); ?>
|
875 |
</div>
|
876 |
<div style="padding:10px 10px 0">
|
877 |
+
<span class="wpvivid-element-space-right"><?php echo __('WPvivid support email:', 'wpvivid-backuprestore'); ?></span><input type="text" id="wpvivid_support_mail" value="support@wpvivid.com" readonly />
|
878 |
+
<span class="wpvivid-element-space-right"><?php _e('Your email:', 'wpvivid-backuprestore'); ?></span><input type="text" id="wpvivid_user_mail" />
|
879 |
</div>
|
880 |
<div style="padding:10px 10px 0">
|
881 |
<div style="float: left;">
|
882 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right wpvivid-debug-text-fix" style="float: left;">
|
883 |
+
<?php _e('I am using:', 'wpvivid-backuprestore'); ?>
|
884 |
</div>
|
885 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
886 |
<select id="wpvivid_debug_type">
|
892 |
</div>
|
893 |
<div id="wpvivid_debug_host" style="float: left;">
|
894 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right wpvivid-debug-text-fix" style="float: left;">
|
895 |
+
<?php _e('My web hosting provider is:', 'wpvivid-backuprestore'); ?>
|
896 |
</div>
|
897 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
898 |
<input type="text" id="wpvivid_host_provider"/></div>
|
901 |
<div style="clear: both;"></div>
|
902 |
</div>
|
903 |
<div style="padding:0 10px;">
|
904 |
+
<textarea id="wpvivid_debug_comment" class="wp-editor-area" style="width:100%; height: 200px;" autocomplete="off" cols="60" placeholder="<?php esc_attr_e('Please describe your problem here.', 'wpvivid-backuprestore'); ?>" ></textarea>
|
905 |
</div>
|
906 |
<div class="schedule-tab-block">
|
907 |
+
<input class="button-primary" type="submit" value="<?php esc_attr_e( 'Send Debug Information to Us', 'wpvivid-backuprestore' ); ?>" onclick="wpvivid_click_send_debug_info();" />
|
908 |
</div>
|
909 |
<div style="clear:both;"></div>
|
910 |
<div style="padding-left: 10px;">
|
911 |
+
<strong><?php _e('Method 2.'); ?></strong> <?php _e('If you didn’t configure SMTP on your site, click the button below to download the relevant information (website info and error logs) to your PC when you are encountering some errors. Sending the files to us will help us diagnose what happened.', 'wpvivid-backuprestore'); ?>
|
912 |
</div>
|
913 |
<div class="schedule-tab-block">
|
914 |
+
<input class="button-primary" id="wpvivid_download_website_info" type="submit" name="download-website-info" value="<?php esc_attr_e( 'Download', 'wpvivid-backuprestore' ); ?>" />
|
915 |
</div>
|
916 |
<thead class="website-info-head">
|
917 |
<tr>
|
918 |
+
<th class="row-title" style="min-width: 260px;"><?php _e( 'Website Info Key', 'wpvivid-backuprestore' ); ?></th>
|
919 |
+
<th><?php _e( 'Website Info Value', 'wpvivid-backuprestore' ); ?></th>
|
920 |
</tr>
|
921 |
</thead>
|
922 |
<tbody class="wpvivid-websiteinfo-list" id="wpvivid_websiteinfo_list">
|
951 |
}
|
952 |
?>
|
953 |
<tr>
|
954 |
+
<td class="row-title tablelistcolumn"><label for="tablecell"><?php _e($key, 'wpvivid-backuprestore'); ?></label></td>
|
955 |
+
<td class="tablelistcolumn"><?php _e($website_value, 'wpvivid-backuprestore'); ?></td>
|
956 |
</tr>
|
957 |
<?php }} ?>
|
958 |
</tbody>
|
1029 |
<table class="wp-list-table widefat plugins">
|
1030 |
<thead class="log-head">
|
1031 |
<tr>
|
1032 |
+
<th class="row-title"><?php _e( 'Date', 'wpvivid-backuprestore' ); ?></th>
|
1033 |
+
<th><?php _e( 'Log Type', 'wpvivid-backuprestore' ); ?></th>
|
1034 |
+
<th><?php _e( 'Log File Name', 'wpvivid-backuprestore' ); ?></th>
|
1035 |
+
<th><?php _e( 'Action', 'wpvivid-backuprestore' ); ?></th>
|
1036 |
</tr>
|
1037 |
</thead>
|
1038 |
<tbody class="wpvivid-loglist" id="wpvivid_loglist">
|
1044 |
</tbody>
|
1045 |
</table>
|
1046 |
<div style="padding-top: 10px; text-align: center;">
|
1047 |
+
<input class="button-secondary log-page" id="wpvivid_pre_log_page" type="submit" value="<?php esc_attr_e( ' < Pre page ', 'wpvivid-backuprestore' ); ?>" />
|
1048 |
<div style="font-size: 12px; display: inline-block; padding-left: 10px;">
|
1049 |
<span id="wpvivid_log_page_info" style="line-height: 35px;">
|
1050 |
<?php
|
1055 |
?>
|
1056 |
</span>
|
1057 |
</div>
|
1058 |
+
<input class="button-secondary log-page" id="wpvivid_next_log_page" type="submit" value="<?php esc_attr_e( ' Next page > ', 'wpvivid-backuprestore' ); ?>" />
|
1059 |
<div style="float: right;">
|
1060 |
<select name="" id="wpvivid_display_log_count">
|
1061 |
<?php
|
1163 |
<div id="mwp-page" class="wrap-tab-content wpvivid_tab_mainwp" name="tab-mwp" style="display:none;">
|
1164 |
<div style="padding: 10px; background-color: #fff;">
|
1165 |
<div style="margin-bottom: 10px;">
|
1166 |
+
<?php echo __('If you are a MainWP user, you can set up and control WPvivid Backup Free and Pro for every child site directly from your MainWP dashboard, using our WPvivid Backup for MainWP extension.', 'wpvivid-backuprestore'); ?>
|
1167 |
</div>
|
1168 |
<div style="margin-bottom: 10px;">
|
1169 |
+
<input type="button" class="button-primary" id="wpvivid_download_mainwp_extension" value="<?php esc_attr_e('Download WPvivid Backup for MainWP', 'wpvivid-backuprestore'); ?>" />
|
1170 |
</div>
|
1171 |
<div style="margin-bottom: 10px;">
|
1172 |
+
<?php _e('1. Create and download backups for a specific child site', 'wpvivid-backuprestore'); ?>
|
1173 |
</div>
|
1174 |
<div style="margin-bottom: 10px;">
|
1175 |
+
<?php _e('2. Set backup schedules for all child sites', 'wpvivid-backuprestore'); ?>
|
1176 |
</div>
|
1177 |
<div style="margin-bottom: 10px;">
|
1178 |
<?php
|
1179 |
+
echo __('3. Set WPvivid Backup Free and Pro settings for all child sites', 'wpvivid-backuprestore');
|
1180 |
?>
|
1181 |
</div>
|
1182 |
<div style="margin-bottom: 10px;">
|
1183 |
<?php
|
1184 |
+
echo __('4. Install, claim and update WPvivid Backup Pro for child sites in bulk', 'wpvivid-backuprestore');
|
1185 |
?>
|
1186 |
</div>
|
1187 |
+
<div>
|
|
|
|
|
|
|
|
|
|
|
1188 |
<?php
|
1189 |
+
echo __('5. Set up remote storage for child sites in bulk (for WPvivid Backup Pro only)', 'wpvivid-backuprestore');
|
1190 |
?>
|
1191 |
</div>
|
|
|
|
|
|
|
1192 |
</div>
|
1193 |
</div>
|
1194 |
<script>
|
1210 |
<table class="wp-list-table widefat plugins" style="border-collapse: collapse;">
|
1211 |
<thead>
|
1212 |
<tr class="backup-list-head" style="border-bottom: 0;">
|
1213 |
+
<th><?php _e('Pro Version Features', 'wpvivid-backuprestore'); ?></th>
|
1214 |
+
<th style="text-align:center;"><?php _e('Basic', 'wpvivid-backuprestore'); ?></th>
|
1215 |
+
<th style="text-align:center;"><?php _e('Freelancer', 'wpvivid-backuprestore'); ?></th>
|
1216 |
+
<th style="text-align:center;"><?php _e('Ultimate', 'wpvivid-backuprestore'); ?></th>
|
1217 |
</tr>
|
1218 |
</thead>
|
1219 |
<tbody class="wpvivid-backuplist">
|
1220 |
<tr style="">
|
1221 |
<td>
|
1222 |
+
<p><strong><?php _e('Websites', 'wpvivid-backuprestore'); ?></strong></p>
|
1223 |
+
<p><strong><?php _e('Backup:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom Content', 'wpvivid-backuprestore'); ?></p>
|
1224 |
+
<p style="color: #dd9933;"><strong><?php _e('Backup:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Incremental Backup', 'wpvivid-backuprestore'); ?></p>
|
1225 |
+
<p><strong><?php _e('Backup:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Create a restore point', 'wpvivid-backuprestore'); ?></p>
|
1226 |
+
<p><strong><?php _e('Backup:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Include/exclude files/folders', 'wpvivid-backuprestore'); ?></p>
|
1227 |
+
<p><strong><?php _e('Migration:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom Content', 'wpvivid-backuprestore'); ?></p>
|
1228 |
+
<p><strong><?php _e('Migration:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Migration via remote storage', 'wpvivid-backuprestore'); ?></p>
|
1229 |
+
<p><strong><?php _e('Remote Storage:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom Directory (leading cloud storage providers)', 'wpvivid-backuprestore'); ?></p>
|
1230 |
+
<p><strong><?php _e('Remote Storage:', 'wpvivid-backuprestore'); ?></strong> <?php _e('WASABI/Pcloud (Only Pro)', 'wpvivid-backuprestore'); ?></p>
|
1231 |
+
<p style="color: #dd9933;"><strong><?php _e('Schedule:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Incremental Backup Schedule', 'wpvivid-backuprestore'); ?></p>
|
1232 |
+
<p><strong><?php _e('Schedule:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom Timezone', 'wpvivid-backuprestore'); ?></p>
|
1233 |
+
<p><strong><?php _e('Schedule:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom content for each schedule', 'wpvivid-backuprestore'); ?></p>
|
1234 |
+
<p><strong><?php _e('Schedule:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Custom start time of schedule', 'wpvivid-backuprestore'); ?></p>
|
1235 |
+
<p><strong><?php _e('Restore:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Restore a website from remote storage', 'wpvivid-backuprestore'); ?></p>
|
1236 |
+
<p><strong><?php _e('Restore:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Restore what you want from a backup', 'wpvivid-backuprestore'); ?></p>
|
1237 |
+
<p><strong><?php _e('Email Reports:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Send email reports to multiple email addresses', 'wpvivid-backuprestore'); ?></p>
|
1238 |
+
<p style="color: #dd9933;"><strong><?php _e('Staging (add-on):', 'wpvivid-backuprestore'); ?></strong> <?php _e('Create a sub-directory staging site with one-click', 'wpvivid-backuprestore'); ?></p>
|
1239 |
+
<p style="color: #dd9933;"><strong><?php _e('Staging (add-on):', 'wpvivid-backuprestore'); ?></strong> <?php _e('Publish a staging site to a live site with one-click', 'wpvivid-backuprestore'); ?></p>
|
1240 |
+
<p style="color: #dd9933;"><strong><?php _e('Roles & Capabilities (add-on):', 'wpvivid-backuprestore'); ?></strong> <?php _e('Display the individual sections according to user roles & capabilities', 'wpvivid-backuprestore'); ?></p>
|
1241 |
+
<p><strong><?php _e('Support:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Ticket 7x24 support', 'wpvivid-backuprestore'); ?></p>
|
1242 |
</td>
|
1243 |
<td style="text-align:center;">
|
1244 |
+
<p><?php _e('Up to 3 sites', 'wpvivid-backuprestore'); ?></p>
|
1245 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1246 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1247 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1263 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1264 |
</td>
|
1265 |
<td style="text-align:center;">
|
1266 |
+
<p><?php _e('Up to 100 sites', 'wpvivid-backuprestore'); ?></p>
|
1267 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1268 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1269 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1285 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1286 |
</td>
|
1287 |
<td style="text-align:center;">
|
1288 |
+
<p><?php _e('Unlimited', 'wpvivid-backuprestore'); ?></p>
|
1289 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1290 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1291 |
<p><span style="height: 12px;width: 12px;background-color: #81d742;border-radius: 50%;display: inline-block;"></span></p>
|
1310 |
</tbody>
|
1311 |
<tfoot>
|
1312 |
<tr>
|
1313 |
+
<th><?php _e('*No credit card needed. Trial starts with the Free Trial plan with 2 sites. You can choose a plan at the end of the trial.', 'wpvivid-backuprestore'); ?></th>
|
1314 |
+
<th colspan="3" style="text-align:center;"><p style="margin-top: 6px;"><a href="https://wpvivid.com/pricing" class="page-title-action"><?php _e('START 14-DAY FREE TRIAL', 'wpvivid-backuprestore'); ?></a></p></th>
|
1315 |
</tr>
|
1316 |
</tfoot>
|
1317 |
</table>
|
admin/partials/wpvivid-admin-display.php
CHANGED
@@ -46,7 +46,7 @@ foreach ($page_array as $page_name){
|
|
46 |
<h1><?php
|
47 |
$plugin_display_name = 'WPvivid Backup Plugin';
|
48 |
$plugin_display_name = apply_filters('wpvivid_display_pro_name', $plugin_display_name);
|
49 |
-
echo __('WPvivid Backup Plugin', 'wpvivid');
|
50 |
?></h1>
|
51 |
<div id="wpvivid_backup_notice">
|
52 |
<?php
|
@@ -60,7 +60,7 @@ foreach ($page_array as $page_name){
|
|
60 |
$default_remote_storage=$value;
|
61 |
}
|
62 |
if($default_remote_storage == ''){
|
63 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: There is no default remote storage available for the scheduled backups, please set up it first.', 'wpvivid').'</p></div>';
|
64 |
}
|
65 |
}
|
66 |
}
|
46 |
<h1><?php
|
47 |
$plugin_display_name = 'WPvivid Backup Plugin';
|
48 |
$plugin_display_name = apply_filters('wpvivid_display_pro_name', $plugin_display_name);
|
49 |
+
echo __('WPvivid Backup Plugin', 'wpvivid-backuprestore');
|
50 |
?></h1>
|
51 |
<div id="wpvivid_backup_notice">
|
52 |
<?php
|
60 |
$default_remote_storage=$value;
|
61 |
}
|
62 |
if($default_remote_storage == ''){
|
63 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: There is no default remote storage available for the scheduled backups, please set up it first.', 'wpvivid-backuprestore').'</p></div>';
|
64 |
}
|
65 |
}
|
66 |
}
|
admin/partials/wpvivid-backup-restore-page-display.php
CHANGED
@@ -4,32 +4,32 @@ function wpvivid_add_backup_type($html, $type_name)
|
|
4 |
{
|
5 |
$html .= '<label>
|
6 |
<input type="radio" option="backup" name="'.$type_name.'" value="files+db" checked />
|
7 |
-
<span>'.__( 'Database + Files (WordPress Files)', 'wpvivid' ).'</span>
|
8 |
</label><br>
|
9 |
<label>
|
10 |
<input type="radio" option="backup" name="'.$type_name.'" value="files" />
|
11 |
-
<span>'.__( 'WordPress Files (Exclude Database)', 'wpvivid' ).'</span>
|
12 |
</label><br>
|
13 |
<label>
|
14 |
<input type="radio" option="backup" name="'.$type_name.'" value="db" />
|
15 |
-
<span>'.__( 'Only Database', 'wpvivid' ).'</span>
|
16 |
</label><br>
|
17 |
<label>
|
18 |
<div style="float: left;">
|
19 |
<input type="radio" disabled />
|
20 |
-
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Create a staging site', 'wpvivid').'</span>
|
21 |
</div>
|
22 |
<span class="wpvivid-feature-pro">
|
23 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-create-staging-site" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid').'</a>
|
24 |
</span>
|
25 |
</label><br>
|
26 |
<label>
|
27 |
<div style="float: left;">
|
28 |
<input type="radio" disabled />
|
29 |
-
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid').'</span>
|
30 |
</div>
|
31 |
<span class="wpvivid-feature-pro">
|
32 |
-
<a href="https://wpvivid.com/backup-migration-overview?utm_source=client_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid').'</a>
|
33 |
</span>
|
34 |
</label><br>';
|
35 |
return $html;
|
@@ -97,16 +97,16 @@ function wpvivid_backup_do_js(){
|
|
97 |
}
|
98 |
|
99 |
function wpvivid_download_backup_descript($html){
|
100 |
-
$html = '<p><strong>'.__('About backup download', 'wpvivid').'</strong></p>';
|
101 |
$html .= '<ul>';
|
102 |
-
$html .= '<li>'.__('->If backups are stored in remote storage, our plugin will retrieve the backup to your web server first. This may take a little time depending on the size of backup files. Please be patient. Then you can download them to your PC.', 'wpvivid').'</li>';
|
103 |
-
$html .= '<li>'.__('->If backups are stored in web server, the plugin will list all relevant files immediately.', 'wpvivid').'</li>';
|
104 |
$html .= '</ul>';
|
105 |
return $html;
|
106 |
}
|
107 |
|
108 |
function wpvivid_restore_website_descript($html){
|
109 |
-
$html = '<p><a href="#" id="wpvivid_how_to_restore_backup_describe" onclick="wpvivid_click_how_to_restore_backup();" style="text-decoration: none;">'.__('How to restore your website from a backup(scheduled, manual, uploaded and received backup)', 'wpvivid').'</a></p>';
|
110 |
$html .= '<div id="wpvivid_how_to_restore_backup"></div>';
|
111 |
return $html;
|
112 |
}
|
@@ -120,14 +120,14 @@ function wpvivid_backuppage_load_backuplist($backuplist_array){
|
|
120 |
|
121 |
function wpvivid_backuppage_add_tab_backup(){
|
122 |
?>
|
123 |
-
<a href="#" id="wpvivid_tab_backup" class="nav-tab backup-nav-tab nav-tab-active" onclick="switchrestoreTabs(event,'page-backups')"><?php _e('Backups', 'wpvivid'); ?></a>
|
124 |
<?php
|
125 |
}
|
126 |
|
127 |
function wpvivid_backuppage_add_tab_log(){
|
128 |
?>
|
129 |
<a href="#" id="wpvivid_tab_backup_log" class="nav-tab backup-nav-tab delete" onclick="switchrestoreTabs(event,'page-log')" style="display: none;">
|
130 |
-
<div style="margin-right: 15px;"><?php _e('Log', 'wpvivid'); ?></div>
|
131 |
<div class="nav-tab-delete-img">
|
132 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_backup_log', 'backup', 'wpvivid_tab_backup');" />
|
133 |
</div>
|
@@ -138,7 +138,7 @@ function wpvivid_backuppage_add_tab_log(){
|
|
138 |
function wpvivid_backuppage_add_tab_restore(){
|
139 |
?>
|
140 |
<a href="#" id="wpvivid_tab_restore" class="nav-tab backup-nav-tab delete" onclick="switchrestoreTabs(event,'page-restore')" style="display: none;">
|
141 |
-
<div style="margin-right: 15px;"><?php _e('Restore', 'wpvivid'); ?></div>
|
142 |
<div class="nav-tab-delete-img">
|
143 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_restore', 'backup', 'wpvivid_tab_backup');" />
|
144 |
</div>
|
@@ -173,11 +173,11 @@ function wpvivid_backuppage_add_page_backup(){
|
|
173 |
<thead>
|
174 |
<tr class="backup-list-head" style="border-bottom: 0;">
|
175 |
<td></td>
|
176 |
-
<th><?php _e( 'Backup','wpvivid'); ?></th>
|
177 |
-
<th><?php _e( 'Storage','wpvivid'); ?></th>
|
178 |
-
<th><?php _e( 'Download','wpvivid'); ?></th>
|
179 |
-
<th><?php _e( 'Restore', 'wpvivid'); ?></th>
|
180 |
-
<th><?php _e( 'Delete','wpvivid'); ?></th>
|
181 |
</tr>
|
182 |
</thead>
|
183 |
<tbody class="wpvivid-backuplist" id="wpvivid_backup_list">
|
@@ -190,7 +190,7 @@ function wpvivid_backuppage_add_page_backup(){
|
|
190 |
<tfoot>
|
191 |
<tr>
|
192 |
<th><input name="" type="checkbox" id="backup_list_all_check" value="1" /></th>
|
193 |
-
<th class="row-title" colspan="5"><a onclick="wpvivid_delete_backups_inbatches();" style="cursor: pointer;"><?php _e('Delete the selected backups', 'wpvivid'); ?></a></th>
|
194 |
</tr>
|
195 |
</tfoot>
|
196 |
</table>
|
@@ -722,16 +722,16 @@ function wpvivid_backuppage_add_page_backup(){
|
|
722 |
var force_del = 0;
|
723 |
var bdownloading = false;
|
724 |
if(name === 'lock') {
|
725 |
-
descript = '<?php _e('This backup is locked, are you sure to remove it? This backup will be deleted permanently from your hosting (localhost) and remote storages.', 'wpvivid'); ?>';
|
726 |
force_del = 1;
|
727 |
}
|
728 |
else{
|
729 |
-
descript = '<?php _e('Are you sure to remove this backup? This backup will be deleted permanently from your hosting (localhost) and remote storages.', 'wpvivid'); ?>';
|
730 |
force_del = 0;
|
731 |
}
|
732 |
if(m_downloading_id === backup_id){
|
733 |
bdownloading = true;
|
734 |
-
descript = '<?php _e('This request will delete the backup being downloaded, are you sure you want to continue?', 'wpvivid'); ?>';
|
735 |
force_del = 1;
|
736 |
}
|
737 |
var ret = confirm(descript);
|
@@ -770,15 +770,15 @@ function wpvivid_backuppage_add_page_backup(){
|
|
770 |
});
|
771 |
});
|
772 |
if( count === 0 ){
|
773 |
-
alert('<?php _e('Please select at least one item.','wpvivid'); ?>');
|
774 |
}
|
775 |
else {
|
776 |
var descript = '';
|
777 |
if(bdownloading) {
|
778 |
-
descript = '<?php _e('This request might delete the backup being downloaded, are you sure you want to continue?', 'wpvivid'); ?>';
|
779 |
}
|
780 |
else{
|
781 |
-
descript = '<?php _e('Are you sure to remove the selected backups? These backups will be deleted permanently from your hosting (localhost).', 'wpvivid'); ?>';
|
782 |
}
|
783 |
var ret = confirm(descript);
|
784 |
if (ret === true) {
|
@@ -839,9 +839,9 @@ function wpvivid_backuppage_add_page_backup(){
|
|
839 |
var top = jQuery('#wpvivid_how_to_restore_backup_describe').offset().top-jQuery('#wpvivid_how_to_restore_backup_describe').height();
|
840 |
jQuery('html, body').animate({scrollTop:top}, 'slow');
|
841 |
var div = "<div class='notice notice-info is-dismissible inline'>" +
|
842 |
-
"<p><?php _e('Step One: In the backup list, click the \'Restore\' button on the backup you want to restore. This will bring up the restore tab', 'wpvivid'); ?></p>" +
|
843 |
-
"<p><?php _e('Step Two: Choose an option to complete restore, if any', 'wpvivid'); ?></p>" +
|
844 |
-
"<p><?php _e('Step Three: Click \'Restore\' button', 'wpvivid'); ?></p>" +
|
845 |
"<button type='button' class='notice-dismiss' onclick='click_dismiss_restore_notice(this);'>" +
|
846 |
"<span class='screen-reader-text'>Dismiss this notice.</span>" +
|
847 |
"</button>" +
|
@@ -874,27 +874,27 @@ function wpvivid_backuppage_add_page_restore(){
|
|
874 |
?>
|
875 |
<div class="backup-tab-content wpvivid_tab_restore" id="page-restore" style="display:none;">
|
876 |
<div>
|
877 |
-
<h3><?php _e('Restore backup from:', 'wpvivid'); ?><span id="wpvivid_restore_backup_time"></span></h3>
|
878 |
-
<p><strong><?php _e('Please do not close the page or switch to other pages when a restore task is running, as it could trigger some unexpected errors.', 'wpvivid'); ?></strong></p>
|
879 |
-
<p><?php _e('Restore function will replace the current site\'s themes, plugins, uploads, database and/or other content directories with the existing equivalents in the selected backup.', 'wpvivid'); ?></p>
|
880 |
<div id="wpvivid_restore_is_migrate" style="padding-bottom: 10px; display: none;">
|
881 |
<label >
|
882 |
-
<input type="radio" id="wpvivid_replace_domain" option="restore" name="restore_domain" value="1" /><?php echo sprintf(__('Restore and replace the original domain (URL) with %s (migration)', 'wpvivid'), home_url()); ?>
|
883 |
</label><br>
|
884 |
<label >
|
885 |
-
<input type="radio" id="wpvivid_keep_domain" option="restore" name="restore_domain" value="0" /><?php _e('Restore and keep the original domain (URL) unchanged', 'wpvivid'); ?>
|
886 |
</label><br>
|
887 |
</div>
|
888 |
<div>
|
889 |
-
<p><strong><?php _e('Tips:', 'wpvivid'); ?></strong> <?php _e('The plugin detects automatically either site restoration or migration (replacing the domain name) based on the current domain name. If the domain name in backup file is same as the current one, it starts restoring. On the contrary, restoring backup means to replace with the current domain name. The precondition is that the backup is created by version 0.9.21 or later.', 'wpvivid'); ?></p>
|
890 |
</div>
|
891 |
<div id="wpvivid_restore_check"></div>
|
892 |
-
<div class="restore-button-position" id="wpvivid_restore_part"><input class="button-primary" id="wpvivid_restore_btn" type="submit" name="restore" value="<?php esc_attr_e( 'Restore', 'wpvivid' ); ?>" onclick="wpvivid_start_restore();" /></div>
|
893 |
-
<div class="restore-button-position" id="wpvivid_clean_part"><input class="button-primary" id="wpvivid_clean_restore" type="submit" name="clear_restore" value="<?php esc_attr_e( 'Terminate', 'wpvivid' ); ?>" /></div>
|
894 |
-
<div class="restore-button-position" id="wpvivid_rollback_part"><input class="button-primary" id="wpvivid_rollback_btn" type="submit" name="rollback" value="<?php esc_attr_e( 'Rollback', 'wpvivid' ); ?>" /></div>
|
895 |
<div class="restore-button-position" id="wpvivid_download_part">
|
896 |
-
<input class="button-primary" id="wpvivid_download_btn" type="submit" name="download" value="<?php esc_attr_e( 'Retrieve the backup to localhost', 'wpvivid' ); ?>" />
|
897 |
-
<span><?php _e('The backup is stored on the remote storage, click on the button to download it to localhost.', 'wpvivid'); ?></span>
|
898 |
</div>
|
899 |
<div class="spinner" id="wpvivid_init_restore_data" style="float:left;width:auto;height:auto;padding:10px 20px 20px 0;background-position:0 10px;"></div>
|
900 |
</div>
|
@@ -1486,23 +1486,23 @@ function wpvivid_backuppage_add_progress_module(){
|
|
1486 |
<div class="action-progress-bar-percent" id="wpvivid_action_progress_bar_percent" style="height:24px;width:0;"></div>
|
1487 |
</div>
|
1488 |
<div id="wpvivid_estimate_backup_info" style="float: left;">
|
1489 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Database Size:', 'wpvivid'); ?></span><span id="wpvivid_backup_database_size">N/A</span></div>
|
1490 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('File Size:', 'wpvivid'); ?></span><span id="wpvivid_backup_file_size">N/A</span></div>
|
1491 |
</div>
|
1492 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
1493 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Total Size:', 'wpvivid'); ?></span><span>N/A</span></div>
|
1494 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Uploaded:', 'wpvivid'); ?></span><span>N/A</span></div>
|
1495 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Speed:', 'wpvivid'); ?></span><span>N/A</span></div>
|
1496 |
</div>
|
1497 |
<div style="float: left;">
|
1498 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Network Connection:', 'wpvivid'); ?></span><span>N/A</span></div>
|
1499 |
</div>
|
1500 |
<div style="clear:both;"></div>
|
1501 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_current_doing"></p></div>
|
1502 |
<div style="clear: both;"></div>
|
1503 |
<div>
|
1504 |
-
<div id="wpvivid_backup_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_cancel_btn" type="submit" value="<?php esc_attr_e( 'Cancel', 'wpvivid' ); ?>" /></div>
|
1505 |
-
<div id="wpvivid_backup_log" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_log_btn" type="submit" value="<?php esc_attr_e( 'Log', 'wpvivid' ); ?>" /></div>
|
1506 |
</div>
|
1507 |
<div style="clear: both;"></div>
|
1508 |
</div>
|
@@ -1554,15 +1554,15 @@ function wpvivid_backup_module_add_descript(){
|
|
1554 |
$backupdir=WPvivid_Setting::get_backupdir();
|
1555 |
?>
|
1556 |
<div style="font-size: 14px; padding: 8px 12px; margin: 0; line-height: 1.4; font-weight: 600;">
|
1557 |
-
<span style="margin-right: 5px;"><?php _e( 'Back Up Manually','wpvivid'); ?></span>
|
1558 |
<span style="margin-right: 5px;">|</span>
|
1559 |
-
<span style="margin-right: 0;"><a href="<?php echo esc_url(admin_url().'admin.php?page=wpvivid-export-import'); ?>" style="text-decoration: none;"><?php _e('Export Content', 'wpvivid'); ?></a></span>
|
1560 |
-
<span style="font-size: 10px; color: #FFA500; line-height: 10px;">(<?php _e('new feature', 'wpvivid'); ?>)</span>
|
1561 |
</div>
|
1562 |
<div class="quickstart-storage-setting">
|
1563 |
-
<span class="list-top-chip backup" name="ismerge" value="1" style="margin: 10px 10px 10px 0;"><?php _e('Local Storage Directory:', 'wpvivid'); ?></span>
|
1564 |
<span class="list-top-chip" id="wpvivid_local_storage_path" style="margin: 10px 10px 10px 0;"><?php _e(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir); ?></span>
|
1565 |
-
<span class="list-top-chip" style="margin: 10px 10px 10px 0;"><a href="#" onclick="wpvivid_click_switch_page('wrap', 'wpvivid_tab_setting', true);" style="text-decoration: none;"><?php _e('rename directory', 'wpvivid'); ?></a></span>
|
1566 |
</div>
|
1567 |
<?php
|
1568 |
}
|
@@ -1591,11 +1591,11 @@ function wpvivid_backup_module_add_send_remote(){
|
|
1591 |
<legend class="screen-reader-text"><span>input type="checkbox"</span></legend>
|
1592 |
<label>
|
1593 |
<input type="radio" id="wpvivid_backup_local" option="backup_ex" name="local_remote" value="local" checked />
|
1594 |
-
<span><?php _e( 'Save Backups to Local', 'wpvivid' ); ?></span>
|
1595 |
</label><br>
|
1596 |
<label>
|
1597 |
<input type="radio" id="wpvivid_backup_remote" option="backup_ex" name="local_remote" value="remote" />
|
1598 |
-
<span><?php _e( 'Send Backup to Remote Storage:', 'wpvivid' ); ?></span>
|
1599 |
</label><br>
|
1600 |
<div id="upload_storage" style="cursor:pointer;" title="Highlighted icon illuminates that you have choosed a remote storage to store backups">
|
1601 |
<?php echo apply_filters('wpvivid_schedule_add_remote_pic',$pic); ?>
|
@@ -1608,12 +1608,12 @@ function wpvivid_backup_module_add_send_remote(){
|
|
1608 |
function wpvivid_backup_module_add_exec(){
|
1609 |
?>
|
1610 |
<div class="quickstart-btn" style="padding-top:20px;">
|
1611 |
-
<input class="button-primary quickbackup-btn" id="wpvivid_quickbackup_btn" type="submit" value="<?php esc_attr_e( 'Backup Now', 'wpvivid'); ?>" />
|
1612 |
<div class="schedule-tab-block" style="text-align:center;">
|
1613 |
<fieldset>
|
1614 |
<label>
|
1615 |
<input type="checkbox" id="wpvivid_backup_lock" option="backup" name="lock" />
|
1616 |
-
<span><?php _e( 'This backup can only be deleted manually', 'wpvivid' ); ?></span>
|
1617 |
</label>
|
1618 |
</fieldset>
|
1619 |
</div>
|
@@ -1784,7 +1784,7 @@ function wpvivid_backup_module_add_exec(){
|
|
1784 |
function wpvivid_backup_module_add_tips(){
|
1785 |
?>
|
1786 |
<div class="custom-info" style="float:left; width:100%;">
|
1787 |
-
<strong><?php _e('Tips:', 'wpvivid'); ?></strong> <?php _e('The settings are only for manual backup, which won\'t affect schedule settings.', 'wpvivid'); ?>
|
1788 |
</div>
|
1789 |
<?php
|
1790 |
}
|
@@ -1803,13 +1803,13 @@ function wpvivid_backuppage_add_schedule_module(){
|
|
1803 |
$last_message = apply_filters('wpvivid_get_last_backup_message', $last_message);
|
1804 |
?>
|
1805 |
<div class="postbox qucikbackup-schedule" id="wpvivid_postbox_backup_schedule">
|
1806 |
-
<h2><span><?php _e( 'Backup Schedule','wpvivid'); ?></span></h2>
|
1807 |
<div class="schedule-block">
|
1808 |
-
<p id="wpvivid_schedule_status"><strong><?php _e('Schedule Status: ', 'wpvivid'); ?></strong><?php _e($schedule_status); ?></p>
|
1809 |
<div id="wpvivid_schedule_info">
|
1810 |
-
<p><strong><?php _e('Server Time: ', 'wpvivid'); ?></strong><?php _e(date("l, F d, Y H:i",time())); ?></p>
|
1811 |
<p><span id="wpvivid_last_backup_msg"><?php _e($last_message); ?></span></p>
|
1812 |
-
<p id="wpvivid_next_backup"><strong><?php _e('Next Backup: ', 'wpvivid'); ?></strong><?php _e($next_backup_time); ?></p>
|
1813 |
</div>
|
1814 |
</div>
|
1815 |
</div>
|
4 |
{
|
5 |
$html .= '<label>
|
6 |
<input type="radio" option="backup" name="'.$type_name.'" value="files+db" checked />
|
7 |
+
<span>'.__( 'Database + Files (WordPress Files)', 'wpvivid-backuprestore' ).'</span>
|
8 |
</label><br>
|
9 |
<label>
|
10 |
<input type="radio" option="backup" name="'.$type_name.'" value="files" />
|
11 |
+
<span>'.__( 'WordPress Files (Exclude Database)', 'wpvivid-backuprestore' ).'</span>
|
12 |
</label><br>
|
13 |
<label>
|
14 |
<input type="radio" option="backup" name="'.$type_name.'" value="db" />
|
15 |
+
<span>'.__( 'Only Database', 'wpvivid-backuprestore' ).'</span>
|
16 |
</label><br>
|
17 |
<label>
|
18 |
<div style="float: left;">
|
19 |
<input type="radio" disabled />
|
20 |
+
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Create a staging site', 'wpvivid-backuprestore').'</span>
|
21 |
</div>
|
22 |
<span class="wpvivid-feature-pro">
|
23 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-create-staging-site" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid-backuprestore').'</a>
|
24 |
</span>
|
25 |
</label><br>
|
26 |
<label>
|
27 |
<div style="float: left;">
|
28 |
<input type="radio" disabled />
|
29 |
+
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid-backuprestore').'</span>
|
30 |
</div>
|
31 |
<span class="wpvivid-feature-pro">
|
32 |
+
<a href="https://wpvivid.com/backup-migration-overview?utm_source=client_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid-backuprestore').'</a>
|
33 |
</span>
|
34 |
</label><br>';
|
35 |
return $html;
|
97 |
}
|
98 |
|
99 |
function wpvivid_download_backup_descript($html){
|
100 |
+
$html = '<p><strong>'.__('About backup download', 'wpvivid-backuprestore').'</strong></p>';
|
101 |
$html .= '<ul>';
|
102 |
+
$html .= '<li>'.__('->If backups are stored in remote storage, our plugin will retrieve the backup to your web server first. This may take a little time depending on the size of backup files. Please be patient. Then you can download them to your PC.', 'wpvivid-backuprestore').'</li>';
|
103 |
+
$html .= '<li>'.__('->If backups are stored in web server, the plugin will list all relevant files immediately.', 'wpvivid-backuprestore').'</li>';
|
104 |
$html .= '</ul>';
|
105 |
return $html;
|
106 |
}
|
107 |
|
108 |
function wpvivid_restore_website_descript($html){
|
109 |
+
$html = '<p><a href="#" id="wpvivid_how_to_restore_backup_describe" onclick="wpvivid_click_how_to_restore_backup();" style="text-decoration: none;">'.__('How to restore your website from a backup(scheduled, manual, uploaded and received backup)', 'wpvivid-backuprestore').'</a></p>';
|
110 |
$html .= '<div id="wpvivid_how_to_restore_backup"></div>';
|
111 |
return $html;
|
112 |
}
|
120 |
|
121 |
function wpvivid_backuppage_add_tab_backup(){
|
122 |
?>
|
123 |
+
<a href="#" id="wpvivid_tab_backup" class="nav-tab backup-nav-tab nav-tab-active" onclick="switchrestoreTabs(event,'page-backups')"><?php _e('Backups', 'wpvivid-backuprestore'); ?></a>
|
124 |
<?php
|
125 |
}
|
126 |
|
127 |
function wpvivid_backuppage_add_tab_log(){
|
128 |
?>
|
129 |
<a href="#" id="wpvivid_tab_backup_log" class="nav-tab backup-nav-tab delete" onclick="switchrestoreTabs(event,'page-log')" style="display: none;">
|
130 |
+
<div style="margin-right: 15px;"><?php _e('Log', 'wpvivid-backuprestore'); ?></div>
|
131 |
<div class="nav-tab-delete-img">
|
132 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_backup_log', 'backup', 'wpvivid_tab_backup');" />
|
133 |
</div>
|
138 |
function wpvivid_backuppage_add_tab_restore(){
|
139 |
?>
|
140 |
<a href="#" id="wpvivid_tab_restore" class="nav-tab backup-nav-tab delete" onclick="switchrestoreTabs(event,'page-restore')" style="display: none;">
|
141 |
+
<div style="margin-right: 15px;"><?php _e('Restore', 'wpvivid-backuprestore'); ?></div>
|
142 |
<div class="nav-tab-delete-img">
|
143 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_restore', 'backup', 'wpvivid_tab_backup');" />
|
144 |
</div>
|
173 |
<thead>
|
174 |
<tr class="backup-list-head" style="border-bottom: 0;">
|
175 |
<td></td>
|
176 |
+
<th><?php _e( 'Backup','wpvivid-backuprestore'); ?></th>
|
177 |
+
<th><?php _e( 'Storage','wpvivid-backuprestore'); ?></th>
|
178 |
+
<th><?php _e( 'Download','wpvivid-backuprestore'); ?></th>
|
179 |
+
<th><?php _e( 'Restore', 'wpvivid-backuprestore'); ?></th>
|
180 |
+
<th><?php _e( 'Delete','wpvivid-backuprestore'); ?></th>
|
181 |
</tr>
|
182 |
</thead>
|
183 |
<tbody class="wpvivid-backuplist" id="wpvivid_backup_list">
|
190 |
<tfoot>
|
191 |
<tr>
|
192 |
<th><input name="" type="checkbox" id="backup_list_all_check" value="1" /></th>
|
193 |
+
<th class="row-title" colspan="5"><a onclick="wpvivid_delete_backups_inbatches();" style="cursor: pointer;"><?php _e('Delete the selected backups', 'wpvivid-backuprestore'); ?></a></th>
|
194 |
</tr>
|
195 |
</tfoot>
|
196 |
</table>
|
722 |
var force_del = 0;
|
723 |
var bdownloading = false;
|
724 |
if(name === 'lock') {
|
725 |
+
descript = '<?php _e('This backup is locked, are you sure to remove it? This backup will be deleted permanently from your hosting (localhost) and remote storages.', 'wpvivid-backuprestore'); ?>';
|
726 |
force_del = 1;
|
727 |
}
|
728 |
else{
|
729 |
+
descript = '<?php _e('Are you sure to remove this backup? This backup will be deleted permanently from your hosting (localhost) and remote storages.', 'wpvivid-backuprestore'); ?>';
|
730 |
force_del = 0;
|
731 |
}
|
732 |
if(m_downloading_id === backup_id){
|
733 |
bdownloading = true;
|
734 |
+
descript = '<?php _e('This request will delete the backup being downloaded, are you sure you want to continue?', 'wpvivid-backuprestore'); ?>';
|
735 |
force_del = 1;
|
736 |
}
|
737 |
var ret = confirm(descript);
|
770 |
});
|
771 |
});
|
772 |
if( count === 0 ){
|
773 |
+
alert('<?php _e('Please select at least one item.','wpvivid-backuprestore'); ?>');
|
774 |
}
|
775 |
else {
|
776 |
var descript = '';
|
777 |
if(bdownloading) {
|
778 |
+
descript = '<?php _e('This request might delete the backup being downloaded, are you sure you want to continue?', 'wpvivid-backuprestore'); ?>';
|
779 |
}
|
780 |
else{
|
781 |
+
descript = '<?php _e('Are you sure to remove the selected backups? These backups will be deleted permanently from your hosting (localhost).', 'wpvivid-backuprestore'); ?>';
|
782 |
}
|
783 |
var ret = confirm(descript);
|
784 |
if (ret === true) {
|
839 |
var top = jQuery('#wpvivid_how_to_restore_backup_describe').offset().top-jQuery('#wpvivid_how_to_restore_backup_describe').height();
|
840 |
jQuery('html, body').animate({scrollTop:top}, 'slow');
|
841 |
var div = "<div class='notice notice-info is-dismissible inline'>" +
|
842 |
+
"<p><?php _e('Step One: In the backup list, click the \'Restore\' button on the backup you want to restore. This will bring up the restore tab', 'wpvivid-backuprestore'); ?></p>" +
|
843 |
+
"<p><?php _e('Step Two: Choose an option to complete restore, if any', 'wpvivid-backuprestore'); ?></p>" +
|
844 |
+
"<p><?php _e('Step Three: Click \'Restore\' button', 'wpvivid-backuprestore'); ?></p>" +
|
845 |
"<button type='button' class='notice-dismiss' onclick='click_dismiss_restore_notice(this);'>" +
|
846 |
"<span class='screen-reader-text'>Dismiss this notice.</span>" +
|
847 |
"</button>" +
|
874 |
?>
|
875 |
<div class="backup-tab-content wpvivid_tab_restore" id="page-restore" style="display:none;">
|
876 |
<div>
|
877 |
+
<h3><?php _e('Restore backup from:', 'wpvivid-backuprestore'); ?><span id="wpvivid_restore_backup_time"></span></h3>
|
878 |
+
<p><strong><?php _e('Please do not close the page or switch to other pages when a restore task is running, as it could trigger some unexpected errors.', 'wpvivid-backuprestore'); ?></strong></p>
|
879 |
+
<p><?php _e('Restore function will replace the current site\'s themes, plugins, uploads, database and/or other content directories with the existing equivalents in the selected backup.', 'wpvivid-backuprestore'); ?></p>
|
880 |
<div id="wpvivid_restore_is_migrate" style="padding-bottom: 10px; display: none;">
|
881 |
<label >
|
882 |
+
<input type="radio" id="wpvivid_replace_domain" option="restore" name="restore_domain" value="1" /><?php echo sprintf(__('Restore and replace the original domain (URL) with %s (migration)', 'wpvivid-backuprestore'), home_url()); ?>
|
883 |
</label><br>
|
884 |
<label >
|
885 |
+
<input type="radio" id="wpvivid_keep_domain" option="restore" name="restore_domain" value="0" /><?php _e('Restore and keep the original domain (URL) unchanged', 'wpvivid-backuprestore'); ?>
|
886 |
</label><br>
|
887 |
</div>
|
888 |
<div>
|
889 |
+
<p><strong><?php _e('Tips:', 'wpvivid-backuprestore'); ?></strong> <?php _e('The plugin detects automatically either site restoration or migration (replacing the domain name) based on the current domain name. If the domain name in backup file is same as the current one, it starts restoring. On the contrary, restoring backup means to replace with the current domain name. The precondition is that the backup is created by version 0.9.21 or later.', 'wpvivid-backuprestore'); ?></p>
|
890 |
</div>
|
891 |
<div id="wpvivid_restore_check"></div>
|
892 |
+
<div class="restore-button-position" id="wpvivid_restore_part"><input class="button-primary" id="wpvivid_restore_btn" type="submit" name="restore" value="<?php esc_attr_e( 'Restore', 'wpvivid-backuprestore' ); ?>" onclick="wpvivid_start_restore();" /></div>
|
893 |
+
<div class="restore-button-position" id="wpvivid_clean_part"><input class="button-primary" id="wpvivid_clean_restore" type="submit" name="clear_restore" value="<?php esc_attr_e( 'Terminate', 'wpvivid-backuprestore' ); ?>" /></div>
|
894 |
+
<div class="restore-button-position" id="wpvivid_rollback_part"><input class="button-primary" id="wpvivid_rollback_btn" type="submit" name="rollback" value="<?php esc_attr_e( 'Rollback', 'wpvivid-backuprestore' ); ?>" /></div>
|
895 |
<div class="restore-button-position" id="wpvivid_download_part">
|
896 |
+
<input class="button-primary" id="wpvivid_download_btn" type="submit" name="download" value="<?php esc_attr_e( 'Retrieve the backup to localhost', 'wpvivid-backuprestore' ); ?>" />
|
897 |
+
<span><?php _e('The backup is stored on the remote storage, click on the button to download it to localhost.', 'wpvivid-backuprestore'); ?></span>
|
898 |
</div>
|
899 |
<div class="spinner" id="wpvivid_init_restore_data" style="float:left;width:auto;height:auto;padding:10px 20px 20px 0;background-position:0 10px;"></div>
|
900 |
</div>
|
1486 |
<div class="action-progress-bar-percent" id="wpvivid_action_progress_bar_percent" style="height:24px;width:0;"></div>
|
1487 |
</div>
|
1488 |
<div id="wpvivid_estimate_backup_info" style="float: left;">
|
1489 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Database Size:', 'wpvivid-backuprestore'); ?></span><span id="wpvivid_backup_database_size">N/A</span></div>
|
1490 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('File Size:', 'wpvivid-backuprestore'); ?></span><span id="wpvivid_backup_file_size">N/A</span></div>
|
1491 |
</div>
|
1492 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
1493 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Total Size:', 'wpvivid-backuprestore'); ?></span><span>N/A</span></div>
|
1494 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Uploaded:', 'wpvivid-backuprestore'); ?></span><span>N/A</span></div>
|
1495 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Speed:', 'wpvivid-backuprestore'); ?></span><span>N/A</span></div>
|
1496 |
</div>
|
1497 |
<div style="float: left;">
|
1498 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right"><?php _e('Network Connection:', 'wpvivid-backuprestore'); ?></span><span>N/A</span></div>
|
1499 |
</div>
|
1500 |
<div style="clear:both;"></div>
|
1501 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_current_doing"></p></div>
|
1502 |
<div style="clear: both;"></div>
|
1503 |
<div>
|
1504 |
+
<div id="wpvivid_backup_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_cancel_btn" type="submit" value="<?php esc_attr_e( 'Cancel', 'wpvivid-backuprestore' ); ?>" /></div>
|
1505 |
+
<div id="wpvivid_backup_log" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_log_btn" type="submit" value="<?php esc_attr_e( 'Log', 'wpvivid-backuprestore' ); ?>" /></div>
|
1506 |
</div>
|
1507 |
<div style="clear: both;"></div>
|
1508 |
</div>
|
1554 |
$backupdir=WPvivid_Setting::get_backupdir();
|
1555 |
?>
|
1556 |
<div style="font-size: 14px; padding: 8px 12px; margin: 0; line-height: 1.4; font-weight: 600;">
|
1557 |
+
<span style="margin-right: 5px;"><?php _e( 'Back Up Manually','wpvivid-backuprestore'); ?></span>
|
1558 |
<span style="margin-right: 5px;">|</span>
|
1559 |
+
<span style="margin-right: 0;"><a href="<?php echo esc_url(admin_url().'admin.php?page=wpvivid-export-import'); ?>" style="text-decoration: none;"><?php _e('Export Content', 'wpvivid-backuprestore'); ?></a></span>
|
1560 |
+
<span style="font-size: 10px; color: #FFA500; line-height: 10px;">(<?php _e('new feature', 'wpvivid-backuprestore'); ?>)</span>
|
1561 |
</div>
|
1562 |
<div class="quickstart-storage-setting">
|
1563 |
+
<span class="list-top-chip backup" name="ismerge" value="1" style="margin: 10px 10px 10px 0;"><?php _e('Local Storage Directory:', 'wpvivid-backuprestore'); ?></span>
|
1564 |
<span class="list-top-chip" id="wpvivid_local_storage_path" style="margin: 10px 10px 10px 0;"><?php _e(WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir); ?></span>
|
1565 |
+
<span class="list-top-chip" style="margin: 10px 10px 10px 0;"><a href="#" onclick="wpvivid_click_switch_page('wrap', 'wpvivid_tab_setting', true);" style="text-decoration: none;"><?php _e('rename directory', 'wpvivid-backuprestore'); ?></a></span>
|
1566 |
</div>
|
1567 |
<?php
|
1568 |
}
|
1591 |
<legend class="screen-reader-text"><span>input type="checkbox"</span></legend>
|
1592 |
<label>
|
1593 |
<input type="radio" id="wpvivid_backup_local" option="backup_ex" name="local_remote" value="local" checked />
|
1594 |
+
<span><?php _e( 'Save Backups to Local', 'wpvivid-backuprestore' ); ?></span>
|
1595 |
</label><br>
|
1596 |
<label>
|
1597 |
<input type="radio" id="wpvivid_backup_remote" option="backup_ex" name="local_remote" value="remote" />
|
1598 |
+
<span><?php _e( 'Send Backup to Remote Storage:', 'wpvivid-backuprestore' ); ?></span>
|
1599 |
</label><br>
|
1600 |
<div id="upload_storage" style="cursor:pointer;" title="Highlighted icon illuminates that you have choosed a remote storage to store backups">
|
1601 |
<?php echo apply_filters('wpvivid_schedule_add_remote_pic',$pic); ?>
|
1608 |
function wpvivid_backup_module_add_exec(){
|
1609 |
?>
|
1610 |
<div class="quickstart-btn" style="padding-top:20px;">
|
1611 |
+
<input class="button-primary quickbackup-btn" id="wpvivid_quickbackup_btn" type="submit" value="<?php esc_attr_e( 'Backup Now', 'wpvivid-backuprestore'); ?>" />
|
1612 |
<div class="schedule-tab-block" style="text-align:center;">
|
1613 |
<fieldset>
|
1614 |
<label>
|
1615 |
<input type="checkbox" id="wpvivid_backup_lock" option="backup" name="lock" />
|
1616 |
+
<span><?php _e( 'This backup can only be deleted manually', 'wpvivid-backuprestore' ); ?></span>
|
1617 |
</label>
|
1618 |
</fieldset>
|
1619 |
</div>
|
1784 |
function wpvivid_backup_module_add_tips(){
|
1785 |
?>
|
1786 |
<div class="custom-info" style="float:left; width:100%;">
|
1787 |
+
<strong><?php _e('Tips:', 'wpvivid-backuprestore'); ?></strong> <?php _e('The settings are only for manual backup, which won\'t affect schedule settings.', 'wpvivid-backuprestore'); ?>
|
1788 |
</div>
|
1789 |
<?php
|
1790 |
}
|
1803 |
$last_message = apply_filters('wpvivid_get_last_backup_message', $last_message);
|
1804 |
?>
|
1805 |
<div class="postbox qucikbackup-schedule" id="wpvivid_postbox_backup_schedule">
|
1806 |
+
<h2><span><?php _e( 'Backup Schedule','wpvivid-backuprestore'); ?></span></h2>
|
1807 |
<div class="schedule-block">
|
1808 |
+
<p id="wpvivid_schedule_status"><strong><?php _e('Schedule Status: ', 'wpvivid-backuprestore'); ?></strong><?php _e($schedule_status); ?></p>
|
1809 |
<div id="wpvivid_schedule_info">
|
1810 |
+
<p><strong><?php _e('Server Time: ', 'wpvivid-backuprestore'); ?></strong><?php _e(date("l, F d, Y H:i",time())); ?></p>
|
1811 |
<p><span id="wpvivid_last_backup_msg"><?php _e($last_message); ?></span></p>
|
1812 |
+
<p id="wpvivid_next_backup"><strong><?php _e('Next Backup: ', 'wpvivid-backuprestore'); ?></strong><?php _e($next_backup_time); ?></p>
|
1813 |
</div>
|
1814 |
</div>
|
1815 |
</div>
|
admin/partials/wpvivid-remote-storage-page-display.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
function wpvivid_add_tab_storage_list()
|
4 |
{
|
5 |
?>
|
6 |
-
<a href="#" id="wpvivid_tab_storage_list" class="nav-tab storage-nav-tab nav-tab-active" onclick="switchstorageTabs(event,'page-storage-list','page-storage-list')"><?php _e('Storages', 'wpvivid'); ?></a>
|
7 |
<?php
|
8 |
}
|
9 |
|
@@ -11,7 +11,7 @@ function wpvivid_add_tab_storage_edit()
|
|
11 |
{
|
12 |
?>
|
13 |
<a href="#" id="wpvivid_tab_storage_edit" class="nav-tab storage-nav-tab delete" onclick="switchstorageTabs(event,'page-storage_edit','page-storage_edit')" style="display: none;">
|
14 |
-
<div id="wpvivid_tab_storage_edit_text" style="margin-right: 15px;"><?php _e('Storage Edit', 'wpvivid'); ?></div>
|
15 |
<div class="nav-tab-delete-img">
|
16 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_storage_edit', 'storage', 'wpvivid_tab_storage_list');" />
|
17 |
</div>
|
@@ -23,7 +23,7 @@ function wpvivid_add_page_storage_list()
|
|
23 |
{
|
24 |
?>
|
25 |
<div class="storage-tab-content wpvivid_tab_storage_list" id="page-storage-list">
|
26 |
-
<div style="margin-top:10px;"><p><strong><?php _e('Please choose one storage to save your backups (remote storage)', 'wpvivid'); ?></strong></p></div>
|
27 |
<div class="schedule-tab-block"></div>
|
28 |
<div class="">
|
29 |
<table class="widefat">
|
@@ -31,9 +31,9 @@ function wpvivid_add_page_storage_list()
|
|
31 |
<tr>
|
32 |
<th></th>
|
33 |
<th></th>
|
34 |
-
<th><?php _e( 'Storage Provider', 'wpvivid' ); ?></th>
|
35 |
-
<th class="row-title"><?php _e( 'Remote Storage Alias', 'wpvivid' ); ?></th>
|
36 |
-
<th><?php _e( 'Actions', 'wpvivid' ); ?></th>
|
37 |
</tr>
|
38 |
</thead>
|
39 |
<tbody class="wpvivid-remote-storage-list" id="wpvivid_remote_storage_list">
|
@@ -45,7 +45,7 @@ function wpvivid_add_page_storage_list()
|
|
45 |
</tbody>
|
46 |
<tfoot>
|
47 |
<tr>
|
48 |
-
<th colspan="5" class="row-title"><input class="button-primary" id="wpvivid_set_default_remote_storage" type="submit" name="choose-remote-storage" value="<?php esc_attr_e( 'Save Changes', 'wpvivid' ); ?>" /></th>
|
49 |
</tr>
|
50 |
</tfoot>
|
51 |
</table>
|
@@ -315,16 +315,16 @@ function wpvivid_add_page_storage_edit()
|
|
315 |
function wpvivid_storage_list($html)
|
316 |
{
|
317 |
$html='<h2 class="nav-tab-wrapper" style="padding-bottom:0!important;">';
|
318 |
-
$html.='<a href="#" id="wpvivid_tab_storage_list" class="nav-tab storage-nav-tab nav-tab-active" onclick="switchstorageTabs(event,\'page-storage-list\',\'page-storage-list\')">'. __('Storages', 'wpvivid').'</a>';
|
319 |
$html.='<a href="#" id="wpvivid_tab_storage_edit" class="nav-tab storage-nav-tab delete" onclick="switchstorageTabs(event,\'page-storage_edit\',\'page-storage_edit\')" style="display: none;">
|
320 |
-
<div id="wpvivid_tab_storage_edit_text" style="margin-right: 15px;">'.__('Storage Edit', 'wpvivid').'</div>
|
321 |
<div class="nav-tab-delete-img">
|
322 |
<img src="'.esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )).'" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, \'wpvivid_tab_storage_edit\', \'storage\', \'wpvivid_tab_storage_list\');" />
|
323 |
</div>
|
324 |
</a>';
|
325 |
$html.='</h2>';
|
326 |
$html.='<div class="storage-tab-content wpvivid_tab_storage_list" id="page-storage-list">
|
327 |
-
<div style="margin-top:10px;"><p><strong>'.__('Please choose one storage to save your backups (remote storage)', 'wpvivid').'</strong></p></div>
|
328 |
<div class="schedule-tab-block"></div>
|
329 |
<div class="">
|
330 |
<table class="widefat">
|
@@ -332,9 +332,9 @@ function wpvivid_storage_list($html)
|
|
332 |
<tr>
|
333 |
<th></th>
|
334 |
<th></th>
|
335 |
-
<th>'. __( 'Storage Provider', 'wpvivid' ).'</th>
|
336 |
-
<th class="row-title">'. __( 'Remote Storage Alias', 'wpvivid' ).'</th>
|
337 |
-
<th>'. __( 'Actions', 'wpvivid' ).'</th>
|
338 |
</tr>
|
339 |
</thead>
|
340 |
<tbody class="wpvivid-remote-storage-list" id="wpvivid_remote_storage_list">
|
@@ -342,7 +342,7 @@ function wpvivid_storage_list($html)
|
|
342 |
$html_list='';
|
343 |
$html.= apply_filters('wpvivid_add_remote_storage_list', $html_list);
|
344 |
$html.='</tbody><tfoot><tr>
|
345 |
-
<th colspan="5" class="row-title"><input class="button-primary" id="wpvivid_set_default_remote_storage" type="submit" name="choose-remote-storage" value="'.esc_attr__( 'Save Changes', 'wpvivid' ).'" /></th>
|
346 |
</tr></tfoot></table></div></div>';
|
347 |
|
348 |
$html .= '<script>
|
3 |
function wpvivid_add_tab_storage_list()
|
4 |
{
|
5 |
?>
|
6 |
+
<a href="#" id="wpvivid_tab_storage_list" class="nav-tab storage-nav-tab nav-tab-active" onclick="switchstorageTabs(event,'page-storage-list','page-storage-list')"><?php _e('Storages', 'wpvivid-backuprestore'); ?></a>
|
7 |
<?php
|
8 |
}
|
9 |
|
11 |
{
|
12 |
?>
|
13 |
<a href="#" id="wpvivid_tab_storage_edit" class="nav-tab storage-nav-tab delete" onclick="switchstorageTabs(event,'page-storage_edit','page-storage_edit')" style="display: none;">
|
14 |
+
<div id="wpvivid_tab_storage_edit_text" style="margin-right: 15px;"><?php _e('Storage Edit', 'wpvivid-backuprestore'); ?></div>
|
15 |
<div class="nav-tab-delete-img">
|
16 |
<img src="<?php echo esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )); ?>" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, 'wpvivid_tab_storage_edit', 'storage', 'wpvivid_tab_storage_list');" />
|
17 |
</div>
|
23 |
{
|
24 |
?>
|
25 |
<div class="storage-tab-content wpvivid_tab_storage_list" id="page-storage-list">
|
26 |
+
<div style="margin-top:10px;"><p><strong><?php _e('Please choose one storage to save your backups (remote storage)', 'wpvivid-backuprestore'); ?></strong></p></div>
|
27 |
<div class="schedule-tab-block"></div>
|
28 |
<div class="">
|
29 |
<table class="widefat">
|
31 |
<tr>
|
32 |
<th></th>
|
33 |
<th></th>
|
34 |
+
<th><?php _e( 'Storage Provider', 'wpvivid-backuprestore' ); ?></th>
|
35 |
+
<th class="row-title"><?php _e( 'Remote Storage Alias', 'wpvivid-backuprestore' ); ?></th>
|
36 |
+
<th><?php _e( 'Actions', 'wpvivid-backuprestore' ); ?></th>
|
37 |
</tr>
|
38 |
</thead>
|
39 |
<tbody class="wpvivid-remote-storage-list" id="wpvivid_remote_storage_list">
|
45 |
</tbody>
|
46 |
<tfoot>
|
47 |
<tr>
|
48 |
+
<th colspan="5" class="row-title"><input class="button-primary" id="wpvivid_set_default_remote_storage" type="submit" name="choose-remote-storage" value="<?php esc_attr_e( 'Save Changes', 'wpvivid-backuprestore' ); ?>" /></th>
|
49 |
</tr>
|
50 |
</tfoot>
|
51 |
</table>
|
315 |
function wpvivid_storage_list($html)
|
316 |
{
|
317 |
$html='<h2 class="nav-tab-wrapper" style="padding-bottom:0!important;">';
|
318 |
+
$html.='<a href="#" id="wpvivid_tab_storage_list" class="nav-tab storage-nav-tab nav-tab-active" onclick="switchstorageTabs(event,\'page-storage-list\',\'page-storage-list\')">'. __('Storages', 'wpvivid-backuprestore').'</a>';
|
319 |
$html.='<a href="#" id="wpvivid_tab_storage_edit" class="nav-tab storage-nav-tab delete" onclick="switchstorageTabs(event,\'page-storage_edit\',\'page-storage_edit\')" style="display: none;">
|
320 |
+
<div id="wpvivid_tab_storage_edit_text" style="margin-right: 15px;">'.__('Storage Edit', 'wpvivid-backuprestore').'</div>
|
321 |
<div class="nav-tab-delete-img">
|
322 |
<img src="'.esc_url(plugins_url( 'images/delete-tab.png', __FILE__ )).'" style="vertical-align:middle; cursor:pointer;" onclick="wpvivid_close_tab(event, \'wpvivid_tab_storage_edit\', \'storage\', \'wpvivid_tab_storage_list\');" />
|
323 |
</div>
|
324 |
</a>';
|
325 |
$html.='</h2>';
|
326 |
$html.='<div class="storage-tab-content wpvivid_tab_storage_list" id="page-storage-list">
|
327 |
+
<div style="margin-top:10px;"><p><strong>'.__('Please choose one storage to save your backups (remote storage)', 'wpvivid-backuprestore').'</strong></p></div>
|
328 |
<div class="schedule-tab-block"></div>
|
329 |
<div class="">
|
330 |
<table class="widefat">
|
332 |
<tr>
|
333 |
<th></th>
|
334 |
<th></th>
|
335 |
+
<th>'. __( 'Storage Provider', 'wpvivid-backuprestore' ).'</th>
|
336 |
+
<th class="row-title">'. __( 'Remote Storage Alias', 'wpvivid-backuprestore' ).'</th>
|
337 |
+
<th>'. __( 'Actions', 'wpvivid-backuprestore' ).'</th>
|
338 |
</tr>
|
339 |
</thead>
|
340 |
<tbody class="wpvivid-remote-storage-list" id="wpvivid_remote_storage_list">
|
342 |
$html_list='';
|
343 |
$html.= apply_filters('wpvivid_add_remote_storage_list', $html_list);
|
344 |
$html.='</tbody><tfoot><tr>
|
345 |
+
<th colspan="5" class="row-title"><input class="button-primary" id="wpvivid_set_default_remote_storage" type="submit" name="choose-remote-storage" value="'.esc_attr__( 'Save Changes', 'wpvivid-backuprestore' ).'" /></th>
|
346 |
</tr></tfoot></table></div></div>';
|
347 |
|
348 |
$html .= '<script>
|
admin/partials/wpvivid-schedule-page-display.php
CHANGED
@@ -4,7 +4,7 @@ function wpvivid_schedule_settings()
|
|
4 |
{
|
5 |
?>
|
6 |
<tr>
|
7 |
-
<td class="row-title wpvivid-backup-settings-table tablelistcolumn"><label for="tablecell"><?php _e('Schedule Settings', 'wpvivid'); ?></label></td>
|
8 |
<td class="tablelistcolumn">
|
9 |
<div id="storage-brand-3">
|
10 |
<div>
|
@@ -12,16 +12,16 @@ function wpvivid_schedule_settings()
|
|
12 |
<div class="postbox schedule-tab-block">
|
13 |
<label for="wpvivid_schedule_enable">
|
14 |
<input option="schedule" name="enable" type="checkbox" id="wpvivid_schedule_enable" />
|
15 |
-
<span><?php _e( 'Enable backup schedule', 'wpvivid' ); ?></span>
|
16 |
</label><br>
|
17 |
<label>
|
18 |
<div style="float: left;">
|
19 |
<input type="checkbox" disabled />
|
20 |
-
<span class="wpvivid-element-space-right" style="color: #ddd;"><?php _e('Enable Incremental Backup', 'wpvivid'); ?></span>
|
21 |
</div>
|
22 |
<div style="float: left; height: 32px; line-height: 32px;">
|
23 |
<span class="wpvivid-feature-pro">
|
24 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-incremental-backup"><?php _e('Pro feature: learn more', 'wpvivid'); ?></a>
|
25 |
</span>
|
26 |
</div>
|
27 |
<div style="clear: both;"></div>
|
@@ -29,11 +29,11 @@ function wpvivid_schedule_settings()
|
|
29 |
<label>
|
30 |
<div style="float: left;">
|
31 |
<input type="checkbox" disabled />
|
32 |
-
<span class="wpvivid-element-space-right" style="color: #ddd;"><?php _e('Advanced Schedule', 'wpvivid'); ?></span>
|
33 |
</div>
|
34 |
<div style="float: left; height: 32px; line-height: 32px;">
|
35 |
<span class="wpvivid-feature-pro">
|
36 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-schedule-overview?utm_source=client_advanced_schedule&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: learn more', 'wpvivid'); ?></a>
|
37 |
</span>
|
38 |
</div>
|
39 |
<div style="clear: both;"></div>
|
@@ -82,7 +82,7 @@ function wpvivid_schedule_settings()
|
|
82 |
echo $html;
|
83 |
?>
|
84 |
</div>
|
85 |
-
<div id="schedule_upload_storage" style="cursor:pointer;" title="<?php _e('Highlighted icon illuminates that you have choosed a remote storage to store backups', 'wpvivid'); ?>">
|
86 |
<?php
|
87 |
$pic='';
|
88 |
$pic= apply_filters('wpvivid_schedule_add_remote_pic',$pic);
|
@@ -92,10 +92,10 @@ function wpvivid_schedule_settings()
|
|
92 |
</div>
|
93 |
<div class="postbox schedule-tab-block">
|
94 |
<div style="float:left; color: #ddd; margin-right: 10px;">
|
95 |
-
<?php _e('+ Add another schedule', 'wpvivid'); ?>
|
96 |
</div>
|
97 |
<span class="wpvivid-feature-pro">
|
98 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-creating-schedules?utm_source=client_multi_schedule&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: learn more', 'wpvivid'); ?></a>
|
99 |
</span>
|
100 |
</div>
|
101 |
</div>
|
@@ -114,8 +114,8 @@ function wpvivid_schedule_notice($html)
|
|
114 |
$offset=get_option('gmt_offset');
|
115 |
$time = '00:00:00';
|
116 |
$utime = strtotime($time) + $offset * 60 * 60;
|
117 |
-
$html='<p>1) '.__('Scheduled job will start at <strong>UTC</strong> time:', 'wpvivid').' '.date('H:i:s', $utime).'</p>';
|
118 |
-
$html.='<p>2) '.__('Being subjected to mechanisms of PHP, a scheduled backup task for your site will be triggered only when the site receives at least a visit at any page.', 'wpvivid').'</p>';
|
119 |
return $html;
|
120 |
}
|
121 |
|
@@ -123,27 +123,27 @@ function wpvivid_schedule_backup_type($html)
|
|
123 |
{
|
124 |
$html='<label>';
|
125 |
$html.='<input type="radio" option="schedule" name="backup_type" value="files+db"/>';
|
126 |
-
$html.='<span>'.__('Database + Files (WordPress Files)', 'wpvivid').'</span>';
|
127 |
$html.='</label><br>';
|
128 |
|
129 |
$html.='<label>';
|
130 |
$html.='<input type="radio" option="schedule" name="backup_type" value="files"/>';
|
131 |
-
$html.='<span>'.__('WordPress Files (Exclude Database)', 'wpvivid').'</span>';
|
132 |
$html.='</label><br>';
|
133 |
|
134 |
$html.='<label>';
|
135 |
$html.='<input type="radio" option="schedule" name="backup_type" value="db"/>';
|
136 |
-
$html.='<span>'.__('Only Database', 'wpvivid').'</span>';
|
137 |
$html.='</label><br>';
|
138 |
|
139 |
$html.='<label>';
|
140 |
$html.='<div style="float: left;">';
|
141 |
$html.='<input type="radio" disabled />';
|
142 |
-
$html.='<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid').'</span>';
|
143 |
$html.='</div>';
|
144 |
$html.='<div style="float: left; height: 32px; line-height: 32px;">';
|
145 |
$html.='<span class="wpvivid-feature-pro">';
|
146 |
-
$html.='<a href="https://wpvivid.com/wpvivid-backup-pro-customize-what-to-backup-for-schedule?utm_source=client_schedule_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid').'</a>';
|
147 |
$html.='</span>';
|
148 |
$html.='</div>';
|
149 |
$html.='</label><br>';
|
4 |
{
|
5 |
?>
|
6 |
<tr>
|
7 |
+
<td class="row-title wpvivid-backup-settings-table tablelistcolumn"><label for="tablecell"><?php _e('Schedule Settings', 'wpvivid-backuprestore'); ?></label></td>
|
8 |
<td class="tablelistcolumn">
|
9 |
<div id="storage-brand-3">
|
10 |
<div>
|
12 |
<div class="postbox schedule-tab-block">
|
13 |
<label for="wpvivid_schedule_enable">
|
14 |
<input option="schedule" name="enable" type="checkbox" id="wpvivid_schedule_enable" />
|
15 |
+
<span><?php _e( 'Enable backup schedule', 'wpvivid-backuprestore' ); ?></span>
|
16 |
</label><br>
|
17 |
<label>
|
18 |
<div style="float: left;">
|
19 |
<input type="checkbox" disabled />
|
20 |
+
<span class="wpvivid-element-space-right" style="color: #ddd;"><?php _e('Enable Incremental Backup', 'wpvivid-backuprestore'); ?></span>
|
21 |
</div>
|
22 |
<div style="float: left; height: 32px; line-height: 32px;">
|
23 |
<span class="wpvivid-feature-pro">
|
24 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-incremental-backup"><?php _e('Pro feature: learn more', 'wpvivid-backuprestore'); ?></a>
|
25 |
</span>
|
26 |
</div>
|
27 |
<div style="clear: both;"></div>
|
29 |
<label>
|
30 |
<div style="float: left;">
|
31 |
<input type="checkbox" disabled />
|
32 |
+
<span class="wpvivid-element-space-right" style="color: #ddd;"><?php _e('Advanced Schedule', 'wpvivid-backuprestore'); ?></span>
|
33 |
</div>
|
34 |
<div style="float: left; height: 32px; line-height: 32px;">
|
35 |
<span class="wpvivid-feature-pro">
|
36 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-schedule-overview?utm_source=client_advanced_schedule&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: learn more', 'wpvivid-backuprestore'); ?></a>
|
37 |
</span>
|
38 |
</div>
|
39 |
<div style="clear: both;"></div>
|
82 |
echo $html;
|
83 |
?>
|
84 |
</div>
|
85 |
+
<div id="schedule_upload_storage" style="cursor:pointer;" title="<?php _e('Highlighted icon illuminates that you have choosed a remote storage to store backups', 'wpvivid-backuprestore'); ?>">
|
86 |
<?php
|
87 |
$pic='';
|
88 |
$pic= apply_filters('wpvivid_schedule_add_remote_pic',$pic);
|
92 |
</div>
|
93 |
<div class="postbox schedule-tab-block">
|
94 |
<div style="float:left; color: #ddd; margin-right: 10px;">
|
95 |
+
<?php _e('+ Add another schedule', 'wpvivid-backuprestore'); ?>
|
96 |
</div>
|
97 |
<span class="wpvivid-feature-pro">
|
98 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-creating-schedules?utm_source=client_multi_schedule&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: learn more', 'wpvivid-backuprestore'); ?></a>
|
99 |
</span>
|
100 |
</div>
|
101 |
</div>
|
114 |
$offset=get_option('gmt_offset');
|
115 |
$time = '00:00:00';
|
116 |
$utime = strtotime($time) + $offset * 60 * 60;
|
117 |
+
$html='<p>1) '.__('Scheduled job will start at <strong>UTC</strong> time:', 'wpvivid-backuprestore').' '.date('H:i:s', $utime).'</p>';
|
118 |
+
$html.='<p>2) '.__('Being subjected to mechanisms of PHP, a scheduled backup task for your site will be triggered only when the site receives at least a visit at any page.', 'wpvivid-backuprestore').'</p>';
|
119 |
return $html;
|
120 |
}
|
121 |
|
123 |
{
|
124 |
$html='<label>';
|
125 |
$html.='<input type="radio" option="schedule" name="backup_type" value="files+db"/>';
|
126 |
+
$html.='<span>'.__('Database + Files (WordPress Files)', 'wpvivid-backuprestore').'</span>';
|
127 |
$html.='</label><br>';
|
128 |
|
129 |
$html.='<label>';
|
130 |
$html.='<input type="radio" option="schedule" name="backup_type" value="files"/>';
|
131 |
+
$html.='<span>'.__('WordPress Files (Exclude Database)', 'wpvivid-backuprestore').'</span>';
|
132 |
$html.='</label><br>';
|
133 |
|
134 |
$html.='<label>';
|
135 |
$html.='<input type="radio" option="schedule" name="backup_type" value="db"/>';
|
136 |
+
$html.='<span>'.__('Only Database', 'wpvivid-backuprestore').'</span>';
|
137 |
$html.='</label><br>';
|
138 |
|
139 |
$html.='<label>';
|
140 |
$html.='<div style="float: left;">';
|
141 |
$html.='<input type="radio" disabled />';
|
142 |
+
$html.='<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid-backuprestore').'</span>';
|
143 |
$html.='</div>';
|
144 |
$html.='<div style="float: left; height: 32px; line-height: 32px;">';
|
145 |
$html.='<span class="wpvivid-feature-pro">';
|
146 |
+
$html.='<a href="https://wpvivid.com/wpvivid-backup-pro-customize-what-to-backup-for-schedule?utm_source=client_schedule_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid-backuprestore').'</a>';
|
147 |
$html.='</span>';
|
148 |
$html.='</div>';
|
149 |
$html.='</label><br>';
|
admin/partials/wpvivid-settings-page-display.php
CHANGED
@@ -97,60 +97,60 @@ function wpvivid_general_settings()
|
|
97 |
}
|
98 |
}
|
99 |
?>
|
100 |
-
</select><strong style="margin-right: 10px;"><?php _e('backups retained', 'wpvivid'); ?></strong><a href="https://wpvivid.com/pro-version-beta-testing?utm_source=client_backups_retained&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;"><?php _e('Pro feature: Retain more backups', 'wpvivid'); ?></a>
|
101 |
</div>
|
102 |
<div>
|
103 |
<label for="wpvivid_estimate_backup">
|
104 |
<input type="checkbox" option="setting" name="estimate_backup" id="wpvivid_estimate_backup" value="1" <?php esc_attr_e($wpvivid_setting_estimate_backup); ?> />
|
105 |
-
<span><?php _e('Calculate the size of files, folder and database before backing up', 'wpvivid' ); ?></span>
|
106 |
</label>
|
107 |
</div>
|
108 |
<div>
|
109 |
<label>
|
110 |
<input type="checkbox" option="setting" name="show_admin_bar" <?php esc_attr_e($show_admin_bar); ?> />
|
111 |
-
<span><?php _e('Show WPvivid backup plugin on top admin bar', 'wpvivid'); ?></span>
|
112 |
</label>
|
113 |
</div>
|
114 |
<div>
|
115 |
<label>
|
116 |
<input type="checkbox" option="setting" name="ismerge" <?php esc_attr_e($wpvivid_ismerge); ?> />
|
117 |
-
<span><?php _e('Merge all the backup files into single package when a backup completes. This will save great disk spaces, though takes longer time. We recommended you check the option especially on sites with insufficient server resources.', 'wpvivid'); ?></span>
|
118 |
</label>
|
119 |
</div>
|
120 |
<div>
|
121 |
<label>
|
122 |
<input type="checkbox" option="setting" name="retain_local" <?php esc_attr_e($wpvivid_retain_local); ?> />
|
123 |
-
<span><?php _e('Keep storing the backups in localhost after uploading to remote storage', 'wpvivid'); ?></span>
|
124 |
</label>
|
125 |
</div>
|
126 |
<div>
|
127 |
<label>
|
128 |
<input type="checkbox" option="setting" name="uninstall_clear_folder" <?php esc_attr_e($uninstall_clear_folder); ?> />
|
129 |
-
<span><?php _e(sprintf('Delete the /%s folder and all backups in it when deleting WPvivid Backup plugin.', $general_setting['options']['wpvivid_local_setting']['path']), 'wpvivid'); ?></span>
|
130 |
</label>
|
131 |
</div>
|
132 |
</div>
|
133 |
<div class="postbox schedule-tab-block">
|
134 |
-
<div><strong><?php _e('Backup Folder', 'wpvivid'); ?></strong></div>
|
135 |
<div class="setting-tab-block">
|
136 |
-
<div><p><?php _e('Name your folder, this folder must be writable for creating backup files.', 'wpvivid' ); ?><p> </div>
|
137 |
-
<input type="text" placeholder="wpvividbackups" option="setting" name="path" id="wpvivid_option_backup_dir" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_local_setting']['path'], 'wpvivid'); ?>" onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" />
|
138 |
-
<p><span class="wpvivid-element-space-right"><?php _e('Local storage directory:', 'wpvivid'); ?></span><span><?php echo WP_CONTENT_DIR.'/'; ?><span id="wpvivid_setting_local_storage_path"><?php _e($general_setting['options']['wpvivid_local_setting']['path'], 'wpvivid'); ?></span></span></p>
|
139 |
</div>
|
140 |
<div>
|
141 |
<label>
|
142 |
<input type="checkbox" option="setting" name="domain_include" <?php esc_attr_e($wpvivid_domain_include); ?> />
|
143 |
-
<span><?php _e('Display domain(url) of current site in backup name. (e.g. domain_wpvivid-5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)', 'wpvivid'); ?></span>
|
144 |
</label>
|
145 |
</div>
|
146 |
</div>
|
147 |
<div class="postbox schedule-tab-block">
|
148 |
-
<div><strong><?php _e('Remove out-of-date backups', 'wpvivid'); ?></strong></div>
|
149 |
<div class="setting-tab-block" style="padding-bottom: 0;">
|
150 |
<fieldset>
|
151 |
<label for="users_can_register">
|
152 |
-
<p><span class="wpvivid-element-space-right"><?php _e('Web Server Directory:', 'wpvivid'); ?></span><span id="wpvivid_out_of_date_local_path"><?php _e($out_of_date['web_server'], 'wpvivid'); ?></span></p>
|
153 |
-
<p><span style="margin-right: 2px;"><?php _e('Remote Storage Directory:', 'wpvivid'); ?></span><span id="wpvivid_out_of_date_remote_path">
|
154 |
<?php
|
155 |
$wpvivid_get_remote_directory = '';
|
156 |
$wpvivid_get_remote_directory = apply_filters('wpvivid_get_remote_directory', $wpvivid_get_remote_directory);
|
@@ -162,8 +162,8 @@ function wpvivid_general_settings()
|
|
162 |
</fieldset>
|
163 |
</div>
|
164 |
<div class="setting-tab-block" style="padding: 10px 10px 0 0;">
|
165 |
-
<input class="button-primary" id="wpvivid_delete_out_of_backup" style="margin-right:10px;" type="submit" name="delete-out-of-backup" value="<?php esc_attr_e( 'Remove', 'wpvivid' ); ?>" />
|
166 |
-
<p><?php _e('The action is irreversible! It will remove all backups are out-of-date (including local web server and remote storage) if they exist.', 'wpvivid'); ?> </p>
|
167 |
</div>
|
168 |
</div>
|
169 |
<script>
|
@@ -223,39 +223,39 @@ function wpvivid_email_report()
|
|
223 |
}
|
224 |
?>
|
225 |
<div class="postbox schedule-tab-block" id="wpvivid_email_report">
|
226 |
-
<div><p><?php _e('In order to use this function, please install a <strong><a target="_blank" href="https://wpvivid.com/8-best-smtp-plugins-for-wordpress.html" style="text-decoration: none;">WordPress SMTP plugin</a></strong> of your preference and configure your SMTP server first. This is because WordPress uses the PHP Mail function to send its emails by default, which is not supported by many hosts and can cause issues if it is not set properly.', 'wpvivid'); ?></p>
|
227 |
</div>
|
228 |
<div>
|
229 |
<label for="wpvivid_general_email_enable">
|
230 |
-
<input type="checkbox" option="setting" name="email_enable" id="wpvivid_general_email_enable" value="1" <?php esc_attr_e($setting_email_enable, 'wpvivid'); ?> />
|
231 |
-
<span><strong><?php _e( 'Enable email report', 'wpvivid' ); ?></strong></span>
|
232 |
</label>
|
233 |
</div>
|
234 |
-
<div id="wpvivid_general_email_setting" style="<?php esc_attr_e($setting_email_display, 'wpvivid'); ?>" >
|
235 |
<input type="text" placeholder="example@yourdomain.com" option="setting" name="send_to" class="regular-text" id="wpvivid_mail" value="<?php
|
236 |
if(!empty($general_setting['options']['wpvivid_email_setting']['send_to'])) {
|
237 |
foreach ($general_setting['options']['wpvivid_email_setting']['send_to'] as $mail) {
|
238 |
if(!empty($mail) && !is_array($mail)) {
|
239 |
-
_e($mail, 'wpvivid');
|
240 |
break;
|
241 |
}
|
242 |
}
|
243 |
}
|
244 |
?>" />
|
245 |
-
<input class="button-secondary" id="wpvivid_send_email_test" style="margin-top:10px;" type="submit" name="" value="<?php esc_attr_e( 'Test Email', 'wpvivid' ); ?>" title="Send an email for testing mail function"/>
|
246 |
<div id="wpvivid_send_email_res"></div>
|
247 |
<fieldset class="setting-tab-block">
|
248 |
<label >
|
249 |
-
<input type="radio" option="setting" name="always" value="1" <?php esc_attr_e($wpvivid_setting_email_always, 'wpvivid'); ?> />
|
250 |
-
<span><?php _e( 'Always send an email notification when a backup is complete', 'wpvivid' ); ?></span>
|
251 |
</label><br>
|
252 |
<label >
|
253 |
-
<input type="radio" option="setting" name="always" value="0" <?php esc_attr_e($wpvivid_setting_email_failed, 'wpvivid'); ?> />
|
254 |
-
<span><?php _e( 'Only send an email notification when a backup fails', 'wpvivid' ); ?></span>
|
255 |
</label><br>
|
256 |
</fieldset>
|
257 |
<div style="margin-bottom: 10px;">
|
258 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-email-report?utm_source=client_email_report&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;"><?php _e('Pro feature: Add another email address to get report', 'wpvivid'); ?></a>
|
259 |
</div>
|
260 |
</div>
|
261 |
</div>
|
@@ -302,42 +302,42 @@ function wpvivid_clean_junk()
|
|
302 |
?>
|
303 |
<div class="postbox schedule-tab-block" id="wpvivid_clean_junk">
|
304 |
<div>
|
305 |
-
<strong><?php _e('Web-server disk space in use by WPvivid', 'wpvivid'); ?></strong>
|
306 |
</div>
|
307 |
<div class="setting-tab-block">
|
308 |
<div class="setting-tab-block">
|
309 |
-
<span class="wpvivid-element-space-right"><?php _e('Total Size:', 'wpvivid'); ?></span>
|
310 |
-
<span id="wpvivid_junk_sum_size"><?php _e($junk_file['sum_size'], 'wpvivid'); ?></span>
|
311 |
-
<input class="button-secondary" id="wpvivid_calculate_size" style="margin-left:10px;" type="submit" name="Calculate-Sizes" value="<?php esc_attr_e( 'Calculate Sizes', 'wpvivid' ); ?>" />
|
312 |
</div>
|
313 |
<fieldset>
|
314 |
<label for="wpvivid_junk_log">
|
315 |
<input type="checkbox" id="wpvivid_junk_log" option="junk-files" name="log" value="junk-log" />
|
316 |
-
<span class="wpvivid-element-space-right"><?php _e( 'logs', 'wpvivid' ); ?></span>
|
317 |
-
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid' ); ?></span><span id="wpvivid_junk_log_path"><?php _e($junk_file['log_path'], 'wpvivid'); ?></span>
|
318 |
</label>
|
319 |
</fieldset>
|
320 |
<fieldset>
|
321 |
<label for="wpvivid_junk_backup_cache">
|
322 |
<input type="checkbox" id="wpvivid_junk_backup_cache" option="junk-files" name="backup_cache" value="junk-backup-cache" />
|
323 |
-
<span class="wpvivid-element-space-right"><?php _e( 'Backup Cache', 'wpvivid' ); ?></span>
|
324 |
</label>
|
325 |
<label for="wpvivid_junk_file">
|
326 |
<input type="checkbox" id="wpvivid_junk_file" option="junk-files" name="junk_files" value="junk-files" />
|
327 |
-
<span class="wpvivid-element-space-right"><?php _e( 'Junk', 'wpvivid' ); ?></span>
|
328 |
-
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid' ); ?></span><span id="wpvivid_junk_file_path"><?php _e($junk_file['junk_path'], 'wpvivid'); ?></span>
|
329 |
</label>
|
330 |
</fieldset>
|
331 |
<fieldset>
|
332 |
<label for="wpvivid_junk_temporary_file">
|
333 |
<input type="checkbox" id="wpvivid_junk_temporary_file" option="junk-files" name="old_files" value="junk-temporary-files" />
|
334 |
-
<span class="wpvivid-element-space-right"><?php _e( 'Temporary Files', 'wpvivid' ); ?></span>
|
335 |
-
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid'); ?></span><span id="wpvivid_restore_temp_file_path"><?php _e($junk_file['old_files_path'], 'wpvivid'); ?></span>
|
336 |
-
<p><?php echo __('Temporary Files are created by wpvivid when restoring a website.', 'wpvivid'); ?></p>
|
337 |
</label>
|
338 |
</fieldset>
|
339 |
</div>
|
340 |
-
<div><input class="button-primary" id="wpvivid_clean_junk_file" type="submit" name="Empty-all-files" value="<?php esc_attr_e( 'Empty', 'wpvivid' ); ?>" /></div>
|
341 |
<div style="clear:both;"></div>
|
342 |
</div>
|
343 |
<script>
|
@@ -439,13 +439,13 @@ function wpvivid_export_import_settings()
|
|
439 |
?>
|
440 |
<div class="postbox schedule-tab-block" id="wpvivid_export_import">
|
441 |
<div class="setting-tab-block" style="padding-bottom: 0;">
|
442 |
-
<input class="button-primary" id="wpvivid_setting_export" type="button" name="" value="<?php esc_attr_e( 'Export', 'wpvivid' ); ?>" />
|
443 |
-
<p><?php echo __('Click \'Export\' button to save WPvivid settings on your local computer.', 'wpvivid'); ?> </p>
|
444 |
</div>
|
445 |
<div class="setting-tab-block" style="padding: 0 10px 0 0;">
|
446 |
<input type="file" name="fileTrans" id="wpvivid_select_import_file"></br>
|
447 |
-
<input class="button-primary" id="wpvivid_setting_import" type="button" name="" value="<?php esc_attr_e( 'Import', 'wpvivid' ); ?>" />
|
448 |
-
<p><?php echo __('Importing the json file can help you set WPvivid\'s configuration on another wordpress site quickly.', 'wpvivid'); ?></p>
|
449 |
</div>
|
450 |
<div style="clear:both;"></div>
|
451 |
</div>
|
@@ -565,44 +565,44 @@ function wpvivid_advanced_settings()
|
|
565 |
?>
|
566 |
<div class="postbox schedule-tab-block setting-page-content">
|
567 |
<div>
|
568 |
-
<p><strong><?php _e('Enable the option when backup failed.', 'wpvivid'); ?></strong> <?php _e('Special optimization for web hosting/shared hosting', 'wpvivid'); ?></p>
|
569 |
<div>
|
570 |
<label>
|
571 |
<input type="checkbox" option="setting" name="subpackage_plugin_upload" <?php esc_attr_e($subpackage_plugin_upload); ?> />
|
572 |
-
<span><strong><?php _e('Enable optimization mode for web hosting/shared hosting', 'wpvivid'); ?></strong></span>
|
573 |
</label>
|
574 |
<div>
|
575 |
-
<p><?php _e('Enabling this option can improve the backup success rate, but it will take more time for backup.', 'wpvivid'); ?></p>
|
576 |
</div>
|
577 |
</div>
|
578 |
</div>
|
579 |
</div>
|
580 |
<div class="postbox schedule-tab-block wpvivid-setting-addon" style="margin-bottom: 10px; padding-bottom: 0;">
|
581 |
<div class="wpvivid-element-space-bottom">
|
582 |
-
<strong><?php _e('Database access method.', 'wpvivid'); ?></strong>
|
583 |
</div>
|
584 |
<div class="wpvivid-element-space-bottom">
|
585 |
<label>
|
586 |
<input type="radio" option="setting" name="db_connect_method" value="wpdb" <?php esc_attr_e($db_method_wpdb); ?> />
|
587 |
-
<span class="wpvivid-element-space-right"><strong>WPDB</strong></span><span><?php _e('WPDB option has a better compatibility, but the speed of backup and restore is slower.', 'wpvivid'); ?></span>
|
588 |
</label>
|
589 |
</div>
|
590 |
<div class="wpvivid-element-space-bottom">
|
591 |
<label>
|
592 |
<input type="radio" option="setting" name="db_connect_method" value="pdo" <?php esc_attr_e($db_method_pdo); ?> />
|
593 |
-
<span class="wpvivid-element-space-right"><strong>PDO</strong></span><span><?php _e('It is recommended to choose PDO option if pdo_mysql extension is installed on your server, which lets you backup and restore your site faster.', 'wpvivid'); ?></span>
|
594 |
</label>
|
595 |
</div>
|
596 |
</div>
|
597 |
<div class="postbox schedule-tab-block setting-page-content">
|
598 |
<fieldset>
|
599 |
<label>
|
600 |
-
<input type="radio" option="setting" name="no_compress" value="1" <?php esc_attr_e($wpvivid_setting_no_compress, 'wpvivid'); ?> />
|
601 |
-
<span class="wpvivid-element-space-right" title="<?php _e( 'It will cause a lower CPU Usage and is recommended in a web hosting/ shared hosting environment.', 'wpvivid' ); ?>"><?php _e( 'Only Archive without compressing', 'wpvivid' ); ?></span>
|
602 |
</label>
|
603 |
<label>
|
604 |
-
<input type="radio" option="setting" name="no_compress" value="0" <?php esc_attr_e($wpvivid_setting_compress, 'wpvivid'); ?> />
|
605 |
-
<span class="wpvivid-element-space-right" title="<?php _e( 'It will cause a higher CPU Usage and is recommended in a VPS/ dedicated hosting environment.', 'wpvivid' ); ?>"><?php _e( 'Compress and Archive', 'wpvivid' ); ?></span>
|
606 |
</label>
|
607 |
<label style="display: none;">
|
608 |
<input type="radio" option="setting" name="compress_type" value="zip" checked />
|
@@ -611,40 +611,40 @@ function wpvivid_advanced_settings()
|
|
611 |
</label>
|
612 |
</fieldset>
|
613 |
<div style="padding-top: 10px;">
|
614 |
-
<div><strong><?php _e('Compress Files Every', 'wpvivid'); ?></strong></div>
|
615 |
<div class="setting-tab-block">
|
616 |
-
<input type="text" placeholder="400" option="setting" name="max_file_size" id="wpvivid_max_zip" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_compress_setting']['max_file_size']), 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
617 |
-
<div><p><?php _e( 'Some web hosting providers limit large zip files (e.g. 200MB), and therefore splitting your backup into many parts is an ideal way to avoid hitting the limitation if you are running a big website. Please try to adjust the value if you are encountering backup errors. If you use a value of 0 MB, any backup files won\'t be split.', 'wpvivid' ); ?></div></p>
|
618 |
</div>
|
619 |
-
<div><strong><?php _e('Exclude the files which are larger than', 'wpvivid'); ?></strong></div>
|
620 |
<div class="setting-tab-block">
|
621 |
-
<input type="text" placeholder="400" option="setting" name="exclude_file_size" id="wpvivid_ignore_large" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_compress_setting']['exclude_file_size'], 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
622 |
-
<div><p><?php _e( 'Using the option will ignore the file larger than the certain size in MB when backing up, \'0\' (zero) means unlimited.', 'wpvivid' ); ?></p></div>
|
623 |
</div>
|
624 |
-
<div><strong><?php _e('PHP script execution timeout for backup', 'wpvivid'); ?></strong></div>
|
625 |
<div class="setting-tab-block">
|
626 |
-
<input type="text" placeholder="600" option="setting" name="max_execution_time" id="wpvivid_option_timeout" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_common_setting']['max_execution_time'], 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />Seconds
|
627 |
-
<div><p><?php _e( 'The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of backup down. If the progress of backup encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger.', 'wpvivid' ); ?></p></div>
|
628 |
</div>
|
629 |
-
<div><strong><?php _e('PHP script execution timeout for restore', 'wpvivid'); ?></strong></div>
|
630 |
<div class="setting-tab-block">
|
631 |
<input type="text" placeholder="1800" option="setting" name="restore_max_execution_time" class="all-options" value="<?php esc_attr_e($restore_max_execution_time); ?>" onkeyup="value=value.replace(/\D/g,'')" />Seconds
|
632 |
-
<div><p><?php _e( 'The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of restore down. If the progress of restore encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger.', 'wpvivid' ); ?></p></div>
|
633 |
</div>
|
634 |
-
<div><strong><?php _e('PHP Memory Limit for backup', 'wpvivid'); ?></strong></div>
|
635 |
<div class="setting-tab-block">
|
636 |
-
<input type="text" placeholder="256" option="setting" name="memory_limit" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_common_setting']['memory_limit']), 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
637 |
-
<div><p><?php _e('Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin to run a backup. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this.', 'wpvivid'); ?></p></div>
|
638 |
</div>
|
639 |
-
<div><strong><?php _e('PHP Memory Limit for restoration', 'wpvivid'); ?></strong></div>
|
640 |
<div class="setting-tab-block">
|
641 |
-
<input type="text" placeholder="256" option="setting" name="restore_memory_limit" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_common_setting']['restore_memory_limit']), 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
642 |
-
<div><p><?php _e('Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin in restore process. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this.', 'wpvivid'); ?></p></div>
|
643 |
</div>
|
644 |
-
<div><strong><?php _e('Chunk Size', 'wpvivid'); ?></strong></div>
|
645 |
<div class="setting-tab-block">
|
646 |
<input type="text" placeholder="2" option="setting" name="migrate_size" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_common_setting']['migrate_size']); ?>" onkeyup="value=value.replace(/\D/g,'')" />KB
|
647 |
-
<div><p><?php _e('e.g. if you choose a chunk size of 2MB, a 8MB file will use 4 chunks. Decreasing this value will break the ISP\'s transmission limit, for example:512KB', 'wpvivid'); ?></p></div>
|
648 |
</div>
|
649 |
<div>
|
650 |
<?php
|
@@ -658,7 +658,7 @@ function wpvivid_advanced_settings()
|
|
658 |
}
|
659 |
}
|
660 |
$max_count_select = '<select option="setting" name="max_resume_count">'.$max_count_option.'</select>';
|
661 |
-
echo sprintf(__('<strong>Retrying </strong>%s<strong> times when encountering a time-out error</strong>', 'wpvivid'), $max_count_select);
|
662 |
?>
|
663 |
</div>
|
664 |
</div>
|
@@ -674,13 +674,13 @@ function wpvivid_add_setting_tab_page($setting_array){
|
|
674 |
|
675 |
function wpvivid_settingpage_add_tab_general(){
|
676 |
?>
|
677 |
-
<a href="#" id="wpvivid_tab_general_setting" class="nav-tab setting-nav-tab nav-tab-active" onclick="switchsettingTabs(event,'page-general-setting')"><?php _e('General Settings', 'wpvivid'); ?></a>
|
678 |
<?php
|
679 |
}
|
680 |
|
681 |
function wpvivid_settingpage_add_tab_advance(){
|
682 |
?>
|
683 |
-
<a href="#" id="wpvivid_tab_advance_setting" class="nav-tab setting-nav-tab" onclick="switchsettingTabs(event,'page-advance-setting')"><?php _e('Advanced Settings', 'wpvivid'); ?></a>
|
684 |
<?php
|
685 |
}
|
686 |
|
97 |
}
|
98 |
}
|
99 |
?>
|
100 |
+
</select><strong style="margin-right: 10px;"><?php _e('backups retained', 'wpvivid-backuprestore'); ?></strong><a href="https://wpvivid.com/pro-version-beta-testing?utm_source=client_backups_retained&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;"><?php _e('Pro feature: Retain more backups', 'wpvivid-backuprestore'); ?></a>
|
101 |
</div>
|
102 |
<div>
|
103 |
<label for="wpvivid_estimate_backup">
|
104 |
<input type="checkbox" option="setting" name="estimate_backup" id="wpvivid_estimate_backup" value="1" <?php esc_attr_e($wpvivid_setting_estimate_backup); ?> />
|
105 |
+
<span><?php _e('Calculate the size of files, folder and database before backing up', 'wpvivid-backuprestore' ); ?></span>
|
106 |
</label>
|
107 |
</div>
|
108 |
<div>
|
109 |
<label>
|
110 |
<input type="checkbox" option="setting" name="show_admin_bar" <?php esc_attr_e($show_admin_bar); ?> />
|
111 |
+
<span><?php _e('Show WPvivid backup plugin on top admin bar', 'wpvivid-backuprestore'); ?></span>
|
112 |
</label>
|
113 |
</div>
|
114 |
<div>
|
115 |
<label>
|
116 |
<input type="checkbox" option="setting" name="ismerge" <?php esc_attr_e($wpvivid_ismerge); ?> />
|
117 |
+
<span><?php _e('Merge all the backup files into single package when a backup completes. This will save great disk spaces, though takes longer time. We recommended you check the option especially on sites with insufficient server resources.', 'wpvivid-backuprestore'); ?></span>
|
118 |
</label>
|
119 |
</div>
|
120 |
<div>
|
121 |
<label>
|
122 |
<input type="checkbox" option="setting" name="retain_local" <?php esc_attr_e($wpvivid_retain_local); ?> />
|
123 |
+
<span><?php _e('Keep storing the backups in localhost after uploading to remote storage', 'wpvivid-backuprestore'); ?></span>
|
124 |
</label>
|
125 |
</div>
|
126 |
<div>
|
127 |
<label>
|
128 |
<input type="checkbox" option="setting" name="uninstall_clear_folder" <?php esc_attr_e($uninstall_clear_folder); ?> />
|
129 |
+
<span><?php _e(sprintf('Delete the /%s folder and all backups in it when deleting WPvivid Backup plugin.', $general_setting['options']['wpvivid_local_setting']['path']), 'wpvivid-backuprestore'); ?></span>
|
130 |
</label>
|
131 |
</div>
|
132 |
</div>
|
133 |
<div class="postbox schedule-tab-block">
|
134 |
+
<div><strong><?php _e('Backup Folder', 'wpvivid-backuprestore'); ?></strong></div>
|
135 |
<div class="setting-tab-block">
|
136 |
+
<div><p><?php _e('Name your folder, this folder must be writable for creating backup files.', 'wpvivid-backuprestore' ); ?><p> </div>
|
137 |
+
<input type="text" placeholder="wpvividbackups" option="setting" name="path" id="wpvivid_option_backup_dir" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_local_setting']['path'], 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" />
|
138 |
+
<p><span class="wpvivid-element-space-right"><?php _e('Local storage directory:', 'wpvivid-backuprestore'); ?></span><span><?php echo WP_CONTENT_DIR.'/'; ?><span id="wpvivid_setting_local_storage_path"><?php _e($general_setting['options']['wpvivid_local_setting']['path'], 'wpvivid-backuprestore'); ?></span></span></p>
|
139 |
</div>
|
140 |
<div>
|
141 |
<label>
|
142 |
<input type="checkbox" option="setting" name="domain_include" <?php esc_attr_e($wpvivid_domain_include); ?> />
|
143 |
+
<span><?php _e('Display domain(url) of current site in backup name. (e.g. domain_wpvivid-5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)', 'wpvivid-backuprestore'); ?></span>
|
144 |
</label>
|
145 |
</div>
|
146 |
</div>
|
147 |
<div class="postbox schedule-tab-block">
|
148 |
+
<div><strong><?php _e('Remove out-of-date backups', 'wpvivid-backuprestore'); ?></strong></div>
|
149 |
<div class="setting-tab-block" style="padding-bottom: 0;">
|
150 |
<fieldset>
|
151 |
<label for="users_can_register">
|
152 |
+
<p><span class="wpvivid-element-space-right"><?php _e('Web Server Directory:', 'wpvivid-backuprestore'); ?></span><span id="wpvivid_out_of_date_local_path"><?php _e($out_of_date['web_server'], 'wpvivid-backuprestore'); ?></span></p>
|
153 |
+
<p><span style="margin-right: 2px;"><?php _e('Remote Storage Directory:', 'wpvivid-backuprestore'); ?></span><span id="wpvivid_out_of_date_remote_path">
|
154 |
<?php
|
155 |
$wpvivid_get_remote_directory = '';
|
156 |
$wpvivid_get_remote_directory = apply_filters('wpvivid_get_remote_directory', $wpvivid_get_remote_directory);
|
162 |
</fieldset>
|
163 |
</div>
|
164 |
<div class="setting-tab-block" style="padding: 10px 10px 0 0;">
|
165 |
+
<input class="button-primary" id="wpvivid_delete_out_of_backup" style="margin-right:10px;" type="submit" name="delete-out-of-backup" value="<?php esc_attr_e( 'Remove', 'wpvivid-backuprestore' ); ?>" />
|
166 |
+
<p><?php _e('The action is irreversible! It will remove all backups are out-of-date (including local web server and remote storage) if they exist.', 'wpvivid-backuprestore'); ?> </p>
|
167 |
</div>
|
168 |
</div>
|
169 |
<script>
|
223 |
}
|
224 |
?>
|
225 |
<div class="postbox schedule-tab-block" id="wpvivid_email_report">
|
226 |
+
<div><p><?php _e('In order to use this function, please install a <strong><a target="_blank" href="https://wpvivid.com/8-best-smtp-plugins-for-wordpress.html" style="text-decoration: none;">WordPress SMTP plugin</a></strong> of your preference and configure your SMTP server first. This is because WordPress uses the PHP Mail function to send its emails by default, which is not supported by many hosts and can cause issues if it is not set properly.', 'wpvivid-backuprestore'); ?></p>
|
227 |
</div>
|
228 |
<div>
|
229 |
<label for="wpvivid_general_email_enable">
|
230 |
+
<input type="checkbox" option="setting" name="email_enable" id="wpvivid_general_email_enable" value="1" <?php esc_attr_e($setting_email_enable, 'wpvivid-backuprestore'); ?> />
|
231 |
+
<span><strong><?php _e( 'Enable email report', 'wpvivid-backuprestore' ); ?></strong></span>
|
232 |
</label>
|
233 |
</div>
|
234 |
+
<div id="wpvivid_general_email_setting" style="<?php esc_attr_e($setting_email_display, 'wpvivid-backuprestore'); ?>" >
|
235 |
<input type="text" placeholder="example@yourdomain.com" option="setting" name="send_to" class="regular-text" id="wpvivid_mail" value="<?php
|
236 |
if(!empty($general_setting['options']['wpvivid_email_setting']['send_to'])) {
|
237 |
foreach ($general_setting['options']['wpvivid_email_setting']['send_to'] as $mail) {
|
238 |
if(!empty($mail) && !is_array($mail)) {
|
239 |
+
_e($mail, 'wpvivid-backuprestore');
|
240 |
break;
|
241 |
}
|
242 |
}
|
243 |
}
|
244 |
?>" />
|
245 |
+
<input class="button-secondary" id="wpvivid_send_email_test" style="margin-top:10px;" type="submit" name="" value="<?php esc_attr_e( 'Test Email', 'wpvivid-backuprestore' ); ?>" title="Send an email for testing mail function"/>
|
246 |
<div id="wpvivid_send_email_res"></div>
|
247 |
<fieldset class="setting-tab-block">
|
248 |
<label >
|
249 |
+
<input type="radio" option="setting" name="always" value="1" <?php esc_attr_e($wpvivid_setting_email_always, 'wpvivid-backuprestore'); ?> />
|
250 |
+
<span><?php _e( 'Always send an email notification when a backup is complete', 'wpvivid-backuprestore' ); ?></span>
|
251 |
</label><br>
|
252 |
<label >
|
253 |
+
<input type="radio" option="setting" name="always" value="0" <?php esc_attr_e($wpvivid_setting_email_failed, 'wpvivid-backuprestore'); ?> />
|
254 |
+
<span><?php _e( 'Only send an email notification when a backup fails', 'wpvivid-backuprestore' ); ?></span>
|
255 |
</label><br>
|
256 |
</fieldset>
|
257 |
<div style="margin-bottom: 10px;">
|
258 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-email-report?utm_source=client_email_report&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;"><?php _e('Pro feature: Add another email address to get report', 'wpvivid-backuprestore'); ?></a>
|
259 |
</div>
|
260 |
</div>
|
261 |
</div>
|
302 |
?>
|
303 |
<div class="postbox schedule-tab-block" id="wpvivid_clean_junk">
|
304 |
<div>
|
305 |
+
<strong><?php _e('Web-server disk space in use by WPvivid', 'wpvivid-backuprestore'); ?></strong>
|
306 |
</div>
|
307 |
<div class="setting-tab-block">
|
308 |
<div class="setting-tab-block">
|
309 |
+
<span class="wpvivid-element-space-right"><?php _e('Total Size:', 'wpvivid-backuprestore'); ?></span>
|
310 |
+
<span id="wpvivid_junk_sum_size"><?php _e($junk_file['sum_size'], 'wpvivid-backuprestore'); ?></span>
|
311 |
+
<input class="button-secondary" id="wpvivid_calculate_size" style="margin-left:10px;" type="submit" name="Calculate-Sizes" value="<?php esc_attr_e( 'Calculate Sizes', 'wpvivid-backuprestore' ); ?>" />
|
312 |
</div>
|
313 |
<fieldset>
|
314 |
<label for="wpvivid_junk_log">
|
315 |
<input type="checkbox" id="wpvivid_junk_log" option="junk-files" name="log" value="junk-log" />
|
316 |
+
<span class="wpvivid-element-space-right"><?php _e( 'logs', 'wpvivid-backuprestore' ); ?></span>
|
317 |
+
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid-backuprestore' ); ?></span><span id="wpvivid_junk_log_path"><?php _e($junk_file['log_path'], 'wpvivid-backuprestore'); ?></span>
|
318 |
</label>
|
319 |
</fieldset>
|
320 |
<fieldset>
|
321 |
<label for="wpvivid_junk_backup_cache">
|
322 |
<input type="checkbox" id="wpvivid_junk_backup_cache" option="junk-files" name="backup_cache" value="junk-backup-cache" />
|
323 |
+
<span class="wpvivid-element-space-right"><?php _e( 'Backup Cache', 'wpvivid-backuprestore' ); ?></span>
|
324 |
</label>
|
325 |
<label for="wpvivid_junk_file">
|
326 |
<input type="checkbox" id="wpvivid_junk_file" option="junk-files" name="junk_files" value="junk-files" />
|
327 |
+
<span class="wpvivid-element-space-right"><?php _e( 'Junk', 'wpvivid-backuprestore' ); ?></span>
|
328 |
+
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid-backuprestore' ); ?></span><span id="wpvivid_junk_file_path"><?php _e($junk_file['junk_path'], 'wpvivid-backuprestore'); ?></span>
|
329 |
</label>
|
330 |
</fieldset>
|
331 |
<fieldset>
|
332 |
<label for="wpvivid_junk_temporary_file">
|
333 |
<input type="checkbox" id="wpvivid_junk_temporary_file" option="junk-files" name="old_files" value="junk-temporary-files" />
|
334 |
+
<span class="wpvivid-element-space-right"><?php _e( 'Temporary Files', 'wpvivid-backuprestore' ); ?></span>
|
335 |
+
<span style="margin-right: 2px;"><?php _e('Path:', 'wpvivid-backuprestore'); ?></span><span id="wpvivid_restore_temp_file_path"><?php _e($junk_file['old_files_path'], 'wpvivid-backuprestore'); ?></span>
|
336 |
+
<p><?php echo __('Temporary Files are created by wpvivid when restoring a website.', 'wpvivid-backuprestore'); ?></p>
|
337 |
</label>
|
338 |
</fieldset>
|
339 |
</div>
|
340 |
+
<div><input class="button-primary" id="wpvivid_clean_junk_file" type="submit" name="Empty-all-files" value="<?php esc_attr_e( 'Empty', 'wpvivid-backuprestore' ); ?>" /></div>
|
341 |
<div style="clear:both;"></div>
|
342 |
</div>
|
343 |
<script>
|
439 |
?>
|
440 |
<div class="postbox schedule-tab-block" id="wpvivid_export_import">
|
441 |
<div class="setting-tab-block" style="padding-bottom: 0;">
|
442 |
+
<input class="button-primary" id="wpvivid_setting_export" type="button" name="" value="<?php esc_attr_e( 'Export', 'wpvivid-backuprestore' ); ?>" />
|
443 |
+
<p><?php echo __('Click \'Export\' button to save WPvivid settings on your local computer.', 'wpvivid-backuprestore'); ?> </p>
|
444 |
</div>
|
445 |
<div class="setting-tab-block" style="padding: 0 10px 0 0;">
|
446 |
<input type="file" name="fileTrans" id="wpvivid_select_import_file"></br>
|
447 |
+
<input class="button-primary" id="wpvivid_setting_import" type="button" name="" value="<?php esc_attr_e( 'Import', 'wpvivid-backuprestore' ); ?>" />
|
448 |
+
<p><?php echo __('Importing the json file can help you set WPvivid\'s configuration on another wordpress site quickly.', 'wpvivid-backuprestore'); ?></p>
|
449 |
</div>
|
450 |
<div style="clear:both;"></div>
|
451 |
</div>
|
565 |
?>
|
566 |
<div class="postbox schedule-tab-block setting-page-content">
|
567 |
<div>
|
568 |
+
<p><strong><?php _e('Enable the option when backup failed.', 'wpvivid-backuprestore'); ?></strong> <?php _e('Special optimization for web hosting/shared hosting', 'wpvivid-backuprestore'); ?></p>
|
569 |
<div>
|
570 |
<label>
|
571 |
<input type="checkbox" option="setting" name="subpackage_plugin_upload" <?php esc_attr_e($subpackage_plugin_upload); ?> />
|
572 |
+
<span><strong><?php _e('Enable optimization mode for web hosting/shared hosting', 'wpvivid-backuprestore'); ?></strong></span>
|
573 |
</label>
|
574 |
<div>
|
575 |
+
<p><?php _e('Enabling this option can improve the backup success rate, but it will take more time for backup.', 'wpvivid-backuprestore'); ?></p>
|
576 |
</div>
|
577 |
</div>
|
578 |
</div>
|
579 |
</div>
|
580 |
<div class="postbox schedule-tab-block wpvivid-setting-addon" style="margin-bottom: 10px; padding-bottom: 0;">
|
581 |
<div class="wpvivid-element-space-bottom">
|
582 |
+
<strong><?php _e('Database access method.', 'wpvivid-backuprestore'); ?></strong>
|
583 |
</div>
|
584 |
<div class="wpvivid-element-space-bottom">
|
585 |
<label>
|
586 |
<input type="radio" option="setting" name="db_connect_method" value="wpdb" <?php esc_attr_e($db_method_wpdb); ?> />
|
587 |
+
<span class="wpvivid-element-space-right"><strong>WPDB</strong></span><span><?php _e('WPDB option has a better compatibility, but the speed of backup and restore is slower.', 'wpvivid-backuprestore'); ?></span>
|
588 |
</label>
|
589 |
</div>
|
590 |
<div class="wpvivid-element-space-bottom">
|
591 |
<label>
|
592 |
<input type="radio" option="setting" name="db_connect_method" value="pdo" <?php esc_attr_e($db_method_pdo); ?> />
|
593 |
+
<span class="wpvivid-element-space-right"><strong>PDO</strong></span><span><?php _e('It is recommended to choose PDO option if pdo_mysql extension is installed on your server, which lets you backup and restore your site faster.', 'wpvivid-backuprestore'); ?></span>
|
594 |
</label>
|
595 |
</div>
|
596 |
</div>
|
597 |
<div class="postbox schedule-tab-block setting-page-content">
|
598 |
<fieldset>
|
599 |
<label>
|
600 |
+
<input type="radio" option="setting" name="no_compress" value="1" <?php esc_attr_e($wpvivid_setting_no_compress, 'wpvivid-backuprestore'); ?> />
|
601 |
+
<span class="wpvivid-element-space-right" title="<?php _e( 'It will cause a lower CPU Usage and is recommended in a web hosting/ shared hosting environment.', 'wpvivid-backuprestore' ); ?>"><?php _e( 'Only Archive without compressing', 'wpvivid-backuprestore' ); ?></span>
|
602 |
</label>
|
603 |
<label>
|
604 |
+
<input type="radio" option="setting" name="no_compress" value="0" <?php esc_attr_e($wpvivid_setting_compress, 'wpvivid-backuprestore'); ?> />
|
605 |
+
<span class="wpvivid-element-space-right" title="<?php _e( 'It will cause a higher CPU Usage and is recommended in a VPS/ dedicated hosting environment.', 'wpvivid-backuprestore' ); ?>"><?php _e( 'Compress and Archive', 'wpvivid-backuprestore' ); ?></span>
|
606 |
</label>
|
607 |
<label style="display: none;">
|
608 |
<input type="radio" option="setting" name="compress_type" value="zip" checked />
|
611 |
</label>
|
612 |
</fieldset>
|
613 |
<div style="padding-top: 10px;">
|
614 |
+
<div><strong><?php _e('Compress Files Every', 'wpvivid-backuprestore'); ?></strong></div>
|
615 |
<div class="setting-tab-block">
|
616 |
+
<input type="text" placeholder="400" option="setting" name="max_file_size" id="wpvivid_max_zip" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_compress_setting']['max_file_size']), 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
617 |
+
<div><p><?php _e( 'Some web hosting providers limit large zip files (e.g. 200MB), and therefore splitting your backup into many parts is an ideal way to avoid hitting the limitation if you are running a big website. Please try to adjust the value if you are encountering backup errors. If you use a value of 0 MB, any backup files won\'t be split.', 'wpvivid-backuprestore' ); ?></div></p>
|
618 |
</div>
|
619 |
+
<div><strong><?php _e('Exclude the files which are larger than', 'wpvivid-backuprestore'); ?></strong></div>
|
620 |
<div class="setting-tab-block">
|
621 |
+
<input type="text" placeholder="400" option="setting" name="exclude_file_size" id="wpvivid_ignore_large" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_compress_setting']['exclude_file_size'], 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
622 |
+
<div><p><?php _e( 'Using the option will ignore the file larger than the certain size in MB when backing up, \'0\' (zero) means unlimited.', 'wpvivid-backuprestore' ); ?></p></div>
|
623 |
</div>
|
624 |
+
<div><strong><?php _e('PHP script execution timeout for backup', 'wpvivid-backuprestore'); ?></strong></div>
|
625 |
<div class="setting-tab-block">
|
626 |
+
<input type="text" placeholder="600" option="setting" name="max_execution_time" id="wpvivid_option_timeout" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_common_setting']['max_execution_time'], 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />Seconds
|
627 |
+
<div><p><?php _e( 'The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of backup down. If the progress of backup encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger.', 'wpvivid-backuprestore' ); ?></p></div>
|
628 |
</div>
|
629 |
+
<div><strong><?php _e('PHP script execution timeout for restore', 'wpvivid-backuprestore'); ?></strong></div>
|
630 |
<div class="setting-tab-block">
|
631 |
<input type="text" placeholder="1800" option="setting" name="restore_max_execution_time" class="all-options" value="<?php esc_attr_e($restore_max_execution_time); ?>" onkeyup="value=value.replace(/\D/g,'')" />Seconds
|
632 |
+
<div><p><?php _e( 'The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of restore down. If the progress of restore encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger.', 'wpvivid-backuprestore' ); ?></p></div>
|
633 |
</div>
|
634 |
+
<div><strong><?php _e('PHP Memory Limit for backup', 'wpvivid-backuprestore'); ?></strong></div>
|
635 |
<div class="setting-tab-block">
|
636 |
+
<input type="text" placeholder="256" option="setting" name="memory_limit" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_common_setting']['memory_limit']), 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
637 |
+
<div><p><?php _e('Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin to run a backup. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this.', 'wpvivid-backuprestore'); ?></p></div>
|
638 |
</div>
|
639 |
+
<div><strong><?php _e('PHP Memory Limit for restoration', 'wpvivid-backuprestore'); ?></strong></div>
|
640 |
<div class="setting-tab-block">
|
641 |
+
<input type="text" placeholder="256" option="setting" name="restore_memory_limit" class="all-options" value="<?php esc_attr_e(str_replace('M', '', $general_setting['options']['wpvivid_common_setting']['restore_memory_limit']), 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />MB
|
642 |
+
<div><p><?php _e('Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin in restore process. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this.', 'wpvivid-backuprestore'); ?></p></div>
|
643 |
</div>
|
644 |
+
<div><strong><?php _e('Chunk Size', 'wpvivid-backuprestore'); ?></strong></div>
|
645 |
<div class="setting-tab-block">
|
646 |
<input type="text" placeholder="2" option="setting" name="migrate_size" class="all-options" value="<?php esc_attr_e($general_setting['options']['wpvivid_common_setting']['migrate_size']); ?>" onkeyup="value=value.replace(/\D/g,'')" />KB
|
647 |
+
<div><p><?php _e('e.g. if you choose a chunk size of 2MB, a 8MB file will use 4 chunks. Decreasing this value will break the ISP\'s transmission limit, for example:512KB', 'wpvivid-backuprestore'); ?></p></div>
|
648 |
</div>
|
649 |
<div>
|
650 |
<?php
|
658 |
}
|
659 |
}
|
660 |
$max_count_select = '<select option="setting" name="max_resume_count">'.$max_count_option.'</select>';
|
661 |
+
echo sprintf(__('<strong>Retrying </strong>%s<strong> times when encountering a time-out error</strong>', 'wpvivid-backuprestore'), $max_count_select);
|
662 |
?>
|
663 |
</div>
|
664 |
</div>
|
674 |
|
675 |
function wpvivid_settingpage_add_tab_general(){
|
676 |
?>
|
677 |
+
<a href="#" id="wpvivid_tab_general_setting" class="nav-tab setting-nav-tab nav-tab-active" onclick="switchsettingTabs(event,'page-general-setting')"><?php _e('General Settings', 'wpvivid-backuprestore'); ?></a>
|
678 |
<?php
|
679 |
}
|
680 |
|
681 |
function wpvivid_settingpage_add_tab_advance(){
|
682 |
?>
|
683 |
+
<a href="#" id="wpvivid_tab_advance_setting" class="nav-tab setting-nav-tab" onclick="switchsettingTabs(event,'page-advance-setting')"><?php _e('Advanced Settings', 'wpvivid-backuprestore'); ?></a>
|
684 |
<?php
|
685 |
}
|
686 |
|
includes/class-wpvivid-backup-database.php
CHANGED
@@ -13,8 +13,10 @@ class WPvivid_Backup_Database
|
|
13 |
{
|
14 |
}
|
15 |
|
16 |
-
public function wpvivid_archieve_database_info($databases, $data)
|
17 |
-
|
|
|
|
|
18 |
$sql_info['file_name'] =$data['sql_file_name'];
|
19 |
$sql_info['database'] = DB_NAME;
|
20 |
$sql_info['host'] = DB_HOST;
|
@@ -55,17 +57,34 @@ class WPvivid_Backup_Database
|
|
55 |
add_filter('wpvivid_exclude_db_table', array($this, 'exclude_table'),10,2);
|
56 |
$exclude=array();
|
57 |
$exclude = apply_filters('wpvivid_exclude_db_table',$exclude, $data);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
add_filter('wpvivid_archieve_database_info', array($this, 'wpvivid_archieve_database_info'), 10, 2);
|
60 |
$databases=array();
|
61 |
$databases = apply_filters('wpvivid_archieve_database_info', $databases, $data);
|
62 |
$is_additional_db = false;
|
63 |
-
if($data['key'] === 'backup_additional_db')
|
|
|
64 |
$is_additional_db = true;
|
65 |
}
|
66 |
|
67 |
$backup_files = array();
|
68 |
-
foreach ($databases as $sql_info)
|
|
|
69 |
$database_name = $sql_info['database'];
|
70 |
$backup_file = $sql_info['file_name'];
|
71 |
$backup_files[] = $backup_file;
|
@@ -73,7 +92,18 @@ class WPvivid_Backup_Database
|
|
73 |
$user = $sql_info['user'];
|
74 |
$pass = $sql_info['pass'];
|
75 |
|
76 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
|
78 |
if (file_exists($backup_file))
|
79 |
@unlink($backup_file);
|
13 |
{
|
14 |
}
|
15 |
|
16 |
+
public function wpvivid_archieve_database_info($databases, $data)
|
17 |
+
{
|
18 |
+
if(isset($data['dump_db']))
|
19 |
+
{
|
20 |
$sql_info['file_name'] =$data['sql_file_name'];
|
21 |
$sql_info['database'] = DB_NAME;
|
22 |
$sql_info['host'] = DB_HOST;
|
57 |
add_filter('wpvivid_exclude_db_table', array($this, 'exclude_table'),10,2);
|
58 |
$exclude=array();
|
59 |
$exclude = apply_filters('wpvivid_exclude_db_table',$exclude, $data);
|
60 |
+
$include=array();
|
61 |
+
$include = apply_filters('wpvivid_include_db_table',$include, $data);
|
62 |
+
|
63 |
+
$site_url = apply_filters('wpvivid_dump_set_site_url',get_site_url(), $data);
|
64 |
+
$home_url = apply_filters('wpvivid_dump_set_home_url',get_home_url(), $data);
|
65 |
+
$content_url=apply_filters('wpvivid_dump_set_content_url',content_url(), $data);
|
66 |
+
|
67 |
+
global $wpdb;
|
68 |
+
if (is_multisite() && !defined('MULTISITE'))
|
69 |
+
{
|
70 |
+
$prefix = $wpdb->base_prefix;
|
71 |
+
} else {
|
72 |
+
$prefix = $wpdb->get_blog_prefix(0);
|
73 |
+
}
|
74 |
+
$prefix=apply_filters('wpvivid_dump_set_prefix',$prefix, $data);
|
75 |
|
76 |
add_filter('wpvivid_archieve_database_info', array($this, 'wpvivid_archieve_database_info'), 10, 2);
|
77 |
$databases=array();
|
78 |
$databases = apply_filters('wpvivid_archieve_database_info', $databases, $data);
|
79 |
$is_additional_db = false;
|
80 |
+
if($data['key'] === 'backup_additional_db')
|
81 |
+
{
|
82 |
$is_additional_db = true;
|
83 |
}
|
84 |
|
85 |
$backup_files = array();
|
86 |
+
foreach ($databases as $sql_info)
|
87 |
+
{
|
88 |
$database_name = $sql_info['database'];
|
89 |
$backup_file = $sql_info['file_name'];
|
90 |
$backup_files[] = $backup_file;
|
92 |
$user = $sql_info['user'];
|
93 |
$pass = $sql_info['pass'];
|
94 |
|
95 |
+
$dumpSettings=array();
|
96 |
+
$dumpSettings['exclude-tables']=$exclude;
|
97 |
+
$dumpSettings['include-tables']=$include;
|
98 |
+
$dumpSettings['add-drop-table']=true;
|
99 |
+
$dumpSettings['extended-insert']=false;
|
100 |
+
|
101 |
+
$dumpSettings['site_url']=$site_url;
|
102 |
+
$dumpSettings['home_url']=$home_url;
|
103 |
+
$dumpSettings['content_url']=$content_url;
|
104 |
+
$dumpSettings['prefix']=$prefix;
|
105 |
+
|
106 |
+
$dump = new WPvivid_Mysqldump($host, $database_name, $user, $pass, $is_additional_db, $dumpSettings);
|
107 |
|
108 |
if (file_exists($backup_file))
|
109 |
@unlink($backup_file);
|
includes/class-wpvivid-backup-uploader.php
CHANGED
@@ -453,10 +453,10 @@ class Wpvivid_BackupUploader
|
|
453 |
$backupdir=WPvivid_Setting::get_backupdir();
|
454 |
?>
|
455 |
<div style="padding-top: 10px;">
|
456 |
-
<span><?php _e('Tips: Click the button below to scan all uploaded or received backups in directory', 'wpvivid'); ?> <?php echo WP_CONTENT_DIR.'/'.$backupdir; ?></span>
|
457 |
</div>
|
458 |
<div style="padding-top: 10px;">
|
459 |
-
<input type="submit" class="button-primary" value="<?php esc_attr_e('Scan uploaded backup or received backup', 'wpvivid'); ?>" onclick="wpvivid_rescan_local_folder();" />
|
460 |
</div>
|
461 |
<script type="text/javascript">
|
462 |
function wpvivid_rescan_local_folder()
|
@@ -503,9 +503,9 @@ class Wpvivid_BackupUploader
|
|
503 |
<div id="wpvivid_plupload-upload-ui" class="hide-if-no-js">
|
504 |
<div id="drag-drop-area">
|
505 |
<div class="drag-drop-inside">
|
506 |
-
<p class="drag-drop-info"><?php _e('Drop files here', 'wpvivid'); ?></p>
|
507 |
<p><?php _ex('or', 'Uploader: Drop files here - or - Select Files'); ?></p>
|
508 |
-
<p class="drag-drop-buttons"><input id="wpvivid_select_file_button" type="button" value="<?php esc_attr_e('Select Files', 'wpvivid'); ?>" class="button" /></p>
|
509 |
</div>
|
510 |
</div>
|
511 |
</div>
|
453 |
$backupdir=WPvivid_Setting::get_backupdir();
|
454 |
?>
|
455 |
<div style="padding-top: 10px;">
|
456 |
+
<span><?php _e('Tips: Click the button below to scan all uploaded or received backups in directory', 'wpvivid-backuprestore'); ?> <?php echo WP_CONTENT_DIR.'/'.$backupdir; ?></span>
|
457 |
</div>
|
458 |
<div style="padding-top: 10px;">
|
459 |
+
<input type="submit" class="button-primary" value="<?php esc_attr_e('Scan uploaded backup or received backup', 'wpvivid-backuprestore'); ?>" onclick="wpvivid_rescan_local_folder();" />
|
460 |
</div>
|
461 |
<script type="text/javascript">
|
462 |
function wpvivid_rescan_local_folder()
|
503 |
<div id="wpvivid_plupload-upload-ui" class="hide-if-no-js">
|
504 |
<div id="drag-drop-area">
|
505 |
<div class="drag-drop-inside">
|
506 |
+
<p class="drag-drop-info"><?php _e('Drop files here', 'wpvivid-backuprestore'); ?></p>
|
507 |
<p><?php _ex('or', 'Uploader: Drop files here - or - Select Files'); ?></p>
|
508 |
+
<p class="drag-drop-buttons"><input id="wpvivid_select_file_button" type="button" value="<?php esc_attr_e('Select Files', 'wpvivid-backuprestore'); ?>" class="button" /></p>
|
509 |
</div>
|
510 |
</div>
|
511 |
</div>
|
includes/class-wpvivid-backup.php
CHANGED
@@ -19,7 +19,7 @@ define('WPVIVID_BACKUP_TYPE_MERGE','backup_merge');
|
|
19 |
define('WPVIVID_BACKUP_ROOT_WP_CONTENT','wp-content');
|
20 |
define('WPVIVID_BACKUP_ROOT_CUSTOM','custom');
|
21 |
define('WPVIVID_BACKUP_ROOT_WP_ROOT','root');
|
22 |
-
|
23 |
class WPvivid_Backup_Task
|
24 |
{
|
25 |
protected $task;
|
@@ -1094,7 +1094,7 @@ class WPvivid_Backup_Task
|
|
1094 |
$list_tasks['task_info']['need_update_last_task']=false;
|
1095 |
if($list_tasks['status']['str']=='ready')
|
1096 |
{
|
1097 |
-
$list_tasks['task_info']['descript']=__('Ready to backup. Progress: 0%, running time: 0second.','wpvivid');
|
1098 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1099 |
$list_tasks['task_info']['css_btn_log']='pointer-events: none; opacity: 0.4;';
|
1100 |
}
|
@@ -1129,7 +1129,7 @@ class WPvivid_Backup_Task
|
|
1129 |
}
|
1130 |
|
1131 |
$list_tasks['task_info']['speed'] = $speed;
|
1132 |
-
$list_tasks['task_info']['descript'] = $descript.' '.__('Progress: ', 'wpvivid') . $list_tasks['task_info']['backup_percent'] . ', ' . __('running time: ', 'wpvivid') . $list_tasks['data']['running_time'];
|
1133 |
|
1134 |
$time_spend=time()-$list_tasks['status']['run_time'];
|
1135 |
if($time_spend>30)
|
@@ -1142,13 +1142,13 @@ class WPvivid_Backup_Task
|
|
1142 |
}
|
1143 |
}
|
1144 |
else {
|
1145 |
-
$list_tasks['task_info']['descript'] = $list_tasks['data']['descript'] . ' '. __('Progress: ', 'wpvivid') . $list_tasks['task_info']['backup_percent'] . ', '. __('running time: ', 'wpvivid') . $list_tasks['data']['running_time'];
|
1146 |
}
|
1147 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: auto; opacity: 1;';
|
1148 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1149 |
}
|
1150 |
else{
|
1151 |
-
$list_tasks['task_info']['descript']=__('The backup will be canceled after backing up the current chunk ends.','wpvivid');
|
1152 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1153 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1154 |
}
|
@@ -1165,7 +1165,7 @@ class WPvivid_Backup_Task
|
|
1165 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1166 |
}
|
1167 |
else{
|
1168 |
-
$list_tasks['task_info']['descript']=__('The backup will be canceled after backing up the current chunk ends.','wpvivid');
|
1169 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1170 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1171 |
}
|
@@ -1564,7 +1564,8 @@ class WPvivid_Backup_Item
|
|
1564 |
$tmp_data = $this->config['backup']['data']['meta']['files'];
|
1565 |
}
|
1566 |
|
1567 |
-
if($b_has_data)
|
|
|
1568 |
$b_need_download=false;
|
1569 |
$b_not_found=false;
|
1570 |
$b_test=false;
|
@@ -1574,15 +1575,17 @@ class WPvivid_Backup_Item
|
|
1574 |
$path=$this->get_local_path().$file['file_name'];
|
1575 |
if(file_exists($path))
|
1576 |
{
|
1577 |
-
if(filesize($path) == $file['size'])
|
1578 |
-
|
|
|
|
|
1579 |
$res = TRUE;
|
1580 |
}
|
1581 |
else{
|
1582 |
$res = FALSE;
|
1583 |
}
|
1584 |
}
|
1585 |
-
else{
|
1586 |
$res = FALSE;
|
1587 |
}
|
1588 |
if ($res !== TRUE)
|
@@ -2289,7 +2292,7 @@ class WPvivid_Backup
|
|
2289 |
{
|
2290 |
global $wpvivid_plugin;
|
2291 |
$wpvivid_plugin->set_time_limit($this->task->get_id());
|
2292 |
-
$this->task->update_sub_task_progress($next_backup['key'],0, sprintf(__('Start backing up %s.', 'wpvivid'), $next_backup['key']));
|
2293 |
$wpvivid_plugin->wpvivid_log->WriteLog('Prepare to backup '.$next_backup['key'].' files.','notice');
|
2294 |
$this->backup_type_report .= $next_backup['key'].',';
|
2295 |
if(isset($next_backup['files'])) {
|
@@ -2297,7 +2300,7 @@ class WPvivid_Backup
|
|
2297 |
}
|
2298 |
$result = $this->_backup($next_backup);
|
2299 |
$wpvivid_plugin->wpvivid_log->WriteLog('Backing up '.$next_backup['key'].' completed.','notice');
|
2300 |
-
$this->task->update_sub_task_progress($next_backup['key'],1, sprintf(__('Backing up %s finished.', 'wpvivid'), $next_backup['key']));
|
2301 |
$this->task->update_backup_result($next_backup,$result);
|
2302 |
$wpvivid_plugin->check_cancel_backup($task_id);
|
2303 |
unset($next_backup);
|
@@ -2319,7 +2322,8 @@ class WPvivid_Backup
|
|
2319 |
|
2320 |
$is_type_db = false;
|
2321 |
$is_type_db = apply_filters('wpvivid_check_type_database', $is_type_db, $data);
|
2322 |
-
if($is_type_db)
|
|
|
2323 |
include_once WPVIVID_PLUGIN_DIR .'/includes/class-wpvivid-backup-database.php';
|
2324 |
$wpvivid_plugin->wpvivid_log->WriteLog('Start exporting database.','notice');
|
2325 |
$backup_database = new WPvivid_Backup_Database();
|
@@ -2430,11 +2434,12 @@ class WPvivid_Backup
|
|
2430 |
if($is_additional_db){
|
2431 |
$result =$zip->compress_additional_database($data);
|
2432 |
}
|
2433 |
-
else{
|
2434 |
$result =$zip->compress($data);
|
2435 |
}
|
2436 |
|
2437 |
-
if($is_type_db)
|
|
|
2438 |
foreach ($data['files'] as $sql_file)
|
2439 |
{
|
2440 |
@unlink($sql_file);
|
19 |
define('WPVIVID_BACKUP_ROOT_WP_CONTENT','wp-content');
|
20 |
define('WPVIVID_BACKUP_ROOT_CUSTOM','custom');
|
21 |
define('WPVIVID_BACKUP_ROOT_WP_ROOT','root');
|
22 |
+
define('WPVIVID_BACKUP_ROOT_WP_UPLOADS','uploads');
|
23 |
class WPvivid_Backup_Task
|
24 |
{
|
25 |
protected $task;
|
1094 |
$list_tasks['task_info']['need_update_last_task']=false;
|
1095 |
if($list_tasks['status']['str']=='ready')
|
1096 |
{
|
1097 |
+
$list_tasks['task_info']['descript']=__('Ready to backup. Progress: 0%, running time: 0second.','wpvivid-backuprestore');
|
1098 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1099 |
$list_tasks['task_info']['css_btn_log']='pointer-events: none; opacity: 0.4;';
|
1100 |
}
|
1129 |
}
|
1130 |
|
1131 |
$list_tasks['task_info']['speed'] = $speed;
|
1132 |
+
$list_tasks['task_info']['descript'] = $descript.' '.__('Progress: ', 'wpvivid-backuprestore') . $list_tasks['task_info']['backup_percent'] . ', ' . __('running time: ', 'wpvivid-backuprestore') . $list_tasks['data']['running_time'];
|
1133 |
|
1134 |
$time_spend=time()-$list_tasks['status']['run_time'];
|
1135 |
if($time_spend>30)
|
1142 |
}
|
1143 |
}
|
1144 |
else {
|
1145 |
+
$list_tasks['task_info']['descript'] = $list_tasks['data']['descript'] . ' '. __('Progress: ', 'wpvivid-backuprestore') . $list_tasks['task_info']['backup_percent'] . ', '. __('running time: ', 'wpvivid-backuprestore') . $list_tasks['data']['running_time'];
|
1146 |
}
|
1147 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: auto; opacity: 1;';
|
1148 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1149 |
}
|
1150 |
else{
|
1151 |
+
$list_tasks['task_info']['descript']=__('The backup will be canceled after backing up the current chunk ends.','wpvivid-backuprestore');
|
1152 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1153 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1154 |
}
|
1165 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1166 |
}
|
1167 |
else{
|
1168 |
+
$list_tasks['task_info']['descript']=__('The backup will be canceled after backing up the current chunk ends.','wpvivid-backuprestore');
|
1169 |
$list_tasks['task_info']['css_btn_cancel']='pointer-events: none; opacity: 0.4;';
|
1170 |
$list_tasks['task_info']['css_btn_log']='pointer-events: auto; opacity: 1;';
|
1171 |
}
|
1564 |
$tmp_data = $this->config['backup']['data']['meta']['files'];
|
1565 |
}
|
1566 |
|
1567 |
+
if($b_has_data)
|
1568 |
+
{
|
1569 |
$b_need_download=false;
|
1570 |
$b_not_found=false;
|
1571 |
$b_test=false;
|
1575 |
$path=$this->get_local_path().$file['file_name'];
|
1576 |
if(file_exists($path))
|
1577 |
{
|
1578 |
+
if(filesize($path) == $file['size'])
|
1579 |
+
{
|
1580 |
+
if($wpvivid_plugin->wpvivid_check_zip_valid())
|
1581 |
+
{
|
1582 |
$res = TRUE;
|
1583 |
}
|
1584 |
else{
|
1585 |
$res = FALSE;
|
1586 |
}
|
1587 |
}
|
1588 |
+
else {
|
1589 |
$res = FALSE;
|
1590 |
}
|
1591 |
if ($res !== TRUE)
|
2292 |
{
|
2293 |
global $wpvivid_plugin;
|
2294 |
$wpvivid_plugin->set_time_limit($this->task->get_id());
|
2295 |
+
$this->task->update_sub_task_progress($next_backup['key'],0, sprintf(__('Start backing up %s.', 'wpvivid-backuprestore'), $next_backup['key']));
|
2296 |
$wpvivid_plugin->wpvivid_log->WriteLog('Prepare to backup '.$next_backup['key'].' files.','notice');
|
2297 |
$this->backup_type_report .= $next_backup['key'].',';
|
2298 |
if(isset($next_backup['files'])) {
|
2300 |
}
|
2301 |
$result = $this->_backup($next_backup);
|
2302 |
$wpvivid_plugin->wpvivid_log->WriteLog('Backing up '.$next_backup['key'].' completed.','notice');
|
2303 |
+
$this->task->update_sub_task_progress($next_backup['key'],1, sprintf(__('Backing up %s finished.', 'wpvivid-backuprestore'), $next_backup['key']));
|
2304 |
$this->task->update_backup_result($next_backup,$result);
|
2305 |
$wpvivid_plugin->check_cancel_backup($task_id);
|
2306 |
unset($next_backup);
|
2322 |
|
2323 |
$is_type_db = false;
|
2324 |
$is_type_db = apply_filters('wpvivid_check_type_database', $is_type_db, $data);
|
2325 |
+
if($is_type_db)
|
2326 |
+
{
|
2327 |
include_once WPVIVID_PLUGIN_DIR .'/includes/class-wpvivid-backup-database.php';
|
2328 |
$wpvivid_plugin->wpvivid_log->WriteLog('Start exporting database.','notice');
|
2329 |
$backup_database = new WPvivid_Backup_Database();
|
2434 |
if($is_additional_db){
|
2435 |
$result =$zip->compress_additional_database($data);
|
2436 |
}
|
2437 |
+
else {
|
2438 |
$result =$zip->compress($data);
|
2439 |
}
|
2440 |
|
2441 |
+
if($is_type_db)
|
2442 |
+
{
|
2443 |
foreach ($data['files'] as $sql_file)
|
2444 |
{
|
2445 |
@unlink($sql_file);
|
includes/class-wpvivid-backuplist.php
CHANGED
@@ -339,21 +339,21 @@ class WPvivid_Backuplist
|
|
339 |
if ($list[$backup_id]['lock'] == 1) {
|
340 |
$backup_lock = '/admin/partials/images/locked.png';
|
341 |
$lock_status = 'lock';
|
342 |
-
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
343 |
} else {
|
344 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
345 |
$lock_status = 'unlock';
|
346 |
-
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
347 |
}
|
348 |
} else {
|
349 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
350 |
$lock_status = 'unlock';
|
351 |
-
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
352 |
}
|
353 |
} else {
|
354 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
355 |
$lock_status = 'unlock';
|
356 |
-
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
357 |
}
|
358 |
return $ret;
|
359 |
}
|
339 |
if ($list[$backup_id]['lock'] == 1) {
|
340 |
$backup_lock = '/admin/partials/images/locked.png';
|
341 |
$lock_status = 'lock';
|
342 |
+
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid-backuprestore') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
343 |
} else {
|
344 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
345 |
$lock_status = 'unlock';
|
346 |
+
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid-backuprestore') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
347 |
}
|
348 |
} else {
|
349 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
350 |
$lock_status = 'unlock';
|
351 |
+
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid-backuprestore') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
352 |
}
|
353 |
} else {
|
354 |
$backup_lock = '/admin/partials/images/unlocked.png';
|
355 |
$lock_status = 'unlock';
|
356 |
+
$ret['html'] = '<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid-backuprestore') . '" onclick="wpvivid_set_backup_lock(\''.$backup_id.'\', \''.$lock_status.'\');" style="vertical-align:middle; cursor:pointer;"/>';
|
357 |
}
|
358 |
return $ret;
|
359 |
}
|
includes/class-wpvivid-crypt.php
CHANGED
@@ -79,4 +79,150 @@ class WPvivid_crypt
|
|
79 |
$this->rsa->loadKey($this->public_key);
|
80 |
return $this->rsa->encrypt($info);
|
81 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
}
|
79 |
$this->rsa->loadKey($this->public_key);
|
80 |
return $this->rsa->encrypt($info);
|
81 |
}
|
82 |
+
}
|
83 |
+
|
84 |
+
class WPvivid_Crypt_File
|
85 |
+
{
|
86 |
+
private $key;
|
87 |
+
private $rij;
|
88 |
+
|
89 |
+
public function __construct($key)
|
90 |
+
{
|
91 |
+
include_once WPVIVID_PLUGIN_DIR . '/vendor/autoload.php';
|
92 |
+
$this->rij= new Crypt_Rijndael();
|
93 |
+
$this->key=$key;
|
94 |
+
}
|
95 |
+
|
96 |
+
public function encrypt($file)
|
97 |
+
{
|
98 |
+
$encrypted_path = dirname($file).'/encrypt_'.basename($file).'.tmp';
|
99 |
+
|
100 |
+
$data_encrypted = 0;
|
101 |
+
$buffer_size = 2097152;
|
102 |
+
|
103 |
+
$file_size = filesize($file);
|
104 |
+
|
105 |
+
$this->rij->setKey($this->key);
|
106 |
+
$this->rij->disablePadding();
|
107 |
+
$this->rij->enableContinuousBuffer();
|
108 |
+
|
109 |
+
if (file_exists($encrypted_path))
|
110 |
+
{
|
111 |
+
@unlink($encrypted_path);
|
112 |
+
}
|
113 |
+
$encrypted_handle = fopen($encrypted_path, 'wb+');
|
114 |
+
|
115 |
+
$file_handle = fopen($file, 'rb');
|
116 |
+
|
117 |
+
if($file_handle===false)
|
118 |
+
{
|
119 |
+
$ret['result']='failed';
|
120 |
+
$ret['error']=$file.' file not found';
|
121 |
+
return $ret;
|
122 |
+
}
|
123 |
+
|
124 |
+
while ($data_encrypted < $file_size)
|
125 |
+
{
|
126 |
+
$file_part = fread($file_handle, $buffer_size);
|
127 |
+
|
128 |
+
$length = strlen($file_part);
|
129 |
+
if (0 != $length % 16)
|
130 |
+
{
|
131 |
+
$pad = 16 - ($length % 16);
|
132 |
+
$file_part = str_pad($file_part, $length + $pad, chr($pad));
|
133 |
+
}
|
134 |
+
|
135 |
+
$encrypted_data = $this->rij->encrypt($file_part);
|
136 |
+
|
137 |
+
fwrite($encrypted_handle, $encrypted_data);
|
138 |
+
|
139 |
+
$data_encrypted += $buffer_size;
|
140 |
+
}
|
141 |
+
|
142 |
+
fclose($encrypted_handle);
|
143 |
+
fclose($file_handle);
|
144 |
+
|
145 |
+
$result_path = $file.'.crypt';
|
146 |
+
|
147 |
+
@rename($encrypted_path, $result_path);
|
148 |
+
|
149 |
+
$ret['result']='success';
|
150 |
+
$ret['file_path']=$result_path;
|
151 |
+
return $ret;
|
152 |
+
}
|
153 |
+
|
154 |
+
public function decrypt($file)
|
155 |
+
{
|
156 |
+
$file_handle = fopen($file, 'rb');
|
157 |
+
|
158 |
+
if($file_handle===false)
|
159 |
+
{
|
160 |
+
$ret['result']='failed';
|
161 |
+
$ret['error']=$file.' file not found';
|
162 |
+
return $ret;
|
163 |
+
}
|
164 |
+
|
165 |
+
$decrypted_path = dirname($file).'/decrypt_'.basename($file).'.tmp';
|
166 |
+
|
167 |
+
$decrypted_handle = fopen($decrypted_path, 'wb+');
|
168 |
+
|
169 |
+
$this->rij->setKey($this->key);
|
170 |
+
$this->rij->disablePadding();
|
171 |
+
$this->rij->enableContinuousBuffer();
|
172 |
+
|
173 |
+
$file_size = filesize($file);
|
174 |
+
$bytes_decrypted = 0;
|
175 |
+
$buffer_size =2097152;
|
176 |
+
|
177 |
+
while ($bytes_decrypted < $file_size)
|
178 |
+
{
|
179 |
+
$file_part = fread($file_handle, $buffer_size);
|
180 |
+
|
181 |
+
$length = strlen($file_part);
|
182 |
+
if (0 != $length % 16) {
|
183 |
+
$pad = 16 - ($length % 16);
|
184 |
+
$file_part = str_pad($file_part, $length + $pad, chr($pad));
|
185 |
+
}
|
186 |
+
|
187 |
+
$decrypted_data = $this->rij->decrypt($file_part);
|
188 |
+
|
189 |
+
$is_last_block = ($bytes_decrypted + strlen($decrypted_data) >= $file_size);
|
190 |
+
|
191 |
+
$write_bytes = min($file_size - $bytes_decrypted, strlen($decrypted_data));
|
192 |
+
if ($is_last_block)
|
193 |
+
{
|
194 |
+
$is_padding = false;
|
195 |
+
$last_byte = ord(substr($decrypted_data, -1, 1));
|
196 |
+
if ($last_byte < 16)
|
197 |
+
{
|
198 |
+
$is_padding = true;
|
199 |
+
for ($j = 1; $j<=$last_byte; $j++)
|
200 |
+
{
|
201 |
+
if (substr($decrypted_data, -$j, 1) != chr($last_byte))
|
202 |
+
$is_padding = false;
|
203 |
+
}
|
204 |
+
}
|
205 |
+
if ($is_padding)
|
206 |
+
{
|
207 |
+
$write_bytes -= $last_byte;
|
208 |
+
}
|
209 |
+
}
|
210 |
+
|
211 |
+
fwrite($decrypted_handle, $decrypted_data, $write_bytes);
|
212 |
+
$bytes_decrypted += $buffer_size;
|
213 |
+
}
|
214 |
+
|
215 |
+
// close the main file handle
|
216 |
+
fclose($decrypted_handle);
|
217 |
+
// close original file
|
218 |
+
fclose($file_handle);
|
219 |
+
|
220 |
+
$fullpath_new = preg_replace('/\.crypt$/', '', $file, 1).'.decrypted.zip';
|
221 |
+
|
222 |
+
@rename($decrypted_path, $fullpath_new);
|
223 |
+
$ret['result']='success';
|
224 |
+
$ret['file_path']=$fullpath_new;
|
225 |
+
|
226 |
+
return $ret;
|
227 |
+
}
|
228 |
}
|
includes/class-wpvivid-export-import.php
CHANGED
@@ -62,7 +62,7 @@ class WPvivid_Export_Import
|
|
62 |
|
63 |
$menu['id']='wpvivid_admin_menu_export_import';
|
64 |
$menu['parent']='wpvivid_admin_menu';
|
65 |
-
$menu['title']=__('Export & Import', 'wpvivid');
|
66 |
$menu['tab']= 'admin.php?page=wpvivid-export-import';
|
67 |
$menu['href']=$admin_url . 'admin.php?page=wpvivid-export-import';
|
68 |
$menu['capability']='administrator';
|
@@ -75,7 +75,7 @@ class WPvivid_Export_Import
|
|
75 |
{
|
76 |
$submenu['parent_slug']=WPVIVID_PLUGIN_SLUG;
|
77 |
$submenu['page_title']= 'WPvivid Backup';
|
78 |
-
$submenu['menu_title']=__('Export & Import', 'wpvivid');
|
79 |
$submenu['capability']='administrator';
|
80 |
$submenu['menu_slug']='wpvivid-export-import';
|
81 |
$submenu['index']=3;
|
@@ -91,7 +91,7 @@ class WPvivid_Export_Import
|
|
91 |
<h1><?php
|
92 |
$plugin_display_name = 'WPvivid Backup Plugin';
|
93 |
$plugin_display_name = apply_filters('wpvivid_display_pro_name', $plugin_display_name);
|
94 |
-
echo __('WPvivid Backup Plugin', 'wpvivid');
|
95 |
?></h1>
|
96 |
<div id="wpvivid_export_notice"></div>
|
97 |
<?php
|
@@ -116,13 +116,13 @@ class WPvivid_Export_Import
|
|
116 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_IMAGES_URL.'export-import.png'); ?>" style="width:50px;height:50px;">
|
117 |
</div>
|
118 |
<div style="box-sizing: border-box;">
|
119 |
-
<div class="wpvivid-text-space-bottom"><?php _e('Export posts or pages with images in bulk.', 'wpvivid'); ?>
|
120 |
<span class="wpvivid-feature-pro">
|
121 |
-
<a href="https://wpvivid.com/export-content" target="_blank" style="text-decoration: none;"><?php _e('Learn more', 'wpvivid'); ?></a>
|
122 |
</span>
|
123 |
</div>
|
124 |
-
<div class="wpvivid-text-space-bottom"><?php _e('This will contain all of your posts, pages, comments, terms and images (original images, featured images and thumbnails).', 'wpvivid'); ?></div>
|
125 |
-
<div class="wpvivid-text-space-bottom"><strong><?php _e('Note:', 'wpvivid'); ?></strong> <?php _e('Try to select fewer items when you are facing a shortage of server resources (typically presented as a timeout error).', 'wpvivid'); ?></div>
|
126 |
<div style="clear: both;"></div>
|
127 |
</div>
|
128 |
<div style="clear: both;"></div>
|
@@ -132,30 +132,30 @@ class WPvivid_Export_Import
|
|
132 |
<div style="background: #fff; border: 1px solid #e5e5e5; border-radius: 6px; margin-bottom: 10px; padding: 10px;">
|
133 |
<div>
|
134 |
<?php
|
135 |
-
echo sprintf(__('Exported files will be temporarily stored in %s directory', 'wpvivid'), $export_dir);
|
136 |
?>
|
137 |
</div>
|
138 |
</div>
|
139 |
|
140 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
141 |
-
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Choose post type', 'wpvivid'); ?></h2></div>
|
142 |
</div>
|
143 |
<div style="clear: both;"></div>
|
144 |
|
145 |
<div class="postbox wpvivid-element-space-bottom">
|
146 |
<div class="wpvivid-export-type-provider wpvivid-export-type-post wpvivid-export-type-provider-active" onclick="wpvivid_select_export_type('post');">
|
147 |
-
<?php _e('Post', 'wpvivid'); ?>
|
148 |
</div>
|
149 |
<div class="wpvivid-export-type-provider wpvivid-export-type-page" onclick="wpvivid_select_export_type('page');">
|
150 |
-
<?php _e('Page', 'wpvivid'); ?>
|
151 |
</div>
|
152 |
<div class="wpvivid-export-type-provider">
|
153 |
-
<?php _e('More post types coming soon...', 'wpvivid'); ?>
|
154 |
</div>
|
155 |
</div>
|
156 |
|
157 |
<div id="wpvivid_export_page">
|
158 |
-
<input class="button-primary wpvivid-button-export-archieve" type="submit" name="post" value="<?php esc_attr_e('Next Step', 'wpvivid'); ?>" />
|
159 |
</div>
|
160 |
<div class="postbox" id="wpvivid_export_task_progress" style="display: none; margin-top: 10px; margin-bottom: 0;">
|
161 |
<div class="action-progress-bar" id="wpvivid_export_bar_percent">
|
@@ -178,7 +178,7 @@ class WPvivid_Export_Import
|
|
178 |
jQuery('.wpvivid-export-type-'+export_type).addClass('wpvivid-export-type-provider-active');
|
179 |
if(current_export_type !== export_type){
|
180 |
current_export_type = export_type;
|
181 |
-
var button_html = '<input class="button-primary wpvivid-button-export-archieve" type="submit" name="'+export_type+'" value="<?php esc_attr_e('Next Step', 'wpvivid'); ?>" />';
|
182 |
jQuery('#wpvivid_export_page').html(button_html);
|
183 |
jQuery('#wpvivid_export_summary').hide();
|
184 |
}
|
@@ -621,7 +621,7 @@ class WPvivid_Export_Import
|
|
621 |
ob_start();
|
622 |
?>
|
623 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
624 |
-
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Choose what to export', 'wpvivid'); ?></h2></div>
|
625 |
</div>
|
626 |
<div style="clear: both;"></div>
|
627 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; padding:10px 10px 0 10px;margin-bottom:10px; box-sizing: border-box;">
|
@@ -629,7 +629,7 @@ class WPvivid_Export_Import
|
|
629 |
<legend class="screen-reader-text"><span>input type="radio"</span></legend>
|
630 |
<div class="wpvivid-element-space-bottom wpvivid-element-space-right" style="float: left;">
|
631 |
<label>
|
632 |
-
<input type="radio" option="export" name="contain" value="list" checked/><?php _e('Filter Posts/Pages', 'wpvivid'); ?>
|
633 |
</label>
|
634 |
</div>
|
635 |
<div style="clear: both;"></div>
|
@@ -648,7 +648,7 @@ class WPvivid_Export_Import
|
|
648 |
wp_dropdown_categories(
|
649 |
array(
|
650 |
'class' => 'regular-text',
|
651 |
-
'show_option_all' => __('All Categories', 'wpvivid')
|
652 |
)
|
653 |
);
|
654 |
?>
|
@@ -658,7 +658,7 @@ class WPvivid_Export_Import
|
|
658 |
<div class="wpvivid-storage-form-desc">
|
659 |
<i>
|
660 |
<?php
|
661 |
-
echo sprintf(__('Export %s of all categories or a specific category.', 'wpvivid'), $descript_type);
|
662 |
?>
|
663 |
</i>
|
664 |
</div>
|
@@ -678,7 +678,7 @@ class WPvivid_Export_Import
|
|
678 |
'include' => $authors,
|
679 |
'name' => 'post_author',
|
680 |
'multi' => true,
|
681 |
-
'show_option_all' => __( 'All Authors', 'wpvivid' ),
|
682 |
'show' => 'display_name_with_login',
|
683 |
)
|
684 |
);
|
@@ -689,7 +689,7 @@ class WPvivid_Export_Import
|
|
689 |
<div class="wpvivid-storage-form-desc">
|
690 |
<i>
|
691 |
<?php
|
692 |
-
echo sprintf(__('Export %s of all authors or a specific author.', 'wpvivid'), $descript_type);
|
693 |
?>
|
694 |
</i>
|
695 |
</div>
|
@@ -701,7 +701,7 @@ class WPvivid_Export_Import
|
|
701 |
<div class="wpvivid-storage-form regular-text">
|
702 |
<label for="post-start-date" class="label-responsive" style="display: block;"></label>
|
703 |
<select class="regular-text" name="post_start_date" id="post-start-date">
|
704 |
-
<option value="0"><?php _e( '— Select —', 'wpvivid' ); ?></option>
|
705 |
<?php $this->export_date_options($post_type); ?>
|
706 |
</select>
|
707 |
</div>
|
@@ -710,7 +710,7 @@ class WPvivid_Export_Import
|
|
710 |
<div class="wpvivid-storage-form-desc">
|
711 |
<i>
|
712 |
<?php
|
713 |
-
echo sprintf(__('Export %s published after this date.', 'wpvivid'), $descript_type);
|
714 |
?>
|
715 |
</i>
|
716 |
</div>
|
@@ -722,7 +722,7 @@ class WPvivid_Export_Import
|
|
722 |
<div class="wpvivid-storage-form regular-text">
|
723 |
<label for="post-end-date" class="label-responsive" style="display: block;"></label>
|
724 |
<select class="regular-text" name="post_end_date" id="post-end-date">
|
725 |
-
<option value="0"><?php _e( '— Select —', 'wpvivid' ); ?></option>
|
726 |
<?php $this->export_date_options($post_type); ?>
|
727 |
</select>
|
728 |
</div>
|
@@ -731,7 +731,7 @@ class WPvivid_Export_Import
|
|
731 |
<div class="wpvivid-storage-form-desc">
|
732 |
<i>
|
733 |
<?php
|
734 |
-
echo sprintf(__('Export %s published before this date.', 'wpvivid'), $descript_type);
|
735 |
?>
|
736 |
</i>
|
737 |
</div>
|
@@ -774,7 +774,7 @@ class WPvivid_Export_Import
|
|
774 |
<div class="wpvivid-storage-form-desc">
|
775 |
<i>
|
776 |
<?php
|
777 |
-
echo sprintf(__('Search for %s according to the above rules.', 'wpvivid'), $post_type);
|
778 |
?>
|
779 |
</i>
|
780 |
</div>
|
@@ -787,29 +787,29 @@ class WPvivid_Export_Import
|
|
787 |
</div>
|
788 |
|
789 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
790 |
-
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Comment the export (optional)', 'wpvivid'); ?></h2></div>
|
791 |
</div>
|
792 |
<div style="clear: both;"></div>
|
793 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; padding:10px 10px 0 10px;margin-bottom:10px; box-sizing: border-box;">
|
794 |
<div>
|
795 |
-
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left; padding-top: 6px;"><?php _e('Comment the export: ', 'wpvivid'); ?></div>
|
796 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
797 |
<input type="text" option="export" name="post_comment" id="wpvivid_set_post_comment" onkeyup="value=value.replace(/[^a-zA-Z0-9]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" />
|
798 |
</div>
|
799 |
-
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left; padding-top: 6px;"><?php _e('Only letters (except for wpvivid) and numbers are allowed.', 'wpvivid'); ?></div>
|
800 |
<div style="clear: both;"></div>
|
801 |
</div>
|
802 |
<div>
|
803 |
-
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;"><?php _e('Sample:', 'wpvivid'); ?></div>
|
804 |
<div class="wpvivid-element-space-bottom" style="float: left;">
|
805 |
-
<div class="wpvivid-element-space-bottom" style="display: inline;" id="wpvivid_post_comment">*</div><div class="wpvivid-element-space-bottom" style="display: inline;">_wpvivid-5dbf8d6a5f133_2019-11-08-03-15_export_<?php _e($post_type, 'wpvivid'); ?>.zip</div>
|
806 |
</div>
|
807 |
<div style="clear: both;"></div>
|
808 |
</div>
|
809 |
</div>
|
810 |
|
811 |
<div>
|
812 |
-
<input class="button-primary" id="wpvivid_start_export" type="submit" name="<?php echo $post_type; ?>" value="<?php esc_attr_e('Export and Download', 'wpvivid'); ?>" style="pointer-events: none; opacity: 0.4;">
|
813 |
</div>
|
814 |
<?php
|
815 |
|
@@ -1114,14 +1114,14 @@ class WPvivid_Export_Import
|
|
1114 |
if(empty($posts_ids))
|
1115 |
{
|
1116 |
$ret['result']='failed';
|
1117 |
-
$ret['error']=__('Empty post id', 'wpvivid');
|
1118 |
echo json_encode($ret);
|
1119 |
die();
|
1120 |
}
|
1121 |
if(WPvivid_Exporter_taskmanager::is_tasks_running())
|
1122 |
{
|
1123 |
$ret['result']='failed';
|
1124 |
-
$ret['error']=__('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
1125 |
echo json_encode($ret);
|
1126 |
die();
|
1127 |
}
|
@@ -1147,7 +1147,7 @@ class WPvivid_Export_Import
|
|
1147 |
if (!isset($_POST['task_id']) || empty($_POST['task_id']) || !is_string($_POST['task_id']))
|
1148 |
{
|
1149 |
$ret['result'] = 'failed';
|
1150 |
-
$ret['error'] = __('Error occurred while parsing the request data. Please try to run export task again.', 'wpvivid');
|
1151 |
echo json_encode($ret);
|
1152 |
die();
|
1153 |
}
|
@@ -1157,7 +1157,7 @@ class WPvivid_Export_Import
|
|
1157 |
if(WPvivid_Exporter_taskmanager::is_tasks_running())
|
1158 |
{
|
1159 |
$ret['result'] = 'failed';
|
1160 |
-
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
1161 |
echo json_encode($ret);
|
1162 |
die();
|
1163 |
}
|
@@ -1302,11 +1302,11 @@ class WPvivid_Export_Import
|
|
1302 |
$ret['doing']=$task['data']['doing']='export';
|
1303 |
if($status['str']=='ready')
|
1304 |
{
|
1305 |
-
$ret['doing']=__('Ready to export. Progress: 0%, running time: 0second.','wpvivid');
|
1306 |
}
|
1307 |
else if($status['str']=='running')
|
1308 |
{
|
1309 |
-
$ret['doing']= ' '.__('Progress: ', 'wpvivid') . $progress['descript'] . ', '.__('running time: ', 'wpvivid') . $progress['running_time'];
|
1310 |
}
|
1311 |
else if($status['str']=='wait_resume')
|
1312 |
{
|
@@ -1314,7 +1314,7 @@ class WPvivid_Export_Import
|
|
1314 |
}
|
1315 |
else if($status['str']=='no_responds')
|
1316 |
{
|
1317 |
-
$ret['doing']=__('The export task is not responding.','wpvivid');
|
1318 |
}
|
1319 |
else if($status['str']=='completed')
|
1320 |
{
|
@@ -1339,7 +1339,7 @@ class WPvivid_Export_Import
|
|
1339 |
else if($status['str']=='error')
|
1340 |
{
|
1341 |
$ret['doing']='Export error: '.$task['status']['error'];
|
1342 |
-
$ret['doing']='<div class="notice notice-error is-dismissible inline"><p>'.__('Export error:', 'wpvivid').' '.$task['status']['error'].'</p></div>';
|
1343 |
$ret['error']=true;
|
1344 |
}
|
1345 |
|
@@ -1373,7 +1373,7 @@ class WPvivid_Export_Import
|
|
1373 |
if($time_spend>=$limit)
|
1374 |
{
|
1375 |
//time out
|
1376 |
-
$message=__('Task time out.', 'wpvivid');
|
1377 |
WPvivid_Exporter_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1378 |
if($wpvivid_plugin->wpvivid_log)
|
1379 |
$wpvivid_plugin->wpvivid_log->WriteLog($message,'error');
|
@@ -1480,13 +1480,13 @@ class WPvivid_Export_Import
|
|
1480 |
}
|
1481 |
else{
|
1482 |
$admin_url = admin_url();
|
1483 |
-
echo '<a href="'.$admin_url.'admin.php?page=wpvivid-export-import">'.__('File size not match. please retry again.', 'wpvivid').'</a>';
|
1484 |
die();
|
1485 |
}
|
1486 |
}
|
1487 |
|
1488 |
$admin_url = admin_url();
|
1489 |
-
echo '<a href="'.$admin_url.'admin.php?page=wpvivid-export-import">'.__('File not found. please retry again.', 'wpvivid').'</a>';
|
1490 |
die();
|
1491 |
}
|
1492 |
}
|
@@ -1511,13 +1511,13 @@ class WPvivid_Export_Import
|
|
1511 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_IMAGES_URL.'export-import.png'); ?>" style="width:50px;height:50px;">
|
1512 |
</div>
|
1513 |
<div style="box-sizing: border-box;">
|
1514 |
-
<div class="wpvivid-element-space-bottom wpvivid-element-space-right"><?php _e('Import posts or pages with images in bulk.', 'wpvivid'); ?>
|
1515 |
<span class="wpvivid-feature-pro">
|
1516 |
-
<a href="https://wpvivid.com/import-content" target="_blank" style="text-decoration: none;"><?php _e('Learn more', 'wpvivid'); ?></a>
|
1517 |
</span>
|
1518 |
</div>
|
1519 |
-
<div class="wpvivid-element-space-bottom wpvivid-element-space-right"><strong><?php _e('Note:', 'wpvivid'); ?></strong>
|
1520 |
-
<?php _e('To properly display the imported content, please make sure that the importing and exporting sites have the same environment, for example, same theme or pages built with the same page builder.', 'wpvivid'); ?>
|
1521 |
</div>
|
1522 |
<div style="clear: both;"></div>
|
1523 |
</div>
|
@@ -1526,41 +1526,41 @@ class WPvivid_Export_Import
|
|
1526 |
<div style="clear: both;"></div>
|
1527 |
|
1528 |
<div style="background: #fff; border: 1px solid #e5e5e5; border-radius: 6px; margin-bottom: 10px; padding: 10px;">
|
1529 |
-
<div style="margin-right: 10px; float: left; height: 28px; line-height: 28px;"><?php echo sprintf(__('Imported files will be temporarily stored in directory %s', 'wpvivid'), $import_dir) ?></div>
|
1530 |
-
<div style="float: left;"><input class="button" type="submit" id="wpvivid_empty_import_folder" value="<?php esc_attr_e('Delete Exported Files In Folder', 'wpvivid'); ?>" onclick="wpvivid_clean_import_folder();" /></div>
|
1531 |
<div style="clear: both;"></div>
|
1532 |
</div>
|
1533 |
|
1534 |
<div id="wpvivid_import_step1">
|
1535 |
-
<p><?php _e('Choose an export from your computer to import: ', 'wpvivid'); ?></p>
|
1536 |
-
<input class="button button-primary" type="button" id="wpvivid_select_import_file_button" value="<?php esc_attr_e('Upload and Import', 'wpvivid'); ?>" />
|
1537 |
<div id="wpvivid_upload_file_list" class="hide-if-no-js" style="margin-top: 10px; display: none;"></div>
|
1538 |
<br>
|
1539 |
-
<p><?php echo sprintf(__('Or you can use ftp to upload the export to the directory %s. Then click the button below to scan the file to import.', 'wpvivid'), $import_dir); ?></p>
|
1540 |
-
<input class="button button-primary" type="button" value="<?php esc_attr_e('Scan Uploaded Exports', 'wpvivid'); ?>" onclick="wpvivid_refresh_import_list();" />
|
1541 |
<div class="wpvivid-export-import-block" id="wpvivid_import_list" style="margin-top: 10px; display: none;"></div>
|
1542 |
</div>
|
1543 |
<div id="wpvivid_import_step2" style="display: none;">
|
1544 |
-
<h3><?php _e('The importing file info', 'wpvivid'); ?></h3>
|
1545 |
<div id="wpvivid_import_file_data">
|
1546 |
</div>
|
1547 |
-
<h3><?php _e('Assign author', 'wpvivid'); ?></h3>
|
1548 |
<div>
|
1549 |
-
<?php _e('Select an existing author:', 'wpvivid'); ?>
|
1550 |
-
<?php wp_dropdown_users( array( 'name' => "user_map", 'multi' => true, 'show_option_all' => __( '- Select -', 'wpvivid' ) ) );?>
|
1551 |
</div>
|
1552 |
-
<h3><?php _e('Import Setting', 'wpvivid'); ?></h3>
|
1553 |
<div style="margin-bottom: 10px;">
|
1554 |
<label>
|
1555 |
<input type="checkbox" id="wpvivid_overwrite_existing" />
|
1556 |
-
<span><strong><?php _e('Overwrite existing pages', 'wpvivid'); ?></strong></span>
|
1557 |
</label>
|
1558 |
</div>
|
1559 |
<div style="margin-bottom: 10px;">
|
1560 |
-
<span><?php _e('With this option checked, Pages/posts already existing will be overwritten with the updated ones in an import.', 'wpvivid'); ?></span>
|
1561 |
</div>
|
1562 |
-
<input class="button button-primary" type="button" id="wpvivid_start_import" value="<?php esc_attr_e('Start to Import', 'wpvivid'); ?>" />
|
1563 |
-
<input class="button button-primary" type="button" id="wpvivid_rechoose_import_file" value="<?php esc_attr_e('Back to Import Page', 'wpvivid'); ?>" />
|
1564 |
</div>
|
1565 |
<div id="wpvivid_import_step3" style="display: none;">
|
1566 |
<div class="postbox wpvivid-import-log" id="wpvivid_import_log" style="margin-top: 10px; margin-bottom: 0;"></div>
|
62 |
|
63 |
$menu['id']='wpvivid_admin_menu_export_import';
|
64 |
$menu['parent']='wpvivid_admin_menu';
|
65 |
+
$menu['title']=__('Export & Import', 'wpvivid-backuprestore');
|
66 |
$menu['tab']= 'admin.php?page=wpvivid-export-import';
|
67 |
$menu['href']=$admin_url . 'admin.php?page=wpvivid-export-import';
|
68 |
$menu['capability']='administrator';
|
75 |
{
|
76 |
$submenu['parent_slug']=WPVIVID_PLUGIN_SLUG;
|
77 |
$submenu['page_title']= 'WPvivid Backup';
|
78 |
+
$submenu['menu_title']=__('Export & Import', 'wpvivid-backuprestore');
|
79 |
$submenu['capability']='administrator';
|
80 |
$submenu['menu_slug']='wpvivid-export-import';
|
81 |
$submenu['index']=3;
|
91 |
<h1><?php
|
92 |
$plugin_display_name = 'WPvivid Backup Plugin';
|
93 |
$plugin_display_name = apply_filters('wpvivid_display_pro_name', $plugin_display_name);
|
94 |
+
echo __('WPvivid Backup Plugin', 'wpvivid-backuprestore');
|
95 |
?></h1>
|
96 |
<div id="wpvivid_export_notice"></div>
|
97 |
<?php
|
116 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_IMAGES_URL.'export-import.png'); ?>" style="width:50px;height:50px;">
|
117 |
</div>
|
118 |
<div style="box-sizing: border-box;">
|
119 |
+
<div class="wpvivid-text-space-bottom"><?php _e('Export posts or pages with images in bulk.', 'wpvivid-backuprestore'); ?>
|
120 |
<span class="wpvivid-feature-pro">
|
121 |
+
<a href="https://wpvivid.com/export-content" target="_blank" style="text-decoration: none;"><?php _e('Learn more', 'wpvivid-backuprestore'); ?></a>
|
122 |
</span>
|
123 |
</div>
|
124 |
+
<div class="wpvivid-text-space-bottom"><?php _e('This will contain all of your posts, pages, comments, terms and images (original images, featured images and thumbnails).', 'wpvivid-backuprestore'); ?></div>
|
125 |
+
<div class="wpvivid-text-space-bottom"><strong><?php _e('Note:', 'wpvivid-backuprestore'); ?></strong> <?php _e('Try to select fewer items when you are facing a shortage of server resources (typically presented as a timeout error).', 'wpvivid-backuprestore'); ?></div>
|
126 |
<div style="clear: both;"></div>
|
127 |
</div>
|
128 |
<div style="clear: both;"></div>
|
132 |
<div style="background: #fff; border: 1px solid #e5e5e5; border-radius: 6px; margin-bottom: 10px; padding: 10px;">
|
133 |
<div>
|
134 |
<?php
|
135 |
+
echo sprintf(__('Exported files will be temporarily stored in %s directory', 'wpvivid-backuprestore'), $export_dir);
|
136 |
?>
|
137 |
</div>
|
138 |
</div>
|
139 |
|
140 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
141 |
+
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Choose post type', 'wpvivid-backuprestore'); ?></h2></div>
|
142 |
</div>
|
143 |
<div style="clear: both;"></div>
|
144 |
|
145 |
<div class="postbox wpvivid-element-space-bottom">
|
146 |
<div class="wpvivid-export-type-provider wpvivid-export-type-post wpvivid-export-type-provider-active" onclick="wpvivid_select_export_type('post');">
|
147 |
+
<?php _e('Post', 'wpvivid-backuprestore'); ?>
|
148 |
</div>
|
149 |
<div class="wpvivid-export-type-provider wpvivid-export-type-page" onclick="wpvivid_select_export_type('page');">
|
150 |
+
<?php _e('Page', 'wpvivid-backuprestore'); ?>
|
151 |
</div>
|
152 |
<div class="wpvivid-export-type-provider">
|
153 |
+
<?php _e('More post types coming soon...', 'wpvivid-backuprestore'); ?>
|
154 |
</div>
|
155 |
</div>
|
156 |
|
157 |
<div id="wpvivid_export_page">
|
158 |
+
<input class="button-primary wpvivid-button-export-archieve" type="submit" name="post" value="<?php esc_attr_e('Next Step', 'wpvivid-backuprestore'); ?>" />
|
159 |
</div>
|
160 |
<div class="postbox" id="wpvivid_export_task_progress" style="display: none; margin-top: 10px; margin-bottom: 0;">
|
161 |
<div class="action-progress-bar" id="wpvivid_export_bar_percent">
|
178 |
jQuery('.wpvivid-export-type-'+export_type).addClass('wpvivid-export-type-provider-active');
|
179 |
if(current_export_type !== export_type){
|
180 |
current_export_type = export_type;
|
181 |
+
var button_html = '<input class="button-primary wpvivid-button-export-archieve" type="submit" name="'+export_type+'" value="<?php esc_attr_e('Next Step', 'wpvivid-backuprestore'); ?>" />';
|
182 |
jQuery('#wpvivid_export_page').html(button_html);
|
183 |
jQuery('#wpvivid_export_summary').hide();
|
184 |
}
|
621 |
ob_start();
|
622 |
?>
|
623 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
624 |
+
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Choose what to export', 'wpvivid-backuprestore'); ?></h2></div>
|
625 |
</div>
|
626 |
<div style="clear: both;"></div>
|
627 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; padding:10px 10px 0 10px;margin-bottom:10px; box-sizing: border-box;">
|
629 |
<legend class="screen-reader-text"><span>input type="radio"</span></legend>
|
630 |
<div class="wpvivid-element-space-bottom wpvivid-element-space-right" style="float: left;">
|
631 |
<label>
|
632 |
+
<input type="radio" option="export" name="contain" value="list" checked/><?php _e('Filter Posts/Pages', 'wpvivid-backuprestore'); ?>
|
633 |
</label>
|
634 |
</div>
|
635 |
<div style="clear: both;"></div>
|
648 |
wp_dropdown_categories(
|
649 |
array(
|
650 |
'class' => 'regular-text',
|
651 |
+
'show_option_all' => __('All Categories', 'wpvivid-backuprestore')
|
652 |
)
|
653 |
);
|
654 |
?>
|
658 |
<div class="wpvivid-storage-form-desc">
|
659 |
<i>
|
660 |
<?php
|
661 |
+
echo sprintf(__('Export %s of all categories or a specific category.', 'wpvivid-backuprestore'), $descript_type);
|
662 |
?>
|
663 |
</i>
|
664 |
</div>
|
678 |
'include' => $authors,
|
679 |
'name' => 'post_author',
|
680 |
'multi' => true,
|
681 |
+
'show_option_all' => __( 'All Authors', 'wpvivid-backuprestore' ),
|
682 |
'show' => 'display_name_with_login',
|
683 |
)
|
684 |
);
|
689 |
<div class="wpvivid-storage-form-desc">
|
690 |
<i>
|
691 |
<?php
|
692 |
+
echo sprintf(__('Export %s of all authors or a specific author.', 'wpvivid-backuprestore'), $descript_type);
|
693 |
?>
|
694 |
</i>
|
695 |
</div>
|
701 |
<div class="wpvivid-storage-form regular-text">
|
702 |
<label for="post-start-date" class="label-responsive" style="display: block;"></label>
|
703 |
<select class="regular-text" name="post_start_date" id="post-start-date">
|
704 |
+
<option value="0"><?php _e( '— Select —', 'wpvivid-backuprestore' ); ?></option>
|
705 |
<?php $this->export_date_options($post_type); ?>
|
706 |
</select>
|
707 |
</div>
|
710 |
<div class="wpvivid-storage-form-desc">
|
711 |
<i>
|
712 |
<?php
|
713 |
+
echo sprintf(__('Export %s published after this date.', 'wpvivid-backuprestore'), $descript_type);
|
714 |
?>
|
715 |
</i>
|
716 |
</div>
|
722 |
<div class="wpvivid-storage-form regular-text">
|
723 |
<label for="post-end-date" class="label-responsive" style="display: block;"></label>
|
724 |
<select class="regular-text" name="post_end_date" id="post-end-date">
|
725 |
+
<option value="0"><?php _e( '— Select —', 'wpvivid-backuprestore' ); ?></option>
|
726 |
<?php $this->export_date_options($post_type); ?>
|
727 |
</select>
|
728 |
</div>
|
731 |
<div class="wpvivid-storage-form-desc">
|
732 |
<i>
|
733 |
<?php
|
734 |
+
echo sprintf(__('Export %s published before this date.', 'wpvivid-backuprestore'), $descript_type);
|
735 |
?>
|
736 |
</i>
|
737 |
</div>
|
774 |
<div class="wpvivid-storage-form-desc">
|
775 |
<i>
|
776 |
<?php
|
777 |
+
echo sprintf(__('Search for %s according to the above rules.', 'wpvivid-backuprestore'), $post_type);
|
778 |
?>
|
779 |
</i>
|
780 |
</div>
|
787 |
</div>
|
788 |
|
789 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; box-sizing: border-box;margin-bottom:10px;">
|
790 |
+
<div style="box-sizing: border-box; margin: 1px; background-color: #f1f1f1;"><h2><?php _e('Comment the export (optional)', 'wpvivid-backuprestore'); ?></h2></div>
|
791 |
</div>
|
792 |
<div style="clear: both;"></div>
|
793 |
<div style="width:100%; border:1px solid #f1f1f1; float:left; padding:10px 10px 0 10px;margin-bottom:10px; box-sizing: border-box;">
|
794 |
<div>
|
795 |
+
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left; padding-top: 6px;"><?php _e('Comment the export: ', 'wpvivid-backuprestore'); ?></div>
|
796 |
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;">
|
797 |
<input type="text" option="export" name="post_comment" id="wpvivid_set_post_comment" onkeyup="value=value.replace(/[^a-zA-Z0-9]/g,'')" onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" />
|
798 |
</div>
|
799 |
+
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left; padding-top: 6px;"><?php _e('Only letters (except for wpvivid) and numbers are allowed.', 'wpvivid-backuprestore'); ?></div>
|
800 |
<div style="clear: both;"></div>
|
801 |
</div>
|
802 |
<div>
|
803 |
+
<div class="wpvivid-element-space-bottom wpvivid-text-space-right" style="float: left;"><?php _e('Sample:', 'wpvivid-backuprestore'); ?></div>
|
804 |
<div class="wpvivid-element-space-bottom" style="float: left;">
|
805 |
+
<div class="wpvivid-element-space-bottom" style="display: inline;" id="wpvivid_post_comment">*</div><div class="wpvivid-element-space-bottom" style="display: inline;">_wpvivid-5dbf8d6a5f133_2019-11-08-03-15_export_<?php _e($post_type, 'wpvivid-backuprestore'); ?>.zip</div>
|
806 |
</div>
|
807 |
<div style="clear: both;"></div>
|
808 |
</div>
|
809 |
</div>
|
810 |
|
811 |
<div>
|
812 |
+
<input class="button-primary" id="wpvivid_start_export" type="submit" name="<?php echo $post_type; ?>" value="<?php esc_attr_e('Export and Download', 'wpvivid-backuprestore'); ?>" style="pointer-events: none; opacity: 0.4;">
|
813 |
</div>
|
814 |
<?php
|
815 |
|
1114 |
if(empty($posts_ids))
|
1115 |
{
|
1116 |
$ret['result']='failed';
|
1117 |
+
$ret['error']=__('Empty post id', 'wpvivid-backuprestore');
|
1118 |
echo json_encode($ret);
|
1119 |
die();
|
1120 |
}
|
1121 |
if(WPvivid_Exporter_taskmanager::is_tasks_running())
|
1122 |
{
|
1123 |
$ret['result']='failed';
|
1124 |
+
$ret['error']=__('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
1125 |
echo json_encode($ret);
|
1126 |
die();
|
1127 |
}
|
1147 |
if (!isset($_POST['task_id']) || empty($_POST['task_id']) || !is_string($_POST['task_id']))
|
1148 |
{
|
1149 |
$ret['result'] = 'failed';
|
1150 |
+
$ret['error'] = __('Error occurred while parsing the request data. Please try to run export task again.', 'wpvivid-backuprestore');
|
1151 |
echo json_encode($ret);
|
1152 |
die();
|
1153 |
}
|
1157 |
if(WPvivid_Exporter_taskmanager::is_tasks_running())
|
1158 |
{
|
1159 |
$ret['result'] = 'failed';
|
1160 |
+
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
1161 |
echo json_encode($ret);
|
1162 |
die();
|
1163 |
}
|
1302 |
$ret['doing']=$task['data']['doing']='export';
|
1303 |
if($status['str']=='ready')
|
1304 |
{
|
1305 |
+
$ret['doing']=__('Ready to export. Progress: 0%, running time: 0second.','wpvivid-backuprestore');
|
1306 |
}
|
1307 |
else if($status['str']=='running')
|
1308 |
{
|
1309 |
+
$ret['doing']= ' '.__('Progress: ', 'wpvivid-backuprestore') . $progress['descript'] . ', '.__('running time: ', 'wpvivid-backuprestore') . $progress['running_time'];
|
1310 |
}
|
1311 |
else if($status['str']=='wait_resume')
|
1312 |
{
|
1314 |
}
|
1315 |
else if($status['str']=='no_responds')
|
1316 |
{
|
1317 |
+
$ret['doing']=__('The export task is not responding.','wpvivid-backuprestore');
|
1318 |
}
|
1319 |
else if($status['str']=='completed')
|
1320 |
{
|
1339 |
else if($status['str']=='error')
|
1340 |
{
|
1341 |
$ret['doing']='Export error: '.$task['status']['error'];
|
1342 |
+
$ret['doing']='<div class="notice notice-error is-dismissible inline"><p>'.__('Export error:', 'wpvivid-backuprestore').' '.$task['status']['error'].'</p></div>';
|
1343 |
$ret['error']=true;
|
1344 |
}
|
1345 |
|
1373 |
if($time_spend>=$limit)
|
1374 |
{
|
1375 |
//time out
|
1376 |
+
$message=__('Task time out.', 'wpvivid-backuprestore');
|
1377 |
WPvivid_Exporter_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1378 |
if($wpvivid_plugin->wpvivid_log)
|
1379 |
$wpvivid_plugin->wpvivid_log->WriteLog($message,'error');
|
1480 |
}
|
1481 |
else{
|
1482 |
$admin_url = admin_url();
|
1483 |
+
echo '<a href="'.$admin_url.'admin.php?page=wpvivid-export-import">'.__('File size not match. please retry again.', 'wpvivid-backuprestore').'</a>';
|
1484 |
die();
|
1485 |
}
|
1486 |
}
|
1487 |
|
1488 |
$admin_url = admin_url();
|
1489 |
+
echo '<a href="'.$admin_url.'admin.php?page=wpvivid-export-import">'.__('File not found. please retry again.', 'wpvivid-backuprestore').'</a>';
|
1490 |
die();
|
1491 |
}
|
1492 |
}
|
1511 |
<img src="<?php echo esc_url(WPVIVID_PLUGIN_IMAGES_URL.'export-import.png'); ?>" style="width:50px;height:50px;">
|
1512 |
</div>
|
1513 |
<div style="box-sizing: border-box;">
|
1514 |
+
<div class="wpvivid-element-space-bottom wpvivid-element-space-right"><?php _e('Import posts or pages with images in bulk.', 'wpvivid-backuprestore'); ?>
|
1515 |
<span class="wpvivid-feature-pro">
|
1516 |
+
<a href="https://wpvivid.com/import-content" target="_blank" style="text-decoration: none;"><?php _e('Learn more', 'wpvivid-backuprestore'); ?></a>
|
1517 |
</span>
|
1518 |
</div>
|
1519 |
+
<div class="wpvivid-element-space-bottom wpvivid-element-space-right"><strong><?php _e('Note:', 'wpvivid-backuprestore'); ?></strong>
|
1520 |
+
<?php _e('To properly display the imported content, please make sure that the importing and exporting sites have the same environment, for example, same theme or pages built with the same page builder.', 'wpvivid-backuprestore'); ?>
|
1521 |
</div>
|
1522 |
<div style="clear: both;"></div>
|
1523 |
</div>
|
1526 |
<div style="clear: both;"></div>
|
1527 |
|
1528 |
<div style="background: #fff; border: 1px solid #e5e5e5; border-radius: 6px; margin-bottom: 10px; padding: 10px;">
|
1529 |
+
<div style="margin-right: 10px; float: left; height: 28px; line-height: 28px;"><?php echo sprintf(__('Imported files will be temporarily stored in directory %s', 'wpvivid-backuprestore'), $import_dir) ?></div>
|
1530 |
+
<div style="float: left;"><input class="button" type="submit" id="wpvivid_empty_import_folder" value="<?php esc_attr_e('Delete Exported Files In Folder', 'wpvivid-backuprestore'); ?>" onclick="wpvivid_clean_import_folder();" /></div>
|
1531 |
<div style="clear: both;"></div>
|
1532 |
</div>
|
1533 |
|
1534 |
<div id="wpvivid_import_step1">
|
1535 |
+
<p><?php _e('Choose an export from your computer to import: ', 'wpvivid-backuprestore'); ?></p>
|
1536 |
+
<input class="button button-primary" type="button" id="wpvivid_select_import_file_button" value="<?php esc_attr_e('Upload and Import', 'wpvivid-backuprestore'); ?>" />
|
1537 |
<div id="wpvivid_upload_file_list" class="hide-if-no-js" style="margin-top: 10px; display: none;"></div>
|
1538 |
<br>
|
1539 |
+
<p><?php echo sprintf(__('Or you can use ftp to upload the export to the directory %s. Then click the button below to scan the file to import.', 'wpvivid-backuprestore'), $import_dir); ?></p>
|
1540 |
+
<input class="button button-primary" type="button" value="<?php esc_attr_e('Scan Uploaded Exports', 'wpvivid-backuprestore'); ?>" onclick="wpvivid_refresh_import_list();" />
|
1541 |
<div class="wpvivid-export-import-block" id="wpvivid_import_list" style="margin-top: 10px; display: none;"></div>
|
1542 |
</div>
|
1543 |
<div id="wpvivid_import_step2" style="display: none;">
|
1544 |
+
<h3><?php _e('The importing file info', 'wpvivid-backuprestore'); ?></h3>
|
1545 |
<div id="wpvivid_import_file_data">
|
1546 |
</div>
|
1547 |
+
<h3><?php _e('Assign author', 'wpvivid-backuprestore'); ?></h3>
|
1548 |
<div>
|
1549 |
+
<?php _e('Select an existing author:', 'wpvivid-backuprestore'); ?>
|
1550 |
+
<?php wp_dropdown_users( array( 'name' => "user_map", 'multi' => true, 'show_option_all' => __( '- Select -', 'wpvivid-backuprestore' ) ) );?>
|
1551 |
</div>
|
1552 |
+
<h3><?php _e('Import Setting', 'wpvivid-backuprestore'); ?></h3>
|
1553 |
<div style="margin-bottom: 10px;">
|
1554 |
<label>
|
1555 |
<input type="checkbox" id="wpvivid_overwrite_existing" />
|
1556 |
+
<span><strong><?php _e('Overwrite existing pages', 'wpvivid-backuprestore'); ?></strong></span>
|
1557 |
</label>
|
1558 |
</div>
|
1559 |
<div style="margin-bottom: 10px;">
|
1560 |
+
<span><?php _e('With this option checked, Pages/posts already existing will be overwritten with the updated ones in an import.', 'wpvivid-backuprestore'); ?></span>
|
1561 |
</div>
|
1562 |
+
<input class="button button-primary" type="button" id="wpvivid_start_import" value="<?php esc_attr_e('Start to Import', 'wpvivid-backuprestore'); ?>" />
|
1563 |
+
<input class="button button-primary" type="button" id="wpvivid_rechoose_import_file" value="<?php esc_attr_e('Back to Import Page', 'wpvivid-backuprestore'); ?>" />
|
1564 |
</div>
|
1565 |
<div id="wpvivid_import_step3" style="display: none;">
|
1566 |
<div class="postbox wpvivid-import-log" id="wpvivid_import_log" style="margin-top: 10px; margin-bottom: 0;"></div>
|
includes/class-wpvivid-exporter.php
CHANGED
@@ -262,7 +262,7 @@ class WPvivid_Post_List extends WP_List_Table
|
|
262 |
global $mode;
|
263 |
|
264 |
if ( '0000-00-00 00:00:00' === $post->post_date ) {
|
265 |
-
$t_time = $h_time = __( 'Unpublished', 'wpvivid' );
|
266 |
$time_diff = 0;
|
267 |
} else {
|
268 |
$t_time = get_the_time( 'Y/m/d g:i:s a' );
|
@@ -272,22 +272,22 @@ class WPvivid_Post_List extends WP_List_Table
|
|
272 |
$time_diff = time() - $time;
|
273 |
|
274 |
if ( $time_diff > 0 && $time_diff < DAY_IN_SECONDS ) {
|
275 |
-
$h_time = sprintf( __( '%s ago', 'wpvivid' ), human_time_diff( $time ) );
|
276 |
} else {
|
277 |
$h_time = mysql2date( 'Y/m/d', $m_time );
|
278 |
}
|
279 |
}
|
280 |
|
281 |
if ( 'publish' === $post->post_status ) {
|
282 |
-
$status = __( 'Published', 'wpvivid' );
|
283 |
} elseif ( 'future' === $post->post_status ) {
|
284 |
if ( $time_diff > 0 ) {
|
285 |
-
$status = '<strong class="error-message">' . __( 'Missed schedule', 'wpvivid' ) . '</strong>';
|
286 |
} else {
|
287 |
-
$status = __( 'Scheduled', 'wpvivid' );
|
288 |
}
|
289 |
} else {
|
290 |
-
$status = __( 'Last Modified', 'wpvivid' );
|
291 |
}
|
292 |
|
293 |
/**
|
@@ -807,7 +807,7 @@ class WPvivid_Exporter_taskmanager
|
|
807 |
$ret['progress']=$task['data'][$ret['type']]['progress'];
|
808 |
$ret['doing']=$task['data'][$ret['type']]['doing'];
|
809 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress']))
|
810 |
-
$ret['descript']=__($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress'], 'wpvivid');
|
811 |
else
|
812 |
$ret['descript']='';
|
813 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['upload_data']))
|
262 |
global $mode;
|
263 |
|
264 |
if ( '0000-00-00 00:00:00' === $post->post_date ) {
|
265 |
+
$t_time = $h_time = __( 'Unpublished', 'wpvivid-backuprestore' );
|
266 |
$time_diff = 0;
|
267 |
} else {
|
268 |
$t_time = get_the_time( 'Y/m/d g:i:s a' );
|
272 |
$time_diff = time() - $time;
|
273 |
|
274 |
if ( $time_diff > 0 && $time_diff < DAY_IN_SECONDS ) {
|
275 |
+
$h_time = sprintf( __( '%s ago', 'wpvivid-backuprestore' ), human_time_diff( $time ) );
|
276 |
} else {
|
277 |
$h_time = mysql2date( 'Y/m/d', $m_time );
|
278 |
}
|
279 |
}
|
280 |
|
281 |
if ( 'publish' === $post->post_status ) {
|
282 |
+
$status = __( 'Published', 'wpvivid-backuprestore' );
|
283 |
} elseif ( 'future' === $post->post_status ) {
|
284 |
if ( $time_diff > 0 ) {
|
285 |
+
$status = '<strong class="error-message">' . __( 'Missed schedule', 'wpvivid-backuprestore' ) . '</strong>';
|
286 |
} else {
|
287 |
+
$status = __( 'Scheduled', 'wpvivid-backuprestore' );
|
288 |
}
|
289 |
} else {
|
290 |
+
$status = __( 'Last Modified', 'wpvivid-backuprestore' );
|
291 |
}
|
292 |
|
293 |
/**
|
807 |
$ret['progress']=$task['data'][$ret['type']]['progress'];
|
808 |
$ret['doing']=$task['data'][$ret['type']]['doing'];
|
809 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress']))
|
810 |
+
$ret['descript']=__($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress'], 'wpvivid-backuprestore');
|
811 |
else
|
812 |
$ret['descript']='';
|
813 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['upload_data']))
|
includes/class-wpvivid-function-realize.php
CHANGED
@@ -39,7 +39,7 @@ class WPvivid_Function_Realize
|
|
39 |
$wpvivid_plugin->add_monitor_event($task_id, 10);
|
40 |
}*/
|
41 |
$ret['result'] = 'success';
|
42 |
-
$ret['msg'] = __('The backup will be canceled after backing up the current chunk ends.', 'wpvivid');
|
43 |
}
|
44 |
catch (Exception $error) {
|
45 |
$message = 'An exception has occurred. class: '.get_class($error).';msg: '.$error->getMessage().';code: '.$error->getCode().';line: '.$error->getLine().';in_file: '.$error->getFile().';';
|
@@ -62,12 +62,12 @@ class WPvivid_Function_Realize
|
|
62 |
$backup = WPvivid_Backuplist::get_backup_by_id($backup_id);
|
63 |
if(!$backup) {
|
64 |
$ret['result']='failed';
|
65 |
-
$ret['error']=__('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid');
|
66 |
return $ret;
|
67 |
}
|
68 |
if(!file_exists($backup['log'])) {
|
69 |
$ret['result']='failed';
|
70 |
-
$ret['error']=__('The log not found.', 'wpvivid');
|
71 |
return $ret;
|
72 |
}
|
73 |
$ret['result']='success';
|
@@ -79,7 +79,7 @@ class WPvivid_Function_Realize
|
|
79 |
if(!file_exists($log_file_name))
|
80 |
{
|
81 |
$information['result']='failed';
|
82 |
-
$information['error']=__('The log not found.', 'wpvivid');
|
83 |
return $information;
|
84 |
}
|
85 |
$ret['result']='success';
|
@@ -90,13 +90,13 @@ class WPvivid_Function_Realize
|
|
90 |
$option=WPvivid_taskmanager::get_task_options($backup_task_id,'log_file_name');
|
91 |
if(!$option) {
|
92 |
$information['result']='failed';
|
93 |
-
$information['error']=__('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid');
|
94 |
return $information;
|
95 |
}
|
96 |
$log_file_name= $wpvivid_plugin->wpvivid_log->GetSaveLogFolder().$option.'_log.txt';
|
97 |
if(!file_exists($log_file_name)) {
|
98 |
$information['result']='failed';
|
99 |
-
$information['error']=__('The log not found.', 'wpvivid');
|
100 |
return $information;
|
101 |
}
|
102 |
$ret['result']='success';
|
39 |
$wpvivid_plugin->add_monitor_event($task_id, 10);
|
40 |
}*/
|
41 |
$ret['result'] = 'success';
|
42 |
+
$ret['msg'] = __('The backup will be canceled after backing up the current chunk ends.', 'wpvivid-backuprestore');
|
43 |
}
|
44 |
catch (Exception $error) {
|
45 |
$message = 'An exception has occurred. class: '.get_class($error).';msg: '.$error->getMessage().';code: '.$error->getCode().';line: '.$error->getLine().';in_file: '.$error->getFile().';';
|
62 |
$backup = WPvivid_Backuplist::get_backup_by_id($backup_id);
|
63 |
if(!$backup) {
|
64 |
$ret['result']='failed';
|
65 |
+
$ret['error']=__('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid-backuprestore');
|
66 |
return $ret;
|
67 |
}
|
68 |
if(!file_exists($backup['log'])) {
|
69 |
$ret['result']='failed';
|
70 |
+
$ret['error']=__('The log not found.', 'wpvivid-backuprestore');
|
71 |
return $ret;
|
72 |
}
|
73 |
$ret['result']='success';
|
79 |
if(!file_exists($log_file_name))
|
80 |
{
|
81 |
$information['result']='failed';
|
82 |
+
$information['error']=__('The log not found.', 'wpvivid-backuprestore');
|
83 |
return $information;
|
84 |
}
|
85 |
$ret['result']='success';
|
90 |
$option=WPvivid_taskmanager::get_task_options($backup_task_id,'log_file_name');
|
91 |
if(!$option) {
|
92 |
$information['result']='failed';
|
93 |
+
$information['error']=__('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid-backuprestore');
|
94 |
return $information;
|
95 |
}
|
96 |
$log_file_name= $wpvivid_plugin->wpvivid_log->GetSaveLogFolder().$option.'_log.txt';
|
97 |
if(!file_exists($log_file_name)) {
|
98 |
$information['result']='failed';
|
99 |
+
$information['error']=__('The log not found.', 'wpvivid-backuprestore');
|
100 |
return $information;
|
101 |
}
|
102 |
$ret['result']='success';
|
includes/class-wpvivid-i18n.php
CHANGED
@@ -37,7 +37,7 @@ class WPvivid_i18n {
|
|
37 |
public function load_plugin_textdomain() {
|
38 |
|
39 |
load_plugin_textdomain(
|
40 |
-
'wpvivid',
|
41 |
false,
|
42 |
dirname( dirname( plugin_basename( __FILE__ ) ) ) . '/languages/'
|
43 |
);
|
37 |
public function load_plugin_textdomain() {
|
38 |
|
39 |
load_plugin_textdomain(
|
40 |
+
'wpvivid-backuprestore',
|
41 |
false,
|
42 |
dirname( dirname( plugin_basename( __FILE__ ) ) ) . '/languages/'
|
43 |
);
|
includes/class-wpvivid-importer.php
CHANGED
@@ -83,11 +83,11 @@ class WPvivid_Export_List extends WP_List_Table
|
|
83 |
{
|
84 |
$posts_columns = array();
|
85 |
|
86 |
-
$posts_columns['file_name'] = __( 'File Name', 'wpvivid' );
|
87 |
-
$posts_columns['export_type'] = __( 'Post Types', 'wpvivid' );
|
88 |
-
$posts_columns['posts_count'] = __( 'Count', 'wpvivid' );
|
89 |
-
$posts_columns['media_size'] = __( 'Media Files Size', 'wpvivid' );
|
90 |
-
$posts_columns['import'] = __( 'Action', 'wpvivid' );
|
91 |
|
92 |
return $posts_columns;
|
93 |
}
|
@@ -154,7 +154,7 @@ class WPvivid_Export_List extends WP_List_Table
|
|
154 |
'.$item['file_name'].'
|
155 |
</div>
|
156 |
<div style="padding-bottom: 5px;">
|
157 |
-
<div class="backuptime">Data Modified: ' . __(date('M d, Y H:i', $item['time']), 'wpvivid') . '</div>
|
158 |
</div>
|
159 |
</td>';
|
160 |
}
|
@@ -191,7 +191,7 @@ class WPvivid_Export_List extends WP_List_Table
|
|
191 |
{
|
192 |
echo '<td style="min-width:100px;">
|
193 |
<div class="export-list-import" style="cursor:pointer;padding:10px 0 10px 0;">
|
194 |
-
<img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Restore.png') . '" style="vertical-align:middle;" /><span>' . __('Import', 'wpvivid') . '</span>
|
195 |
</div>
|
196 |
</td>';
|
197 |
}
|
@@ -1666,7 +1666,7 @@ class WPvivid_media_importer
|
|
1666 |
|
1667 |
if(!file_exists($new_file))
|
1668 |
{
|
1669 |
-
return new WP_Error( 'import_file_error', __('File not exist, file:'.$new_file, 'wpvivid') );
|
1670 |
}
|
1671 |
|
1672 |
$wp_filetype = wp_check_filetype( $file_name );
|
@@ -1721,7 +1721,7 @@ class WPvivid_media_importer
|
|
1721 |
{
|
1722 |
if ( ! $this->fetch_attachments )
|
1723 |
return new WP_Error( 'attachment_processing_error',
|
1724 |
-
__( 'Fetching attachments is not enabled', 'wpvivid' ) );
|
1725 |
|
1726 |
// if the URL is absolute, but does not contain address, then upload it assuming base_site_url
|
1727 |
if ( preg_match( '|^/[\w\W]+$|', $url ) )
|
@@ -1734,7 +1734,7 @@ class WPvivid_media_importer
|
|
1734 |
if ( $info = wp_check_filetype( $upload['file'] ) )
|
1735 |
$post['post_mime_type'] = $info['type'];
|
1736 |
else
|
1737 |
-
return new WP_Error( 'attachment_processing_error', __('Invalid file type', 'wpvivid') );
|
1738 |
|
1739 |
$post['guid'] = $upload['url'];
|
1740 |
|
@@ -1779,7 +1779,7 @@ class WPvivid_media_importer
|
|
1779 |
|
1780 |
if(!file_exists($new_file))
|
1781 |
{
|
1782 |
-
return new WP_Error( 'import_file_error', __('File not exist file:'.$new_file, 'wpvivid') );
|
1783 |
}
|
1784 |
|
1785 |
return apply_filters(
|
@@ -1874,8 +1874,8 @@ class WPvivid_WXR_Parser
|
|
1874 |
$error = $result->get_error_data();
|
1875 |
$msg.= $error[0] . ':' . $error[1] . ' ' . esc_html( $error[2] );
|
1876 |
}
|
1877 |
-
$msg.=__( 'There was an error when reading this WXR file', 'wpvivid' ) ;
|
1878 |
-
$msg.=__( 'Details are shown above. The importer will now try again with a different parser...', 'wpvivid' );
|
1879 |
|
1880 |
return new WP_Error( 'WXR_Parser_error', $msg,'' );
|
1881 |
}
|
@@ -1910,7 +1910,7 @@ class WPvivid_WXR_Parser_SimpleXML
|
|
1910 |
|
1911 |
if ( ! $success || isset( $dom->doctype ) )
|
1912 |
{
|
1913 |
-
return new WP_Error( 'SimpleXML_parse_error', __( 'There was an error when reading this WXR file', 'wpvivid' ), libxml_get_errors() );
|
1914 |
}
|
1915 |
|
1916 |
$xml = simplexml_import_dom( $dom );
|
@@ -1918,16 +1918,16 @@ class WPvivid_WXR_Parser_SimpleXML
|
|
1918 |
|
1919 |
// halt if loading produces an error
|
1920 |
if ( ! $xml )
|
1921 |
-
return new WP_Error( 'SimpleXML_parse_error', __( 'There was an error when reading this WXR file', 'wpvivid' ), libxml_get_errors() );
|
1922 |
|
1923 |
$wxr_version = $xml->xpath('/rss/channel/wp:wxr_version');
|
1924 |
if ( ! $wxr_version )
|
1925 |
-
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid' ) );
|
1926 |
|
1927 |
$wxr_version = (string) trim( $wxr_version[0] );
|
1928 |
// confirm that we are dealing with the correct file format
|
1929 |
if ( ! preg_match( '/^\d+\.\d+$/', $wxr_version ) )
|
1930 |
-
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid' ) );
|
1931 |
|
1932 |
$base_url = $xml->xpath('/rss/channel/wp:base_site_url');
|
1933 |
$base_url = (string) trim( $base_url[0] );
|
@@ -2152,7 +2152,7 @@ class WPvivid_WXR_Parser_XML {
|
|
2152 |
xml_parser_free( $xml );
|
2153 |
|
2154 |
if ( ! preg_match( '/^\d+\.\d+$/', $this->wxr_version ) )
|
2155 |
-
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid' ) );
|
2156 |
|
2157 |
return array(
|
2158 |
'authors' => $this->authors,
|
@@ -2348,7 +2348,7 @@ class WPvivid_WXR_Parser_Regex {
|
|
2348 |
}
|
2349 |
|
2350 |
if ( ! $wxr_version )
|
2351 |
-
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid' ) );
|
2352 |
|
2353 |
return array(
|
2354 |
'authors' => $this->authors,
|
83 |
{
|
84 |
$posts_columns = array();
|
85 |
|
86 |
+
$posts_columns['file_name'] = __( 'File Name', 'wpvivid-backuprestore' );
|
87 |
+
$posts_columns['export_type'] = __( 'Post Types', 'wpvivid-backuprestore' );
|
88 |
+
$posts_columns['posts_count'] = __( 'Count', 'wpvivid-backuprestore' );
|
89 |
+
$posts_columns['media_size'] = __( 'Media Files Size', 'wpvivid-backuprestore' );
|
90 |
+
$posts_columns['import'] = __( 'Action', 'wpvivid-backuprestore' );
|
91 |
|
92 |
return $posts_columns;
|
93 |
}
|
154 |
'.$item['file_name'].'
|
155 |
</div>
|
156 |
<div style="padding-bottom: 5px;">
|
157 |
+
<div class="backuptime">Data Modified: ' . __(date('M d, Y H:i', $item['time']), 'wpvivid-backuprestore') . '</div>
|
158 |
</div>
|
159 |
</td>';
|
160 |
}
|
191 |
{
|
192 |
echo '<td style="min-width:100px;">
|
193 |
<div class="export-list-import" style="cursor:pointer;padding:10px 0 10px 0;">
|
194 |
+
<img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Restore.png') . '" style="vertical-align:middle;" /><span>' . __('Import', 'wpvivid-backuprestore') . '</span>
|
195 |
</div>
|
196 |
</td>';
|
197 |
}
|
1666 |
|
1667 |
if(!file_exists($new_file))
|
1668 |
{
|
1669 |
+
return new WP_Error( 'import_file_error', __('File not exist, file:'.$new_file, 'wpvivid-backuprestore') );
|
1670 |
}
|
1671 |
|
1672 |
$wp_filetype = wp_check_filetype( $file_name );
|
1721 |
{
|
1722 |
if ( ! $this->fetch_attachments )
|
1723 |
return new WP_Error( 'attachment_processing_error',
|
1724 |
+
__( 'Fetching attachments is not enabled', 'wpvivid-backuprestore' ) );
|
1725 |
|
1726 |
// if the URL is absolute, but does not contain address, then upload it assuming base_site_url
|
1727 |
if ( preg_match( '|^/[\w\W]+$|', $url ) )
|
1734 |
if ( $info = wp_check_filetype( $upload['file'] ) )
|
1735 |
$post['post_mime_type'] = $info['type'];
|
1736 |
else
|
1737 |
+
return new WP_Error( 'attachment_processing_error', __('Invalid file type', 'wpvivid-backuprestore') );
|
1738 |
|
1739 |
$post['guid'] = $upload['url'];
|
1740 |
|
1779 |
|
1780 |
if(!file_exists($new_file))
|
1781 |
{
|
1782 |
+
return new WP_Error( 'import_file_error', __('File not exist file:'.$new_file, 'wpvivid-backuprestore') );
|
1783 |
}
|
1784 |
|
1785 |
return apply_filters(
|
1874 |
$error = $result->get_error_data();
|
1875 |
$msg.= $error[0] . ':' . $error[1] . ' ' . esc_html( $error[2] );
|
1876 |
}
|
1877 |
+
$msg.=__( 'There was an error when reading this WXR file', 'wpvivid-backuprestore' ) ;
|
1878 |
+
$msg.=__( 'Details are shown above. The importer will now try again with a different parser...', 'wpvivid-backuprestore' );
|
1879 |
|
1880 |
return new WP_Error( 'WXR_Parser_error', $msg,'' );
|
1881 |
}
|
1910 |
|
1911 |
if ( ! $success || isset( $dom->doctype ) )
|
1912 |
{
|
1913 |
+
return new WP_Error( 'SimpleXML_parse_error', __( 'There was an error when reading this WXR file', 'wpvivid-backuprestore' ), libxml_get_errors() );
|
1914 |
}
|
1915 |
|
1916 |
$xml = simplexml_import_dom( $dom );
|
1918 |
|
1919 |
// halt if loading produces an error
|
1920 |
if ( ! $xml )
|
1921 |
+
return new WP_Error( 'SimpleXML_parse_error', __( 'There was an error when reading this WXR file', 'wpvivid-backuprestore' ), libxml_get_errors() );
|
1922 |
|
1923 |
$wxr_version = $xml->xpath('/rss/channel/wp:wxr_version');
|
1924 |
if ( ! $wxr_version )
|
1925 |
+
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid-backuprestore' ) );
|
1926 |
|
1927 |
$wxr_version = (string) trim( $wxr_version[0] );
|
1928 |
// confirm that we are dealing with the correct file format
|
1929 |
if ( ! preg_match( '/^\d+\.\d+$/', $wxr_version ) )
|
1930 |
+
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid-backuprestore' ) );
|
1931 |
|
1932 |
$base_url = $xml->xpath('/rss/channel/wp:base_site_url');
|
1933 |
$base_url = (string) trim( $base_url[0] );
|
2152 |
xml_parser_free( $xml );
|
2153 |
|
2154 |
if ( ! preg_match( '/^\d+\.\d+$/', $this->wxr_version ) )
|
2155 |
+
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid-backuprestore' ) );
|
2156 |
|
2157 |
return array(
|
2158 |
'authors' => $this->authors,
|
2348 |
}
|
2349 |
|
2350 |
if ( ! $wxr_version )
|
2351 |
+
return new WP_Error( 'WXR_parse_error', __( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpvivid-backuprestore' ) );
|
2352 |
|
2353 |
return array(
|
2354 |
'authors' => $this->authors,
|
includes/class-wpvivid-interface-mainwp.php
CHANGED
@@ -135,7 +135,7 @@ class WPvivid_Interface_MainWP
|
|
135 |
global $wpvivid_plugin;
|
136 |
if (!isset($task_id)||empty($task_id)||!is_string($task_id))
|
137 |
{
|
138 |
-
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid');
|
139 |
return $ret;
|
140 |
}
|
141 |
$task_id=sanitize_key($task_id);
|
@@ -179,7 +179,7 @@ class WPvivid_Interface_MainWP
|
|
179 |
$file = fopen($ret['log_file'], 'r');
|
180 |
if (!$file) {
|
181 |
$ret['result'] = 'failed';
|
182 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
183 |
return $ret;
|
184 |
}
|
185 |
$buffer = '';
|
@@ -208,7 +208,7 @@ class WPvivid_Interface_MainWP
|
|
208 |
if(!isset($log_file_name)||empty($log_file_name)||!is_string($log_file_name))
|
209 |
{
|
210 |
$ret['result']='failed';
|
211 |
-
$ret['error']=__('Reading the log failed. Please try again.', 'wpvivid');
|
212 |
return $ret;
|
213 |
}
|
214 |
$log_file_name=sanitize_text_field($log_file_name);
|
@@ -217,7 +217,7 @@ class WPvivid_Interface_MainWP
|
|
217 |
$file = fopen($ret['log_file'], 'r');
|
218 |
if (!$file) {
|
219 |
$ret['result'] = 'failed';
|
220 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
221 |
return $ret;
|
222 |
}
|
223 |
$buffer = '';
|
@@ -270,7 +270,7 @@ class WPvivid_Interface_MainWP
|
|
270 |
$file = fopen($ret['log_file'], 'r');
|
271 |
if (!$file) {
|
272 |
$ret['result'] = 'failed';
|
273 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
274 |
return $ret;
|
275 |
}
|
276 |
$buffer = '';
|
135 |
global $wpvivid_plugin;
|
136 |
if (!isset($task_id)||empty($task_id)||!is_string($task_id))
|
137 |
{
|
138 |
+
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid-backuprestore');
|
139 |
return $ret;
|
140 |
}
|
141 |
$task_id=sanitize_key($task_id);
|
179 |
$file = fopen($ret['log_file'], 'r');
|
180 |
if (!$file) {
|
181 |
$ret['result'] = 'failed';
|
182 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
183 |
return $ret;
|
184 |
}
|
185 |
$buffer = '';
|
208 |
if(!isset($log_file_name)||empty($log_file_name)||!is_string($log_file_name))
|
209 |
{
|
210 |
$ret['result']='failed';
|
211 |
+
$ret['error']=__('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
212 |
return $ret;
|
213 |
}
|
214 |
$log_file_name=sanitize_text_field($log_file_name);
|
217 |
$file = fopen($ret['log_file'], 'r');
|
218 |
if (!$file) {
|
219 |
$ret['result'] = 'failed';
|
220 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
221 |
return $ret;
|
222 |
}
|
223 |
$buffer = '';
|
270 |
$file = fopen($ret['log_file'], 'r');
|
271 |
if (!$file) {
|
272 |
$ret['result'] = 'failed';
|
273 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
274 |
return $ret;
|
275 |
}
|
276 |
$buffer = '';
|
includes/class-wpvivid-mail-report.php
CHANGED
@@ -554,7 +554,7 @@ class WPvivid_mail_report
|
|
554 |
if(wp_mail( $send_to, $subject, $body,$headers,$attachments)===false)
|
555 |
{
|
556 |
$ret['result']='failed';
|
557 |
-
$ret['error']=__('Unable to send email. Please check the configuration of email server.', 'wpvivid');
|
558 |
}
|
559 |
else
|
560 |
{
|
554 |
if(wp_mail( $send_to, $subject, $body,$headers,$attachments)===false)
|
555 |
{
|
556 |
$ret['result']='failed';
|
557 |
+
$ret['error']=__('Unable to send email. Please check the configuration of email server.', 'wpvivid-backuprestore');
|
558 |
}
|
559 |
else
|
560 |
{
|
includes/class-wpvivid-migrate.php
CHANGED
@@ -46,13 +46,13 @@ class WPvivid_Migrate
|
|
46 |
public function wpvivid_add_tab_migrate()
|
47 |
{
|
48 |
?>
|
49 |
-
<a href="#" id="wpvivid_tab_migrate" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'migrate-page')"><?php _e('Auto-Migration', 'wpvivid'); ?></a>
|
50 |
<?php
|
51 |
}
|
52 |
|
53 |
public function wpvivid_add_tab_key(){
|
54 |
?>
|
55 |
-
<a href="#" id="wpvivid_tab_key" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'key-page')"><?php _e('Key', 'wpvivid'); ?></a>
|
56 |
<?php
|
57 |
}
|
58 |
|
@@ -218,6 +218,7 @@ class WPvivid_Migrate
|
|
218 |
jQuery('#wpvivid_upload_backup_percent').html(value.progress_html);
|
219 |
jQuery('#wpvivid_upload_backup_percent').hide();
|
220 |
migrate_task_need_update = true;
|
|
|
221 |
}
|
222 |
else if (value.status.str === 'error') {
|
223 |
wpvivid_control_transfer_unlock();
|
@@ -356,7 +357,7 @@ class WPvivid_Migrate
|
|
356 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_upload_current_doing"></p></div>
|
357 |
<div style="clear: both;"></div>
|
358 |
<div>
|
359 |
-
<div id="wpvivid_transfer_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_transfer_cancel_btn" type="submit" value="<?php esc_attr_e( 'Cancel', 'wpvivid' ); ?>" /></div>
|
360 |
</div>
|
361 |
</div>
|
362 |
|
@@ -387,18 +388,18 @@ class WPvivid_Migrate
|
|
387 |
<div id="key-page" class="wrap-tab-content wpvivid_tab_key" name="tab-key" style="display: none;">
|
388 |
<div style="padding: 0 0 0 10px">
|
389 |
<div style="padding: 0 0 10px 0">
|
390 |
-
<span><?php _e('In order to allow another site to send a backup to this site, please generate a key below. Once the key is generated, this site is ready to receive a backup from another site. Then, please copy and paste the key in sending site and save it.', 'wpvivid'); ?></span>
|
391 |
</div>
|
392 |
-
<strong><?php _e('The key will expire in ', 'wpvivid'); ?></strong>
|
393 |
<select id="wpvivid_generate_url_expires" style="margin-bottom: 2px;">
|
394 |
<option value="2 hour">2 hours</option>
|
395 |
<option selected="selected" value="8 hour">8 hours</option>
|
396 |
<option value="24 hour">24 hours</option>
|
397 |
<!--<option value="Never">Never</option>-->
|
398 |
</select>
|
399 |
-
<p><?php _e('Tips: For security reason, please choose an appropriate expiration time for the key.', 'wpvivid'); ?></p>
|
400 |
<div>
|
401 |
-
<input class="button-primary" id="wpvivid_generate_url" type="submit" value="<?php esc_attr_e( 'Generate', 'wpvivid' ); ?>" onclick="wpvivid_click_generate_url();" />
|
402 |
</div>
|
403 |
<div id="wpvivid_test_generate_url" style="padding-top: 10px;">
|
404 |
<textarea id="wpvivid_test_remote_site_url_text" style="width: 100%; height: 140px;"></textarea>
|
@@ -664,7 +665,7 @@ class WPvivid_Migrate
|
|
664 |
|
665 |
if (WPvivid_taskmanager::is_tasks_backup_running()) {
|
666 |
$ret['result'] = 'failed';
|
667 |
-
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
668 |
echo json_encode($ret);
|
669 |
die();
|
670 |
}
|
@@ -709,7 +710,7 @@ class WPvivid_Migrate
|
|
709 |
if (!isset($_POST['task_id'])||empty($_POST['task_id'])||!is_string($_POST['task_id']))
|
710 |
{
|
711 |
$ret['result']='failed';
|
712 |
-
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid');
|
713 |
echo json_encode($ret);
|
714 |
die();
|
715 |
}
|
@@ -847,10 +848,10 @@ class WPvivid_Migrate
|
|
847 |
$html='<div id="wpvivid_transfer_key">';
|
848 |
$options=WPvivid_Setting::get_option('wpvivid_saved_api_token');
|
849 |
if(empty($options)){
|
850 |
-
$html .= '<div style="padding: 0 0 10px 0;"><strong>'.__('Please paste the key below.', 'wpvivid').'</strong><a href="#" style="margin-left: 5px; text-decoration: none;" onclick="wpvivid_click_how_to_get_key();">'.__('How to get a site key?', 'wpvivid').'</a></div>
|
851 |
<div id="wpvivid_how_to_get_key"></div>
|
852 |
<div class="wpvivid-element-space-bottom"><textarea type="text" id="wpvivid_transfer_key_text" onKeyUp="wpvivid_check_key(this.value)" style="width: 100%; height: 140px;"/></textarea></div>
|
853 |
-
<div><input class="button-primary" id="wpvivid_save_url_button" type="submit" value="'.esc_attr( 'Save', 'wpvivid' ).'" onclick="wpvivid_click_save_site_url();" /></div>';
|
854 |
}
|
855 |
else{
|
856 |
foreach ($options as $key => $value)
|
@@ -871,7 +872,7 @@ class WPvivid_Migrate
|
|
871 |
$html .= '<div style="padding: 0 0 10px 0;">
|
872 |
<span>Key:</span>
|
873 |
<input type="text" id="wpvivid_send_remote_site_url_text" value="'.$token.'" readonly="readonly" />
|
874 |
-
<input class="button-primary" id="wpvivid_delete_key_button" type="submit" value="'.esc_attr( 'Delete', 'wpvivid' ).'" onclick="wpvivid_click_delete_transfer_key();" />
|
875 |
</div>
|
876 |
<div class="wpvivid-element-space-bottom">'.$key_status.'</div>
|
877 |
<div>The connection is ok. Now you can transfer the site <strong>'.$source_dir.'</strong> to the site <strong>'.$target_dir.'</strong></div>';
|
@@ -966,9 +967,9 @@ class WPvivid_Migrate
|
|
966 |
if(!wpvivid_display_get_key) {
|
967 |
wpvivid_display_get_key = true;
|
968 |
var div = "<div class=\'notice notice-info is-dismissible inline\'>" +
|
969 |
-
"<p>'.__('1. Visit Key tab page of WPvivid backup plugin of destination site.', 'wpvivid').'</p>" +
|
970 |
-
"<p>'.__('2. Generate a key by clicking Generate button and copy it.', 'wpvivid').'</p>" +
|
971 |
-
"<p>'.__('3. Go back to this page and paste the key in key box below. Lastly, click Save button.', 'wpvivid').'</p>" +
|
972 |
"<button type=\'button\' class=\'notice-dismiss\' onclick=\'click_dismiss_key_notice(this);\'>" +
|
973 |
"<span class=\'screen-reader-text\'>Dismiss this notice.</span>" +
|
974 |
"</button>" +
|
@@ -982,7 +983,7 @@ class WPvivid_Migrate
|
|
982 |
|
983 |
public function wpvivid_migrate_descript($html){
|
984 |
$html .= '<div style="padding: 0 0 10px 0;">
|
985 |
-
'.__('The feature can help you transfer a Wordpress site to a new domain(site). It would be a convenient way to migrate your WP site from dev environment to live server or from old server to the new.', 'wpvivid').'
|
986 |
</div>';
|
987 |
return $html;
|
988 |
}
|
@@ -992,7 +993,7 @@ class WPvivid_Migrate
|
|
992 |
$type_name = 'transfer_type';
|
993 |
$html = '<div class="postbox quicktransfer">
|
994 |
<div class="wpvivid-element-space-bottom">
|
995 |
-
<h2 style="padding: 0;"><span>'.__( 'Choose the content you want to transfer', 'wpvivid').'</span></h2>
|
996 |
</div>
|
997 |
<div class="quickstart-archive-block">
|
998 |
<fieldset>
|
@@ -1007,7 +1008,7 @@ class WPvivid_Migrate
|
|
1007 |
public function wpvivid_migrate_part_exec($html){
|
1008 |
$html = '';
|
1009 |
$html .= '<div id="wpvivid_transfer_btn" style="float: left;">
|
1010 |
-
<input class="button-primary quicktransfer-btn" type="submit" value="'.esc_attr( 'Clone then Transfer', 'wpvivid').'" onclick="wpvivid_click_send_backup();" />
|
1011 |
</div>
|
1012 |
<script>
|
1013 |
function wpvivid_click_send_backup()
|
@@ -1087,44 +1088,44 @@ class WPvivid_Migrate
|
|
1087 |
}
|
1088 |
|
1089 |
public function wpvivid_migrate_part_note($html){
|
1090 |
-
$html .= '<p>'.__('Note: ', 'wpvivid').'</p>
|
1091 |
-
<p>'.__('1. In order to successfully complete the migration, you\'d better deactivate <a href="https://wpvivid.com/best-redirect-plugins.html" target="_blank" style="text-decoration: none;">301 redirect plugin</a>, <a href="https://wpvivid.com/8-best-wordpress-firewall-plugins.html" target="_blank" style="text-decoration: none;">firewall and security plugin</a>, and <a href="https://wpvivid.com/best-free-wordpress-caching-plugins.html" target="_blank" style="text-decoration: none;">caching plugin</a> (if they exist) before transferring website.', 'wpvivid').'</p>
|
1092 |
-
<p>'.__('2. Please migrate website with the manual way when using <strong>Local by Flywheel</strong> environment.', 'wpvivid').'</p>';
|
1093 |
return $html;
|
1094 |
}
|
1095 |
|
1096 |
public function wpvivid_migrate_part_tip($html){
|
1097 |
$backupdir=WPvivid_Setting::get_backupdir();
|
1098 |
-
$html .= '<p>'.__('<strong>Tips: </strong>The unstable connection between sites could cause a failure of files transfer. In this case, uploading backups to destination site is a good alternative to the automatic website migration.', 'wpvivid').'</p>
|
1099 |
-
<p><strong>'.__('How to migrate Wordpress site manually to a new domain(site) with WPvivid backup plugin?', 'wpvivid').'</strong></p>
|
1100 |
-
<p>'.__('1. Download a backup in backups list to your computer.', 'wpvivid').'</p>
|
1101 |
-
<p>'.__('2. Upload the backup to destination site. There are two ways available to use:', 'wpvivid').'</p>
|
1102 |
-
<p style="margin-left: 20px;">'.__('2.1 Upload the backup to the upload section of WPvivid backup plugin in destination site.', 'wpvivid').'</p>
|
1103 |
-
<p style="margin-left: 20px;">'.sprintf(__('2.2 Upload the backup with FTP client to backup directory %s in destination site, then click <strong>Scan uploaded backup or received backup</strong> button.', 'wpvivid'), WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir).'</p>
|
1104 |
-
<p>'.__('3. Once done, the backup appears in backups list. Then, restore the backup.', 'wpvivid').'</p>';
|
1105 |
return $html;
|
1106 |
}
|
1107 |
|
1108 |
public function wpvivid_add_migrate_type($html, $name_type){
|
1109 |
$html .= '<label>
|
1110 |
<input type="radio" option="migrate" name="'.$name_type.'" value="files+db" checked />
|
1111 |
-
<span>'.__( 'Database + Files (WordPress Files)', 'wpvivid' ).'</span>
|
1112 |
</label><br>
|
1113 |
<label>
|
1114 |
<input type="radio" option="migrate" name="'.$name_type.'" value="files" />
|
1115 |
-
<span>'.__( 'WordPress Files (Exclude Database)', 'wpvivid' ).'</span>
|
1116 |
</label><br>
|
1117 |
<label>
|
1118 |
<input type="radio" option="migrate" name="'.$name_type.'" value="db" />
|
1119 |
-
<span>'.__( 'Only Database', 'wpvivid' ).'</span>
|
1120 |
</label><br>
|
1121 |
<label>
|
1122 |
<div style="float: left;">
|
1123 |
<input type="radio" disabled />
|
1124 |
-
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Choose what to migrate', 'wpvivid').'</span>
|
1125 |
</div>
|
1126 |
<span class="wpvivid-feature-pro">
|
1127 |
-
<a href="https://wpvivid.com/custom-migration-overview?utm_source=client_migration_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid').'</a>
|
1128 |
</span>
|
1129 |
</label><br>';
|
1130 |
return $html;
|
@@ -1159,22 +1160,22 @@ class WPvivid_Migrate
|
|
1159 |
<div class="action-progress-bar-percent" id="wpvivid_upload_progress_bar_percent" style="height:24px;width:' . $list_tasks[$task['id']]['task_info']['backup_percent'] . '"></div>
|
1160 |
</div>
|
1161 |
<div id="wpvivid_estimate_backup_info" style="float:left;">
|
1162 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Database Size:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['db_size'] . '</span></div>
|
1163 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('File Size:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['file_size'] . '</span></div>
|
1164 |
</div>
|
1165 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
1166 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Total Size:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['total'] . '</span></div>
|
1167 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Uploaded:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['upload'] . '</span></div>
|
1168 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Speed:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['speed'] . '</span></div>
|
1169 |
</div>
|
1170 |
<div style="float: left;">
|
1171 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Network Connection:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['network_connection'] . '</span></div>
|
1172 |
</div>
|
1173 |
<div style="clear:both;"></div>
|
1174 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_upload_current_doing">' . $list_tasks[$task['id']]['task_info']['descript'] . '</p></div>
|
1175 |
<div style="clear: both;"></div>
|
1176 |
<div>
|
1177 |
-
<div id="wpvivid_transfer_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_transfer_cancel_btn" type="submit" value="'.esc_attr( 'Cancel', 'wpvivid' ).'" /></div>
|
1178 |
</div>';
|
1179 |
}
|
1180 |
}
|
@@ -1182,7 +1183,7 @@ class WPvivid_Migrate
|
|
1182 |
|
1183 |
$backup_success_count=WPvivid_Setting::get_option('wpvivid_transfer_success_count');
|
1184 |
if(!empty($backup_success_count)){
|
1185 |
-
$notice_msg = __('Transfer succeeded. Please scan the backup list on the destination site to display the backup, then restore the backup.', 'wpvivid');
|
1186 |
$success_notice_html='<div class="notice notice-success is-dismissible inline"><p>'.$notice_msg.'</p>
|
1187 |
<button type="button" class="notice-dismiss" onclick="click_dismiss_notice(this);">
|
1188 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
@@ -1242,7 +1243,7 @@ class WPvivid_Migrate
|
|
1242 |
|
1243 |
function wpvivid_add_tab_upload(){
|
1244 |
?>
|
1245 |
-
<a href="#" id="wpvivid_tab_upload" class="nav-tab backup-nav-tab" onclick="switchrestoreTabs(event,'page-upload')"><?php _e('Upload', 'wpvivid'); ?></a>
|
1246 |
<?php
|
1247 |
}
|
1248 |
|
@@ -1252,10 +1253,10 @@ class WPvivid_Migrate
|
|
1252 |
<div class="backup-tab-content wpvivid_tab_upload" id="page-upload" style="display:none;">
|
1253 |
<div style="padding: 10px 0 10px 0;">
|
1254 |
<div style="padding-bottom: 10px;">
|
1255 |
-
<span><?php echo sprintf(__('The backups will be uploaded to %s directory.', 'wpvivid'), WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir); ?></span>
|
1256 |
</div>
|
1257 |
<div style="padding-bottom: 10px;">
|
1258 |
-
<span><?php echo __('Note: The files you want to upload must be a backup created by WPvivid backup plugin. Make sure that uploading every part of a backup to the directory if the backup is split into many parts', 'wpvivid'); ?></span>
|
1259 |
</div>
|
1260 |
<?php
|
1261 |
Wpvivid_BackupUploader::upload_meta_box();
|
46 |
public function wpvivid_add_tab_migrate()
|
47 |
{
|
48 |
?>
|
49 |
+
<a href="#" id="wpvivid_tab_migrate" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'migrate-page')"><?php _e('Auto-Migration', 'wpvivid-backuprestore'); ?></a>
|
50 |
<?php
|
51 |
}
|
52 |
|
53 |
public function wpvivid_add_tab_key(){
|
54 |
?>
|
55 |
+
<a href="#" id="wpvivid_tab_key" class="nav-tab wrap-nav-tab" onclick="switchTabs(event,'key-page')"><?php _e('Key', 'wpvivid-backuprestore'); ?></a>
|
56 |
<?php
|
57 |
}
|
58 |
|
218 |
jQuery('#wpvivid_upload_backup_percent').html(value.progress_html);
|
219 |
jQuery('#wpvivid_upload_backup_percent').hide();
|
220 |
migrate_task_need_update = true;
|
221 |
+
alert('Transfer succeeded. Please scan the backup list on the destination site to display the backup, then restore the backup.');
|
222 |
}
|
223 |
else if (value.status.str === 'error') {
|
224 |
wpvivid_control_transfer_unlock();
|
357 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_upload_current_doing"></p></div>
|
358 |
<div style="clear: both;"></div>
|
359 |
<div>
|
360 |
+
<div id="wpvivid_transfer_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_transfer_cancel_btn" type="submit" value="<?php esc_attr_e( 'Cancel', 'wpvivid-backuprestore' ); ?>" /></div>
|
361 |
</div>
|
362 |
</div>
|
363 |
|
388 |
<div id="key-page" class="wrap-tab-content wpvivid_tab_key" name="tab-key" style="display: none;">
|
389 |
<div style="padding: 0 0 0 10px">
|
390 |
<div style="padding: 0 0 10px 0">
|
391 |
+
<span><?php _e('In order to allow another site to send a backup to this site, please generate a key below. Once the key is generated, this site is ready to receive a backup from another site. Then, please copy and paste the key in sending site and save it.', 'wpvivid-backuprestore'); ?></span>
|
392 |
</div>
|
393 |
+
<strong><?php _e('The key will expire in ', 'wpvivid-backuprestore'); ?></strong>
|
394 |
<select id="wpvivid_generate_url_expires" style="margin-bottom: 2px;">
|
395 |
<option value="2 hour">2 hours</option>
|
396 |
<option selected="selected" value="8 hour">8 hours</option>
|
397 |
<option value="24 hour">24 hours</option>
|
398 |
<!--<option value="Never">Never</option>-->
|
399 |
</select>
|
400 |
+
<p><?php _e('Tips: For security reason, please choose an appropriate expiration time for the key.', 'wpvivid-backuprestore'); ?></p>
|
401 |
<div>
|
402 |
+
<input class="button-primary" id="wpvivid_generate_url" type="submit" value="<?php esc_attr_e( 'Generate', 'wpvivid-backuprestore' ); ?>" onclick="wpvivid_click_generate_url();" />
|
403 |
</div>
|
404 |
<div id="wpvivid_test_generate_url" style="padding-top: 10px;">
|
405 |
<textarea id="wpvivid_test_remote_site_url_text" style="width: 100%; height: 140px;"></textarea>
|
665 |
|
666 |
if (WPvivid_taskmanager::is_tasks_backup_running()) {
|
667 |
$ret['result'] = 'failed';
|
668 |
+
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
669 |
echo json_encode($ret);
|
670 |
die();
|
671 |
}
|
710 |
if (!isset($_POST['task_id'])||empty($_POST['task_id'])||!is_string($_POST['task_id']))
|
711 |
{
|
712 |
$ret['result']='failed';
|
713 |
+
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid-backuprestore');
|
714 |
echo json_encode($ret);
|
715 |
die();
|
716 |
}
|
848 |
$html='<div id="wpvivid_transfer_key">';
|
849 |
$options=WPvivid_Setting::get_option('wpvivid_saved_api_token');
|
850 |
if(empty($options)){
|
851 |
+
$html .= '<div style="padding: 0 0 10px 0;"><strong>'.__('Please paste the key below.', 'wpvivid-backuprestore').'</strong><a href="#" style="margin-left: 5px; text-decoration: none;" onclick="wpvivid_click_how_to_get_key();">'.__('How to get a site key?', 'wpvivid-backuprestore').'</a></div>
|
852 |
<div id="wpvivid_how_to_get_key"></div>
|
853 |
<div class="wpvivid-element-space-bottom"><textarea type="text" id="wpvivid_transfer_key_text" onKeyUp="wpvivid_check_key(this.value)" style="width: 100%; height: 140px;"/></textarea></div>
|
854 |
+
<div><input class="button-primary" id="wpvivid_save_url_button" type="submit" value="'.esc_attr( 'Save', 'wpvivid-backuprestore' ).'" onclick="wpvivid_click_save_site_url();" /></div>';
|
855 |
}
|
856 |
else{
|
857 |
foreach ($options as $key => $value)
|
872 |
$html .= '<div style="padding: 0 0 10px 0;">
|
873 |
<span>Key:</span>
|
874 |
<input type="text" id="wpvivid_send_remote_site_url_text" value="'.$token.'" readonly="readonly" />
|
875 |
+
<input class="button-primary" id="wpvivid_delete_key_button" type="submit" value="'.esc_attr( 'Delete', 'wpvivid-backuprestore' ).'" onclick="wpvivid_click_delete_transfer_key();" />
|
876 |
</div>
|
877 |
<div class="wpvivid-element-space-bottom">'.$key_status.'</div>
|
878 |
<div>The connection is ok. Now you can transfer the site <strong>'.$source_dir.'</strong> to the site <strong>'.$target_dir.'</strong></div>';
|
967 |
if(!wpvivid_display_get_key) {
|
968 |
wpvivid_display_get_key = true;
|
969 |
var div = "<div class=\'notice notice-info is-dismissible inline\'>" +
|
970 |
+
"<p>'.__('1. Visit Key tab page of WPvivid backup plugin of destination site.', 'wpvivid-backuprestore').'</p>" +
|
971 |
+
"<p>'.__('2. Generate a key by clicking Generate button and copy it.', 'wpvivid-backuprestore').'</p>" +
|
972 |
+
"<p>'.__('3. Go back to this page and paste the key in key box below. Lastly, click Save button.', 'wpvivid-backuprestore').'</p>" +
|
973 |
"<button type=\'button\' class=\'notice-dismiss\' onclick=\'click_dismiss_key_notice(this);\'>" +
|
974 |
"<span class=\'screen-reader-text\'>Dismiss this notice.</span>" +
|
975 |
"</button>" +
|
983 |
|
984 |
public function wpvivid_migrate_descript($html){
|
985 |
$html .= '<div style="padding: 0 0 10px 0;">
|
986 |
+
'.__('The feature can help you transfer a Wordpress site to a new domain(site). It would be a convenient way to migrate your WP site from dev environment to live server or from old server to the new.', 'wpvivid-backuprestore').'
|
987 |
</div>';
|
988 |
return $html;
|
989 |
}
|
993 |
$type_name = 'transfer_type';
|
994 |
$html = '<div class="postbox quicktransfer">
|
995 |
<div class="wpvivid-element-space-bottom">
|
996 |
+
<h2 style="padding: 0;"><span>'.__( 'Choose the content you want to transfer', 'wpvivid-backuprestore').'</span></h2>
|
997 |
</div>
|
998 |
<div class="quickstart-archive-block">
|
999 |
<fieldset>
|
1008 |
public function wpvivid_migrate_part_exec($html){
|
1009 |
$html = '';
|
1010 |
$html .= '<div id="wpvivid_transfer_btn" style="float: left;">
|
1011 |
+
<input class="button-primary quicktransfer-btn" type="submit" value="'.esc_attr( 'Clone then Transfer', 'wpvivid-backuprestore').'" onclick="wpvivid_click_send_backup();" />
|
1012 |
</div>
|
1013 |
<script>
|
1014 |
function wpvivid_click_send_backup()
|
1088 |
}
|
1089 |
|
1090 |
public function wpvivid_migrate_part_note($html){
|
1091 |
+
$html .= '<p>'.__('Note: ', 'wpvivid-backuprestore').'</p>
|
1092 |
+
<p>'.__('1. In order to successfully complete the migration, you\'d better deactivate <a href="https://wpvivid.com/best-redirect-plugins.html" target="_blank" style="text-decoration: none;">301 redirect plugin</a>, <a href="https://wpvivid.com/8-best-wordpress-firewall-plugins.html" target="_blank" style="text-decoration: none;">firewall and security plugin</a>, and <a href="https://wpvivid.com/best-free-wordpress-caching-plugins.html" target="_blank" style="text-decoration: none;">caching plugin</a> (if they exist) before transferring website.', 'wpvivid-backuprestore').'</p>
|
1093 |
+
<p>'.__('2. Please migrate website with the manual way when using <strong>Local by Flywheel</strong> environment.', 'wpvivid-backuprestore').'</p>';
|
1094 |
return $html;
|
1095 |
}
|
1096 |
|
1097 |
public function wpvivid_migrate_part_tip($html){
|
1098 |
$backupdir=WPvivid_Setting::get_backupdir();
|
1099 |
+
$html .= '<p>'.__('<strong>Tips: </strong>The unstable connection between sites could cause a failure of files transfer. In this case, uploading backups to destination site is a good alternative to the automatic website migration.', 'wpvivid-backuprestore').'</p>
|
1100 |
+
<p><strong>'.__('How to migrate Wordpress site manually to a new domain(site) with WPvivid backup plugin?', 'wpvivid-backuprestore').'</strong></p>
|
1101 |
+
<p>'.__('1. Download a backup in backups list to your computer.', 'wpvivid-backuprestore').'</p>
|
1102 |
+
<p>'.__('2. Upload the backup to destination site. There are two ways available to use:', 'wpvivid-backuprestore').'</p>
|
1103 |
+
<p style="margin-left: 20px;">'.__('2.1 Upload the backup to the upload section of WPvivid backup plugin in destination site.', 'wpvivid-backuprestore').'</p>
|
1104 |
+
<p style="margin-left: 20px;">'.sprintf(__('2.2 Upload the backup with FTP client to backup directory %s in destination site, then click <strong>Scan uploaded backup or received backup</strong> button.', 'wpvivid-backuprestore'), WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir).'</p>
|
1105 |
+
<p>'.__('3. Once done, the backup appears in backups list. Then, restore the backup.', 'wpvivid-backuprestore').'</p>';
|
1106 |
return $html;
|
1107 |
}
|
1108 |
|
1109 |
public function wpvivid_add_migrate_type($html, $name_type){
|
1110 |
$html .= '<label>
|
1111 |
<input type="radio" option="migrate" name="'.$name_type.'" value="files+db" checked />
|
1112 |
+
<span>'.__( 'Database + Files (WordPress Files)', 'wpvivid-backuprestore' ).'</span>
|
1113 |
</label><br>
|
1114 |
<label>
|
1115 |
<input type="radio" option="migrate" name="'.$name_type.'" value="files" />
|
1116 |
+
<span>'.__( 'WordPress Files (Exclude Database)', 'wpvivid-backuprestore' ).'</span>
|
1117 |
</label><br>
|
1118 |
<label>
|
1119 |
<input type="radio" option="migrate" name="'.$name_type.'" value="db" />
|
1120 |
+
<span>'.__( 'Only Database', 'wpvivid-backuprestore' ).'</span>
|
1121 |
</label><br>
|
1122 |
<label>
|
1123 |
<div style="float: left;">
|
1124 |
<input type="radio" disabled />
|
1125 |
+
<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Choose what to migrate', 'wpvivid-backuprestore').'</span>
|
1126 |
</div>
|
1127 |
<span class="wpvivid-feature-pro">
|
1128 |
+
<a href="https://wpvivid.com/custom-migration-overview?utm_source=client_migration_custom_backup&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none;">'.__('Pro feature: learn more', 'wpvivid-backuprestore').'</a>
|
1129 |
</span>
|
1130 |
</label><br>';
|
1131 |
return $html;
|
1160 |
<div class="action-progress-bar-percent" id="wpvivid_upload_progress_bar_percent" style="height:24px;width:' . $list_tasks[$task['id']]['task_info']['backup_percent'] . '"></div>
|
1161 |
</div>
|
1162 |
<div id="wpvivid_estimate_backup_info" style="float:left;">
|
1163 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Database Size:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['db_size'] . '</span></div>
|
1164 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('File Size:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['file_size'] . '</span></div>
|
1165 |
</div>
|
1166 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
1167 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Total Size:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['total'] . '</span></div>
|
1168 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Uploaded:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['upload'] . '</span></div>
|
1169 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Speed:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['speed'] . '</span></div>
|
1170 |
</div>
|
1171 |
<div style="float: left;">
|
1172 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Network Connection:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['network_connection'] . '</span></div>
|
1173 |
</div>
|
1174 |
<div style="clear:both;"></div>
|
1175 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_upload_current_doing">' . $list_tasks[$task['id']]['task_info']['descript'] . '</p></div>
|
1176 |
<div style="clear: both;"></div>
|
1177 |
<div>
|
1178 |
+
<div id="wpvivid_transfer_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_transfer_cancel_btn" type="submit" value="'.esc_attr( 'Cancel', 'wpvivid-backuprestore' ).'" /></div>
|
1179 |
</div>';
|
1180 |
}
|
1181 |
}
|
1183 |
|
1184 |
$backup_success_count=WPvivid_Setting::get_option('wpvivid_transfer_success_count');
|
1185 |
if(!empty($backup_success_count)){
|
1186 |
+
$notice_msg = __('Transfer succeeded. Please scan the backup list on the destination site to display the backup, then restore the backup.', 'wpvivid-backuprestore');
|
1187 |
$success_notice_html='<div class="notice notice-success is-dismissible inline"><p>'.$notice_msg.'</p>
|
1188 |
<button type="button" class="notice-dismiss" onclick="click_dismiss_notice(this);">
|
1189 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
1243 |
|
1244 |
function wpvivid_add_tab_upload(){
|
1245 |
?>
|
1246 |
+
<a href="#" id="wpvivid_tab_upload" class="nav-tab backup-nav-tab" onclick="switchrestoreTabs(event,'page-upload')"><?php _e('Upload', 'wpvivid-backuprestore'); ?></a>
|
1247 |
<?php
|
1248 |
}
|
1249 |
|
1253 |
<div class="backup-tab-content wpvivid_tab_upload" id="page-upload" style="display:none;">
|
1254 |
<div style="padding: 10px 0 10px 0;">
|
1255 |
<div style="padding-bottom: 10px;">
|
1256 |
+
<span><?php echo sprintf(__('The backups will be uploaded to %s directory.', 'wpvivid-backuprestore'), WP_CONTENT_DIR.DIRECTORY_SEPARATOR.$backupdir); ?></span>
|
1257 |
</div>
|
1258 |
<div style="padding-bottom: 10px;">
|
1259 |
+
<span><?php echo __('Note: The files you want to upload must be a backup created by WPvivid backup plugin. Make sure that uploading every part of a backup to the directory if the backup is split into many parts', 'wpvivid-backuprestore'); ?></span>
|
1260 |
</div>
|
1261 |
<?php
|
1262 |
Wpvivid_BackupUploader::upload_meta_box();
|
includes/class-wpvivid-mysqldump-wpdb.php
DELETED
@@ -1,770 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Created by PhpStorm.
|
4 |
-
* User: alienware`x
|
5 |
-
* Date: 2019/5/23
|
6 |
-
* Time: 16:42
|
7 |
-
*/
|
8 |
-
|
9 |
-
class WPvivid_Mysqldump_wpdb
|
10 |
-
{
|
11 |
-
// Same as mysqldump
|
12 |
-
const MAXLINESIZE = 1000000;
|
13 |
-
|
14 |
-
// Available compression methods as constants
|
15 |
-
const GZIP = 'Gzip';
|
16 |
-
const BZIP2 = 'Bzip2';
|
17 |
-
const NONE = 'None';
|
18 |
-
|
19 |
-
// Available connection strings
|
20 |
-
const UTF8 = 'utf8';
|
21 |
-
const UTF8MB4 = 'utf8mb4';
|
22 |
-
|
23 |
-
/**
|
24 |
-
* Database username
|
25 |
-
* @var string
|
26 |
-
*/
|
27 |
-
public $user;
|
28 |
-
/**
|
29 |
-
* Database password
|
30 |
-
* @var string
|
31 |
-
*/
|
32 |
-
public $pass;
|
33 |
-
/**
|
34 |
-
* Connection string for PDO
|
35 |
-
* @var string
|
36 |
-
*/
|
37 |
-
public $dsn;
|
38 |
-
/**
|
39 |
-
* Destination filename, defaults to stdout
|
40 |
-
* @var string
|
41 |
-
*/
|
42 |
-
public $fileName = 'php://output';
|
43 |
-
|
44 |
-
// Internal stuff
|
45 |
-
private $tables = array();
|
46 |
-
private $views = array();
|
47 |
-
private $triggers = array();
|
48 |
-
private $procedures = array();
|
49 |
-
private $events = array();
|
50 |
-
private $dbHandler = null;
|
51 |
-
private $dbType;
|
52 |
-
private $compressManager;
|
53 |
-
private $typeAdapter;
|
54 |
-
private $dumpSettings = array();
|
55 |
-
private $pdoSettings = array();
|
56 |
-
private $version;
|
57 |
-
private $tableColumnTypes = array();
|
58 |
-
public $log=false;
|
59 |
-
public $task_id='';
|
60 |
-
/**
|
61 |
-
* database name, parsed from dsn
|
62 |
-
* @var string
|
63 |
-
*/
|
64 |
-
private $dbName;
|
65 |
-
/**
|
66 |
-
* host name, parsed from dsn
|
67 |
-
* @var string
|
68 |
-
*/
|
69 |
-
private $host;
|
70 |
-
/**
|
71 |
-
* dsn string parsed as an array
|
72 |
-
* @var array
|
73 |
-
*/
|
74 |
-
private $dsnArray = array();
|
75 |
-
private $privileges = array();
|
76 |
-
|
77 |
-
public $last_query_string='';
|
78 |
-
|
79 |
-
/**
|
80 |
-
* Constructor of Mysqldump. Note that in the case of an SQLite database
|
81 |
-
* connection, the filename must be in the $db parameter.
|
82 |
-
*
|
83 |
-
* @param string $dsn PDO DSN connection string
|
84 |
-
* @param string $user SQL account username
|
85 |
-
* @param string $pass SQL account password
|
86 |
-
* @param array $dumpSettings SQL database settings
|
87 |
-
* @param array $pdoSettings PDO configured attributes
|
88 |
-
*/
|
89 |
-
public function __construct($dumpSettings = array())
|
90 |
-
{
|
91 |
-
$dumpSettingsDefault = array(
|
92 |
-
'include-tables' => array(),
|
93 |
-
'exclude-tables' => array(),
|
94 |
-
'compress' => WPvivid_Mysqldump_wpdb::NONE,
|
95 |
-
'init_commands' => array(),
|
96 |
-
'no-data' => array(),
|
97 |
-
'reset-auto-increment' => false,
|
98 |
-
'add-drop-database' => false,
|
99 |
-
'add-drop-table' => false,
|
100 |
-
'add-drop-trigger' => true,
|
101 |
-
'add-locks' => true,
|
102 |
-
'complete-insert' => false,
|
103 |
-
'databases' => false,
|
104 |
-
'default-character-set' => WPvivid_Mysqldump_wpdb::UTF8,
|
105 |
-
'disable-keys' => true,
|
106 |
-
'extended-insert' => true,
|
107 |
-
'events' => false,
|
108 |
-
'hex-blob' => true, /* faster than escaped content */
|
109 |
-
'net_buffer_length' => self::MAXLINESIZE,
|
110 |
-
'no-autocommit' => true,
|
111 |
-
'no-create-info' => false,
|
112 |
-
'lock-tables' => true,
|
113 |
-
'routines' => false,
|
114 |
-
'single-transaction' => true,
|
115 |
-
'skip-triggers' => false,
|
116 |
-
'skip-tz-utc' => false,
|
117 |
-
'skip-comments' => false,
|
118 |
-
'skip-dump-date' => false,
|
119 |
-
'where' => '',
|
120 |
-
/* deprecated */
|
121 |
-
'disable-foreign-keys-check' => true
|
122 |
-
);
|
123 |
-
|
124 |
-
if(defined('DB_CHARSET'))
|
125 |
-
{
|
126 |
-
$dumpSettingsDefault['default-character-set']=DB_CHARSET;
|
127 |
-
}
|
128 |
-
|
129 |
-
$this->dumpSettings = self::array_replace_recursive($dumpSettingsDefault, $dumpSettings);
|
130 |
-
|
131 |
-
$this->dumpSettings['init_commands'][] = "SET NAMES " . $this->dumpSettings['default-character-set'];
|
132 |
-
|
133 |
-
if (false === $this->dumpSettings['skip-tz-utc']) {
|
134 |
-
$this->dumpSettings['init_commands'][] = "SET TIME_ZONE='+00:00'";
|
135 |
-
}
|
136 |
-
|
137 |
-
$diff = array_diff(array_keys($this->dumpSettings), array_keys($dumpSettingsDefault));
|
138 |
-
if (count($diff)>0) {
|
139 |
-
throw new Exception("Unexpected value in dumpSettings: (" . implode(",", $diff) . ")");
|
140 |
-
}
|
141 |
-
|
142 |
-
if ( !is_array($this->dumpSettings['include-tables']) ||
|
143 |
-
!is_array($this->dumpSettings['exclude-tables']) ) {
|
144 |
-
throw new Exception("Include-tables and exclude-tables should be arrays");
|
145 |
-
}
|
146 |
-
|
147 |
-
// Dump the same views as tables, mimic mysqldump behaviour
|
148 |
-
$this->dumpSettings['include-views'] = $this->dumpSettings['include-tables'];
|
149 |
-
|
150 |
-
// Create a new compressManager to manage compressed output
|
151 |
-
$this->compressManager = CompressManagerFactory::create($this->dumpSettings['compress']);
|
152 |
-
}
|
153 |
-
|
154 |
-
public function set_privilege($privileges)
|
155 |
-
{
|
156 |
-
$this -> privileges = $privileges;
|
157 |
-
}
|
158 |
-
|
159 |
-
/**
|
160 |
-
* Custom array_replace_recursive to be used if PHP < 5.3
|
161 |
-
* Replaces elements from passed arrays into the first array recursively
|
162 |
-
*
|
163 |
-
* @param array $array1 The array in which elements are replaced
|
164 |
-
* @param array $array2 The array from which elements will be extracted
|
165 |
-
*
|
166 |
-
* @return array Returns an array, or NULL if an error occurs.
|
167 |
-
*/
|
168 |
-
public static function array_replace_recursive($array1, $array2)
|
169 |
-
{
|
170 |
-
if (function_exists('array_replace_recursive')) {
|
171 |
-
return array_replace_recursive($array1, $array2);
|
172 |
-
}
|
173 |
-
|
174 |
-
foreach ($array2 as $key => $value) {
|
175 |
-
if (is_array($value)) {
|
176 |
-
$array1[$key] = self::array_replace_recursive($array1[$key], $value);
|
177 |
-
} else {
|
178 |
-
$array1[$key] = $value;
|
179 |
-
}
|
180 |
-
}
|
181 |
-
return $array1;
|
182 |
-
}
|
183 |
-
|
184 |
-
/**
|
185 |
-
* Main call
|
186 |
-
*
|
187 |
-
* @param string $filename Name of file to write sql dump to
|
188 |
-
* @return null
|
189 |
-
*/
|
190 |
-
public function start($filename = '')
|
191 |
-
{
|
192 |
-
// Output file can be redefined here
|
193 |
-
if (!empty($filename)) {
|
194 |
-
$this->fileName = $filename;
|
195 |
-
}
|
196 |
-
|
197 |
-
// Connect to database
|
198 |
-
$this->connect();
|
199 |
-
|
200 |
-
// Create output file
|
201 |
-
$this->compressManager->open($this->fileName);
|
202 |
-
|
203 |
-
// Write some basic info to output file
|
204 |
-
$this->compressManager->write($this->getDumpFileHeader());
|
205 |
-
|
206 |
-
$this->compressManager->write('/* # site_url: '.site_url().' */;'.PHP_EOL);
|
207 |
-
$this->compressManager->write('/* # home_url: '.home_url().' */;'.PHP_EOL);
|
208 |
-
$this->compressManager->write('/* # content_url: '.content_url().' */;'.PHP_EOL);
|
209 |
-
$upload_dir = wp_upload_dir();
|
210 |
-
$this->compressManager->write('/* # upload_url: '.$upload_dir['baseurl'].' */;'.PHP_EOL);
|
211 |
-
global $wpdb;
|
212 |
-
if (is_multisite() && !defined('MULTISITE'))
|
213 |
-
{
|
214 |
-
$prefix = $wpdb->base_prefix;
|
215 |
-
} else {
|
216 |
-
$prefix = $wpdb->get_blog_prefix(0);
|
217 |
-
}
|
218 |
-
$this->compressManager->write('/* # table_prefix: '.$prefix.' */;'.PHP_EOL.PHP_EOL.PHP_EOL);
|
219 |
-
|
220 |
-
// Store server settings and use sanner defaults to dump
|
221 |
-
$this->compressManager->write(
|
222 |
-
$this->typeAdapter->backup_parameters($this->dumpSettings)
|
223 |
-
);
|
224 |
-
|
225 |
-
// Get table, view and trigger structures from database
|
226 |
-
$this->getDatabaseStructure();
|
227 |
-
|
228 |
-
// If there still are some tables/views in include-tables array,
|
229 |
-
// that means that some tables or views weren't found.
|
230 |
-
// Give proper error and exit.
|
231 |
-
// This check will be removed once include-tables supports regexps
|
232 |
-
if (0 < count($this->dumpSettings['include-tables']))
|
233 |
-
{
|
234 |
-
$name = implode(",", $this->dumpSettings['include-tables']);
|
235 |
-
throw new Exception("Table (" . $name . ") not found in database");
|
236 |
-
}
|
237 |
-
|
238 |
-
$this->exportTables();
|
239 |
-
|
240 |
-
// Restore saved parameters
|
241 |
-
$this->compressManager->write(
|
242 |
-
$this->typeAdapter->restore_parameters($this->dumpSettings)
|
243 |
-
);
|
244 |
-
// Write some stats to output file
|
245 |
-
$this->compressManager->write($this->getDumpFileFooter());
|
246 |
-
// Close output file
|
247 |
-
$this->compressManager->close();
|
248 |
-
}
|
249 |
-
|
250 |
-
/**
|
251 |
-
* Reads table and views names from database.
|
252 |
-
* Fills $this->tables array so they will be dumped later.
|
253 |
-
*
|
254 |
-
* @return null
|
255 |
-
*/
|
256 |
-
private function getDatabaseStructure()
|
257 |
-
{
|
258 |
-
// Listing all tables from database
|
259 |
-
if (empty($this->dumpSettings['include-tables']))
|
260 |
-
{
|
261 |
-
// include all tables for now, blacklisting happens later
|
262 |
-
|
263 |
-
$rows=$this->query($this->typeAdapter->show_tables($this->dbName));
|
264 |
-
|
265 |
-
foreach ($rows as $row)
|
266 |
-
{
|
267 |
-
array_push($this->tables, current($row));
|
268 |
-
}
|
269 |
-
} else {
|
270 |
-
// include only the tables mentioned in include-tables
|
271 |
-
$rows=$this->query($this->typeAdapter->show_tables($this->dbName));
|
272 |
-
foreach ($rows as $row)
|
273 |
-
{
|
274 |
-
if (in_array(current($row), $this->dumpSettings['include-tables'], true))
|
275 |
-
{
|
276 |
-
array_push($this->tables, current($row));
|
277 |
-
$elem = array_search(
|
278 |
-
current($row),
|
279 |
-
$this->dumpSettings['include-tables']
|
280 |
-
);
|
281 |
-
unset($this->dumpSettings['include-tables'][$elem]);
|
282 |
-
}
|
283 |
-
}
|
284 |
-
}
|
285 |
-
}
|
286 |
-
|
287 |
-
/**
|
288 |
-
* Returns header for dump file
|
289 |
-
*
|
290 |
-
* @return string
|
291 |
-
*/
|
292 |
-
private function getDumpFileHeader()
|
293 |
-
{
|
294 |
-
$header = '';
|
295 |
-
if ( !$this->dumpSettings['skip-comments'] ) {
|
296 |
-
// Some info about software, source and time
|
297 |
-
$header = "-- mysqldump-php https://github.com/ifsnop/mysqldump-php" . PHP_EOL .
|
298 |
-
"--" . PHP_EOL .
|
299 |
-
"-- Host: {$this->host}\tDatabase: {$this->dbName}" . PHP_EOL .
|
300 |
-
"-- ------------------------------------------------------" . PHP_EOL;
|
301 |
-
|
302 |
-
if ( !empty($this->version) ) {
|
303 |
-
$header .= "-- Server version \t" . $this->version . PHP_EOL;
|
304 |
-
}
|
305 |
-
|
306 |
-
if ( !$this->dumpSettings['skip-dump-date'] ) {
|
307 |
-
$header .= "-- Date: " . date('r') . PHP_EOL . PHP_EOL;
|
308 |
-
}
|
309 |
-
}
|
310 |
-
return $header;
|
311 |
-
}
|
312 |
-
|
313 |
-
private function connect()
|
314 |
-
{
|
315 |
-
// Connecting with PDO
|
316 |
-
global $wpdb;
|
317 |
-
|
318 |
-
$this->host=DB_HOST;
|
319 |
-
$this->dbName=DB_NAME;
|
320 |
-
$this->version=$wpdb->db_version();
|
321 |
-
|
322 |
-
$this->dbType='wpdb';
|
323 |
-
$this->dbHandler=$wpdb;
|
324 |
-
|
325 |
-
$this->typeAdapter = TypeAdapterFactory::create($this->dbType, $this->dbHandler);
|
326 |
-
}
|
327 |
-
|
328 |
-
public function query($query_string)
|
329 |
-
{
|
330 |
-
$this->last_query_string=$query_string;
|
331 |
-
return $this->typeAdapter->query($query_string);
|
332 |
-
}
|
333 |
-
|
334 |
-
/**
|
335 |
-
* Returns footer for dump file
|
336 |
-
*
|
337 |
-
* @return string
|
338 |
-
*/
|
339 |
-
private function getDumpFileFooter()
|
340 |
-
{
|
341 |
-
$footer = '';
|
342 |
-
if (!$this->dumpSettings['skip-comments']) {
|
343 |
-
$footer .= '-- Dump completed';
|
344 |
-
if (!$this->dumpSettings['skip-dump-date']) {
|
345 |
-
$footer .= ' on: ' . date('r');
|
346 |
-
}
|
347 |
-
$footer .= PHP_EOL;
|
348 |
-
}
|
349 |
-
|
350 |
-
return $footer;
|
351 |
-
}
|
352 |
-
|
353 |
-
/**
|
354 |
-
* Compare if $table name matches with a definition inside $arr
|
355 |
-
* @param $table string
|
356 |
-
* @param $arr array with strings or patterns
|
357 |
-
* @return bool
|
358 |
-
*/
|
359 |
-
private function matches($table, $arr) {
|
360 |
-
$match = false;
|
361 |
-
|
362 |
-
foreach ($arr as $pattern) {
|
363 |
-
if ( '/' != $pattern[0] ) {
|
364 |
-
continue;
|
365 |
-
}
|
366 |
-
if ( 1 == preg_match($pattern, $table) ) {
|
367 |
-
$match = true;
|
368 |
-
}
|
369 |
-
}
|
370 |
-
|
371 |
-
return in_array($table, $arr) || $match;
|
372 |
-
}
|
373 |
-
|
374 |
-
/**
|
375 |
-
* Exports all the tables selected from database
|
376 |
-
*
|
377 |
-
* @return null
|
378 |
-
*/
|
379 |
-
private function exportTables()
|
380 |
-
{
|
381 |
-
// Exporting tables one by one
|
382 |
-
$i=0;
|
383 |
-
$i_step=0;
|
384 |
-
if($this->task_id!=='')
|
385 |
-
{
|
386 |
-
$options_name[]='backup_options';
|
387 |
-
$options_name[]='ismerge';
|
388 |
-
$options=WPvivid_taskmanager::get_task_options($this->task_id,$options_name);
|
389 |
-
if($options['ismerge'])
|
390 |
-
{
|
391 |
-
if(isset($options['backup_options']['backup']['backup_type'])) {
|
392 |
-
$i_step = intval(1 / (sizeof($options['backup_options']['backup']['backup_type']) + 1) * 100);
|
393 |
-
}
|
394 |
-
else{
|
395 |
-
$i_step = intval(1 / (sizeof($options['backup_options']['backup']) + 1) * 100);
|
396 |
-
}
|
397 |
-
}
|
398 |
-
else
|
399 |
-
{
|
400 |
-
if(isset($options['backup_options']['backup']['backup_type'])) {
|
401 |
-
$i_step = intval(1 / sizeof($options['backup_options']['backup']['backup_type']) * 100);
|
402 |
-
}
|
403 |
-
else{
|
404 |
-
$i_step = intval(1 / sizeof($options['backup_options']['backup']) * 100);
|
405 |
-
}
|
406 |
-
}
|
407 |
-
}
|
408 |
-
|
409 |
-
foreach ($this->tables as $table)
|
410 |
-
{
|
411 |
-
if ( $this->matches($table, $this->dumpSettings['exclude-tables']) )
|
412 |
-
{
|
413 |
-
continue;
|
414 |
-
}
|
415 |
-
|
416 |
-
if($this->task_id!=='')
|
417 |
-
{
|
418 |
-
$message='Preparing to dump table '.$table;
|
419 |
-
global $wpvivid_plugin;
|
420 |
-
$wpvivid_plugin->wpvivid_log->WriteLog($message,'notice');
|
421 |
-
WPvivid_taskmanager::update_backup_sub_task_progress($this->task_id,'backup',WPVIVID_BACKUP_TYPE_DB,0,$message);
|
422 |
-
}
|
423 |
-
|
424 |
-
$this->getTableStructure($table);
|
425 |
-
if ( false === $this->dumpSettings['no-data'] ) { // don't break compatibility with old trigger
|
426 |
-
$this->listValues($table);
|
427 |
-
} else if ( true === $this->dumpSettings['no-data']
|
428 |
-
|| $this->matches($table, $this->dumpSettings['no-data']) ) {
|
429 |
-
continue;
|
430 |
-
} else {
|
431 |
-
$this->listValues($table);
|
432 |
-
}
|
433 |
-
$i++;
|
434 |
-
if($this->task_id!=='')
|
435 |
-
{
|
436 |
-
$i_progress=intval($i/sizeof($this->tables)*$i_step);
|
437 |
-
WPvivid_taskmanager::update_backup_main_task_progress($this->task_id,'backup',$i_progress,0);
|
438 |
-
}
|
439 |
-
}
|
440 |
-
return ;
|
441 |
-
}
|
442 |
-
|
443 |
-
/**
|
444 |
-
* Table structure extractor
|
445 |
-
*
|
446 |
-
* @todo move specific mysql code to typeAdapter
|
447 |
-
* @param string $tableName Name of table to export
|
448 |
-
* @return null
|
449 |
-
*/
|
450 |
-
private function getTableStructure($tableName)
|
451 |
-
{
|
452 |
-
if (!$this->dumpSettings['no-create-info']) {
|
453 |
-
$ret = '';
|
454 |
-
if (!$this->dumpSettings['skip-comments']) {
|
455 |
-
$ret = "--" . PHP_EOL .
|
456 |
-
"-- Table structure for table `$tableName`" . PHP_EOL .
|
457 |
-
"--" . PHP_EOL . PHP_EOL;
|
458 |
-
}
|
459 |
-
$stmt = $this->typeAdapter->show_create_table($tableName);
|
460 |
-
|
461 |
-
foreach ($this->query($stmt) as $r) {
|
462 |
-
|
463 |
-
$this->compressManager->write($ret);
|
464 |
-
if ($this->dumpSettings['add-drop-table']) {
|
465 |
-
$this->compressManager->write(
|
466 |
-
$this->typeAdapter->drop_table($tableName)
|
467 |
-
);
|
468 |
-
}
|
469 |
-
|
470 |
-
$this->compressManager->write(
|
471 |
-
$this->typeAdapter->create_table($r, $this->dumpSettings)
|
472 |
-
);
|
473 |
-
break;
|
474 |
-
}
|
475 |
-
}
|
476 |
-
$this->tableColumnTypes[$tableName] = $this->getTableColumnTypes($tableName);
|
477 |
-
return;
|
478 |
-
}
|
479 |
-
|
480 |
-
/**
|
481 |
-
* Store column types to create data dumps and for Stand-In tables
|
482 |
-
*
|
483 |
-
* @param string $tableName Name of table to export
|
484 |
-
* @return array type column types detailed
|
485 |
-
*/
|
486 |
-
|
487 |
-
private function getTableColumnTypes($tableName)
|
488 |
-
{
|
489 |
-
$columnTypes = array();
|
490 |
-
$columns = $this->query(
|
491 |
-
$this->typeAdapter->show_columns($tableName)
|
492 |
-
);
|
493 |
-
|
494 |
-
foreach($columns as $key => $col) {
|
495 |
-
$types = $this->typeAdapter->parseColumnType($col);
|
496 |
-
$columnTypes[$col['Field']] = array(
|
497 |
-
'is_numeric'=> $types['is_numeric'],
|
498 |
-
'is_blob' => $types['is_blob'],
|
499 |
-
'type' => $types['type'],
|
500 |
-
'type_sql' => $col['Type'],
|
501 |
-
'is_virtual' => $types['is_virtual']
|
502 |
-
);
|
503 |
-
}
|
504 |
-
|
505 |
-
return $columnTypes;
|
506 |
-
}
|
507 |
-
|
508 |
-
/**
|
509 |
-
* Table rows extractor
|
510 |
-
*
|
511 |
-
* @param string $tableName Name of table to export
|
512 |
-
*
|
513 |
-
* @return null
|
514 |
-
*/
|
515 |
-
private function listValues($tableName)
|
516 |
-
{
|
517 |
-
$this->prepareListValues($tableName);
|
518 |
-
|
519 |
-
$onlyOnce = true;
|
520 |
-
$lineSize = 0;
|
521 |
-
|
522 |
-
$colStmt = $this->getColumnStmt($tableName);
|
523 |
-
|
524 |
-
global $wpdb;
|
525 |
-
$prefix=$wpdb->base_prefix;
|
526 |
-
|
527 |
-
if(substr($tableName, strlen($prefix))=='options')
|
528 |
-
{
|
529 |
-
$stmt = "SELECT " . implode(",", $colStmt) . " FROM `$tableName` WHERE option_name !='wpvivid_task_list'";
|
530 |
-
}
|
531 |
-
else
|
532 |
-
{
|
533 |
-
$stmt = "SELECT " . implode(",", $colStmt) . " FROM `$tableName`";
|
534 |
-
}
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
if ($this->dumpSettings['where']) {
|
539 |
-
$stmt .= " WHERE {$this->dumpSettings['where']}";
|
540 |
-
}
|
541 |
-
|
542 |
-
$resultSet = $this->query($stmt);
|
543 |
-
|
544 |
-
$i=0;
|
545 |
-
$i_check_cancel=0;
|
546 |
-
$count=0;
|
547 |
-
foreach ($resultSet as $row)
|
548 |
-
{
|
549 |
-
$i++;
|
550 |
-
$vals = $this->escape($tableName, $row);
|
551 |
-
|
552 |
-
foreach($vals as $key => $value){
|
553 |
-
if($value === '\'0000-00-00 00:00:00\'')
|
554 |
-
$vals[$key] = '\'1991-01-01 00:00:00\'';
|
555 |
-
}
|
556 |
-
|
557 |
-
if ($onlyOnce || !$this->dumpSettings['extended-insert'])
|
558 |
-
{
|
559 |
-
|
560 |
-
if ($this->dumpSettings['complete-insert'])
|
561 |
-
{
|
562 |
-
$lineSize += $this->compressManager->write(
|
563 |
-
"INSERT INTO `$tableName` (" .
|
564 |
-
implode(", ", $colStmt) .
|
565 |
-
") VALUES (" . implode(",", $vals) . ")"
|
566 |
-
);
|
567 |
-
} else {
|
568 |
-
$lineSize += $this->compressManager->write(
|
569 |
-
"INSERT INTO `$tableName` VALUES (" . implode(",", $vals) . ")"
|
570 |
-
);
|
571 |
-
}
|
572 |
-
$onlyOnce = false;
|
573 |
-
} else {
|
574 |
-
$lineSize += $this->compressManager->write(",(" . implode(",", $vals) . ")");
|
575 |
-
}
|
576 |
-
if (($lineSize > $this->dumpSettings['net_buffer_length']) ||
|
577 |
-
!$this->dumpSettings['extended-insert']) {
|
578 |
-
$onlyOnce = true;
|
579 |
-
$lineSize = $this->compressManager->write(";" . PHP_EOL);
|
580 |
-
}
|
581 |
-
|
582 |
-
if($i>=200000)
|
583 |
-
{
|
584 |
-
$count+=$i;
|
585 |
-
$i=0;
|
586 |
-
if($this->task_id!=='')
|
587 |
-
{
|
588 |
-
$i_check_cancel++;
|
589 |
-
if($i_check_cancel>5)
|
590 |
-
{
|
591 |
-
$i_check_cancel=0;
|
592 |
-
global $wpvivid_plugin;
|
593 |
-
$wpvivid_plugin->check_cancel_backup($this->task_id);
|
594 |
-
}
|
595 |
-
$message='Dumping table '.$tableName.', rows dumped: '.$count.' rows.';
|
596 |
-
WPvivid_taskmanager::update_backup_sub_task_progress($this->task_id,'backup',WPVIVID_BACKUP_TYPE_DB,0,$message);
|
597 |
-
}
|
598 |
-
}
|
599 |
-
}
|
600 |
-
unset($resultSet);
|
601 |
-
|
602 |
-
if (!$onlyOnce) {
|
603 |
-
$this->compressManager->write(";" . PHP_EOL);
|
604 |
-
}
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
$this->endListValues($tableName);
|
609 |
-
}
|
610 |
-
|
611 |
-
/**
|
612 |
-
* Table rows extractor, append information prior to dump
|
613 |
-
*
|
614 |
-
* @param string $tableName Name of table to export
|
615 |
-
*
|
616 |
-
* @return null
|
617 |
-
*/
|
618 |
-
function prepareListValues($tableName)
|
619 |
-
{
|
620 |
-
if (!$this->dumpSettings['skip-comments']) {
|
621 |
-
$this->compressManager->write(
|
622 |
-
"--" . PHP_EOL .
|
623 |
-
"-- Dumping data for table `$tableName`" . PHP_EOL .
|
624 |
-
"--" . PHP_EOL . PHP_EOL
|
625 |
-
);
|
626 |
-
}
|
627 |
-
|
628 |
-
if ($this->dumpSettings['single-transaction']) {
|
629 |
-
$this->typeAdapter->exec($this->typeAdapter->setup_transaction());
|
630 |
-
$this->typeAdapter->exec($this->typeAdapter->start_transaction());
|
631 |
-
}
|
632 |
-
|
633 |
-
if ($this->dumpSettings['lock-tables']) {
|
634 |
-
if($this -> privileges['LOCK TABLES'] == 0){
|
635 |
-
global $wpvivid_plugin;
|
636 |
-
$wpvivid_plugin->wpvivid_log->WriteLog('The lack of LOCK TABLES privilege, the backup will skip lock_tables() to continue.','notice');
|
637 |
-
}else{
|
638 |
-
$this->typeAdapter->lock_table($tableName);
|
639 |
-
}
|
640 |
-
}
|
641 |
-
|
642 |
-
if ($this->dumpSettings['add-locks']) {
|
643 |
-
$this->compressManager->write(
|
644 |
-
$this->typeAdapter->start_add_lock_table($tableName)
|
645 |
-
);
|
646 |
-
}
|
647 |
-
|
648 |
-
if ($this->dumpSettings['disable-keys']) {
|
649 |
-
$this->compressManager->write(
|
650 |
-
$this->typeAdapter->start_add_disable_keys($tableName)
|
651 |
-
);
|
652 |
-
}
|
653 |
-
|
654 |
-
// Disable autocommit for faster reload
|
655 |
-
if ($this->dumpSettings['no-autocommit']) {
|
656 |
-
$this->compressManager->write(
|
657 |
-
$this->typeAdapter->start_disable_autocommit()
|
658 |
-
);
|
659 |
-
}
|
660 |
-
|
661 |
-
return;
|
662 |
-
}
|
663 |
-
|
664 |
-
/**
|
665 |
-
* Build SQL List of all columns on current table
|
666 |
-
*
|
667 |
-
* @param string $tableName Name of table to get columns
|
668 |
-
*
|
669 |
-
* @return string SQL sentence with columns
|
670 |
-
*/
|
671 |
-
function getColumnStmt($tableName)
|
672 |
-
{
|
673 |
-
$colStmt = array();
|
674 |
-
foreach($this->tableColumnTypes[$tableName] as $colName => $colType) {
|
675 |
-
if ($colType['type'] == 'bit' && $this->dumpSettings['hex-blob']) {
|
676 |
-
$colStmt[] = "LPAD(HEX(`${colName}`),2,'0') AS `${colName}`";
|
677 |
-
} else if ($colType['is_blob'] && $this->dumpSettings['hex-blob']) {
|
678 |
-
$colStmt[] = "HEX(`${colName}`) AS `${colName}`";
|
679 |
-
} else if ($colType['is_virtual']) {
|
680 |
-
$this->dumpSettings['complete-insert'] = true;
|
681 |
-
continue;
|
682 |
-
} else {
|
683 |
-
$colStmt[] = "`${colName}`";
|
684 |
-
}
|
685 |
-
}
|
686 |
-
|
687 |
-
return $colStmt;
|
688 |
-
}
|
689 |
-
|
690 |
-
/**
|
691 |
-
* Escape values with quotes when needed
|
692 |
-
*
|
693 |
-
* @param string $tableName Name of table which contains rows
|
694 |
-
* @param array $row Associative array of column names and values to be quoted
|
695 |
-
*
|
696 |
-
* @return string
|
697 |
-
*/
|
698 |
-
private function escape($tableName, $row)
|
699 |
-
{
|
700 |
-
$ret = array();
|
701 |
-
$columnTypes = $this->tableColumnTypes[$tableName];
|
702 |
-
|
703 |
-
foreach ($row as $colName => $colValue) {
|
704 |
-
if (is_null($colValue)) {
|
705 |
-
$ret[] = "NULL";
|
706 |
-
} elseif ($this->dumpSettings['hex-blob'] && $columnTypes[$colName]['is_blob']) {
|
707 |
-
if ($columnTypes[$colName]['type'] == 'bit' || !empty($colValue)) {
|
708 |
-
$ret[] = "0x${colValue}";
|
709 |
-
} else {
|
710 |
-
$ret[] = "''";
|
711 |
-
}
|
712 |
-
} elseif ($columnTypes[$colName]['is_numeric']) {
|
713 |
-
$ret[] = $colValue;
|
714 |
-
} else {
|
715 |
-
$ret[] = $this->quote($colValue);
|
716 |
-
}
|
717 |
-
}
|
718 |
-
return $ret;
|
719 |
-
}
|
720 |
-
|
721 |
-
public function quote($value)
|
722 |
-
{
|
723 |
-
$search = array("\x00", "\x0a", "\x0d", "\x1a");
|
724 |
-
$replace = array('\0', '\n', '\r', '\Z');
|
725 |
-
$value=str_replace('\\', '\\\\', $value);
|
726 |
-
$value=str_replace('\'', '\\\'', $value);
|
727 |
-
$value= "'" . str_replace($search, $replace, $value) . "'";
|
728 |
-
return $value;
|
729 |
-
}
|
730 |
-
/**
|
731 |
-
* Table rows extractor, close locks and commits after dump
|
732 |
-
*
|
733 |
-
* @param string $tableName Name of table to export
|
734 |
-
*
|
735 |
-
* @return null
|
736 |
-
*/
|
737 |
-
function endListValues($tableName)
|
738 |
-
{
|
739 |
-
if ($this->dumpSettings['disable-keys']) {
|
740 |
-
$this->compressManager->write(
|
741 |
-
$this->typeAdapter->end_add_disable_keys($tableName)
|
742 |
-
);
|
743 |
-
}
|
744 |
-
|
745 |
-
if ($this->dumpSettings['add-locks']) {
|
746 |
-
$this->compressManager->write(
|
747 |
-
$this->typeAdapter->end_add_lock_table($tableName)
|
748 |
-
);
|
749 |
-
}
|
750 |
-
|
751 |
-
if ($this->dumpSettings['single-transaction']) {
|
752 |
-
$this->typeAdapter->exec($this->typeAdapter->commit_transaction());
|
753 |
-
}
|
754 |
-
|
755 |
-
if ($this->dumpSettings['lock-tables']) {
|
756 |
-
$this->typeAdapter->unlock_table($tableName);
|
757 |
-
}
|
758 |
-
|
759 |
-
// Commit to enable autocommit
|
760 |
-
if ($this->dumpSettings['no-autocommit']) {
|
761 |
-
$this->compressManager->write(
|
762 |
-
$this->typeAdapter->end_disable_autocommit()
|
763 |
-
);
|
764 |
-
}
|
765 |
-
|
766 |
-
$this->compressManager->write(PHP_EOL);
|
767 |
-
|
768 |
-
return;
|
769 |
-
}
|
770 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/class-wpvivid-mysqldump.php
CHANGED
@@ -131,7 +131,11 @@ class WPvivid_Mysqldump
|
|
131 |
'skip-dump-date' => false,
|
132 |
'where' => '',
|
133 |
/* deprecated */
|
134 |
-
'disable-foreign-keys-check' => true
|
|
|
|
|
|
|
|
|
135 |
);
|
136 |
|
137 |
if(defined('DB_CHARSET'))
|
@@ -332,19 +336,12 @@ class WPvivid_Mysqldump
|
|
332 |
// Write some basic info to output file
|
333 |
$this->compressManager->write($this->getDumpFileHeader());
|
334 |
|
335 |
-
$this->compressManager->write('/* # site_url: '
|
336 |
-
$this->compressManager->write('/* # home_url: '
|
337 |
-
$this->compressManager->write('/* # content_url: '
|
338 |
$upload_dir = wp_upload_dir();
|
339 |
$this->compressManager->write('/* # upload_url: '.$upload_dir['baseurl'].' */;'.PHP_EOL);
|
340 |
-
|
341 |
-
if (is_multisite() && !defined('MULTISITE'))
|
342 |
-
{
|
343 |
-
$prefix = $wpdb->base_prefix;
|
344 |
-
} else {
|
345 |
-
$prefix = $wpdb->get_blog_prefix(0);
|
346 |
-
}
|
347 |
-
$this->compressManager->write('/* # table_prefix: '.$prefix.' */;'.PHP_EOL.PHP_EOL.PHP_EOL);
|
348 |
|
349 |
// Store server settings and use sanner defaults to dump
|
350 |
$this->compressManager->write(
|
@@ -714,8 +711,8 @@ class WPvivid_Mysqldump
|
|
714 |
}
|
715 |
$stmt = $this->typeAdapter->show_create_table($tableName);
|
716 |
|
717 |
-
foreach ($this->query($stmt) as $r)
|
718 |
-
|
719 |
$this->compressManager->write($ret);
|
720 |
if ($this->dumpSettings['add-drop-table']) {
|
721 |
$this->compressManager->write(
|
131 |
'skip-dump-date' => false,
|
132 |
'where' => '',
|
133 |
/* deprecated */
|
134 |
+
'disable-foreign-keys-check' => true,
|
135 |
+
'site_url'=>'',
|
136 |
+
'home_url'=>'',
|
137 |
+
'content_url'=>'',
|
138 |
+
'prefix'=>''
|
139 |
);
|
140 |
|
141 |
if(defined('DB_CHARSET'))
|
336 |
// Write some basic info to output file
|
337 |
$this->compressManager->write($this->getDumpFileHeader());
|
338 |
|
339 |
+
$this->compressManager->write('/* # site_url: '.$this->dumpSettings['site_url'].' */;'.PHP_EOL);
|
340 |
+
$this->compressManager->write('/* # home_url: '.$this->dumpSettings['home_url'].' */;'.PHP_EOL);
|
341 |
+
$this->compressManager->write('/* # content_url: '.$this->dumpSettings['content_url'].' */;'.PHP_EOL);
|
342 |
$upload_dir = wp_upload_dir();
|
343 |
$this->compressManager->write('/* # upload_url: '.$upload_dir['baseurl'].' */;'.PHP_EOL);
|
344 |
+
$this->compressManager->write('/* # table_prefix: '.$this->dumpSettings['prefix'].' */;'.PHP_EOL.PHP_EOL.PHP_EOL);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
345 |
|
346 |
// Store server settings and use sanner defaults to dump
|
347 |
$this->compressManager->write(
|
711 |
}
|
712 |
$stmt = $this->typeAdapter->show_create_table($tableName);
|
713 |
|
714 |
+
foreach ($this->query($stmt) as $r)
|
715 |
+
{
|
716 |
$this->compressManager->write($ret);
|
717 |
if ($this->dumpSettings['add-drop-table']) {
|
718 |
$this->compressManager->write(
|
includes/class-wpvivid-public-interface.php
CHANGED
@@ -57,7 +57,7 @@ class WPvivid_Public_Interface
|
|
57 |
global $wpvivid_plugin;
|
58 |
if (!isset($task_id)||empty($task_id)||!is_string($task_id))
|
59 |
{
|
60 |
-
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid');
|
61 |
return $ret;
|
62 |
}
|
63 |
$task_id=sanitize_key($task_id);
|
@@ -200,7 +200,7 @@ class WPvivid_Public_Interface
|
|
200 |
$file = fopen($ret['log_file'], 'r');
|
201 |
if (!$file) {
|
202 |
$ret['result'] = 'failed';
|
203 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
204 |
return $ret;
|
205 |
}
|
206 |
$buffer = '';
|
@@ -221,7 +221,7 @@ class WPvivid_Public_Interface
|
|
221 |
if(!isset($log_file_name)||empty($log_file_name)||!is_string($log_file_name))
|
222 |
{
|
223 |
$ret['result']='failed';
|
224 |
-
$ret['error']=__('Reading the log failed. Please try again.', 'wpvivid');
|
225 |
return $ret;
|
226 |
}
|
227 |
$log_file_name=sanitize_text_field($log_file_name);
|
@@ -230,7 +230,7 @@ class WPvivid_Public_Interface
|
|
230 |
$file = fopen($ret['log_file'], 'r');
|
231 |
if (!$file) {
|
232 |
$ret['result'] = 'failed';
|
233 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
234 |
return $ret;
|
235 |
}
|
236 |
$buffer = '';
|
@@ -259,7 +259,7 @@ class WPvivid_Public_Interface
|
|
259 |
$file = fopen($ret['log_file'], 'r');
|
260 |
if (!$file) {
|
261 |
$ret['result'] = 'failed';
|
262 |
-
$ret['error'] = __('Unable to open the log file.', 'wpvivid');
|
263 |
return $ret;
|
264 |
}
|
265 |
$buffer = '';
|
57 |
global $wpvivid_plugin;
|
58 |
if (!isset($task_id)||empty($task_id)||!is_string($task_id))
|
59 |
{
|
60 |
+
$ret['error']=__('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid-backuprestore');
|
61 |
return $ret;
|
62 |
}
|
63 |
$task_id=sanitize_key($task_id);
|
200 |
$file = fopen($ret['log_file'], 'r');
|
201 |
if (!$file) {
|
202 |
$ret['result'] = 'failed';
|
203 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
204 |
return $ret;
|
205 |
}
|
206 |
$buffer = '';
|
221 |
if(!isset($log_file_name)||empty($log_file_name)||!is_string($log_file_name))
|
222 |
{
|
223 |
$ret['result']='failed';
|
224 |
+
$ret['error']=__('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
225 |
return $ret;
|
226 |
}
|
227 |
$log_file_name=sanitize_text_field($log_file_name);
|
230 |
$file = fopen($ret['log_file'], 'r');
|
231 |
if (!$file) {
|
232 |
$ret['result'] = 'failed';
|
233 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
234 |
return $ret;
|
235 |
}
|
236 |
$buffer = '';
|
259 |
$file = fopen($ret['log_file'], 'r');
|
260 |
if (!$file) {
|
261 |
$ret['result'] = 'failed';
|
262 |
+
$ret['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
263 |
return $ret;
|
264 |
}
|
265 |
$buffer = '';
|
includes/class-wpvivid-restore-database.php
CHANGED
@@ -17,8 +17,10 @@ class WPvivid_RestoreDB
|
|
17 |
private $default_charsets;
|
18 |
private $default_collates;
|
19 |
private $old_prefix;
|
|
|
20 |
private $new_prefix;
|
21 |
|
|
|
22 |
private $old_site_url;
|
23 |
private $old_home_url;
|
24 |
private $old_content_url;
|
@@ -84,6 +86,9 @@ class WPvivid_RestoreDB
|
|
84 |
$result = $this->execute_sql_file($path . $sql_file, $options);
|
85 |
|
86 |
$this->enable_plugins();
|
|
|
|
|
|
|
87 |
unset($this->db_method);
|
88 |
//do_action('wpvivid_restore_database_finish',$options);
|
89 |
}
|
@@ -94,6 +99,28 @@ class WPvivid_RestoreDB
|
|
94 |
}
|
95 |
}
|
96 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
private function execute_extra_sql_file($file, $options){
|
98 |
global $wpvivid_plugin;
|
99 |
$wpvivid_plugin->restore_data->write_log('Start import additional sql file.','notice');
|
@@ -122,9 +149,11 @@ class WPvivid_RestoreDB
|
|
122 |
$plugin_list=array();
|
123 |
$plugin_list[]='wpvivid-backuprestore/wpvivid-backuprestore.php';
|
124 |
$plugin_list=apply_filters('wpvivid_enable_plugins_list',$plugin_list);
|
125 |
-
//$plugin_list[]='WPvivid_backup_premium/WPvivid_backup_premium.php';
|
126 |
|
127 |
-
|
|
|
|
|
|
|
128 |
}
|
129 |
|
130 |
private function execute_sql_file($file,$option)
|
@@ -208,6 +237,11 @@ class WPvivid_RestoreDB
|
|
208 |
else
|
209 |
{
|
210 |
$this->old_prefix='';
|
|
|
|
|
|
|
|
|
|
|
211 |
$this->new_prefix=$wpdb->base_prefix;
|
212 |
|
213 |
$this->old_site_url='';
|
@@ -395,7 +429,17 @@ class WPvivid_RestoreDB
|
|
395 |
if (preg_match('/^\s*LOCK TABLES +\`?([^\`]*)\`?/i', $query, $matches))
|
396 |
{
|
397 |
$table_name = $matches[1];
|
398 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
399 |
$wpvivid_plugin->restore_data->write_log('lock replace table:'.$table_name.' to :'.$new_table_name,'notice');
|
400 |
$query=str_replace($table_name,$new_table_name,$query);
|
401 |
}
|
@@ -427,7 +471,15 @@ class WPvivid_RestoreDB
|
|
427 |
|
428 |
if(!empty($this->old_prefix)&&$this->old_prefix!=$this->new_prefix)
|
429 |
{
|
430 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
431 |
$query=str_replace($table_name,$new_table_name,$query);
|
432 |
$wpvivid_plugin->restore_data->write_log('Create table '.$new_table_name,'notice');
|
433 |
$table_name=$new_table_name;
|
@@ -755,7 +807,16 @@ class WPvivid_RestoreDB
|
|
755 |
if (preg_match('/^\s*INSERT INTO +\`?([^\`]*)\`?/i', $query, $matches))
|
756 |
{
|
757 |
$table_name = $matches[1];
|
758 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
759 |
$query=str_replace($table_name,$new_table_name,$query);
|
760 |
}
|
761 |
}
|
@@ -771,8 +832,18 @@ class WPvivid_RestoreDB
|
|
771 |
if (preg_match('/^\s*DROP TABLE IF EXISTS +\`?([^\`]*)\`?\s*;/i', $query, $matches))
|
772 |
{
|
773 |
$table_name = $matches[1];
|
774 |
-
|
775 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
776 |
$query=str_replace($table_name,$new_table_name,$query);
|
777 |
}
|
778 |
}
|
@@ -816,6 +887,19 @@ class WPvivid_RestoreDB
|
|
816 |
}
|
817 |
}
|
818 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
819 |
if($this->old_site_url==$this->new_site_url)
|
820 |
return ;
|
821 |
|
17 |
private $default_charsets;
|
18 |
private $default_collates;
|
19 |
private $old_prefix;
|
20 |
+
private $old_base_prefix;
|
21 |
private $new_prefix;
|
22 |
|
23 |
+
|
24 |
private $old_site_url;
|
25 |
private $old_home_url;
|
26 |
private $old_content_url;
|
86 |
$result = $this->execute_sql_file($path . $sql_file, $options);
|
87 |
|
88 |
$this->enable_plugins();
|
89 |
+
|
90 |
+
$this->wpvivid_fix_siteurl_home();
|
91 |
+
|
92 |
unset($this->db_method);
|
93 |
//do_action('wpvivid_restore_database_finish',$options);
|
94 |
}
|
99 |
}
|
100 |
}
|
101 |
|
102 |
+
private function wpvivid_fix_siteurl_home(){
|
103 |
+
global $wpvivid_plugin;
|
104 |
+
$option_table = $this->new_prefix.'options';
|
105 |
+
if($this->old_site_url!=$this->new_site_url)
|
106 |
+
{
|
107 |
+
//siteurl
|
108 |
+
$update_query ='UPDATE '.$option_table.' SET option_value="'.$this->new_site_url.'" WHERE option_name="siteurl";';
|
109 |
+
$wpvivid_plugin->restore_data->write_log($update_query, 'notice');
|
110 |
+
$wpvivid_plugin->restore_data->write_log('update query len:'.strlen($update_query), 'notice');
|
111 |
+
$this->execute_sql($update_query);
|
112 |
+
}
|
113 |
+
|
114 |
+
if($this->old_home_url!=$this->new_home_url)
|
115 |
+
{
|
116 |
+
//home
|
117 |
+
$update_query ='UPDATE '.$option_table.' SET option_value="'.$this->new_home_url.'" WHERE option_name="home";';
|
118 |
+
$wpvivid_plugin->restore_data->write_log($update_query, 'notice');
|
119 |
+
$wpvivid_plugin->restore_data->write_log('update query len:'.strlen($update_query), 'notice');
|
120 |
+
$this->execute_sql($update_query);
|
121 |
+
}
|
122 |
+
}
|
123 |
+
|
124 |
private function execute_extra_sql_file($file, $options){
|
125 |
global $wpvivid_plugin;
|
126 |
$wpvivid_plugin->restore_data->write_log('Start import additional sql file.','notice');
|
149 |
$plugin_list=array();
|
150 |
$plugin_list[]='wpvivid-backuprestore/wpvivid-backuprestore.php';
|
151 |
$plugin_list=apply_filters('wpvivid_enable_plugins_list',$plugin_list);
|
|
|
152 |
|
153 |
+
if(is_multisite())
|
154 |
+
activate_plugins($plugin_list,'',true,true);
|
155 |
+
else
|
156 |
+
activate_plugins($plugin_list,'',false,true);
|
157 |
}
|
158 |
|
159 |
private function execute_sql_file($file,$option)
|
237 |
else
|
238 |
{
|
239 |
$this->old_prefix='';
|
240 |
+
$this->old_base_prefix='';
|
241 |
+
if(isset($option['mu_migrate']))
|
242 |
+
{
|
243 |
+
$this->old_base_prefix=$option['base_prefix'];
|
244 |
+
}
|
245 |
$this->new_prefix=$wpdb->base_prefix;
|
246 |
|
247 |
$this->old_site_url='';
|
429 |
if (preg_match('/^\s*LOCK TABLES +\`?([^\`]*)\`?/i', $query, $matches))
|
430 |
{
|
431 |
$table_name = $matches[1];
|
432 |
+
|
433 |
+
if(!empty($this->old_base_prefix)&&(substr($table_name,strlen($this->old_base_prefix))=='users'||substr($table_name,strlen($this->old_base_prefix))=='usermeta'))
|
434 |
+
{
|
435 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_base_prefix));
|
436 |
+
}
|
437 |
+
else
|
438 |
+
{
|
439 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
440 |
+
}
|
441 |
+
|
442 |
+
//$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
443 |
$wpvivid_plugin->restore_data->write_log('lock replace table:'.$table_name.' to :'.$new_table_name,'notice');
|
444 |
$query=str_replace($table_name,$new_table_name,$query);
|
445 |
}
|
471 |
|
472 |
if(!empty($this->old_prefix)&&$this->old_prefix!=$this->new_prefix)
|
473 |
{
|
474 |
+
if(!empty($this->old_base_prefix)&&(substr($table_name,strlen($this->old_base_prefix))=='users'||substr($table_name,strlen($this->old_base_prefix))=='usermeta'))
|
475 |
+
{
|
476 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_base_prefix));
|
477 |
+
}
|
478 |
+
else
|
479 |
+
{
|
480 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
481 |
+
}
|
482 |
+
|
483 |
$query=str_replace($table_name,$new_table_name,$query);
|
484 |
$wpvivid_plugin->restore_data->write_log('Create table '.$new_table_name,'notice');
|
485 |
$table_name=$new_table_name;
|
807 |
if (preg_match('/^\s*INSERT INTO +\`?([^\`]*)\`?/i', $query, $matches))
|
808 |
{
|
809 |
$table_name = $matches[1];
|
810 |
+
|
811 |
+
if(!empty($this->old_base_prefix)&&(substr($table_name,strlen($this->old_base_prefix))=='users'||substr($table_name,strlen($this->old_base_prefix))=='usermeta'))
|
812 |
+
{
|
813 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_base_prefix));
|
814 |
+
}
|
815 |
+
else
|
816 |
+
{
|
817 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
818 |
+
}
|
819 |
+
//$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
820 |
$query=str_replace($table_name,$new_table_name,$query);
|
821 |
}
|
822 |
}
|
832 |
if (preg_match('/^\s*DROP TABLE IF EXISTS +\`?([^\`]*)\`?\s*;/i', $query, $matches))
|
833 |
{
|
834 |
$table_name = $matches[1];
|
835 |
+
|
836 |
+
if(!empty($this->old_base_prefix)&&(substr($table_name,strlen($this->old_base_prefix))=='users'||substr($table_name,strlen($this->old_base_prefix))=='usermeta'))
|
837 |
+
{
|
838 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_base_prefix));
|
839 |
+
$wpvivid_plugin->restore_data->write_log('find user table:'.$table_name.' to :'.$new_table_name,'notice');
|
840 |
+
}
|
841 |
+
else
|
842 |
+
{
|
843 |
+
$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
844 |
+
}
|
845 |
+
|
846 |
+
//$new_table_name=$this->new_prefix.substr($table_name,strlen($this->old_prefix));
|
847 |
$query=str_replace($table_name,$new_table_name,$query);
|
848 |
}
|
849 |
}
|
887 |
}
|
888 |
}
|
889 |
|
890 |
+
if(!empty($this->old_base_prefix)&&substr($table_name,strlen($this->old_base_prefix))=='usermeta')
|
891 |
+
{
|
892 |
+
if($this->old_base_prefix!=$this->new_prefix)
|
893 |
+
{
|
894 |
+
$update_query ='UPDATE '.$table_name.' SET meta_key=REPLACE(meta_key,"'.$this->old_base_prefix.'","'.$this->new_prefix.'") WHERE meta_key LIKE "'.str_replace('_','\_',$this->old_base_prefix).'%";';
|
895 |
+
|
896 |
+
$wpvivid_plugin->restore_data->write_log($update_query, 'notice');
|
897 |
+
$wpvivid_plugin->restore_data->write_log('update query len:'.strlen($update_query), 'notice');
|
898 |
+
$this->execute_sql($update_query);
|
899 |
+
return ;
|
900 |
+
}
|
901 |
+
}
|
902 |
+
|
903 |
if($this->old_site_url==$this->new_site_url)
|
904 |
return ;
|
905 |
|
includes/class-wpvivid-restore-site.php
CHANGED
@@ -70,14 +70,28 @@ class WPvivid_RestoreSite
|
|
70 |
if (isset($option['root']))
|
71 |
{
|
72 |
$root_path = $this->transfer_path(get_home_path() . $option['root']);
|
73 |
-
}
|
74 |
-
|
|
|
|
|
|
|
75 |
$root_path = $this->transfer_path(WP_CONTENT_DIR);
|
76 |
-
}
|
|
|
|
|
77 |
$root_path = $this->transfer_path(WP_CONTENT_DIR . DIRECTORY_SEPARATOR . WPvivid_Setting::get_backupdir());
|
78 |
-
}
|
|
|
|
|
79 |
$root_path = $this->transfer_path(ABSPATH);
|
80 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
else if($option['root_flag'] == 'wpvivid_mu_upload')
|
82 |
{
|
83 |
if($option['overwrite'])
|
@@ -95,7 +109,7 @@ class WPvivid_RestoreSite
|
|
95 |
|
96 |
$root_path = rtrim($root_path, '/');
|
97 |
$root_path = rtrim($root_path, DIRECTORY_SEPARATOR);
|
98 |
-
|
99 |
$exclude_path[] = $this->transfer_path(WP_CONTENT_DIR . DIRECTORY_SEPARATOR . WPvivid_Setting::get_backupdir());
|
100 |
|
101 |
if (isset($option['include_path'])) {
|
70 |
if (isset($option['root']))
|
71 |
{
|
72 |
$root_path = $this->transfer_path(get_home_path() . $option['root']);
|
73 |
+
}
|
74 |
+
else if (isset($option['root_flag']))
|
75 |
+
{
|
76 |
+
if ($option['root_flag'] == WPVIVID_BACKUP_ROOT_WP_CONTENT)
|
77 |
+
{
|
78 |
$root_path = $this->transfer_path(WP_CONTENT_DIR);
|
79 |
+
}
|
80 |
+
else if ($option['root_flag'] == WPVIVID_BACKUP_ROOT_CUSTOM)
|
81 |
+
{
|
82 |
$root_path = $this->transfer_path(WP_CONTENT_DIR . DIRECTORY_SEPARATOR . WPvivid_Setting::get_backupdir());
|
83 |
+
}
|
84 |
+
else if ($option['root_flag'] == WPVIVID_BACKUP_ROOT_WP_ROOT)
|
85 |
+
{
|
86 |
$root_path = $this->transfer_path(ABSPATH);
|
87 |
}
|
88 |
+
else if($option['root_flag'] == WPVIVID_BACKUP_ROOT_WP_UPLOADS)
|
89 |
+
{
|
90 |
+
$upload_dir = wp_upload_dir();
|
91 |
+
$upload_path = $upload_dir['basedir'];
|
92 |
+
|
93 |
+
$root_path = $this->transfer_path($upload_path);
|
94 |
+
}
|
95 |
else if($option['root_flag'] == 'wpvivid_mu_upload')
|
96 |
{
|
97 |
if($option['overwrite'])
|
109 |
|
110 |
$root_path = rtrim($root_path, '/');
|
111 |
$root_path = rtrim($root_path, DIRECTORY_SEPARATOR);
|
112 |
+
//$wpvivid_plugin->restore_data->write_log('root_path:' . $root_path.' root_flag:'.$option['root_flag'], 'notice');
|
113 |
$exclude_path[] = $this->transfer_path(WP_CONTENT_DIR . DIRECTORY_SEPARATOR . WPvivid_Setting::get_backupdir());
|
114 |
|
115 |
if (isset($option['include_path'])) {
|
includes/class-wpvivid-restore.php
CHANGED
@@ -68,7 +68,6 @@ class WPvivid_Restore
|
|
68 |
$option=$json;
|
69 |
}
|
70 |
$option=array_merge($option,$restore_task['option']);
|
71 |
-
|
72 |
if(isset($restore_task['reset']))
|
73 |
{
|
74 |
$wpvivid_plugin->restore_data->write_log('Start resetting '.$restore_task['reset'],'notice');
|
@@ -86,6 +85,13 @@ class WPvivid_Restore
|
|
86 |
$ret= $restore_site -> restore($option,$restore_task['files']);
|
87 |
if($ret['result']==WPVIVID_SUCCESS)
|
88 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
$path = $backup_item->get_local_path().WPVIVID_DEFAULT_ROLLBACK_DIR.DIRECTORY_SEPARATOR.'wpvivid_old_database'.DIRECTORY_SEPARATOR;
|
90 |
$sql_file = $backup_item->get_sql_file($restore_task['files'][0]);
|
91 |
$wpvivid_plugin->restore_data->write_log('sql file: '.$sql_file,'notice');
|
@@ -114,6 +120,13 @@ class WPvivid_Restore
|
|
114 |
$restore_site = new WPvivid_RestoreSite();
|
115 |
|
116 |
$files=$wpvivid_plugin->restore_data->get_need_unzip_file($restore_task);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
$wpvivid_plugin->restore_data->write_log('Start restoring '.$files[0],'notice');
|
118 |
$ret= $restore_site -> restore($option,$files);
|
119 |
$wpvivid_plugin->restore_data->update_need_unzip_file($restore_task['index'],$files);
|
@@ -122,6 +135,79 @@ class WPvivid_Restore
|
|
122 |
}
|
123 |
}
|
124 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
public function reset_restore($restore_task)
|
126 |
{
|
127 |
$ret['result']=WPVIVID_SUCCESS;
|
68 |
$option=$json;
|
69 |
}
|
70 |
$option=array_merge($option,$restore_task['option']);
|
|
|
71 |
if(isset($restore_task['reset']))
|
72 |
{
|
73 |
$wpvivid_plugin->restore_data->write_log('Start resetting '.$restore_task['reset'],'notice');
|
85 |
$ret= $restore_site -> restore($option,$restore_task['files']);
|
86 |
if($ret['result']==WPVIVID_SUCCESS)
|
87 |
{
|
88 |
+
if(isset($option['is_crypt'])&&$option['is_crypt']=='1')
|
89 |
+
{
|
90 |
+
$sql_file = $backup_item->get_sql_file($restore_task['files'][0]);
|
91 |
+
$local_path=$backup_item->get_local_path();
|
92 |
+
$ret=$this->restore_crypt_db($sql_file,$restore_task,$option,$local_path);
|
93 |
+
return $ret;
|
94 |
+
}
|
95 |
$path = $backup_item->get_local_path().WPVIVID_DEFAULT_ROLLBACK_DIR.DIRECTORY_SEPARATOR.'wpvivid_old_database'.DIRECTORY_SEPARATOR;
|
96 |
$sql_file = $backup_item->get_sql_file($restore_task['files'][0]);
|
97 |
$wpvivid_plugin->restore_data->write_log('sql file: '.$sql_file,'notice');
|
120 |
$restore_site = new WPvivid_RestoreSite();
|
121 |
|
122 |
$files=$wpvivid_plugin->restore_data->get_need_unzip_file($restore_task);
|
123 |
+
$json=$backup_item->get_file_info($files[0]);
|
124 |
+
$option=array();
|
125 |
+
if($json!==false)
|
126 |
+
{
|
127 |
+
$option=$json;
|
128 |
+
}
|
129 |
+
$option=array_merge($option,$restore_task['option']);
|
130 |
$wpvivid_plugin->restore_data->write_log('Start restoring '.$files[0],'notice');
|
131 |
$ret= $restore_site -> restore($option,$files);
|
132 |
$wpvivid_plugin->restore_data->update_need_unzip_file($restore_task['index'],$files);
|
135 |
}
|
136 |
}
|
137 |
|
138 |
+
public function restore_crypt_db($file,$restore_task,$option,$local_path)
|
139 |
+
{
|
140 |
+
$general_setting=WPvivid_Setting::get_setting(true, "");
|
141 |
+
if(isset($general_setting['options']['wpvivid_common_setting']['encrypt_db'])&&$general_setting['options']['wpvivid_common_setting']['encrypt_db'] == '1')
|
142 |
+
{
|
143 |
+
global $wpvivid_plugin;
|
144 |
+
$wpvivid_plugin->restore_data->write_log('Encrypted database detected. Start decrypting database.','notice');
|
145 |
+
|
146 |
+
$general_setting=WPvivid_Setting::get_setting(true, "");
|
147 |
+
$password=$general_setting['options']['wpvivid_common_setting']['encrypt_db_password'];
|
148 |
+
if(empty($password))
|
149 |
+
{
|
150 |
+
$ret['result']=WPVIVID_FAILED;
|
151 |
+
$ret['error']='Failed to decrypt backup. A password was not set in the plugin settings.';
|
152 |
+
return $ret;
|
153 |
+
}
|
154 |
+
|
155 |
+
$crypt=new WPvivid_Crypt_File($password);
|
156 |
+
$path=$local_path.WPVIVID_DEFAULT_ROLLBACK_DIR.DIRECTORY_SEPARATOR.'wpvivid_old_database';
|
157 |
+
|
158 |
+
$ret=$crypt->decrypt($path.DIRECTORY_SEPARATOR.$file);
|
159 |
+
if($ret['result']=='success')
|
160 |
+
{
|
161 |
+
$zip = new WPvivid_ZipClass();
|
162 |
+
$all_files = array();
|
163 |
+
$all_files[] = $ret['file_path'];
|
164 |
+
$file_path=$ret['file_path'];
|
165 |
+
|
166 |
+
$ret= $zip -> extract($all_files,$path);
|
167 |
+
if($ret['result']!=='success')
|
168 |
+
{
|
169 |
+
$ret['error']='Failed to unzip the file. Maybe the password is incorrect. Please check your password and try again.';
|
170 |
+
return $ret;
|
171 |
+
}
|
172 |
+
|
173 |
+
$wpvivid_plugin->restore_data->write_log('Decrypting database successfully. Start restoring database.','notice');
|
174 |
+
|
175 |
+
$files = $zip->list_file($file_path);
|
176 |
+
unset($zip);
|
177 |
+
$sql_file=$files[0]['file_name'];
|
178 |
+
|
179 |
+
$wpvivid_plugin->restore_data->write_log('sql file: '.$sql_file,'notice');
|
180 |
+
$restore_db=new WPvivid_RestoreDB();
|
181 |
+
$check_is_remove = false;
|
182 |
+
$check_is_remove = apply_filters('wpvivid_check_remove_restore_database', $check_is_remove, $option);
|
183 |
+
if(!$check_is_remove)
|
184 |
+
{
|
185 |
+
$ret = $restore_db->restore($path.DIRECTORY_SEPARATOR, $sql_file, $option);
|
186 |
+
@unlink($file_path);
|
187 |
+
$wpvivid_plugin->restore_data->write_log('Finished restoring '.$restore_task['files'][0],'notice');
|
188 |
+
$wpvivid_plugin->restore_data->update_need_unzip_file($restore_task['index'],$restore_task['files']);
|
189 |
+
}
|
190 |
+
else{
|
191 |
+
@unlink($file_path);
|
192 |
+
$wpvivid_plugin->restore_data->write_log('Remove file: '.$path.$sql_file, 'notice');
|
193 |
+
$wpvivid_plugin->restore_data->update_need_unzip_file($restore_task['index'],$restore_task['files']);
|
194 |
+
$ret['result']=WPVIVID_SUCCESS;
|
195 |
+
}
|
196 |
+
return $ret;
|
197 |
+
}
|
198 |
+
else
|
199 |
+
{
|
200 |
+
return $ret;
|
201 |
+
}
|
202 |
+
}
|
203 |
+
else
|
204 |
+
{
|
205 |
+
$ret['result']=WPVIVID_FAILED;
|
206 |
+
$ret['error']='Failed to decrypt backup. A password was not set in the plugin settings.';
|
207 |
+
return $ret;
|
208 |
+
}
|
209 |
+
}
|
210 |
+
|
211 |
public function reset_restore($restore_task)
|
212 |
{
|
213 |
$ret['result']=WPVIVID_SUCCESS;
|
includes/class-wpvivid-schedule.php
CHANGED
@@ -88,19 +88,19 @@ class WPvivid_Schedule
|
|
88 |
if($schedule_check['result']){
|
89 |
$html.=' <label><input type="radio" option="schedule" name="recurrence" value="'.$schedule_check['type'].'" />';
|
90 |
if($display === '12Hours'){
|
91 |
-
$html.='<span>'.__('12Hours', 'wpvivid').'</span></label><br>';
|
92 |
}
|
93 |
if($display === 'Daily'){
|
94 |
-
$html.='<span>'.__('Daily', 'wpvivid').'</span></label><br>';
|
95 |
}
|
96 |
if($display === 'Weekly'){
|
97 |
-
$html.='<span>'.__('Weekly', 'wpvivid').'</span></label><br>';
|
98 |
}
|
99 |
if($display === 'Fortnightly'){
|
100 |
-
$html.='<span>'.__('Fortnightly', 'wpvivid').'</span></label><br>';
|
101 |
}
|
102 |
if($display === 'Monthly'){
|
103 |
-
$html.='<span>'.__('Monthly', 'wpvivid').'</span></label><br>';
|
104 |
}
|
105 |
}
|
106 |
else{
|
@@ -110,11 +110,11 @@ class WPvivid_Schedule
|
|
110 |
$html.='<label>';
|
111 |
$html.='<div style="float: left;">';
|
112 |
$html.='<input type="radio" disabled />';
|
113 |
-
$html.='<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid').'</span>';
|
114 |
$html.='</div>';
|
115 |
$html.='<div style="float: left; height: 32px; line-height: 32px;">';
|
116 |
$html.='<span class="wpvivid-feature-pro">';
|
117 |
-
$html.='<a href="https://wpvivid.com/wpvivid-backup-pro-schedule-overview?utm_source=client_custom_cycles&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none; margin-top: 10px;">'.__('Pro feature: learn more', 'wpvivid').'</a>';
|
118 |
$html.='</span>';
|
119 |
$html.='</div>';
|
120 |
$html.='</label><br>';
|
@@ -279,7 +279,7 @@ class WPvivid_Schedule
|
|
279 |
if($schedule_data===false)
|
280 |
{
|
281 |
$ret['result']='failed';
|
282 |
-
$ret['error']=__('Creating scheduled tasks failed. Please try again later.', 'wpvivid');
|
283 |
return $ret;
|
284 |
}
|
285 |
|
@@ -293,7 +293,7 @@ class WPvivid_Schedule
|
|
293 |
if(wp_schedule_event($schedule_data['start_time'], $schedule_data['type'], $schedule_data['event'])===false)
|
294 |
{
|
295 |
$ret['result']='failed';
|
296 |
-
$ret['error']=__('Creating scheduled tasks failed. Please try again later.', 'wpvivid');
|
297 |
$ret['data']=$schedule_data;
|
298 |
return $ret;
|
299 |
}
|
88 |
if($schedule_check['result']){
|
89 |
$html.=' <label><input type="radio" option="schedule" name="recurrence" value="'.$schedule_check['type'].'" />';
|
90 |
if($display === '12Hours'){
|
91 |
+
$html.='<span>'.__('12Hours', 'wpvivid-backuprestore').'</span></label><br>';
|
92 |
}
|
93 |
if($display === 'Daily'){
|
94 |
+
$html.='<span>'.__('Daily', 'wpvivid-backuprestore').'</span></label><br>';
|
95 |
}
|
96 |
if($display === 'Weekly'){
|
97 |
+
$html.='<span>'.__('Weekly', 'wpvivid-backuprestore').'</span></label><br>';
|
98 |
}
|
99 |
if($display === 'Fortnightly'){
|
100 |
+
$html.='<span>'.__('Fortnightly', 'wpvivid-backuprestore').'</span></label><br>';
|
101 |
}
|
102 |
if($display === 'Monthly'){
|
103 |
+
$html.='<span>'.__('Monthly', 'wpvivid-backuprestore').'</span></label><br>';
|
104 |
}
|
105 |
}
|
106 |
else{
|
110 |
$html.='<label>';
|
111 |
$html.='<div style="float: left;">';
|
112 |
$html.='<input type="radio" disabled />';
|
113 |
+
$html.='<span class="wpvivid-element-space-right" style="color: #ddd;">'.__('Custom', 'wpvivid-backuprestore').'</span>';
|
114 |
$html.='</div>';
|
115 |
$html.='<div style="float: left; height: 32px; line-height: 32px;">';
|
116 |
$html.='<span class="wpvivid-feature-pro">';
|
117 |
+
$html.='<a href="https://wpvivid.com/wpvivid-backup-pro-schedule-overview?utm_source=client_custom_cycles&utm_medium=inner_link&utm_campaign=access" style="text-decoration: none; margin-top: 10px;">'.__('Pro feature: learn more', 'wpvivid-backuprestore').'</a>';
|
118 |
$html.='</span>';
|
119 |
$html.='</div>';
|
120 |
$html.='</label><br>';
|
279 |
if($schedule_data===false)
|
280 |
{
|
281 |
$ret['result']='failed';
|
282 |
+
$ret['error']=__('Creating scheduled tasks failed. Please try again later.', 'wpvivid-backuprestore');
|
283 |
return $ret;
|
284 |
}
|
285 |
|
293 |
if(wp_schedule_event($schedule_data['start_time'], $schedule_data['type'], $schedule_data['event'])===false)
|
294 |
{
|
295 |
$ret['result']='failed';
|
296 |
+
$ret['error']=__('Creating scheduled tasks failed. Please try again later.', 'wpvivid-backuprestore');
|
297 |
$ret['data']=$schedule_data;
|
298 |
return $ret;
|
299 |
}
|
includes/class-wpvivid-tab-page-container.php
CHANGED
@@ -199,7 +199,7 @@ class WPvivid_Tab_Page_Container
|
|
199 |
|
200 |
if(isset($tab['can_delete']))
|
201 |
{
|
202 |
-
echo '<div style="margin-right: 15px;">'.__($tab['title'], 'wpvivid').'</div>';
|
203 |
if(isset($tab['redirect']))
|
204 |
{
|
205 |
echo '<div class="nav-tab-delete-img" redirect="'.$tab['redirect'].'">
|
@@ -215,7 +215,7 @@ class WPvivid_Tab_Page_Container
|
|
215 |
}
|
216 |
else
|
217 |
{
|
218 |
-
echo __($tab['title'], 'wpvivid');
|
219 |
}
|
220 |
echo '</a>';
|
221 |
}
|
199 |
|
200 |
if(isset($tab['can_delete']))
|
201 |
{
|
202 |
+
echo '<div style="margin-right: 15px;">'.__($tab['title'], 'wpvivid-backuprestore').'</div>';
|
203 |
if(isset($tab['redirect']))
|
204 |
{
|
205 |
echo '<div class="nav-tab-delete-img" redirect="'.$tab['redirect'].'">
|
215 |
}
|
216 |
else
|
217 |
{
|
218 |
+
echo __($tab['title'], 'wpvivid-backuprestore');
|
219 |
}
|
220 |
echo '</a>';
|
221 |
}
|
includes/class-wpvivid-taskmanager.php
CHANGED
@@ -213,7 +213,7 @@ class WPvivid_taskmanager
|
|
213 |
$ret['progress']=$task['data'][$ret['type']]['progress'];
|
214 |
$ret['doing']=$task['data'][$ret['type']]['doing'];
|
215 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress']))
|
216 |
-
$ret['descript']=__($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress'], 'wpvivid');
|
217 |
else
|
218 |
$ret['descript']='';
|
219 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['upload_data']))
|
213 |
$ret['progress']=$task['data'][$ret['type']]['progress'];
|
214 |
$ret['doing']=$task['data'][$ret['type']]['doing'];
|
215 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress']))
|
216 |
+
$ret['descript']=__($task['data'][$ret['type']]['sub_job'][$ret['doing']]['progress'], 'wpvivid-backuprestore');
|
217 |
else
|
218 |
$ret['descript']='';
|
219 |
if(isset($task['data'][$ret['type']]['sub_job'][$ret['doing']]['upload_data']))
|
includes/class-wpvivid-zipclass.php
CHANGED
@@ -506,7 +506,7 @@ class WPvivid_ZipClass extends Wpvivid_Compress_Default
|
|
506 |
|
507 |
public function _zip($name,$files,$options,$json_info=false)
|
508 |
{
|
509 |
-
$zip_object_class=apply_filters('
|
510 |
$zip=new $zip_object_class();
|
511 |
return $zip->zip($name,$files,$options,$json_info);
|
512 |
}
|
506 |
|
507 |
public function _zip($name,$files,$options,$json_info=false)
|
508 |
{
|
509 |
+
$zip_object_class=apply_filters('wpvivid_get_zip_object_class_ex','WPvivid_PclZip_Class',$options);
|
510 |
$zip=new $zip_object_class();
|
511 |
return $zip->zip($name,$files,$options,$json_info);
|
512 |
}
|
includes/class-wpvivid.php
CHANGED
@@ -57,6 +57,8 @@ class WPvivid {
|
|
57 |
|
58 |
public $admin;
|
59 |
|
|
|
|
|
60 |
public function __construct()
|
61 |
{
|
62 |
$this->version = WPVIVID_PLUGIN_VERSION;
|
@@ -128,6 +130,7 @@ class WPvivid {
|
|
128 |
add_filter('wpvivid_set_mail_body', array($this, 'set_mail_body'), 10, 2);
|
129 |
|
130 |
add_filter('wpvivid_get_oldest_backup_ids', array($this, 'get_oldest_backup_ids'), 10, 2);
|
|
|
131 |
//
|
132 |
//Initialisation schedule hook
|
133 |
$this->init_cron();
|
@@ -198,6 +201,7 @@ class WPvivid {
|
|
198 |
$this->interface_mainwp = new WPvivid_Interface_MainWP();
|
199 |
$send_to_site=new WPvivid_Send_to_site();
|
200 |
$export_import = new WPvivid_Export_Import();
|
|
|
201 |
}
|
202 |
|
203 |
public function init_pclzip_tmp_folder()
|
@@ -508,7 +512,7 @@ class WPvivid {
|
|
508 |
$ret['result']=WPVIVID_FAILED;
|
509 |
if(!isset($data['backup_files']))
|
510 |
{
|
511 |
-
$ret['error']=__('A backup type is required.', 'wpvivid');
|
512 |
return $ret;
|
513 |
}
|
514 |
|
@@ -516,13 +520,13 @@ class WPvivid {
|
|
516 |
|
517 |
if(empty($data['backup_files']))
|
518 |
{
|
519 |
-
$ret['error']=__('A backup type is required.', 'wpvivid');
|
520 |
return $ret;
|
521 |
}
|
522 |
|
523 |
if(!isset($data['local']) && !isset($data['remote']))
|
524 |
{
|
525 |
-
$ret['error']=__('Choose at least one storage location for backups.', 'wpvivid');
|
526 |
return $ret;
|
527 |
}
|
528 |
|
@@ -531,7 +535,7 @@ class WPvivid {
|
|
531 |
|
532 |
if(empty($data['local']) && empty($data['remote']))
|
533 |
{
|
534 |
-
$ret['error']=__('Choose at least one storage location for backups.', 'wpvivid');
|
535 |
return $ret;
|
536 |
}
|
537 |
|
@@ -542,7 +546,7 @@ class WPvivid {
|
|
542 |
$remote_storage = WPvivid_Setting::get_remote_options();
|
543 |
if ($remote_storage == false)
|
544 |
{
|
545 |
-
$ret['error'] = __('There is no default remote storage configured. Please set it up first.', 'wpvivid');
|
546 |
return $ret;
|
547 |
}
|
548 |
}
|
@@ -585,7 +589,7 @@ class WPvivid {
|
|
585 |
try {
|
586 |
if (!isset($_POST['task_id']) || empty($_POST['task_id']) || !is_string($_POST['task_id'])) {
|
587 |
$ret['result'] = 'failed';
|
588 |
-
$ret['error'] = __('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid');
|
589 |
echo json_encode($ret);
|
590 |
die();
|
591 |
}
|
@@ -594,7 +598,7 @@ class WPvivid {
|
|
594 |
//Start backup site
|
595 |
if (WPvivid_taskmanager::is_tasks_backup_running()) {
|
596 |
$ret['result'] = 'failed';
|
597 |
-
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
598 |
echo json_encode($ret);
|
599 |
die();
|
600 |
}
|
@@ -633,7 +637,7 @@ class WPvivid {
|
|
633 |
if (!$backup)
|
634 |
{
|
635 |
$json['result'] = 'failed';
|
636 |
-
$json['error'] = __('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid');
|
637 |
echo json_encode($json);
|
638 |
die();
|
639 |
}
|
@@ -641,7 +645,7 @@ class WPvivid {
|
|
641 |
if (!file_exists($backup['log']))
|
642 |
{
|
643 |
$json['result'] = 'failed';
|
644 |
-
$json['error'] = __('The log not found.', 'wpvivid');
|
645 |
echo json_encode($json);
|
646 |
die();
|
647 |
}
|
@@ -651,7 +655,7 @@ class WPvivid {
|
|
651 |
if (!$file)
|
652 |
{
|
653 |
$json['result'] = 'failed';
|
654 |
-
$json['error'] = __('Unable to open the log file.', 'wpvivid');
|
655 |
echo json_encode($json);
|
656 |
die();
|
657 |
}
|
@@ -668,7 +672,7 @@ class WPvivid {
|
|
668 |
echo json_encode($json);
|
669 |
} else {
|
670 |
$json['result'] = 'failed';
|
671 |
-
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid');
|
672 |
echo json_encode($json);
|
673 |
}
|
674 |
}
|
@@ -692,7 +696,7 @@ class WPvivid {
|
|
692 |
try {
|
693 |
if (!isset($_POST['log_file_name']) || empty($_POST['log_file_name']) || !is_string($_POST['log_file_name'])) {
|
694 |
$json['result'] = 'failed';
|
695 |
-
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid');
|
696 |
echo json_encode($json);
|
697 |
die();
|
698 |
}
|
@@ -701,7 +705,7 @@ class WPvivid {
|
|
701 |
|
702 |
if (!file_exists($log_file_name)) {
|
703 |
$json['result'] = 'failed';
|
704 |
-
$json['error'] = __('The log not found.', 'wpvivid');
|
705 |
echo json_encode($json);
|
706 |
die();
|
707 |
}
|
@@ -710,7 +714,7 @@ class WPvivid {
|
|
710 |
|
711 |
if (!$file) {
|
712 |
$json['result'] = 'failed';
|
713 |
-
$json['error'] = __('Unable to open the log file.', 'wpvivid');
|
714 |
echo json_encode($json);
|
715 |
die();
|
716 |
}
|
@@ -747,7 +751,7 @@ class WPvivid {
|
|
747 |
$option = WPvivid_taskmanager::get_task_options($backup_task_id, 'log_file_name');
|
748 |
if (!$option) {
|
749 |
$json['result'] = 'failed';
|
750 |
-
$json['error'] = __('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid');
|
751 |
echo json_encode($json);
|
752 |
die();
|
753 |
}
|
@@ -756,7 +760,7 @@ class WPvivid {
|
|
756 |
|
757 |
if (!file_exists($log_file_name)) {
|
758 |
$json['result'] = 'failed';
|
759 |
-
$json['error'] = __('The log not found.', 'wpvivid');
|
760 |
echo json_encode($json);
|
761 |
die();
|
762 |
}
|
@@ -765,7 +769,7 @@ class WPvivid {
|
|
765 |
|
766 |
if (!$file) {
|
767 |
$json['result'] = 'failed';
|
768 |
-
$json['error'] = __('Unable to open the log file.', 'wpvivid');
|
769 |
echo json_encode($json);
|
770 |
die();
|
771 |
}
|
@@ -781,7 +785,7 @@ class WPvivid {
|
|
781 |
echo json_encode($json);
|
782 |
} else {
|
783 |
$json['result'] = 'failed';
|
784 |
-
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid');
|
785 |
echo json_encode($json);
|
786 |
}
|
787 |
}
|
@@ -907,7 +911,7 @@ class WPvivid {
|
|
907 |
if (WPvivid_taskmanager::is_tasks_backup_running())
|
908 |
{
|
909 |
$ret['result'] = 'failed';
|
910 |
-
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
911 |
echo json_encode($ret);
|
912 |
die();
|
913 |
}
|
@@ -1053,7 +1057,7 @@ class WPvivid {
|
|
1053 |
if(WPvivid_taskmanager::is_tasks_backup_running())
|
1054 |
{
|
1055 |
$ret['result']='failed';
|
1056 |
-
$ret['error']=__('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid');
|
1057 |
return $ret;
|
1058 |
}
|
1059 |
|
@@ -1409,7 +1413,7 @@ class WPvivid {
|
|
1409 |
|
1410 |
if ($status['resume_count'] > $max_resume_count)
|
1411 |
{
|
1412 |
-
$message = __('Too many resumption attempts.', 'wpvivid');
|
1413 |
$task = WPvivid_taskmanager::update_backup_task_status($task_id, false, 'error', false, $status['resume_count'], $message);
|
1414 |
do_action('wpvivid_handle_backup_failed', $task, true);
|
1415 |
} else {
|
@@ -1431,7 +1435,7 @@ class WPvivid {
|
|
1431 |
$status['resume_count']++;
|
1432 |
if ($status['resume_count'] > $max_resume_count)
|
1433 |
{
|
1434 |
-
$message = __('Too many resumption attempts.', 'wpvivid');
|
1435 |
if ($error !== false)
|
1436 |
{
|
1437 |
$message.= 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
@@ -1457,7 +1461,7 @@ class WPvivid {
|
|
1457 |
$status['resume_count']++;
|
1458 |
if ($status['resume_count'] > $max_resume_count)
|
1459 |
{
|
1460 |
-
$message = __('Too many resumption attempts.', 'wpvivid');
|
1461 |
if ($error !== false)
|
1462 |
{
|
1463 |
$message.= 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
@@ -1487,7 +1491,7 @@ class WPvivid {
|
|
1487 |
{
|
1488 |
$message = 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
1489 |
} else {
|
1490 |
-
$message = __('Backup timed out. Please set the value of PHP script execution timeout to '.$time_start.' in plugin settings.', 'wpvivid');
|
1491 |
}
|
1492 |
WPvivid_taskmanager::update_backup_task_status($task_id, false, 'error', false, $status['resume_count'], $message);
|
1493 |
}
|
@@ -1582,7 +1586,7 @@ class WPvivid {
|
|
1582 |
$status['resume_count']++;
|
1583 |
if($status['resume_count']>$max_resume_count)
|
1584 |
{
|
1585 |
-
$message=__('Too many resumption attempts.', 'wpvivid');
|
1586 |
$task=WPvivid_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1587 |
//WPvivid_error_log::create_error_log($this->wpvivid_log->log_file);
|
1588 |
do_action('wpvivid_handle_backup_failed',$task, true);
|
@@ -1590,7 +1594,7 @@ class WPvivid {
|
|
1590 |
else
|
1591 |
{
|
1592 |
$this->check_cancel_backup($task_id);
|
1593 |
-
$message=__('Task timed out.', 'wpvivid');
|
1594 |
if($this->add_resume_event($task_id))
|
1595 |
{
|
1596 |
WPvivid_taskmanager::update_backup_task_status($task_id,false,'wait_resume',false,$status['resume_count']);
|
@@ -1702,7 +1706,7 @@ class WPvivid {
|
|
1702 |
$status['resume_count']++;
|
1703 |
if($status['resume_count']>$max_resume_count)
|
1704 |
{
|
1705 |
-
$message=__('Too many resumption attempts.', 'wpvivid');
|
1706 |
$task=WPvivid_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1707 |
//WPvivid_error_log::create_error_log($this->wpvivid_log->log_file);
|
1708 |
do_action('wpvivid_handle_backup_failed',$task, true);
|
@@ -1710,7 +1714,7 @@ class WPvivid {
|
|
1710 |
else
|
1711 |
{
|
1712 |
$this->check_cancel_backup($task_id);
|
1713 |
-
$message=__('Task timed out.', 'wpvivid');
|
1714 |
if($this->add_resume_event($task_id))
|
1715 |
{
|
1716 |
WPvivid_taskmanager::update_backup_task_status($task_id,false,'wait_resume',false,$status['resume_count']);
|
@@ -2481,7 +2485,7 @@ class WPvivid {
|
|
2481 |
if(!$backup)
|
2482 |
{
|
2483 |
$ret['result']='failed';
|
2484 |
-
$ret['error']=__('Retrieving the backup(s) information failed while deleting the selected backup(s). Please try again later.', 'wpvivid');
|
2485 |
return $ret;
|
2486 |
}
|
2487 |
|
@@ -2491,7 +2495,7 @@ class WPvivid {
|
|
2491 |
if($force==0)
|
2492 |
{
|
2493 |
$ret['result']='failed';
|
2494 |
-
$ret['error']=__('Unable to delete the locked backup. Please unlock it first and try again.', 'wpvivid');
|
2495 |
return $ret;
|
2496 |
}
|
2497 |
}
|
@@ -2594,7 +2598,7 @@ class WPvivid {
|
|
2594 |
$default = array();
|
2595 |
$remote_array = apply_filters('wpvivid_archieve_remote_array', $default);
|
2596 |
$ret['remote_array'] = $remote_array;
|
2597 |
-
$success_msg = __('You have successfully added a remote storage.', 'wpvivid');
|
2598 |
$ret['notice'] = apply_filters('wpvivid_add_remote_notice', true, $success_msg);
|
2599 |
}
|
2600 |
else{
|
@@ -2646,7 +2650,7 @@ class WPvivid {
|
|
2646 |
$ret['remote_storage'] = $remote_storage;
|
2647 |
} else {
|
2648 |
$ret['result'] = 'failed';
|
2649 |
-
$ret['error'] = __('Fail to delete the remote storage, can not retrieve the storage infomation. Please try again.', 'wpvivid');
|
2650 |
}
|
2651 |
}
|
2652 |
catch (Exception $error) {
|
@@ -2674,12 +2678,13 @@ class WPvivid {
|
|
2674 |
$id = sanitize_key($_POST['remote_id']);
|
2675 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
2676 |
$ret['result'] = WPVIVID_FAILED;
|
2677 |
-
$ret['error'] = __('Failed to get the remote storage information. Please try again later.', 'wpvivid');
|
2678 |
foreach ($remoteslist as $key => $value) {
|
2679 |
if ($key == $id) {
|
2680 |
if ($key === 'remote_selected') {
|
2681 |
continue;
|
2682 |
}
|
|
|
2683 |
$ret = $value;
|
2684 |
$ret['result'] = WPVIVID_SUCCESS;
|
2685 |
break;
|
@@ -3418,7 +3423,7 @@ class WPvivid {
|
|
3418 |
echo json_encode(array('result'=>WPVIVID_FAILED,'error'=>$message));
|
3419 |
}
|
3420 |
else {
|
3421 |
-
$message = __('restore failed error unknown', 'wpvivid');
|
3422 |
$this->restore_data->delete_temp_files();
|
3423 |
$this->restore_data->update_error($message);
|
3424 |
$this->restore_data->write_log($message,'error');
|
@@ -3451,7 +3456,7 @@ class WPvivid {
|
|
3451 |
die();
|
3452 |
} else {
|
3453 |
$ret['result'] = 'failed';
|
3454 |
-
$ret['error'] = __('The restore file not found. Please verify the file exists.', 'wpvivid');
|
3455 |
echo json_encode($ret);
|
3456 |
die();
|
3457 |
}
|
@@ -3563,7 +3568,7 @@ class WPvivid {
|
|
3563 |
$html='';
|
3564 |
$message=WPvivid_Setting::get_last_backup_message('wpvivid_last_msg');
|
3565 |
if(empty($message)){
|
3566 |
-
$last_message=__('The last backup message not found.', 'wpvivid');
|
3567 |
}
|
3568 |
else{
|
3569 |
if($message['status']['str'] == 'completed'){
|
@@ -3579,10 +3584,10 @@ class WPvivid {
|
|
3579 |
$last_message=$backup_status.', '.$message['status']['start_time'].' <a onclick="wpvivid_read_log(\''.'wpvivid_read_last_backup_log'.'\', \''.$message['log_file_name'].'\');" style="cursor:pointer;"> Log</a>';
|
3580 |
}
|
3581 |
else{
|
3582 |
-
$last_message=__('The last backup message not found.', 'wpvivid');
|
3583 |
}
|
3584 |
}
|
3585 |
-
$html .= '<strong>'.__('Last Backup: ', 'wpvivid').'</strong>'.$last_message;
|
3586 |
return $html;
|
3587 |
}
|
3588 |
|
@@ -3652,23 +3657,23 @@ class WPvivid {
|
|
3652 |
<div class="action-progress-bar-percent" id="wpvivid_action_progress_bar_percent" style="height:24px;width:' . $list_tasks[$task['id']]['task_info']['backup_percent'] . '"></div>
|
3653 |
</div>
|
3654 |
<div id="wpvivid_estimate_backup_info" style="float:left; ' . $list_tasks[$task['id']]['task_info']['display_estimate_backup'] . '">
|
3655 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Database Size:', 'wpvivid') . '</span><span id="wpvivid_backup_database_size">' . $list_tasks[$task['id']]['task_info']['db_size'] . '</span></div>
|
3656 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('File Size:', 'wpvivid') . '</span><span id="wpvivid_backup_file_size">' . $list_tasks[$task['id']]['task_info']['file_size'] . '</span></div>
|
3657 |
</div>
|
3658 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
3659 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Total Size:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['total'] . '</span></div>
|
3660 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Uploaded:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['upload'] . '</span></div>
|
3661 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Speed:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['speed'] . '</span></div>
|
3662 |
</div>
|
3663 |
<div style="float: left;">
|
3664 |
-
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Network Connection:', 'wpvivid') . '</span><span>' . $list_tasks[$task['id']]['task_info']['network_connection'] . '</span></div>
|
3665 |
</div>
|
3666 |
<div style="clear:both;"></div>
|
3667 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_current_doing">' . $list_tasks[$task['id']]['task_info']['descript'] . '</p></div>
|
3668 |
<div style="clear: both;"></div>
|
3669 |
<div>
|
3670 |
-
<div id="wpvivid_backup_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_cancel_btn" type="submit" value="' . esc_attr('Cancel', 'wpvivid') . '" style="' . $list_tasks[$task['id']]['task_info']['css_btn_cancel'] . '" /></div>
|
3671 |
-
<div id="wpvivid_backup_log" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_log_btn" type="submit" value="' . esc_attr('Log', 'wpvivid') . '" style="' . $list_tasks[$task['id']]['task_info']['css_btn_log'] . '" /></div>
|
3672 |
</div>
|
3673 |
<div style="clear: both;"></div>';
|
3674 |
}
|
@@ -3679,7 +3684,7 @@ class WPvivid {
|
|
3679 |
$backup_success_count=WPvivid_Setting::get_option('wpvivid_backup_success_count');
|
3680 |
if(!empty($backup_success_count)){
|
3681 |
//$notice_msg = $backup_success_count.' backup tasks have been completed. Please switch to <a href="#" onclick="wpvivid_click_switch_page(\'wrap\', \'wpvivid_tab_log\', true);">Log</a> page to check the details.';
|
3682 |
-
$notice_msg = sprintf(__('%d backup tasks have been completed. Please switch to <a href="#" onclick="wpvivid_click_switch_page(\'wrap\', \'wpvivid_tab_log\', true);">Log</a> page to check the details.', 'wpvivid'), $backup_success_count);
|
3683 |
$success_notice_html='<div class="notice notice-success is-dismissible inline"><p>'.$notice_msg.'</p>
|
3684 |
<button type="button" class="notice-dismiss" onclick="click_dismiss_notice(this);">
|
3685 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
@@ -3772,7 +3777,7 @@ class WPvivid {
|
|
3772 |
fclose($tempfile);
|
3773 |
} else {
|
3774 |
$ret['result'] = 'failed';
|
3775 |
-
$ret['error'] = __('Getting backup directory failed. Please try again later.', 'wpvivid');
|
3776 |
}
|
3777 |
|
3778 |
}
|
@@ -3967,7 +3972,7 @@ class WPvivid {
|
|
3967 |
if($options['log']=='0' && $options['backup_cache']=='0' && $options['junk_files']=='0' && $options['old_files']=='0')
|
3968 |
{
|
3969 |
$ret['result']=WPVIVID_FAILED;
|
3970 |
-
$ret['msg']=__('Choose at least one type of junk files for deleting.', 'wpvivid');
|
3971 |
echo json_encode($ret);
|
3972 |
die();
|
3973 |
}
|
@@ -4041,7 +4046,7 @@ class WPvivid {
|
|
4041 |
}
|
4042 |
|
4043 |
$ret['result']='success';
|
4044 |
-
$ret['msg']=__('The selected junk flies have been deleted.', 'wpvivid');
|
4045 |
$ret['data']=$this->_junk_files_info();
|
4046 |
$html = '';
|
4047 |
$html = apply_filters('wpvivid_get_log_list', $html);
|
@@ -4212,7 +4217,7 @@ class WPvivid {
|
|
4212 |
try {
|
4213 |
if (!isset($_POST['remote_storage']) || empty($_POST['remote_storage']) || !is_array($_POST['remote_storage'])) {
|
4214 |
$ret['result'] = WPVIVID_FAILED;
|
4215 |
-
$ret['error'] = __('Choose one storage from the list to be the default storage.', 'wpvivid');
|
4216 |
echo json_encode($ret);
|
4217 |
die();
|
4218 |
}
|
@@ -4468,7 +4473,7 @@ class WPvivid {
|
|
4468 |
$ret['result']=WPVIVID_FAILED;
|
4469 |
if(!isset($data['max_file_size']))
|
4470 |
{
|
4471 |
-
$ret['error']=__('The maximum zip file size is required.', 'wpvivid');
|
4472 |
return $ret;
|
4473 |
}
|
4474 |
|
@@ -4476,46 +4481,46 @@ class WPvivid {
|
|
4476 |
|
4477 |
if(empty($data['max_file_size']) && $data['max_file_size'] != '0')
|
4478 |
{
|
4479 |
-
$ret['error']=__('The maximum zip file size is required.', 'wpvivid');
|
4480 |
return $ret;
|
4481 |
}
|
4482 |
|
4483 |
if(!isset($data['exclude_file_size']))
|
4484 |
{
|
4485 |
-
$ret['error']=__('The size for excluded files is required.', 'wpvivid');
|
4486 |
}
|
4487 |
|
4488 |
$data['exclude_file_size']=sanitize_text_field($data['exclude_file_size']);
|
4489 |
|
4490 |
if(empty($data['exclude_file_size']) && $data['exclude_file_size'] != '0')
|
4491 |
{
|
4492 |
-
$ret['error']=__('The size for excluded files is required.', 'wpvivid');
|
4493 |
return $ret;
|
4494 |
}
|
4495 |
|
4496 |
if(!isset($data['max_execution_time']))
|
4497 |
{
|
4498 |
-
$ret['error']=__('The maximum execution time for PHP script is required.', 'wpvivid');
|
4499 |
}
|
4500 |
|
4501 |
$data['max_execution_time']=sanitize_text_field($data['max_execution_time']);
|
4502 |
|
4503 |
if(empty($data['max_execution_time']) && $data['max_execution_time'] != '0')
|
4504 |
{
|
4505 |
-
$ret['error']=__('The maximum execution time for PHP script is required.', 'wpvivid');
|
4506 |
return $ret;
|
4507 |
}
|
4508 |
|
4509 |
if(!isset($data['path']))
|
4510 |
{
|
4511 |
-
$ret['error']=__('The local storage path is required.', 'wpvivid');
|
4512 |
}
|
4513 |
|
4514 |
$data['path']=sanitize_text_field($data['path']);
|
4515 |
|
4516 |
if(empty($data['path']))
|
4517 |
{
|
4518 |
-
$ret['error']=__('The local storage path is required.', 'wpvivid');
|
4519 |
return $ret;
|
4520 |
}
|
4521 |
|
@@ -4525,7 +4530,7 @@ class WPvivid {
|
|
4525 |
{
|
4526 |
if(empty($data['send_to']))
|
4527 |
{
|
4528 |
-
$ret['error']=__('An email address is required.', 'wpvivid');
|
4529 |
return $ret;
|
4530 |
}
|
4531 |
}
|
@@ -4534,11 +4539,11 @@ class WPvivid {
|
|
4534 |
if (class_exists('PDO')) {
|
4535 |
$extensions = get_loaded_extensions();
|
4536 |
if (!array_search('pdo_mysql', $extensions)) {
|
4537 |
-
$ret['error'] = __('The pdo_mysql extension is not detected. Please install the extension first or choose wpdb option for Database connection method.', 'wpvivid');
|
4538 |
return $ret;
|
4539 |
}
|
4540 |
} else {
|
4541 |
-
$ret['error'] = __('The pdo_mysql extension is not detected. Please install the extension first or choose wpdb option for Database connection method.', 'wpvivid');
|
4542 |
return $ret;
|
4543 |
}
|
4544 |
}
|
@@ -4560,7 +4565,7 @@ class WPvivid {
|
|
4560 |
if($data['save_local_remote'] == 'remote'){
|
4561 |
$remote_storage=WPvivid_Setting::get_remote_options();
|
4562 |
if($remote_storage == false) {
|
4563 |
-
$ret['error']=__('There is no default remote storage configured. Please set it up first.', 'wpvivid');
|
4564 |
return $ret;
|
4565 |
}
|
4566 |
}
|
@@ -4616,7 +4621,7 @@ class WPvivid {
|
|
4616 |
$offset=get_option('gmt_offset');
|
4617 |
$date_format = date("Ymd",time()+$offset*60*60);
|
4618 |
$time_format = date("His",time()+$offset*60*60);
|
4619 |
-
$export_file_name = '
|
4620 |
if (!headers_sent()) {
|
4621 |
header('Content-Disposition: attachment; filename='.$export_file_name);
|
4622 |
//header('Content-type: application/json');
|
@@ -4657,7 +4662,7 @@ class WPvivid {
|
|
4657 |
echo json_encode($ret);
|
4658 |
} else {
|
4659 |
$ret['result'] = 'failed';
|
4660 |
-
$ret['error'] = __('The selected file is not the setting file for WPvivid. Please upload the right file.', 'wpvivid');
|
4661 |
echo json_encode($ret);
|
4662 |
}
|
4663 |
}
|
@@ -4679,7 +4684,7 @@ class WPvivid {
|
|
4679 |
$send_to = sanitize_email($_POST['send_to']);
|
4680 |
if (empty($send_to)) {
|
4681 |
$ret['result'] = 'failed';
|
4682 |
-
$ret['error'] = __('Invalid email address', 'wpvivid');
|
4683 |
echo json_encode($ret);
|
4684 |
} else {
|
4685 |
$subject = 'WPvivid Test Mail';
|
@@ -4687,7 +4692,7 @@ class WPvivid {
|
|
4687 |
$headers = array('Content-Type: text/html; charset=UTF-8');
|
4688 |
if (wp_mail($send_to, $subject, $body, $headers) === false) {
|
4689 |
$ret['result'] = 'failed';
|
4690 |
-
$ret['error'] = __('Unable to send email. Please check the configuration of email server.', 'wpvivid');
|
4691 |
} else {
|
4692 |
$ret['result'] = 'success';
|
4693 |
}
|
@@ -4820,11 +4825,11 @@ class WPvivid {
|
|
4820 |
$value['des'] = 'N/A';
|
4821 |
}
|
4822 |
$value['path'] = str_replace('\\', '/', $value['path']);
|
4823 |
-
$html .= '<tr style="'.esc_attr($log_tr_display, 'wpvivid').'">
|
4824 |
-
<td class="row-title"><label for="tablecell">'.__($value['time'], 'wpvivid').'</label>
|
4825 |
</td>
|
4826 |
-
<td>'.__($value['des'], 'wpvivid').'</td>
|
4827 |
-
<td>'.__($value['file_name'], 'wpvivid').'</td>
|
4828 |
<td>
|
4829 |
<a onclick="wpvivid_read_log(\''.'wpvivid_view_log'.'\', \''.$value['path'].'\')" style="cursor:pointer;">
|
4830 |
<img src="'.esc_url(WPVIVID_PLUGIN_URL.$pic_log).'" style="vertical-align:middle;">Log
|
@@ -4963,7 +4968,7 @@ class WPvivid {
|
|
4963 |
$path = sanitize_text_field($_POST['path']);
|
4964 |
if (!file_exists($path)) {
|
4965 |
$json['result'] = 'failed';
|
4966 |
-
$json['error'] = __('The log not found.', 'wpvivid');
|
4967 |
echo json_encode($json);
|
4968 |
die();
|
4969 |
}
|
@@ -4972,7 +4977,7 @@ class WPvivid {
|
|
4972 |
|
4973 |
if (!$file) {
|
4974 |
$json['result'] = 'failed';
|
4975 |
-
$json['error'] = __('Unable to open the log file.', 'wpvivid');
|
4976 |
echo json_encode($json);
|
4977 |
die();
|
4978 |
}
|
@@ -4988,7 +4993,7 @@ class WPvivid {
|
|
4988 |
echo json_encode($json);
|
4989 |
} else {
|
4990 |
$json['result'] = 'failed';
|
4991 |
-
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid');
|
4992 |
echo json_encode($json);
|
4993 |
}
|
4994 |
}
|
@@ -5041,11 +5046,27 @@ class WPvivid {
|
|
5041 |
}
|
5042 |
ini_set('max_execution_time', $limit);
|
5043 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5044 |
|
5045 |
$ret['data']['max_execution_time'] = ini_get("max_execution_time");
|
5046 |
$ret['data']['max_input_vars'] = ini_get("max_input_vars");
|
5047 |
$ret['data']['max_input_vars'] = ini_get("max_input_vars");
|
5048 |
-
$ret['data']['timezone'] = date_default_timezone_get();
|
5049 |
$ret['data']['OS'] = php_uname();
|
5050 |
$ret['data']['memory_current'] = $this->formatBytes(memory_get_usage());
|
5051 |
$ret['data']['memory_peak'] = $this->formatBytes(memory_get_peak_usage());
|
@@ -5243,16 +5264,16 @@ class WPvivid {
|
|
5243 |
|
5244 |
$hide = 'hide';
|
5245 |
$html .= '<tr style="' . $row_style . '">
|
5246 |
-
<th class="check-column"><input name="check_backup" type="checkbox" id="' . esc_attr($key, 'wpvivid') . '" value="' . esc_attr($key, 'wpvivid') . '" onclick="wpvivid_click_check_backup(\'' . $key . '\', \'' . $list_name . '\');" /></th>
|
5247 |
<td class="tablelistcolumn">
|
5248 |
<div style="float:left;padding:0 10px 10px 0;">
|
5249 |
-
<div class="backuptime"><strong>' . $upload_title . '</strong>' . __(date('M d, Y H:i', $backup_time), 'wpvivid') . '</div>
|
5250 |
<div class="common-table">
|
5251 |
<span title="To lock the backup, the backup can only be deleted manually" id="wpvivid_lock_' . $key . '">
|
5252 |
-
<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid') . '" onclick="wpvivid_set_backup_lock(\'' . $key . '\', \'' . $lock_status . '\');" style="vertical-align:middle; cursor:pointer;"/>
|
5253 |
</span>
|
5254 |
-
<span style="margin:0;">|</span> <span>' . __('Type:', 'wpvivid') . '</span><span>' . __($value['type'], 'wpvivid') . '</span>
|
5255 |
-
<span style="margin:0;">|</span> <span title="Backup log"><a href="#" onclick="wpvivid_read_log(\'' . 'wpvivid_view_backup_log' . '\', \'' . __($key) . '\');"><img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Log.png') . '" style="vertical-align:middle;cursor:pointer;"/><span style="margin:0;">' . __('Log', 'wpvivid') . '</span></a></span>
|
5256 |
</div>
|
5257 |
</div>
|
5258 |
</td>
|
@@ -5260,17 +5281,17 @@ class WPvivid {
|
|
5260 |
<div style="float:left;padding:10px 10px 10px 0;">' . $remote_pic_html . '</div>
|
5261 |
</td>
|
5262 |
<td class="tablelistcolumn" style="min-width:100px;">
|
5263 |
-
<div id="wpvivid_file_part_' . __($key, 'wpvivid') . '" style="float:left;padding:10px 10px 10px 0;">
|
5264 |
<div style="cursor:pointer;" onclick="wpvivid_initialize_download(\'' . $key . '\', \'' . $list_name . '\');" title="Prepare to download the backup">
|
5265 |
-
<img id="wpvivid_download_btn_' . __($key, 'wpvivid') . '" src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/download.png') . '" style="vertical-align:middle;" /><span>' . __('Download', 'wpvivid') . '</span>
|
5266 |
-
<div class="spinner" id="wpvivid_download_loading_' . __($key, 'wpvivid') . '" style="float:right;width:auto;height:auto;padding:10px 180px 10px 0;background-position:0 0;"></div>
|
5267 |
</div>
|
5268 |
</div>
|
5269 |
</td>
|
5270 |
<td class="tablelistcolumn" style="min-width:100px;">
|
5271 |
<div class="' . $tour_class . '" onclick="wpvivid_popup_tour(\'' . $hide . '\');">
|
5272 |
-
' . $tour_message . '<div style="cursor:pointer;padding:10px 0 10px 0;" onclick="wpvivid_initialize_restore(\'' . __($key, 'wpvivid') . '\',\'' . __(date('M d, Y H:i', $backup_time), 'wpvivid') . '\',\'' . __($value['type'], 'wpvivid') . '\');" style="float:left;padding:10px 10px 10px 0;">
|
5273 |
-
<img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Restore.png') . '" style="vertical-align:middle;" /><span>' . __('Restore', 'wpvivid') . '</span>
|
5274 |
</div>
|
5275 |
</div>
|
5276 |
</td>
|
@@ -5311,14 +5332,14 @@ class WPvivid {
|
|
5311 |
$storage_type = $value['type'];
|
5312 |
$storage_type=apply_filters('wpvivid_storage_provider_tran', $storage_type);
|
5313 |
$html .= '<tr>
|
5314 |
-
<td>'.__($i++, 'wpvivid').'</td>
|
5315 |
-
<td><input type="checkbox" name="remote_storage" value="'.esc_attr($key, 'wpvivid').'" '.esc_attr($check_status, 'wpvivid').' /></td>
|
5316 |
-
<td>'.__($storage_type, 'wpvivid').'</td>
|
5317 |
-
<td class="row-title"><label for="tablecell">'.__($value['name'], 'wpvivid').'</label></td>
|
5318 |
<td>
|
5319 |
-
<div style="float: left;"><img src="'.esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/Edit.png').'" onclick="click_retrieve_remote_storage(\''.__($key, 'wpvivid').'\',\''.__($value['type'], 'wpvivid').'\',\''.__($value['name'], 'wpvivid').'\'
|
5320 |
);" style="vertical-align:middle; cursor:pointer;" title="Edit the remote storage"/></div>
|
5321 |
-
<div><img src="'.esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/Delete.png').'" onclick="wpvivid_delete_remote_storage(\''.__($key, 'wpvivid').'\'
|
5322 |
);" style="vertical-align:middle; cursor:pointer;" title="Remove the remote storage"/></div>
|
5323 |
</td>
|
5324 |
</tr>';
|
@@ -5405,11 +5426,11 @@ class WPvivid {
|
|
5405 |
$html .= '<fieldset>
|
5406 |
<label title="">
|
5407 |
<input type="radio" option="schedule" name="save_local_remote" value="local" '.$backup_local.' />
|
5408 |
-
<span>'.__( 'Save backups on localhost (web server)', 'wpvivid' ).'</span>
|
5409 |
</label><br>
|
5410 |
<label title="">
|
5411 |
<input type="radio" option="schedule" name="save_local_remote" value="remote" '.$backup_remote.' />
|
5412 |
-
<span>'.__( 'Send backups to remote storage (choose this option, the local backup will be deleted after uploading to remote storage completely)', 'wpvivid' ).'</span>
|
5413 |
</label>
|
5414 |
<label style="display: none;">
|
5415 |
<input type="checkbox" option="schedule" name="lock" value="0" />
|
@@ -5577,12 +5598,12 @@ class WPvivid {
|
|
5577 |
try {
|
5578 |
if (!isset($_POST['user_mail']) || empty($_POST['user_mail'])) {
|
5579 |
$ret['result'] = 'failed';
|
5580 |
-
$ret['error'] = __('User\'s email address is required.', 'wpvivid');
|
5581 |
} else {
|
5582 |
$pattern = '/^[a-z0-9]+([._-][a-z0-9]+)*@([0-9a-z]+\.[a-z]{2,14}(\.[a-z]{2})?)$/i';
|
5583 |
if (!preg_match($pattern, $_POST['user_mail'])) {
|
5584 |
$ret['result'] = 'failed';
|
5585 |
-
$ret['error'] = __('Please enter a valid email address.', 'wpvivid');
|
5586 |
} else {
|
5587 |
$this->ajax_check_security();
|
5588 |
$ret = WPvivid_mail_report::wpvivid_send_debug_info($_POST['user_mail'],$_POST['server_type'],$_POST['host_provider'],$_POST['comment']);
|
57 |
|
58 |
public $admin;
|
59 |
|
60 |
+
public $interface_mainwp;
|
61 |
+
|
62 |
public function __construct()
|
63 |
{
|
64 |
$this->version = WPVIVID_PLUGIN_VERSION;
|
130 |
add_filter('wpvivid_set_mail_body', array($this, 'set_mail_body'), 10, 2);
|
131 |
|
132 |
add_filter('wpvivid_get_oldest_backup_ids', array($this, 'get_oldest_backup_ids'), 10, 2);
|
133 |
+
|
134 |
//
|
135 |
//Initialisation schedule hook
|
136 |
$this->init_cron();
|
201 |
$this->interface_mainwp = new WPvivid_Interface_MainWP();
|
202 |
$send_to_site=new WPvivid_Send_to_site();
|
203 |
$export_import = new WPvivid_Export_Import();
|
204 |
+
|
205 |
}
|
206 |
|
207 |
public function init_pclzip_tmp_folder()
|
512 |
$ret['result']=WPVIVID_FAILED;
|
513 |
if(!isset($data['backup_files']))
|
514 |
{
|
515 |
+
$ret['error']=__('A backup type is required.', 'wpvivid-backuprestore');
|
516 |
return $ret;
|
517 |
}
|
518 |
|
520 |
|
521 |
if(empty($data['backup_files']))
|
522 |
{
|
523 |
+
$ret['error']=__('A backup type is required.', 'wpvivid-backuprestore');
|
524 |
return $ret;
|
525 |
}
|
526 |
|
527 |
if(!isset($data['local']) && !isset($data['remote']))
|
528 |
{
|
529 |
+
$ret['error']=__('Choose at least one storage location for backups.', 'wpvivid-backuprestore');
|
530 |
return $ret;
|
531 |
}
|
532 |
|
535 |
|
536 |
if(empty($data['local']) && empty($data['remote']))
|
537 |
{
|
538 |
+
$ret['error']=__('Choose at least one storage location for backups.', 'wpvivid-backuprestore');
|
539 |
return $ret;
|
540 |
}
|
541 |
|
546 |
$remote_storage = WPvivid_Setting::get_remote_options();
|
547 |
if ($remote_storage == false)
|
548 |
{
|
549 |
+
$ret['error'] = __('There is no default remote storage configured. Please set it up first.', 'wpvivid-backuprestore');
|
550 |
return $ret;
|
551 |
}
|
552 |
}
|
589 |
try {
|
590 |
if (!isset($_POST['task_id']) || empty($_POST['task_id']) || !is_string($_POST['task_id'])) {
|
591 |
$ret['result'] = 'failed';
|
592 |
+
$ret['error'] = __('Error occurred while parsing the request data. Please try to run backup again.', 'wpvivid-backuprestore');
|
593 |
echo json_encode($ret);
|
594 |
die();
|
595 |
}
|
598 |
//Start backup site
|
599 |
if (WPvivid_taskmanager::is_tasks_backup_running()) {
|
600 |
$ret['result'] = 'failed';
|
601 |
+
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
602 |
echo json_encode($ret);
|
603 |
die();
|
604 |
}
|
637 |
if (!$backup)
|
638 |
{
|
639 |
$json['result'] = 'failed';
|
640 |
+
$json['error'] = __('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid-backuprestore');
|
641 |
echo json_encode($json);
|
642 |
die();
|
643 |
}
|
645 |
if (!file_exists($backup['log']))
|
646 |
{
|
647 |
$json['result'] = 'failed';
|
648 |
+
$json['error'] = __('The log not found.', 'wpvivid-backuprestore');
|
649 |
echo json_encode($json);
|
650 |
die();
|
651 |
}
|
655 |
if (!$file)
|
656 |
{
|
657 |
$json['result'] = 'failed';
|
658 |
+
$json['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
659 |
echo json_encode($json);
|
660 |
die();
|
661 |
}
|
672 |
echo json_encode($json);
|
673 |
} else {
|
674 |
$json['result'] = 'failed';
|
675 |
+
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
676 |
echo json_encode($json);
|
677 |
}
|
678 |
}
|
696 |
try {
|
697 |
if (!isset($_POST['log_file_name']) || empty($_POST['log_file_name']) || !is_string($_POST['log_file_name'])) {
|
698 |
$json['result'] = 'failed';
|
699 |
+
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
700 |
echo json_encode($json);
|
701 |
die();
|
702 |
}
|
705 |
|
706 |
if (!file_exists($log_file_name)) {
|
707 |
$json['result'] = 'failed';
|
708 |
+
$json['error'] = __('The log not found.', 'wpvivid-backuprestore');
|
709 |
echo json_encode($json);
|
710 |
die();
|
711 |
}
|
714 |
|
715 |
if (!$file) {
|
716 |
$json['result'] = 'failed';
|
717 |
+
$json['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
718 |
echo json_encode($json);
|
719 |
die();
|
720 |
}
|
751 |
$option = WPvivid_taskmanager::get_task_options($backup_task_id, 'log_file_name');
|
752 |
if (!$option) {
|
753 |
$json['result'] = 'failed';
|
754 |
+
$json['error'] = __('Retrieving the backup information failed while showing log. Please try again later.', 'wpvivid-backuprestore');
|
755 |
echo json_encode($json);
|
756 |
die();
|
757 |
}
|
760 |
|
761 |
if (!file_exists($log_file_name)) {
|
762 |
$json['result'] = 'failed';
|
763 |
+
$json['error'] = __('The log not found.', 'wpvivid-backuprestore');
|
764 |
echo json_encode($json);
|
765 |
die();
|
766 |
}
|
769 |
|
770 |
if (!$file) {
|
771 |
$json['result'] = 'failed';
|
772 |
+
$json['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
773 |
echo json_encode($json);
|
774 |
die();
|
775 |
}
|
785 |
echo json_encode($json);
|
786 |
} else {
|
787 |
$json['result'] = 'failed';
|
788 |
+
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
789 |
echo json_encode($json);
|
790 |
}
|
791 |
}
|
911 |
if (WPvivid_taskmanager::is_tasks_backup_running())
|
912 |
{
|
913 |
$ret['result'] = 'failed';
|
914 |
+
$ret['error'] = __('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
915 |
echo json_encode($ret);
|
916 |
die();
|
917 |
}
|
1057 |
if(WPvivid_taskmanager::is_tasks_backup_running())
|
1058 |
{
|
1059 |
$ret['result']='failed';
|
1060 |
+
$ret['error']=__('A task is already running. Please wait until the running task is complete, and try again.', 'wpvivid-backuprestore');
|
1061 |
return $ret;
|
1062 |
}
|
1063 |
|
1413 |
|
1414 |
if ($status['resume_count'] > $max_resume_count)
|
1415 |
{
|
1416 |
+
$message = __('Too many resumption attempts.', 'wpvivid-backuprestore');
|
1417 |
$task = WPvivid_taskmanager::update_backup_task_status($task_id, false, 'error', false, $status['resume_count'], $message);
|
1418 |
do_action('wpvivid_handle_backup_failed', $task, true);
|
1419 |
} else {
|
1435 |
$status['resume_count']++;
|
1436 |
if ($status['resume_count'] > $max_resume_count)
|
1437 |
{
|
1438 |
+
$message = __('Too many resumption attempts.', 'wpvivid-backuprestore');
|
1439 |
if ($error !== false)
|
1440 |
{
|
1441 |
$message.= 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
1461 |
$status['resume_count']++;
|
1462 |
if ($status['resume_count'] > $max_resume_count)
|
1463 |
{
|
1464 |
+
$message = __('Too many resumption attempts.', 'wpvivid-backuprestore');
|
1465 |
if ($error !== false)
|
1466 |
{
|
1467 |
$message.= 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
1491 |
{
|
1492 |
$message = 'type: '. $error['type'] . ', ' . $error['message'] . ' file:' . $error['file'] . ' line:' . $error['line'];
|
1493 |
} else {
|
1494 |
+
$message = __('Backup timed out. Please set the value of PHP script execution timeout to '.$time_start.' in plugin settings.', 'wpvivid-backuprestore');
|
1495 |
}
|
1496 |
WPvivid_taskmanager::update_backup_task_status($task_id, false, 'error', false, $status['resume_count'], $message);
|
1497 |
}
|
1586 |
$status['resume_count']++;
|
1587 |
if($status['resume_count']>$max_resume_count)
|
1588 |
{
|
1589 |
+
$message=__('Too many resumption attempts.', 'wpvivid-backuprestore');
|
1590 |
$task=WPvivid_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1591 |
//WPvivid_error_log::create_error_log($this->wpvivid_log->log_file);
|
1592 |
do_action('wpvivid_handle_backup_failed',$task, true);
|
1594 |
else
|
1595 |
{
|
1596 |
$this->check_cancel_backup($task_id);
|
1597 |
+
$message=__('Task timed out.', 'wpvivid-backuprestore');
|
1598 |
if($this->add_resume_event($task_id))
|
1599 |
{
|
1600 |
WPvivid_taskmanager::update_backup_task_status($task_id,false,'wait_resume',false,$status['resume_count']);
|
1706 |
$status['resume_count']++;
|
1707 |
if($status['resume_count']>$max_resume_count)
|
1708 |
{
|
1709 |
+
$message=__('Too many resumption attempts.', 'wpvivid-backuprestore');
|
1710 |
$task=WPvivid_taskmanager::update_backup_task_status($task_id,false,'error',false,$status['resume_count'],$message);
|
1711 |
//WPvivid_error_log::create_error_log($this->wpvivid_log->log_file);
|
1712 |
do_action('wpvivid_handle_backup_failed',$task, true);
|
1714 |
else
|
1715 |
{
|
1716 |
$this->check_cancel_backup($task_id);
|
1717 |
+
$message=__('Task timed out.', 'wpvivid-backuprestore');
|
1718 |
if($this->add_resume_event($task_id))
|
1719 |
{
|
1720 |
WPvivid_taskmanager::update_backup_task_status($task_id,false,'wait_resume',false,$status['resume_count']);
|
2485 |
if(!$backup)
|
2486 |
{
|
2487 |
$ret['result']='failed';
|
2488 |
+
$ret['error']=__('Retrieving the backup(s) information failed while deleting the selected backup(s). Please try again later.', 'wpvivid-backuprestore');
|
2489 |
return $ret;
|
2490 |
}
|
2491 |
|
2495 |
if($force==0)
|
2496 |
{
|
2497 |
$ret['result']='failed';
|
2498 |
+
$ret['error']=__('Unable to delete the locked backup. Please unlock it first and try again.', 'wpvivid-backuprestore');
|
2499 |
return $ret;
|
2500 |
}
|
2501 |
}
|
2598 |
$default = array();
|
2599 |
$remote_array = apply_filters('wpvivid_archieve_remote_array', $default);
|
2600 |
$ret['remote_array'] = $remote_array;
|
2601 |
+
$success_msg = __('You have successfully added a remote storage.', 'wpvivid-backuprestore');
|
2602 |
$ret['notice'] = apply_filters('wpvivid_add_remote_notice', true, $success_msg);
|
2603 |
}
|
2604 |
else{
|
2650 |
$ret['remote_storage'] = $remote_storage;
|
2651 |
} else {
|
2652 |
$ret['result'] = 'failed';
|
2653 |
+
$ret['error'] = __('Fail to delete the remote storage, can not retrieve the storage infomation. Please try again.', 'wpvivid-backuprestore');
|
2654 |
}
|
2655 |
}
|
2656 |
catch (Exception $error) {
|
2678 |
$id = sanitize_key($_POST['remote_id']);
|
2679 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
2680 |
$ret['result'] = WPVIVID_FAILED;
|
2681 |
+
$ret['error'] = __('Failed to get the remote storage information. Please try again later.', 'wpvivid-backuprestore');
|
2682 |
foreach ($remoteslist as $key => $value) {
|
2683 |
if ($key == $id) {
|
2684 |
if ($key === 'remote_selected') {
|
2685 |
continue;
|
2686 |
}
|
2687 |
+
$value = apply_filters('wpvivid_encrypt_remote_password', $value);
|
2688 |
$ret = $value;
|
2689 |
$ret['result'] = WPVIVID_SUCCESS;
|
2690 |
break;
|
3423 |
echo json_encode(array('result'=>WPVIVID_FAILED,'error'=>$message));
|
3424 |
}
|
3425 |
else {
|
3426 |
+
$message = __('restore failed error unknown', 'wpvivid-backuprestore');
|
3427 |
$this->restore_data->delete_temp_files();
|
3428 |
$this->restore_data->update_error($message);
|
3429 |
$this->restore_data->write_log($message,'error');
|
3456 |
die();
|
3457 |
} else {
|
3458 |
$ret['result'] = 'failed';
|
3459 |
+
$ret['error'] = __('The restore file not found. Please verify the file exists.', 'wpvivid-backuprestore');
|
3460 |
echo json_encode($ret);
|
3461 |
die();
|
3462 |
}
|
3568 |
$html='';
|
3569 |
$message=WPvivid_Setting::get_last_backup_message('wpvivid_last_msg');
|
3570 |
if(empty($message)){
|
3571 |
+
$last_message=__('The last backup message not found.', 'wpvivid-backuprestore');
|
3572 |
}
|
3573 |
else{
|
3574 |
if($message['status']['str'] == 'completed'){
|
3584 |
$last_message=$backup_status.', '.$message['status']['start_time'].' <a onclick="wpvivid_read_log(\''.'wpvivid_read_last_backup_log'.'\', \''.$message['log_file_name'].'\');" style="cursor:pointer;"> Log</a>';
|
3585 |
}
|
3586 |
else{
|
3587 |
+
$last_message=__('The last backup message not found.', 'wpvivid-backuprestore');
|
3588 |
}
|
3589 |
}
|
3590 |
+
$html .= '<strong>'.__('Last Backup: ', 'wpvivid-backuprestore').'</strong>'.$last_message;
|
3591 |
return $html;
|
3592 |
}
|
3593 |
|
3657 |
<div class="action-progress-bar-percent" id="wpvivid_action_progress_bar_percent" style="height:24px;width:' . $list_tasks[$task['id']]['task_info']['backup_percent'] . '"></div>
|
3658 |
</div>
|
3659 |
<div id="wpvivid_estimate_backup_info" style="float:left; ' . $list_tasks[$task['id']]['task_info']['display_estimate_backup'] . '">
|
3660 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Database Size:', 'wpvivid-backuprestore') . '</span><span id="wpvivid_backup_database_size">' . $list_tasks[$task['id']]['task_info']['db_size'] . '</span></div>
|
3661 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('File Size:', 'wpvivid-backuprestore') . '</span><span id="wpvivid_backup_file_size">' . $list_tasks[$task['id']]['task_info']['file_size'] . '</span></div>
|
3662 |
</div>
|
3663 |
<div id="wpvivid_estimate_upload_info" style="float: left;">
|
3664 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Total Size:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['total'] . '</span></div>
|
3665 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Uploaded:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['upload'] . '</span></div>
|
3666 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Speed:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['speed'] . '</span></div>
|
3667 |
</div>
|
3668 |
<div style="float: left;">
|
3669 |
+
<div class="backup-basic-info"><span class="wpvivid-element-space-right">' . __('Network Connection:', 'wpvivid-backuprestore') . '</span><span>' . $list_tasks[$task['id']]['task_info']['network_connection'] . '</span></div>
|
3670 |
</div>
|
3671 |
<div style="clear:both;"></div>
|
3672 |
<div style="margin-left:10px; float: left; width:100%;"><p id="wpvivid_current_doing">' . $list_tasks[$task['id']]['task_info']['descript'] . '</p></div>
|
3673 |
<div style="clear: both;"></div>
|
3674 |
<div>
|
3675 |
+
<div id="wpvivid_backup_cancel" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_cancel_btn" type="submit" value="' . esc_attr('Cancel', 'wpvivid-backuprestore') . '" style="' . $list_tasks[$task['id']]['task_info']['css_btn_cancel'] . '" /></div>
|
3676 |
+
<div id="wpvivid_backup_log" class="backup-log-btn"><input class="button-primary" id="wpvivid_backup_log_btn" type="submit" value="' . esc_attr('Log', 'wpvivid-backuprestore') . '" style="' . $list_tasks[$task['id']]['task_info']['css_btn_log'] . '" /></div>
|
3677 |
</div>
|
3678 |
<div style="clear: both;"></div>';
|
3679 |
}
|
3684 |
$backup_success_count=WPvivid_Setting::get_option('wpvivid_backup_success_count');
|
3685 |
if(!empty($backup_success_count)){
|
3686 |
//$notice_msg = $backup_success_count.' backup tasks have been completed. Please switch to <a href="#" onclick="wpvivid_click_switch_page(\'wrap\', \'wpvivid_tab_log\', true);">Log</a> page to check the details.';
|
3687 |
+
$notice_msg = sprintf(__('%d backup tasks have been completed. Please switch to <a href="#" onclick="wpvivid_click_switch_page(\'wrap\', \'wpvivid_tab_log\', true);">Log</a> page to check the details.', 'wpvivid-backuprestore'), $backup_success_count);
|
3688 |
$success_notice_html='<div class="notice notice-success is-dismissible inline"><p>'.$notice_msg.'</p>
|
3689 |
<button type="button" class="notice-dismiss" onclick="click_dismiss_notice(this);">
|
3690 |
<span class="screen-reader-text">Dismiss this notice.</span>
|
3777 |
fclose($tempfile);
|
3778 |
} else {
|
3779 |
$ret['result'] = 'failed';
|
3780 |
+
$ret['error'] = __('Getting backup directory failed. Please try again later.', 'wpvivid-backuprestore');
|
3781 |
}
|
3782 |
|
3783 |
}
|
3972 |
if($options['log']=='0' && $options['backup_cache']=='0' && $options['junk_files']=='0' && $options['old_files']=='0')
|
3973 |
{
|
3974 |
$ret['result']=WPVIVID_FAILED;
|
3975 |
+
$ret['msg']=__('Choose at least one type of junk files for deleting.', 'wpvivid-backuprestore');
|
3976 |
echo json_encode($ret);
|
3977 |
die();
|
3978 |
}
|
4046 |
}
|
4047 |
|
4048 |
$ret['result']='success';
|
4049 |
+
$ret['msg']=__('The selected junk flies have been deleted.', 'wpvivid-backuprestore');
|
4050 |
$ret['data']=$this->_junk_files_info();
|
4051 |
$html = '';
|
4052 |
$html = apply_filters('wpvivid_get_log_list', $html);
|
4217 |
try {
|
4218 |
if (!isset($_POST['remote_storage']) || empty($_POST['remote_storage']) || !is_array($_POST['remote_storage'])) {
|
4219 |
$ret['result'] = WPVIVID_FAILED;
|
4220 |
+
$ret['error'] = __('Choose one storage from the list to be the default storage.', 'wpvivid-backuprestore');
|
4221 |
echo json_encode($ret);
|
4222 |
die();
|
4223 |
}
|
4473 |
$ret['result']=WPVIVID_FAILED;
|
4474 |
if(!isset($data['max_file_size']))
|
4475 |
{
|
4476 |
+
$ret['error']=__('The maximum zip file size is required.', 'wpvivid-backuprestore');
|
4477 |
return $ret;
|
4478 |
}
|
4479 |
|
4481 |
|
4482 |
if(empty($data['max_file_size']) && $data['max_file_size'] != '0')
|
4483 |
{
|
4484 |
+
$ret['error']=__('The maximum zip file size is required.', 'wpvivid-backuprestore');
|
4485 |
return $ret;
|
4486 |
}
|
4487 |
|
4488 |
if(!isset($data['exclude_file_size']))
|
4489 |
{
|
4490 |
+
$ret['error']=__('The size for excluded files is required.', 'wpvivid-backuprestore');
|
4491 |
}
|
4492 |
|
4493 |
$data['exclude_file_size']=sanitize_text_field($data['exclude_file_size']);
|
4494 |
|
4495 |
if(empty($data['exclude_file_size']) && $data['exclude_file_size'] != '0')
|
4496 |
{
|
4497 |
+
$ret['error']=__('The size for excluded files is required.', 'wpvivid-backuprestore');
|
4498 |
return $ret;
|
4499 |
}
|
4500 |
|
4501 |
if(!isset($data['max_execution_time']))
|
4502 |
{
|
4503 |
+
$ret['error']=__('The maximum execution time for PHP script is required.', 'wpvivid-backuprestore');
|
4504 |
}
|
4505 |
|
4506 |
$data['max_execution_time']=sanitize_text_field($data['max_execution_time']);
|
4507 |
|
4508 |
if(empty($data['max_execution_time']) && $data['max_execution_time'] != '0')
|
4509 |
{
|
4510 |
+
$ret['error']=__('The maximum execution time for PHP script is required.', 'wpvivid-backuprestore');
|
4511 |
return $ret;
|
4512 |
}
|
4513 |
|
4514 |
if(!isset($data['path']))
|
4515 |
{
|
4516 |
+
$ret['error']=__('The local storage path is required.', 'wpvivid-backuprestore');
|
4517 |
}
|
4518 |
|
4519 |
$data['path']=sanitize_text_field($data['path']);
|
4520 |
|
4521 |
if(empty($data['path']))
|
4522 |
{
|
4523 |
+
$ret['error']=__('The local storage path is required.', 'wpvivid-backuprestore');
|
4524 |
return $ret;
|
4525 |
}
|
4526 |
|
4530 |
{
|
4531 |
if(empty($data['send_to']))
|
4532 |
{
|
4533 |
+
$ret['error']=__('An email address is required.', 'wpvivid-backuprestore');
|
4534 |
return $ret;
|
4535 |
}
|
4536 |
}
|
4539 |
if (class_exists('PDO')) {
|
4540 |
$extensions = get_loaded_extensions();
|
4541 |
if (!array_search('pdo_mysql', $extensions)) {
|
4542 |
+
$ret['error'] = __('The pdo_mysql extension is not detected. Please install the extension first or choose wpdb option for Database connection method.', 'wpvivid-backuprestore');
|
4543 |
return $ret;
|
4544 |
}
|
4545 |
} else {
|
4546 |
+
$ret['error'] = __('The pdo_mysql extension is not detected. Please install the extension first or choose wpdb option for Database connection method.', 'wpvivid-backuprestore');
|
4547 |
return $ret;
|
4548 |
}
|
4549 |
}
|
4565 |
if($data['save_local_remote'] == 'remote'){
|
4566 |
$remote_storage=WPvivid_Setting::get_remote_options();
|
4567 |
if($remote_storage == false) {
|
4568 |
+
$ret['error']=__('There is no default remote storage configured. Please set it up first.', 'wpvivid-backuprestore');
|
4569 |
return $ret;
|
4570 |
}
|
4571 |
}
|
4621 |
$offset=get_option('gmt_offset');
|
4622 |
$date_format = date("Ymd",time()+$offset*60*60);
|
4623 |
$time_format = date("His",time()+$offset*60*60);
|
4624 |
+
$export_file_name = apply_filters('wpvivid_white_label_slug', 'wpvivid').'_setting-'.$domain_tran.'-'.$date_format.'-'.$time_format.'.json';
|
4625 |
if (!headers_sent()) {
|
4626 |
header('Content-Disposition: attachment; filename='.$export_file_name);
|
4627 |
//header('Content-type: application/json');
|
4662 |
echo json_encode($ret);
|
4663 |
} else {
|
4664 |
$ret['result'] = 'failed';
|
4665 |
+
$ret['error'] = __('The selected file is not the setting file for WPvivid. Please upload the right file.', 'wpvivid-backuprestore');
|
4666 |
echo json_encode($ret);
|
4667 |
}
|
4668 |
}
|
4684 |
$send_to = sanitize_email($_POST['send_to']);
|
4685 |
if (empty($send_to)) {
|
4686 |
$ret['result'] = 'failed';
|
4687 |
+
$ret['error'] = __('Invalid email address', 'wpvivid-backuprestore');
|
4688 |
echo json_encode($ret);
|
4689 |
} else {
|
4690 |
$subject = 'WPvivid Test Mail';
|
4692 |
$headers = array('Content-Type: text/html; charset=UTF-8');
|
4693 |
if (wp_mail($send_to, $subject, $body, $headers) === false) {
|
4694 |
$ret['result'] = 'failed';
|
4695 |
+
$ret['error'] = __('Unable to send email. Please check the configuration of email server.', 'wpvivid-backuprestore');
|
4696 |
} else {
|
4697 |
$ret['result'] = 'success';
|
4698 |
}
|
4825 |
$value['des'] = 'N/A';
|
4826 |
}
|
4827 |
$value['path'] = str_replace('\\', '/', $value['path']);
|
4828 |
+
$html .= '<tr style="'.esc_attr($log_tr_display, 'wpvivid-backuprestore').'">
|
4829 |
+
<td class="row-title"><label for="tablecell">'.__($value['time'], 'wpvivid-backuprestore').'</label>
|
4830 |
</td>
|
4831 |
+
<td>'.__($value['des'], 'wpvivid-backuprestore').'</td>
|
4832 |
+
<td>'.__($value['file_name'], 'wpvivid-backuprestore').'</td>
|
4833 |
<td>
|
4834 |
<a onclick="wpvivid_read_log(\''.'wpvivid_view_log'.'\', \''.$value['path'].'\')" style="cursor:pointer;">
|
4835 |
<img src="'.esc_url(WPVIVID_PLUGIN_URL.$pic_log).'" style="vertical-align:middle;">Log
|
4968 |
$path = sanitize_text_field($_POST['path']);
|
4969 |
if (!file_exists($path)) {
|
4970 |
$json['result'] = 'failed';
|
4971 |
+
$json['error'] = __('The log not found.', 'wpvivid-backuprestore');
|
4972 |
echo json_encode($json);
|
4973 |
die();
|
4974 |
}
|
4977 |
|
4978 |
if (!$file) {
|
4979 |
$json['result'] = 'failed';
|
4980 |
+
$json['error'] = __('Unable to open the log file.', 'wpvivid-backuprestore');
|
4981 |
echo json_encode($json);
|
4982 |
die();
|
4983 |
}
|
4993 |
echo json_encode($json);
|
4994 |
} else {
|
4995 |
$json['result'] = 'failed';
|
4996 |
+
$json['error'] = __('Reading the log failed. Please try again.', 'wpvivid-backuprestore');
|
4997 |
echo json_encode($json);
|
4998 |
}
|
4999 |
}
|
5046 |
}
|
5047 |
ini_set('max_execution_time', $limit);
|
5048 |
|
5049 |
+
$current_offset = get_option( 'gmt_offset' );
|
5050 |
+
$timezone = get_option( 'timezone_string' );
|
5051 |
+
|
5052 |
+
if ( false !== strpos( $timezone, 'Etc/GMT' ) ) {
|
5053 |
+
$timezone = '';
|
5054 |
+
}
|
5055 |
+
|
5056 |
+
if ( empty( $timezone ) ) {
|
5057 |
+
if ( 0 == $current_offset ) {
|
5058 |
+
$timezone = 'UTC+0';
|
5059 |
+
} elseif ( $current_offset < 0 ) {
|
5060 |
+
$timezone = 'UTC' . $current_offset;
|
5061 |
+
} else {
|
5062 |
+
$timezone = 'UTC+' . $current_offset;
|
5063 |
+
}
|
5064 |
+
}
|
5065 |
|
5066 |
$ret['data']['max_execution_time'] = ini_get("max_execution_time");
|
5067 |
$ret['data']['max_input_vars'] = ini_get("max_input_vars");
|
5068 |
$ret['data']['max_input_vars'] = ini_get("max_input_vars");
|
5069 |
+
$ret['data']['timezone'] = $timezone;//date_default_timezone_get();
|
5070 |
$ret['data']['OS'] = php_uname();
|
5071 |
$ret['data']['memory_current'] = $this->formatBytes(memory_get_usage());
|
5072 |
$ret['data']['memory_peak'] = $this->formatBytes(memory_get_peak_usage());
|
5264 |
|
5265 |
$hide = 'hide';
|
5266 |
$html .= '<tr style="' . $row_style . '">
|
5267 |
+
<th class="check-column"><input name="check_backup" type="checkbox" id="' . esc_attr($key, 'wpvivid-backuprestore') . '" value="' . esc_attr($key, 'wpvivid-backuprestore') . '" onclick="wpvivid_click_check_backup(\'' . $key . '\', \'' . $list_name . '\');" /></th>
|
5268 |
<td class="tablelistcolumn">
|
5269 |
<div style="float:left;padding:0 10px 10px 0;">
|
5270 |
+
<div class="backuptime"><strong>' . $upload_title . '</strong>' . __(date('M d, Y H:i', $backup_time), 'wpvivid-backuprestore') . '</div>
|
5271 |
<div class="common-table">
|
5272 |
<span title="To lock the backup, the backup can only be deleted manually" id="wpvivid_lock_' . $key . '">
|
5273 |
+
<img src="' . esc_url(WPVIVID_PLUGIN_URL . $backup_lock) . '" name="' . esc_attr($lock_status, 'wpvivid-backuprestore') . '" onclick="wpvivid_set_backup_lock(\'' . $key . '\', \'' . $lock_status . '\');" style="vertical-align:middle; cursor:pointer;"/>
|
5274 |
</span>
|
5275 |
+
<span style="margin:0;">|</span> <span>' . __('Type:', 'wpvivid-backuprestore') . '</span><span>' . __($value['type'], 'wpvivid-backuprestore') . '</span>
|
5276 |
+
<span style="margin:0;">|</span> <span title="Backup log"><a href="#" onclick="wpvivid_read_log(\'' . 'wpvivid_view_backup_log' . '\', \'' . __($key) . '\');"><img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Log.png') . '" style="vertical-align:middle;cursor:pointer;"/><span style="margin:0;">' . __('Log', 'wpvivid-backuprestore') . '</span></a></span>
|
5277 |
</div>
|
5278 |
</div>
|
5279 |
</td>
|
5281 |
<div style="float:left;padding:10px 10px 10px 0;">' . $remote_pic_html . '</div>
|
5282 |
</td>
|
5283 |
<td class="tablelistcolumn" style="min-width:100px;">
|
5284 |
+
<div id="wpvivid_file_part_' . __($key, 'wpvivid-backuprestore') . '" style="float:left;padding:10px 10px 10px 0;">
|
5285 |
<div style="cursor:pointer;" onclick="wpvivid_initialize_download(\'' . $key . '\', \'' . $list_name . '\');" title="Prepare to download the backup">
|
5286 |
+
<img id="wpvivid_download_btn_' . __($key, 'wpvivid-backuprestore') . '" src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/download.png') . '" style="vertical-align:middle;" /><span>' . __('Download', 'wpvivid-backuprestore') . '</span>
|
5287 |
+
<div class="spinner" id="wpvivid_download_loading_' . __($key, 'wpvivid-backuprestore') . '" style="float:right;width:auto;height:auto;padding:10px 180px 10px 0;background-position:0 0;"></div>
|
5288 |
</div>
|
5289 |
</div>
|
5290 |
</td>
|
5291 |
<td class="tablelistcolumn" style="min-width:100px;">
|
5292 |
<div class="' . $tour_class . '" onclick="wpvivid_popup_tour(\'' . $hide . '\');">
|
5293 |
+
' . $tour_message . '<div style="cursor:pointer;padding:10px 0 10px 0;" onclick="wpvivid_initialize_restore(\'' . __($key, 'wpvivid-backuprestore') . '\',\'' . __(date('M d, Y H:i', $backup_time), 'wpvivid-backuprestore') . '\',\'' . __($value['type'], 'wpvivid-backuprestore') . '\');" style="float:left;padding:10px 10px 10px 0;">
|
5294 |
+
<img src="' . esc_url(WPVIVID_PLUGIN_URL . '/admin/partials/images/Restore.png') . '" style="vertical-align:middle;" /><span>' . __('Restore', 'wpvivid-backuprestore') . '</span>
|
5295 |
</div>
|
5296 |
</div>
|
5297 |
</td>
|
5332 |
$storage_type = $value['type'];
|
5333 |
$storage_type=apply_filters('wpvivid_storage_provider_tran', $storage_type);
|
5334 |
$html .= '<tr>
|
5335 |
+
<td>'.__($i++, 'wpvivid-backuprestore').'</td>
|
5336 |
+
<td><input type="checkbox" name="remote_storage" value="'.esc_attr($key, 'wpvivid-backuprestore').'" '.esc_attr($check_status, 'wpvivid-backuprestore').' /></td>
|
5337 |
+
<td>'.__($storage_type, 'wpvivid-backuprestore').'</td>
|
5338 |
+
<td class="row-title"><label for="tablecell">'.__($value['name'], 'wpvivid-backuprestore').'</label></td>
|
5339 |
<td>
|
5340 |
+
<div style="float: left;"><img src="'.esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/Edit.png').'" onclick="click_retrieve_remote_storage(\''.__($key, 'wpvivid-backuprestore').'\',\''.__($value['type'], 'wpvivid-backuprestore').'\',\''.__($value['name'], 'wpvivid-backuprestore').'\'
|
5341 |
);" style="vertical-align:middle; cursor:pointer;" title="Edit the remote storage"/></div>
|
5342 |
+
<div><img src="'.esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/Delete.png').'" onclick="wpvivid_delete_remote_storage(\''.__($key, 'wpvivid-backuprestore').'\'
|
5343 |
);" style="vertical-align:middle; cursor:pointer;" title="Remove the remote storage"/></div>
|
5344 |
</td>
|
5345 |
</tr>';
|
5426 |
$html .= '<fieldset>
|
5427 |
<label title="">
|
5428 |
<input type="radio" option="schedule" name="save_local_remote" value="local" '.$backup_local.' />
|
5429 |
+
<span>'.__( 'Save backups on localhost (web server)', 'wpvivid-backuprestore' ).'</span>
|
5430 |
</label><br>
|
5431 |
<label title="">
|
5432 |
<input type="radio" option="schedule" name="save_local_remote" value="remote" '.$backup_remote.' />
|
5433 |
+
<span>'.__( 'Send backups to remote storage (choose this option, the local backup will be deleted after uploading to remote storage completely)', 'wpvivid-backuprestore' ).'</span>
|
5434 |
</label>
|
5435 |
<label style="display: none;">
|
5436 |
<input type="checkbox" option="schedule" name="lock" value="0" />
|
5598 |
try {
|
5599 |
if (!isset($_POST['user_mail']) || empty($_POST['user_mail'])) {
|
5600 |
$ret['result'] = 'failed';
|
5601 |
+
$ret['error'] = __('User\'s email address is required.', 'wpvivid-backuprestore');
|
5602 |
} else {
|
5603 |
$pattern = '/^[a-z0-9]+([._-][a-z0-9]+)*@([0-9a-z]+\.[a-z]{2,14}(\.[a-z]{2})?)$/i';
|
5604 |
if (!preg_match($pattern, $_POST['user_mail'])) {
|
5605 |
$ret['result'] = 'failed';
|
5606 |
+
$ret['error'] = __('Please enter a valid email address.', 'wpvivid-backuprestore');
|
5607 |
} else {
|
5608 |
$this->ajax_check_security();
|
5609 |
$ret = WPvivid_mail_report::wpvivid_send_debug_info($_POST['user_mail'],$_POST['server_type'],$_POST['host_provider'],$_POST['comment']);
|
includes/customclass/class-wpvivid-amazons3-plus.php
CHANGED
@@ -41,7 +41,7 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
41 |
{
|
42 |
?>
|
43 |
<div class="storage-providers" remote_type="amazons3" onclick="select_remote_storage(event, 'storage_account_amazons3');">
|
44 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-amazon-s3.png'); ?>" style="vertical-align:middle;"/><?php _e('Amazon S3', 'wpvivid'); ?>
|
45 |
</div>
|
46 |
<?php
|
47 |
}
|
@@ -59,7 +59,7 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
59 |
?>
|
60 |
<div id="storage_account_amazons3" class="storage-account-page" style="display:none;">
|
61 |
<div style="padding: 0 10px 10px 0;">
|
62 |
-
<strong><?php _e('Enter Your Amazon S3 Account', 'wpvivid'); ?></strong>
|
63 |
</div>
|
64 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
65 |
<tbody>
|
@@ -67,60 +67,60 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
67 |
<tr>
|
68 |
<td class="plugin-title column-primary">
|
69 |
<div class="wpvivid-storage-form">
|
70 |
-
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Amazon S3-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
71 |
</div>
|
72 |
</td>
|
73 |
<td class="column-description desc">
|
74 |
<div class="wpvivid-storage-form-desc">
|
75 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
76 |
</div>
|
77 |
</td>
|
78 |
</tr>
|
79 |
<tr>
|
80 |
<td class="plugin-title column-primary">
|
81 |
<div class="wpvivid-storage-form">
|
82 |
-
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="access" placeholder="<?php esc_attr_e('Amazon S3 access key', 'wpvivid'); ?>" />
|
83 |
</div>
|
84 |
</td>
|
85 |
<td class="column-description desc">
|
86 |
<div class="wpvivid-storage-form-desc">
|
87 |
-
<i><?php _e('Enter your Amazon S3 access key.', 'wpvivid'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 access key.', 'wpvivid'); ?></a>
|
88 |
</div>
|
89 |
</td>
|
90 |
</tr>
|
91 |
<tr>
|
92 |
<td class="plugin-title column-primary">
|
93 |
<div class="wpvivid-storage-form">
|
94 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="amazons3" name="secret" placeholder="<?php esc_attr_e('Amazon S3 secret key', 'wpvivid'); ?>" />
|
95 |
</div>
|
96 |
</td>
|
97 |
<td class="column-description desc">
|
98 |
<div class="wpvivid-storage-form-desc">
|
99 |
-
<i><?php _e('Enter your Amazon S3 secret key.', 'wpvivid'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 secret key.', 'wpvivid'); ?></a>
|
100 |
</div>
|
101 |
</td>
|
102 |
</tr>
|
103 |
<tr>
|
104 |
<td class="plugin-title column-primary">
|
105 |
<div class="wpvivid-storage-form">
|
106 |
-
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="bucket" placeholder="<?php esc_attr_e('Amazon S3 Bucket Name(e.g. test)', 'wpvivid'); ?>" />
|
107 |
</div>
|
108 |
</td>
|
109 |
<td class="column-description desc">
|
110 |
<div class="wpvivid-storage-form-desc">
|
111 |
-
<i><span><?php _e('Enter an existed Bucket to create a custom backup storage directory.', 'wpvivid'); ?></span></i>
|
112 |
</div>
|
113 |
</td>
|
114 |
</tr>
|
115 |
<tr>
|
116 |
<td class="plugin-title column-primary">
|
117 |
<div class="wpvivid-storage-form">
|
118 |
-
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid'); ?>" />
|
119 |
</div>
|
120 |
</td>
|
121 |
<td class="column-description desc">
|
122 |
<div class="wpvivid-storage-form-desc">
|
123 |
-
<i><span><?php _e('Customize the directory where you want to store backups within the Bucket.', 'wpvivid'); ?></span></i>
|
124 |
</div>
|
125 |
</td>
|
126 |
</tr>
|
@@ -128,13 +128,13 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
128 |
<td class="plugin-title column-primary">
|
129 |
<div class="wpvivid-storage-select">
|
130 |
<label>
|
131 |
-
<input type="checkbox" option="amazons3" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
132 |
</label>
|
133 |
</div>
|
134 |
</td>
|
135 |
<td class="column-description desc">
|
136 |
<div class="wpvivid-storage-form-desc">
|
137 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
138 |
</div>
|
139 |
</td>
|
140 |
</tr>
|
@@ -142,13 +142,13 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
142 |
<td class="plugin-title column-primary">
|
143 |
<div class="wpvivid-storage-select">
|
144 |
<label>
|
145 |
-
<input type="checkbox" option="amazons3" name="classMode" checked /><?php _e('Storage class: Standard (infrequent access).', 'wpvivid'); ?>
|
146 |
</label>
|
147 |
</div>
|
148 |
</td>
|
149 |
<td class="column-description desc">
|
150 |
<div class="wpvivid-storage-form-desc">
|
151 |
-
<i><?php _e('Check the option to use Amazon S3 Standard-Infrequent Access (S3 Standard-IA) storage class for data transfer.', 'wpvivid'); ?></i>
|
152 |
</div>
|
153 |
</td>
|
154 |
</tr>
|
@@ -156,13 +156,13 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
156 |
<td class="plugin-title column-primary">
|
157 |
<div class="wpvivid-storage-select">
|
158 |
<label>
|
159 |
-
<input type="checkbox" option="amazons3" name="sse" checked /><?php _e('Server-side encryption.', 'wpvivid'); ?>
|
160 |
</label>
|
161 |
</div>
|
162 |
</td>
|
163 |
<td class="column-description desc">
|
164 |
<div class="wpvivid-storage-form-desc">
|
165 |
-
<i><?php _e('Check the option to use Amazon S3 server-side encryption to protect data.', 'wpvivid'); ?></i>
|
166 |
</div>
|
167 |
</td>
|
168 |
</tr>
|
@@ -170,12 +170,12 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
170 |
<tr>
|
171 |
<td class="plugin-title column-primary">
|
172 |
<div class="wpvivid-storage-form">
|
173 |
-
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid'); ?>" />
|
174 |
</div>
|
175 |
</td>
|
176 |
<td class="column-description desc">
|
177 |
<div class="wpvivid-storage-form-desc">
|
178 |
-
<i><?php _e('Click the button to connect to Amazon S3 storage and add it to the storage list below.', 'wpvivid'); ?></i>
|
179 |
</div>
|
180 |
</td>
|
181 |
</tr>
|
@@ -184,7 +184,7 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
184 |
<?php
|
185 |
if($need_extension){
|
186 |
?>
|
187 |
-
<p style="padding-left: 10px;"><?php _e('The simplexml extension is not detected. Please install the extension first.', 'wpvivid'); ?></p>
|
188 |
<?php
|
189 |
}
|
190 |
?>
|
@@ -197,7 +197,7 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
197 |
?>
|
198 |
<div id="remote_storage_edit_amazons3" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
199 |
<div style="padding: 0 10px 10px 0;">
|
200 |
-
<strong><?php _e('Enter Your Amazon S3 Account', 'wpvivid'); ?></strong>
|
201 |
</div>
|
202 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
203 |
<tbody>
|
@@ -205,60 +205,60 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
205 |
<tr>
|
206 |
<td class="plugin-title column-primary">
|
207 |
<div class="wpvivid-storage-form">
|
208 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Amazon S3-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
209 |
</div>
|
210 |
</td>
|
211 |
<td class="column-description desc">
|
212 |
<div class="wpvivid-storage-form-desc">
|
213 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
214 |
</div>
|
215 |
</td>
|
216 |
</tr>
|
217 |
<tr>
|
218 |
<td class="plugin-title column-primary">
|
219 |
<div class="wpvivid-storage-form">
|
220 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="access" placeholder="<?php esc_attr_e('Amazon S3 access key', 'wpvivid'); ?>" />
|
221 |
</div>
|
222 |
</td>
|
223 |
<td class="column-description desc">
|
224 |
<div class="wpvivid-storage-form-desc">
|
225 |
-
<i><?php _e('Enter your Amazon S3 access key.', 'wpvivid'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 access key.', 'wpvivid'); ?></a>
|
226 |
</div>
|
227 |
</td>
|
228 |
</tr>
|
229 |
<tr>
|
230 |
<td class="plugin-title column-primary">
|
231 |
<div class="wpvivid-storage-form">
|
232 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="edit-amazons3" name="secret" placeholder="<?php esc_attr_e('Amazon S3 secret key', 'wpvivid'); ?>" />
|
233 |
</div>
|
234 |
</td>
|
235 |
<td class="column-description desc">
|
236 |
<div class="wpvivid-storage-form-desc">
|
237 |
-
<i><?php _e('Enter your Amazon S3 secret key.', 'wpvivid'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 secret key.', 'wpvivid'); ?></a>
|
238 |
</div>
|
239 |
</td>
|
240 |
</tr>
|
241 |
<tr>
|
242 |
<td class="plugin-title column-primary">
|
243 |
<div class="wpvivid-storage-form">
|
244 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="bucket" placeholder="<?php esc_attr_e('Amazon S3 Bucket Name(e.g. test)', 'wpvivid'); ?>" />
|
245 |
</div>
|
246 |
</td>
|
247 |
<td class="column-description desc">
|
248 |
<div class="wpvivid-storage-form-desc">
|
249 |
-
<i><span><?php _e('Enter an existed Bucket to create a custom backup storage directory.', 'wpvivid'); ?></span></i>
|
250 |
</div>
|
251 |
</td>
|
252 |
</tr>
|
253 |
<tr>
|
254 |
<td class="plugin-title column-primary">
|
255 |
<div class="wpvivid-storage-form">
|
256 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid'); ?>" />
|
257 |
</div>
|
258 |
</td>
|
259 |
<td class="column-description desc">
|
260 |
<div class="wpvivid-storage-form-desc">
|
261 |
-
<i><span><?php _e('Customize the directory where you want to store backups within the Bucket.', 'wpvivid'); ?></span></i>
|
262 |
</div>
|
263 |
</td>
|
264 |
</tr>
|
@@ -266,13 +266,13 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
266 |
<td class="plugin-title column-primary">
|
267 |
<div class="wpvivid-storage-select">
|
268 |
<label>
|
269 |
-
<input type="checkbox" option="edit-amazons3" name="classMode" /><?php _e('Storage class: Standard (infrequent access).', 'wpvivid'); ?>
|
270 |
</label>
|
271 |
</div>
|
272 |
</td>
|
273 |
<td class="column-description desc">
|
274 |
<div class="wpvivid-storage-form-desc">
|
275 |
-
<i><?php _e('Check the option to use Amazon S3 Standard-Infrequent Access (S3 Standard-IA) storage class for data transfer.', 'wpvivid'); ?></i>
|
276 |
</div>
|
277 |
</td>
|
278 |
</tr>
|
@@ -280,13 +280,13 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
280 |
<td class="plugin-title column-primary">
|
281 |
<div class="wpvivid-storage-select">
|
282 |
<label>
|
283 |
-
<input type="checkbox" option="edit-amazons3" name="sse" /><?php _e('Server-side encryption.', 'wpvivid'); ?>
|
284 |
</label>
|
285 |
</div>
|
286 |
</td>
|
287 |
<td class="column-description desc">
|
288 |
<div class="wpvivid-storage-form-desc">
|
289 |
-
<i><?php _e('Check the option to use Amazon S3 server-side encryption to protect data.', 'wpvivid'); ?></i>
|
290 |
</div>
|
291 |
</td>
|
292 |
</tr>
|
@@ -294,12 +294,12 @@ class WPvivid_AMAZONS3Class extends WPvivid_Remote{
|
|
294 |
<tr>
|
295 |
<td class="plugin-title column-primary">
|
296 |
<div class="wpvivid-storage-form">
|
297 |
-
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>" />
|
298 |
</div>
|
299 |
</td>
|
300 |
<td class="column-description desc">
|
301 |
<div class="wpvivid-storage-form-desc">
|
302 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
303 |
</div>
|
304 |
</td>
|
305 |
</tr>
|
41 |
{
|
42 |
?>
|
43 |
<div class="storage-providers" remote_type="amazons3" onclick="select_remote_storage(event, 'storage_account_amazons3');">
|
44 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-amazon-s3.png'); ?>" style="vertical-align:middle;"/><?php _e('Amazon S3', 'wpvivid-backuprestore'); ?>
|
45 |
</div>
|
46 |
<?php
|
47 |
}
|
59 |
?>
|
60 |
<div id="storage_account_amazons3" class="storage-account-page" style="display:none;">
|
61 |
<div style="padding: 0 10px 10px 0;">
|
62 |
+
<strong><?php _e('Enter Your Amazon S3 Account', 'wpvivid-backuprestore'); ?></strong>
|
63 |
</div>
|
64 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
65 |
<tbody>
|
67 |
<tr>
|
68 |
<td class="plugin-title column-primary">
|
69 |
<div class="wpvivid-storage-form">
|
70 |
+
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Amazon S3-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
71 |
</div>
|
72 |
</td>
|
73 |
<td class="column-description desc">
|
74 |
<div class="wpvivid-storage-form-desc">
|
75 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
76 |
</div>
|
77 |
</td>
|
78 |
</tr>
|
79 |
<tr>
|
80 |
<td class="plugin-title column-primary">
|
81 |
<div class="wpvivid-storage-form">
|
82 |
+
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="access" placeholder="<?php esc_attr_e('Amazon S3 access key', 'wpvivid-backuprestore'); ?>" />
|
83 |
</div>
|
84 |
</td>
|
85 |
<td class="column-description desc">
|
86 |
<div class="wpvivid-storage-form-desc">
|
87 |
+
<i><?php _e('Enter your Amazon S3 access key.', 'wpvivid-backuprestore'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 access key.', 'wpvivid-backuprestore'); ?></a>
|
88 |
</div>
|
89 |
</td>
|
90 |
</tr>
|
91 |
<tr>
|
92 |
<td class="plugin-title column-primary">
|
93 |
<div class="wpvivid-storage-form">
|
94 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="amazons3" name="secret" placeholder="<?php esc_attr_e('Amazon S3 secret key', 'wpvivid-backuprestore'); ?>" />
|
95 |
</div>
|
96 |
</td>
|
97 |
<td class="column-description desc">
|
98 |
<div class="wpvivid-storage-form-desc">
|
99 |
+
<i><?php _e('Enter your Amazon S3 secret key.', 'wpvivid-backuprestore'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 secret key.', 'wpvivid-backuprestore'); ?></a>
|
100 |
</div>
|
101 |
</td>
|
102 |
</tr>
|
103 |
<tr>
|
104 |
<td class="plugin-title column-primary">
|
105 |
<div class="wpvivid-storage-form">
|
106 |
+
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="bucket" placeholder="<?php esc_attr_e('Amazon S3 Bucket Name(e.g. test)', 'wpvivid-backuprestore'); ?>" />
|
107 |
</div>
|
108 |
</td>
|
109 |
<td class="column-description desc">
|
110 |
<div class="wpvivid-storage-form-desc">
|
111 |
+
<i><span><?php _e('Enter an existed Bucket to create a custom backup storage directory.', 'wpvivid-backuprestore'); ?></span></i>
|
112 |
</div>
|
113 |
</td>
|
114 |
</tr>
|
115 |
<tr>
|
116 |
<td class="plugin-title column-primary">
|
117 |
<div class="wpvivid-storage-form">
|
118 |
+
<input type="text" class="regular-text" autocomplete="off" option="amazons3" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid-backuprestore'); ?>" />
|
119 |
</div>
|
120 |
</td>
|
121 |
<td class="column-description desc">
|
122 |
<div class="wpvivid-storage-form-desc">
|
123 |
+
<i><span><?php _e('Customize the directory where you want to store backups within the Bucket.', 'wpvivid-backuprestore'); ?></span></i>
|
124 |
</div>
|
125 |
</td>
|
126 |
</tr>
|
128 |
<td class="plugin-title column-primary">
|
129 |
<div class="wpvivid-storage-select">
|
130 |
<label>
|
131 |
+
<input type="checkbox" option="amazons3" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
132 |
</label>
|
133 |
</div>
|
134 |
</td>
|
135 |
<td class="column-description desc">
|
136 |
<div class="wpvivid-storage-form-desc">
|
137 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
138 |
</div>
|
139 |
</td>
|
140 |
</tr>
|
142 |
<td class="plugin-title column-primary">
|
143 |
<div class="wpvivid-storage-select">
|
144 |
<label>
|
145 |
+
<input type="checkbox" option="amazons3" name="classMode" checked /><?php _e('Storage class: Standard (infrequent access).', 'wpvivid-backuprestore'); ?>
|
146 |
</label>
|
147 |
</div>
|
148 |
</td>
|
149 |
<td class="column-description desc">
|
150 |
<div class="wpvivid-storage-form-desc">
|
151 |
+
<i><?php _e('Check the option to use Amazon S3 Standard-Infrequent Access (S3 Standard-IA) storage class for data transfer.', 'wpvivid-backuprestore'); ?></i>
|
152 |
</div>
|
153 |
</td>
|
154 |
</tr>
|
156 |
<td class="plugin-title column-primary">
|
157 |
<div class="wpvivid-storage-select">
|
158 |
<label>
|
159 |
+
<input type="checkbox" option="amazons3" name="sse" checked /><?php _e('Server-side encryption.', 'wpvivid-backuprestore'); ?>
|
160 |
</label>
|
161 |
</div>
|
162 |
</td>
|
163 |
<td class="column-description desc">
|
164 |
<div class="wpvivid-storage-form-desc">
|
165 |
+
<i><?php _e('Check the option to use Amazon S3 server-side encryption to protect data.', 'wpvivid-backuprestore'); ?></i>
|
166 |
</div>
|
167 |
</td>
|
168 |
</tr>
|
170 |
<tr>
|
171 |
<td class="plugin-title column-primary">
|
172 |
<div class="wpvivid-storage-form">
|
173 |
+
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid-backuprestore'); ?>" />
|
174 |
</div>
|
175 |
</td>
|
176 |
<td class="column-description desc">
|
177 |
<div class="wpvivid-storage-form-desc">
|
178 |
+
<i><?php _e('Click the button to connect to Amazon S3 storage and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
179 |
</div>
|
180 |
</td>
|
181 |
</tr>
|
184 |
<?php
|
185 |
if($need_extension){
|
186 |
?>
|
187 |
+
<p style="padding-left: 10px;"><?php _e('The simplexml extension is not detected. Please install the extension first.', 'wpvivid-backuprestore'); ?></p>
|
188 |
<?php
|
189 |
}
|
190 |
?>
|
197 |
?>
|
198 |
<div id="remote_storage_edit_amazons3" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
199 |
<div style="padding: 0 10px 10px 0;">
|
200 |
+
<strong><?php _e('Enter Your Amazon S3 Account', 'wpvivid-backuprestore'); ?></strong>
|
201 |
</div>
|
202 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
203 |
<tbody>
|
205 |
<tr>
|
206 |
<td class="plugin-title column-primary">
|
207 |
<div class="wpvivid-storage-form">
|
208 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Amazon S3-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
209 |
</div>
|
210 |
</td>
|
211 |
<td class="column-description desc">
|
212 |
<div class="wpvivid-storage-form-desc">
|
213 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
214 |
</div>
|
215 |
</td>
|
216 |
</tr>
|
217 |
<tr>
|
218 |
<td class="plugin-title column-primary">
|
219 |
<div class="wpvivid-storage-form">
|
220 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="access" placeholder="<?php esc_attr_e('Amazon S3 access key', 'wpvivid-backuprestore'); ?>" />
|
221 |
</div>
|
222 |
</td>
|
223 |
<td class="column-description desc">
|
224 |
<div class="wpvivid-storage-form-desc">
|
225 |
+
<i><?php _e('Enter your Amazon S3 access key.', 'wpvivid-backuprestore'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 access key.', 'wpvivid-backuprestore'); ?></a>
|
226 |
</div>
|
227 |
</td>
|
228 |
</tr>
|
229 |
<tr>
|
230 |
<td class="plugin-title column-primary">
|
231 |
<div class="wpvivid-storage-form">
|
232 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="edit-amazons3" name="secret" placeholder="<?php esc_attr_e('Amazon S3 secret key', 'wpvivid-backuprestore'); ?>" />
|
233 |
</div>
|
234 |
</td>
|
235 |
<td class="column-description desc">
|
236 |
<div class="wpvivid-storage-form-desc">
|
237 |
+
<i><?php _e('Enter your Amazon S3 secret key.', 'wpvivid-backuprestore'); ?></i><a href="https://wpvivid.com/get-amazon-access-secret-key.html" target="_blank"> <?php _e('How to get an AmazonS3 secret key.', 'wpvivid-backuprestore'); ?></a>
|
238 |
</div>
|
239 |
</td>
|
240 |
</tr>
|
241 |
<tr>
|
242 |
<td class="plugin-title column-primary">
|
243 |
<div class="wpvivid-storage-form">
|
244 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="bucket" placeholder="<?php esc_attr_e('Amazon S3 Bucket Name(e.g. test)', 'wpvivid-backuprestore'); ?>" />
|
245 |
</div>
|
246 |
</td>
|
247 |
<td class="column-description desc">
|
248 |
<div class="wpvivid-storage-form-desc">
|
249 |
+
<i><span><?php _e('Enter an existed Bucket to create a custom backup storage directory.', 'wpvivid-backuprestore'); ?></span></i>
|
250 |
</div>
|
251 |
</td>
|
252 |
</tr>
|
253 |
<tr>
|
254 |
<td class="plugin-title column-primary">
|
255 |
<div class="wpvivid-storage-form">
|
256 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-amazons3" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid-backuprestore'); ?>" />
|
257 |
</div>
|
258 |
</td>
|
259 |
<td class="column-description desc">
|
260 |
<div class="wpvivid-storage-form-desc">
|
261 |
+
<i><span><?php _e('Customize the directory where you want to store backups within the Bucket.', 'wpvivid-backuprestore'); ?></span></i>
|
262 |
</div>
|
263 |
</td>
|
264 |
</tr>
|
266 |
<td class="plugin-title column-primary">
|
267 |
<div class="wpvivid-storage-select">
|
268 |
<label>
|
269 |
+
<input type="checkbox" option="edit-amazons3" name="classMode" /><?php _e('Storage class: Standard (infrequent access).', 'wpvivid-backuprestore'); ?>
|
270 |
</label>
|
271 |
</div>
|
272 |
</td>
|
273 |
<td class="column-description desc">
|
274 |
<div class="wpvivid-storage-form-desc">
|
275 |
+
<i><?php _e('Check the option to use Amazon S3 Standard-Infrequent Access (S3 Standard-IA) storage class for data transfer.', 'wpvivid-backuprestore'); ?></i>
|
276 |
</div>
|
277 |
</td>
|
278 |
</tr>
|
280 |
<td class="plugin-title column-primary">
|
281 |
<div class="wpvivid-storage-select">
|
282 |
<label>
|
283 |
+
<input type="checkbox" option="edit-amazons3" name="sse" /><?php _e('Server-side encryption.', 'wpvivid-backuprestore'); ?>
|
284 |
</label>
|
285 |
</div>
|
286 |
</td>
|
287 |
<td class="column-description desc">
|
288 |
<div class="wpvivid-storage-form-desc">
|
289 |
+
<i><?php _e('Check the option to use Amazon S3 server-side encryption to protect data.', 'wpvivid-backuprestore'); ?></i>
|
290 |
</div>
|
291 |
</td>
|
292 |
</tr>
|
294 |
<tr>
|
295 |
<td class="plugin-title column-primary">
|
296 |
<div class="wpvivid-storage-form">
|
297 |
+
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>" />
|
298 |
</div>
|
299 |
</td>
|
300 |
<td class="column-description desc">
|
301 |
<div class="wpvivid-storage-form-desc">
|
302 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
303 |
</div>
|
304 |
</td>
|
305 |
</tr>
|
includes/customclass/class-wpvivid-dropbox.php
CHANGED
@@ -300,7 +300,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
300 |
{
|
301 |
try {
|
302 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
303 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
304 |
return;
|
305 |
}
|
306 |
|
@@ -309,7 +309,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
309 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
310 |
foreach ($remoteslist as $key => $value) {
|
311 |
if (isset($value['name']) && $value['name'] == $_GET['name']) {
|
312 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
313 |
return;
|
314 |
}
|
315 |
}
|
@@ -366,7 +366,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
366 |
{
|
367 |
try {
|
368 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
369 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
370 |
return;
|
371 |
}
|
372 |
|
@@ -375,7 +375,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
375 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
376 |
foreach ($remoteslist as $key => $value) {
|
377 |
if (isset($value['name']) && $value['name'] == $_GET['name'] && $key != $_GET['id']) {
|
378 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
379 |
return;
|
380 |
}
|
381 |
}
|
@@ -430,7 +430,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
430 |
}
|
431 |
}
|
432 |
public function wpvivid_show_notice_add_dropbox_success(){
|
433 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Dropbox account as your remote storage.', 'wpvivid').'</p></div>';
|
434 |
}
|
435 |
public function wpvivid_show_notice_add_dropbox_error(){
|
436 |
global $wpvivid_plugin;
|
@@ -438,7 +438,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
438 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
439 |
}
|
440 |
public function wpvivid_show_notice_edit_dropbox_success(){
|
441 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid').'</p></div>';
|
442 |
}
|
443 |
public function wpvivid_show_notice_edit_dropbox_error(){
|
444 |
global $wpvivid_plugin;
|
@@ -449,7 +449,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
449 |
public function wpvivid_add_storage_tab_dropbox(){
|
450 |
?>
|
451 |
<div class="storage-providers" remote_type="dropbox" onclick="select_remote_storage(event, 'storage_account_dropbox');">
|
452 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-dropbox.png'); ?>" style="vertical-align:middle;"/><?php _e('Dropbox', 'wpvivid'); ?>
|
453 |
</div>
|
454 |
<?php
|
455 |
}
|
@@ -459,22 +459,22 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
459 |
?>
|
460 |
<div id="storage_account_dropbox" class="storage-account-page" style="display:none;">
|
461 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
462 |
-
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Dropbox authorization app (none of your backup data is sent to us).', 'wpvivid'); ?>
|
463 |
</div>
|
464 |
<div style="padding: 10px 10px 10px 0;">
|
465 |
-
<strong><?php _e('Enter Your Dropbox Information', 'wpvivid'); ?></strong>
|
466 |
</div>
|
467 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
468 |
<tbody>
|
469 |
<tr>
|
470 |
<td class="plugin-title column-primary">
|
471 |
<div class="wpvivid-storage-form">
|
472 |
-
<input type="text" class="regular-text" autocomplete="off" option="dropbox" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Dropbox-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
473 |
</div>
|
474 |
</td>
|
475 |
<td class="column-description desc">
|
476 |
<div class="wpvivid-storage-form-desc">
|
477 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
478 |
</div>
|
479 |
</td>
|
480 |
</tr>
|
@@ -486,7 +486,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
486 |
</td>
|
487 |
<td class="column-description desc">
|
488 |
<div class="wpvivid-storage-form-desc">
|
489 |
-
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid'); ?></i>
|
490 |
</div>
|
491 |
</td>
|
492 |
</tr>
|
@@ -498,7 +498,7 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
498 |
</td>
|
499 |
<td class="column-description desc">
|
500 |
<div class="wpvivid-storage-form-desc">
|
501 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-dropbox-custom-folder-name?utm_source=client_dropbox&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid'); ?></a>
|
502 |
</div>
|
503 |
</td>
|
504 |
</tr>
|
@@ -506,25 +506,25 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
506 |
<td class="plugin-title column-primary">
|
507 |
<div class="wpvivid-storage-select">
|
508 |
<label>
|
509 |
-
<input type="checkbox" option="dropbox" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
510 |
</label>
|
511 |
</div>
|
512 |
</td>
|
513 |
<td class="column-description desc">
|
514 |
<div class="wpvivid-storage-form-desc">
|
515 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
516 |
</div>
|
517 |
</td>
|
518 |
</tr>
|
519 |
<tr>
|
520 |
<td class="plugin-title column-primary">
|
521 |
<div class="wpvivid-storage-form">
|
522 |
-
<input onclick="wpvivid_dropbox_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Dropbox', 'wpvivid'); ?>">
|
523 |
</div>
|
524 |
</td>
|
525 |
<td class="column-description desc">
|
526 |
<div class="wpvivid-storage-form-desc">
|
527 |
-
<i><?php _e('Click the button to get Dropbox authentication and add it to the storage list below.', 'wpvivid'); ?></i>
|
528 |
</div>
|
529 |
</td>
|
530 |
</tr>
|
@@ -587,31 +587,31 @@ class WPvivid_Dropbox extends WPvivid_Remote {
|
|
587 |
?>
|
588 |
<div id="remote_storage_edit_dropbox" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
589 |
<div style="padding: 0 10px 10px 0;">
|
590 |
-
<strong><?php _e('Enter Your Dropbox Information', 'wpvivid'); ?></strong>
|
591 |
</div>
|
592 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
593 |
<tbody>
|
594 |
<tr>
|
595 |
<td class="plugin-title column-primary">
|
596 |
<div class="wpvivid-storage-form">
|
597 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-dropbox" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Dropbox-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
598 |
</div>
|
599 |
</td>
|
600 |
<td class="column-description desc">
|
601 |
<div class="wpvivid-storage-form-desc">
|
602 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
603 |
</div>
|
604 |
</td>
|
605 |
</tr>
|
606 |
<tr>
|
607 |
<td class="plugin-title column-primary">
|
608 |
<div class="wpvivid-storage-form">
|
609 |
-
<input onclick="wpvivid_dropbox_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>">
|
610 |
</div>
|
611 |
</td>
|
612 |
<td class="column-description desc">
|
613 |
<div class="wpvivid-storage-form-desc">
|
614 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
615 |
</div>
|
616 |
</td>
|
617 |
</tr>
|
300 |
{
|
301 |
try {
|
302 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
303 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
304 |
return;
|
305 |
}
|
306 |
|
309 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
310 |
foreach ($remoteslist as $key => $value) {
|
311 |
if (isset($value['name']) && $value['name'] == $_GET['name']) {
|
312 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
313 |
return;
|
314 |
}
|
315 |
}
|
366 |
{
|
367 |
try {
|
368 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
369 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
370 |
return;
|
371 |
}
|
372 |
|
375 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
376 |
foreach ($remoteslist as $key => $value) {
|
377 |
if (isset($value['name']) && $value['name'] == $_GET['name'] && $key != $_GET['id']) {
|
378 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
379 |
return;
|
380 |
}
|
381 |
}
|
430 |
}
|
431 |
}
|
432 |
public function wpvivid_show_notice_add_dropbox_success(){
|
433 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Dropbox account as your remote storage.', 'wpvivid-backuprestore').'</p></div>';
|
434 |
}
|
435 |
public function wpvivid_show_notice_add_dropbox_error(){
|
436 |
global $wpvivid_plugin;
|
438 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
439 |
}
|
440 |
public function wpvivid_show_notice_edit_dropbox_success(){
|
441 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid-backuprestore').'</p></div>';
|
442 |
}
|
443 |
public function wpvivid_show_notice_edit_dropbox_error(){
|
444 |
global $wpvivid_plugin;
|
449 |
public function wpvivid_add_storage_tab_dropbox(){
|
450 |
?>
|
451 |
<div class="storage-providers" remote_type="dropbox" onclick="select_remote_storage(event, 'storage_account_dropbox');">
|
452 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-dropbox.png'); ?>" style="vertical-align:middle;"/><?php _e('Dropbox', 'wpvivid-backuprestore'); ?>
|
453 |
</div>
|
454 |
<?php
|
455 |
}
|
459 |
?>
|
460 |
<div id="storage_account_dropbox" class="storage-account-page" style="display:none;">
|
461 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
462 |
+
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Dropbox authorization app (none of your backup data is sent to us).', 'wpvivid-backuprestore'); ?>
|
463 |
</div>
|
464 |
<div style="padding: 10px 10px 10px 0;">
|
465 |
+
<strong><?php _e('Enter Your Dropbox Information', 'wpvivid-backuprestore'); ?></strong>
|
466 |
</div>
|
467 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
468 |
<tbody>
|
469 |
<tr>
|
470 |
<td class="plugin-title column-primary">
|
471 |
<div class="wpvivid-storage-form">
|
472 |
+
<input type="text" class="regular-text" autocomplete="off" option="dropbox" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Dropbox-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
473 |
</div>
|
474 |
</td>
|
475 |
<td class="column-description desc">
|
476 |
<div class="wpvivid-storage-form-desc">
|
477 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
478 |
</div>
|
479 |
</td>
|
480 |
</tr>
|
486 |
</td>
|
487 |
<td class="column-description desc">
|
488 |
<div class="wpvivid-storage-form-desc">
|
489 |
+
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid-backuprestore'); ?></i>
|
490 |
</div>
|
491 |
</td>
|
492 |
</tr>
|
498 |
</td>
|
499 |
<td class="column-description desc">
|
500 |
<div class="wpvivid-storage-form-desc">
|
501 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-dropbox-custom-folder-name?utm_source=client_dropbox&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid-backuprestore'); ?></a>
|
502 |
</div>
|
503 |
</td>
|
504 |
</tr>
|
506 |
<td class="plugin-title column-primary">
|
507 |
<div class="wpvivid-storage-select">
|
508 |
<label>
|
509 |
+
<input type="checkbox" option="dropbox" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
510 |
</label>
|
511 |
</div>
|
512 |
</td>
|
513 |
<td class="column-description desc">
|
514 |
<div class="wpvivid-storage-form-desc">
|
515 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
516 |
</div>
|
517 |
</td>
|
518 |
</tr>
|
519 |
<tr>
|
520 |
<td class="plugin-title column-primary">
|
521 |
<div class="wpvivid-storage-form">
|
522 |
+
<input onclick="wpvivid_dropbox_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Dropbox', 'wpvivid-backuprestore'); ?>">
|
523 |
</div>
|
524 |
</td>
|
525 |
<td class="column-description desc">
|
526 |
<div class="wpvivid-storage-form-desc">
|
527 |
+
<i><?php _e('Click the button to get Dropbox authentication and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
528 |
</div>
|
529 |
</td>
|
530 |
</tr>
|
587 |
?>
|
588 |
<div id="remote_storage_edit_dropbox" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
589 |
<div style="padding: 0 10px 10px 0;">
|
590 |
+
<strong><?php _e('Enter Your Dropbox Information', 'wpvivid-backuprestore'); ?></strong>
|
591 |
</div>
|
592 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
593 |
<tbody>
|
594 |
<tr>
|
595 |
<td class="plugin-title column-primary">
|
596 |
<div class="wpvivid-storage-form">
|
597 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-dropbox" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Dropbox-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
598 |
</div>
|
599 |
</td>
|
600 |
<td class="column-description desc">
|
601 |
<div class="wpvivid-storage-form-desc">
|
602 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
603 |
</div>
|
604 |
</td>
|
605 |
</tr>
|
606 |
<tr>
|
607 |
<td class="plugin-title column-primary">
|
608 |
<div class="wpvivid-storage-form">
|
609 |
+
<input onclick="wpvivid_dropbox_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>">
|
610 |
</div>
|
611 |
</td>
|
612 |
<td class="column-description desc">
|
613 |
<div class="wpvivid-storage-form-desc">
|
614 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
615 |
</div>
|
616 |
</td>
|
617 |
</tr>
|
includes/customclass/class-wpvivid-ftpclass.php
CHANGED
@@ -33,7 +33,7 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
33 |
{
|
34 |
?>
|
35 |
<div class="storage-providers" remote_type="ftp" onclick="select_remote_storage(event, 'storage_account_ftp');">
|
36 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-ftp.png'); ?>" style="vertical-align:middle;"/><?php _e('FTP', 'wpvivid'); ?>
|
37 |
</div>
|
38 |
<?php
|
39 |
}
|
@@ -42,31 +42,31 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
42 |
{
|
43 |
?>
|
44 |
<div id="storage_account_ftp" class="storage-account-page" style="display:none;">
|
45 |
-
<div style="padding: 0 10px 10px 0;"><strong><?php _e('Enter Your FTP Account', 'wpvivid'); ?></strong></div>
|
46 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
47 |
<tbody>
|
48 |
<form>
|
49 |
<tr>
|
50 |
<td class="plugin-title column-primary">
|
51 |
<div class="wpvivid-storage-form">
|
52 |
-
<input type="text" autocomplete="off" option="ftp" name="name" placeholder="<?php esc_attr_e('Enter an unique alias: e.g. FTP-001', 'wpvivid'); ?>" class="regular-text" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
53 |
</div>
|
54 |
</td>
|
55 |
<td class="column-description desc">
|
56 |
<div class="wpvivid-storage-form-desc">
|
57 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
58 |
</div>
|
59 |
</td>
|
60 |
</tr>
|
61 |
<tr>
|
62 |
<td class="plugin-title column-primary">
|
63 |
<div class="wpvivid-storage-form">
|
64 |
-
<input type="text" autocomplete="off" option="ftp" name="server" placeholder="<?php esc_attr_e('FTP server (server\'s port 21)','wpvivid'); ?>" class="regular-text"/>
|
65 |
</div>
|
66 |
</td>
|
67 |
<td class="column-description desc">
|
68 |
<div class="wpvivid-storage-form-desc">
|
69 |
-
<i style="margin-right: 10px;"><?php _e('Enter the FTP server.', 'wpvivid'); ?></i>
|
70 |
</div>
|
71 |
</td>
|
72 |
</tr>
|
@@ -78,43 +78,43 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
78 |
</td>
|
79 |
<td class="column-description desc">
|
80 |
<div class="wpvivid-storage-form-desc">
|
81 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-ftp-change-ftp-default-port?utm_source=client_ftp_port&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Change the FTP default port number', 'wpvivid'); ?></a>
|
82 |
</div>
|
83 |
</td>
|
84 |
</tr>
|
85 |
<tr>
|
86 |
<td class="plugin-title column-primary">
|
87 |
<div class="wpvivid-storage-form">
|
88 |
-
<input type="text" class="regular-text" autocomplete="off" option="ftp" name="username" placeholder="<?php esc_attr_e('FTP login', 'wpvivid'); ?>" />
|
89 |
</div>
|
90 |
</td>
|
91 |
<td class="column-description desc">
|
92 |
<div class="wpvivid-storage-form-desc">
|
93 |
-
<i><?php _e('Enter your FTP server user name.', 'wpvivid'); ?></i>
|
94 |
</div>
|
95 |
</td>
|
96 |
</tr>
|
97 |
<tr>
|
98 |
<td class="plugin-title column-primary">
|
99 |
<div class="wpvivid-storage-form">
|
100 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="ftp" name="password" placeholder="<?php esc_attr_e('FTP password', 'wpvivid'); ?>" />
|
101 |
</div>
|
102 |
</td>
|
103 |
<td class="column-description desc">
|
104 |
<div class="wpvivid-storage-form-desc">
|
105 |
-
<i><?php _e('Enter the FTP server password.', 'wpvivid'); ?></i>
|
106 |
</div>
|
107 |
</td>
|
108 |
</tr>
|
109 |
<tr>
|
110 |
<td class="plugin-title column-primary">
|
111 |
<div class="wpvivid-storage-form">
|
112 |
-
<input type="text" autocomplete="off" option="ftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /home/username)', 'wpvivid'); ?>" class="regular-text"/>
|
113 |
</div>
|
114 |
</td>
|
115 |
<td class="column-description desc">
|
116 |
<div class="wpvivid-storage-form-desc">
|
117 |
-
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /home/username/customfolder', 'wpvivid'); ?></i>
|
118 |
</div>
|
119 |
</td>
|
120 |
</tr>
|
@@ -122,13 +122,13 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
122 |
<td class="plugin-title column-primary">
|
123 |
<div class="wpvivid-storage-select">
|
124 |
<label>
|
125 |
-
<input type="checkbox" option="ftp" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
126 |
</label>
|
127 |
</div>
|
128 |
</td>
|
129 |
<td class="column-description desc">
|
130 |
<div class="wpvivid-storage-form-desc">
|
131 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
132 |
</div>
|
133 |
</td>
|
134 |
</tr>
|
@@ -136,13 +136,13 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
136 |
<td class="plugin-title column-primary">
|
137 |
<div class="wpvivid-storage-select">
|
138 |
<label>
|
139 |
-
<input type="checkbox" option="ftp" name="passive" checked /><?php _e('Uncheck this to enable FTP active mode.', 'wpvivid'); ?>
|
140 |
</label>
|
141 |
</div>
|
142 |
</td>
|
143 |
<td class="column-description desc">
|
144 |
<div class="wpvivid-storage-form-desc">
|
145 |
-
<i><?php _e('Uncheck the option to use FTP active mode when transferring files. Make sure the FTP server you are configuring supports the active FTP mode.', 'wpvivid'); ?></i>
|
146 |
</div>
|
147 |
</td>
|
148 |
</tr>
|
@@ -150,12 +150,12 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
150 |
<tr>
|
151 |
<td class="plugin-title column-primary">
|
152 |
<div class="wpvivid-storage-form">
|
153 |
-
<input class="button-primary" type="submit" option="add-remote" value="<?php esc_attr_e('Test and Add', 'wpvivid'); ?>">
|
154 |
</div>
|
155 |
</td>
|
156 |
<td class="column-description desc">
|
157 |
<div class="wpvivid-storage-form-desc">
|
158 |
-
<i><?php _e('Click the button to connect to FTP server and add it to the storage list below.', 'wpvivid'); ?></i>
|
159 |
</div>
|
160 |
</td>
|
161 |
</tr>
|
@@ -169,67 +169,67 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
169 |
{
|
170 |
?>
|
171 |
<div id="remote_storage_edit_ftp" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
172 |
-
<div style="padding: 0 10px 10px 0;"><strong><?php _e('Enter Your FTP Account', 'wpvivid'); ?></strong></div>
|
173 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
174 |
<tbody>
|
175 |
<form>
|
176 |
<tr>
|
177 |
<td class="plugin-title column-primary">
|
178 |
<div class="wpvivid-storage-form">
|
179 |
-
<input type="text" autocomplete="off" option="edit-ftp" name="name" placeholder="<?php esc_attr_e('Enter an unique alias: e.g. FTP-001', 'wpvivid'); ?>" class="regular-text" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
180 |
</div>
|
181 |
</td>
|
182 |
<td class="column-description desc">
|
183 |
<div class="wpvivid-storage-form-desc">
|
184 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
185 |
</div>
|
186 |
</td>
|
187 |
</tr>
|
188 |
<tr>
|
189 |
<td class="plugin-title column-primary">
|
190 |
<div class="wpvivid-storage-form">
|
191 |
-
<input type="text" autocomplete="off" option="edit-ftp" name="server" placeholder="<?php esc_attr_e('FTP server (server\'s port 21)', 'wpvivid'); ?>" class="regular-text"/>
|
192 |
</div>
|
193 |
</td>
|
194 |
<td class="column-description desc">
|
195 |
<div class="wpvivid-storage-form-desc">
|
196 |
-
<i style="margin-right: 10px;"><?php _e('Enter the FTP server.', 'wpvivid'); ?></i>
|
197 |
</div>
|
198 |
</td>
|
199 |
</tr>
|
200 |
<tr>
|
201 |
<td class="plugin-title column-primary">
|
202 |
<div class="wpvivid-storage-form">
|
203 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-ftp" name="username" placeholder="<?php esc_attr_e('FTP login', 'wpvivid'); ?>" />
|
204 |
</div>
|
205 |
</td>
|
206 |
<td class="column-description desc">
|
207 |
<div class="wpvivid-storage-form-desc">
|
208 |
-
<i><?php _e('Enter your FTP server user name.', 'wpvivid'); ?></i>
|
209 |
</div>
|
210 |
</td>
|
211 |
</tr>
|
212 |
<tr>
|
213 |
<td class="plugin-title column-primary">
|
214 |
<div class="wpvivid-storage-form">
|
215 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="edit-ftp" name="password" placeholder="<?php esc_attr_e('FTP password', 'wpvivid'); ?>" />
|
216 |
</div>
|
217 |
</td>
|
218 |
<td class="column-description desc">
|
219 |
<div class="wpvivid-storage-form-desc">
|
220 |
-
<i><?php _e('Enter the FTP server password.', 'wpvivid'); ?></i>
|
221 |
</div>
|
222 |
</td>
|
223 |
</tr>
|
224 |
<tr>
|
225 |
<td class="plugin-title column-primary">
|
226 |
<div class="wpvivid-storage-form">
|
227 |
-
<input type="text" autocomplete="off" option="edit-ftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /home/username)', 'wpvivid'); ?>" class="regular-text"/>
|
228 |
</div>
|
229 |
</td>
|
230 |
<td class="column-description desc">
|
231 |
<div class="wpvivid-storage-form-desc">
|
232 |
-
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /home/username/customfolder', 'wpvivid'); ?></i>
|
233 |
</div>
|
234 |
</td>
|
235 |
</tr>
|
@@ -237,13 +237,13 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
237 |
<td class="plugin-title column-primary">
|
238 |
<div class="wpvivid-storage-select">
|
239 |
<label>
|
240 |
-
<input type="checkbox" option="edit-ftp" name="passive" checked /><?php _e('Uncheck this to enable FTP active mode.', 'wpvivid'); ?>
|
241 |
</label>
|
242 |
</div>
|
243 |
</td>
|
244 |
<td class="column-description desc">
|
245 |
<div class="wpvivid-storage-form-desc">
|
246 |
-
<i><?php _e('Uncheck the option to use FTP active mode when transferring files. Make sure the FTP server you are configuring supports the active FTP mode.', 'wpvivid'); ?></i>
|
247 |
</div>
|
248 |
</td>
|
249 |
</tr>
|
@@ -251,12 +251,12 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
251 |
<tr>
|
252 |
<td class="plugin-title column-primary">
|
253 |
<div class="wpvivid-storage-form">
|
254 |
-
<input class="button-primary" type="submit" option="edit-remote" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>">
|
255 |
</div>
|
256 |
</td>
|
257 |
<td class="column-description desc">
|
258 |
<div class="wpvivid-storage-form-desc">
|
259 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
260 |
</div>
|
261 |
</td>
|
262 |
</tr>
|
@@ -294,7 +294,7 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
294 |
$ret['result']=WPVIVID_FAILED;
|
295 |
if(!isset($this->options['name']))
|
296 |
{
|
297 |
-
$ret['error']=__('Warning: An alias for remote storage is required.','wpvivid');
|
298 |
return $ret;
|
299 |
}
|
300 |
|
@@ -302,7 +302,7 @@ class WPvivid_FTPClass extends WPvivid_Remote{
|
|
302 |
|
303 |
if(empty($this->options['name']))
|
304 |
{
|
305 |
-
$ret['error']=__('Warning: An alias for remote storage is required.','wpvivid');
|
306 |
return $ret;
|
307 |
}
|
308 |
|
33 |
{
|
34 |
?>
|
35 |
<div class="storage-providers" remote_type="ftp" onclick="select_remote_storage(event, 'storage_account_ftp');">
|
36 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-ftp.png'); ?>" style="vertical-align:middle;"/><?php _e('FTP', 'wpvivid-backuprestore'); ?>
|
37 |
</div>
|
38 |
<?php
|
39 |
}
|
42 |
{
|
43 |
?>
|
44 |
<div id="storage_account_ftp" class="storage-account-page" style="display:none;">
|
45 |
+
<div style="padding: 0 10px 10px 0;"><strong><?php _e('Enter Your FTP Account', 'wpvivid-backuprestore'); ?></strong></div>
|
46 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
47 |
<tbody>
|
48 |
<form>
|
49 |
<tr>
|
50 |
<td class="plugin-title column-primary">
|
51 |
<div class="wpvivid-storage-form">
|
52 |
+
<input type="text" autocomplete="off" option="ftp" name="name" placeholder="<?php esc_attr_e('Enter an unique alias: e.g. FTP-001', 'wpvivid-backuprestore'); ?>" class="regular-text" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
53 |
</div>
|
54 |
</td>
|
55 |
<td class="column-description desc">
|
56 |
<div class="wpvivid-storage-form-desc">
|
57 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
58 |
</div>
|
59 |
</td>
|
60 |
</tr>
|
61 |
<tr>
|
62 |
<td class="plugin-title column-primary">
|
63 |
<div class="wpvivid-storage-form">
|
64 |
+
<input type="text" autocomplete="off" option="ftp" name="server" placeholder="<?php esc_attr_e('FTP server (server\'s port 21)','wpvivid-backuprestore'); ?>" class="regular-text"/>
|
65 |
</div>
|
66 |
</td>
|
67 |
<td class="column-description desc">
|
68 |
<div class="wpvivid-storage-form-desc">
|
69 |
+
<i style="margin-right: 10px;"><?php _e('Enter the FTP server.', 'wpvivid-backuprestore'); ?></i>
|
70 |
</div>
|
71 |
</td>
|
72 |
</tr>
|
78 |
</td>
|
79 |
<td class="column-description desc">
|
80 |
<div class="wpvivid-storage-form-desc">
|
81 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-ftp-change-ftp-default-port?utm_source=client_ftp_port&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Change the FTP default port number', 'wpvivid-backuprestore'); ?></a>
|
82 |
</div>
|
83 |
</td>
|
84 |
</tr>
|
85 |
<tr>
|
86 |
<td class="plugin-title column-primary">
|
87 |
<div class="wpvivid-storage-form">
|
88 |
+
<input type="text" class="regular-text" autocomplete="off" option="ftp" name="username" placeholder="<?php esc_attr_e('FTP login', 'wpvivid-backuprestore'); ?>" />
|
89 |
</div>
|
90 |
</td>
|
91 |
<td class="column-description desc">
|
92 |
<div class="wpvivid-storage-form-desc">
|
93 |
+
<i><?php _e('Enter your FTP server user name.', 'wpvivid-backuprestore'); ?></i>
|
94 |
</div>
|
95 |
</td>
|
96 |
</tr>
|
97 |
<tr>
|
98 |
<td class="plugin-title column-primary">
|
99 |
<div class="wpvivid-storage-form">
|
100 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="ftp" name="password" placeholder="<?php esc_attr_e('FTP password', 'wpvivid-backuprestore'); ?>" />
|
101 |
</div>
|
102 |
</td>
|
103 |
<td class="column-description desc">
|
104 |
<div class="wpvivid-storage-form-desc">
|
105 |
+
<i><?php _e('Enter the FTP server password.', 'wpvivid-backuprestore'); ?></i>
|
106 |
</div>
|
107 |
</td>
|
108 |
</tr>
|
109 |
<tr>
|
110 |
<td class="plugin-title column-primary">
|
111 |
<div class="wpvivid-storage-form">
|
112 |
+
<input type="text" autocomplete="off" option="ftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /home/username)', 'wpvivid-backuprestore'); ?>" class="regular-text"/>
|
113 |
</div>
|
114 |
</td>
|
115 |
<td class="column-description desc">
|
116 |
<div class="wpvivid-storage-form-desc">
|
117 |
+
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /home/username/customfolder', 'wpvivid-backuprestore'); ?></i>
|
118 |
</div>
|
119 |
</td>
|
120 |
</tr>
|
122 |
<td class="plugin-title column-primary">
|
123 |
<div class="wpvivid-storage-select">
|
124 |
<label>
|
125 |
+
<input type="checkbox" option="ftp" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
126 |
</label>
|
127 |
</div>
|
128 |
</td>
|
129 |
<td class="column-description desc">
|
130 |
<div class="wpvivid-storage-form-desc">
|
131 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
132 |
</div>
|
133 |
</td>
|
134 |
</tr>
|
136 |
<td class="plugin-title column-primary">
|
137 |
<div class="wpvivid-storage-select">
|
138 |
<label>
|
139 |
+
<input type="checkbox" option="ftp" name="passive" checked /><?php _e('Uncheck this to enable FTP active mode.', 'wpvivid-backuprestore'); ?>
|
140 |
</label>
|
141 |
</div>
|
142 |
</td>
|
143 |
<td class="column-description desc">
|
144 |
<div class="wpvivid-storage-form-desc">
|
145 |
+
<i><?php _e('Uncheck the option to use FTP active mode when transferring files. Make sure the FTP server you are configuring supports the active FTP mode.', 'wpvivid-backuprestore'); ?></i>
|
146 |
</div>
|
147 |
</td>
|
148 |
</tr>
|
150 |
<tr>
|
151 |
<td class="plugin-title column-primary">
|
152 |
<div class="wpvivid-storage-form">
|
153 |
+
<input class="button-primary" type="submit" option="add-remote" value="<?php esc_attr_e('Test and Add', 'wpvivid-backuprestore'); ?>">
|
154 |
</div>
|
155 |
</td>
|
156 |
<td class="column-description desc">
|
157 |
<div class="wpvivid-storage-form-desc">
|
158 |
+
<i><?php _e('Click the button to connect to FTP server and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
159 |
</div>
|
160 |
</td>
|
161 |
</tr>
|
169 |
{
|
170 |
?>
|
171 |
<div id="remote_storage_edit_ftp" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
172 |
+
<div style="padding: 0 10px 10px 0;"><strong><?php _e('Enter Your FTP Account', 'wpvivid-backuprestore'); ?></strong></div>
|
173 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
174 |
<tbody>
|
175 |
<form>
|
176 |
<tr>
|
177 |
<td class="plugin-title column-primary">
|
178 |
<div class="wpvivid-storage-form">
|
179 |
+
<input type="text" autocomplete="off" option="edit-ftp" name="name" placeholder="<?php esc_attr_e('Enter an unique alias: e.g. FTP-001', 'wpvivid-backuprestore'); ?>" class="regular-text" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
180 |
</div>
|
181 |
</td>
|
182 |
<td class="column-description desc">
|
183 |
<div class="wpvivid-storage-form-desc">
|
184 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
185 |
</div>
|
186 |
</td>
|
187 |
</tr>
|
188 |
<tr>
|
189 |
<td class="plugin-title column-primary">
|
190 |
<div class="wpvivid-storage-form">
|
191 |
+
<input type="text" autocomplete="off" option="edit-ftp" name="server" placeholder="<?php esc_attr_e('FTP server (server\'s port 21)', 'wpvivid-backuprestore'); ?>" class="regular-text"/>
|
192 |
</div>
|
193 |
</td>
|
194 |
<td class="column-description desc">
|
195 |
<div class="wpvivid-storage-form-desc">
|
196 |
+
<i style="margin-right: 10px;"><?php _e('Enter the FTP server.', 'wpvivid-backuprestore'); ?></i>
|
197 |
</div>
|
198 |
</td>
|
199 |
</tr>
|
200 |
<tr>
|
201 |
<td class="plugin-title column-primary">
|
202 |
<div class="wpvivid-storage-form">
|
203 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-ftp" name="username" placeholder="<?php esc_attr_e('FTP login', 'wpvivid-backuprestore'); ?>" />
|
204 |
</div>
|
205 |
</td>
|
206 |
<td class="column-description desc">
|
207 |
<div class="wpvivid-storage-form-desc">
|
208 |
+
<i><?php _e('Enter your FTP server user name.', 'wpvivid-backuprestore'); ?></i>
|
209 |
</div>
|
210 |
</td>
|
211 |
</tr>
|
212 |
<tr>
|
213 |
<td class="plugin-title column-primary">
|
214 |
<div class="wpvivid-storage-form">
|
215 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="edit-ftp" name="password" placeholder="<?php esc_attr_e('FTP password', 'wpvivid-backuprestore'); ?>" />
|
216 |
</div>
|
217 |
</td>
|
218 |
<td class="column-description desc">
|
219 |
<div class="wpvivid-storage-form-desc">
|
220 |
+
<i><?php _e('Enter the FTP server password.', 'wpvivid-backuprestore'); ?></i>
|
221 |
</div>
|
222 |
</td>
|
223 |
</tr>
|
224 |
<tr>
|
225 |
<td class="plugin-title column-primary">
|
226 |
<div class="wpvivid-storage-form">
|
227 |
+
<input type="text" autocomplete="off" option="edit-ftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /home/username)', 'wpvivid-backuprestore'); ?>" class="regular-text"/>
|
228 |
</div>
|
229 |
</td>
|
230 |
<td class="column-description desc">
|
231 |
<div class="wpvivid-storage-form-desc">
|
232 |
+
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /home/username/customfolder', 'wpvivid-backuprestore'); ?></i>
|
233 |
</div>
|
234 |
</td>
|
235 |
</tr>
|
237 |
<td class="plugin-title column-primary">
|
238 |
<div class="wpvivid-storage-select">
|
239 |
<label>
|
240 |
+
<input type="checkbox" option="edit-ftp" name="passive" checked /><?php _e('Uncheck this to enable FTP active mode.', 'wpvivid-backuprestore'); ?>
|
241 |
</label>
|
242 |
</div>
|
243 |
</td>
|
244 |
<td class="column-description desc">
|
245 |
<div class="wpvivid-storage-form-desc">
|
246 |
+
<i><?php _e('Uncheck the option to use FTP active mode when transferring files. Make sure the FTP server you are configuring supports the active FTP mode.', 'wpvivid-backuprestore'); ?></i>
|
247 |
</div>
|
248 |
</td>
|
249 |
</tr>
|
251 |
<tr>
|
252 |
<td class="plugin-title column-primary">
|
253 |
<div class="wpvivid-storage-form">
|
254 |
+
<input class="button-primary" type="submit" option="edit-remote" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>">
|
255 |
</div>
|
256 |
</td>
|
257 |
<td class="column-description desc">
|
258 |
<div class="wpvivid-storage-form-desc">
|
259 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
260 |
</div>
|
261 |
</td>
|
262 |
</tr>
|
294 |
$ret['result']=WPVIVID_FAILED;
|
295 |
if(!isset($this->options['name']))
|
296 |
{
|
297 |
+
$ret['error']=__('Warning: An alias for remote storage is required.','wpvivid-backuprestore');
|
298 |
return $ret;
|
299 |
}
|
300 |
|
302 |
|
303 |
if(empty($this->options['name']))
|
304 |
{
|
305 |
+
$ret['error']=__('Warning: An alias for remote storage is required.','wpvivid-backuprestore');
|
306 |
return $ret;
|
307 |
}
|
308 |
|
includes/customclass/class-wpvivid-google-drive.php
CHANGED
@@ -75,7 +75,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
75 |
{
|
76 |
if(!isset($_GET['name'])||empty($_GET['name']))
|
77 |
{
|
78 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
79 |
return;
|
80 |
}
|
81 |
|
@@ -86,7 +86,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
86 |
{
|
87 |
if(isset($value['name'])&&$value['name'] == $_GET['name'])
|
88 |
{
|
89 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
90 |
return;
|
91 |
}
|
92 |
}
|
@@ -108,11 +108,11 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
108 |
}
|
109 |
catch (Exception $e){
|
110 |
if($e->getMessage() === 'file does not exist'){
|
111 |
-
$error_msg = __('Authentication failed, the client_secrets.json file is missing. Please make sure the client_secrets.json file is in wpvivid-backuprestore\includes\customclass directory.', 'wpvivid');
|
112 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
113 |
}
|
114 |
else if($e->getMessage() === 'invalid json for auth config'){
|
115 |
-
$error_msg = __('Authentication failed, the format of the client_secrets.json file is incorrect. Please delete and re-install the plugin to recreate the file.', 'wpvivid');
|
116 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
117 |
}
|
118 |
else{
|
@@ -175,7 +175,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
175 |
{
|
176 |
if(!isset($_GET['name'])||empty($_GET['name']))
|
177 |
{
|
178 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
179 |
return;
|
180 |
}
|
181 |
|
@@ -186,7 +186,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
186 |
{
|
187 |
if(isset($value['name'])&&$value['name'] == $_GET['name']&&$key!=$_GET['id'])
|
188 |
{
|
189 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
190 |
return;
|
191 |
}
|
192 |
}
|
@@ -204,11 +204,11 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
204 |
}
|
205 |
catch (Exception $e){
|
206 |
if($e->getMessage() === 'file does not exist'){
|
207 |
-
$error_msg = __('Authentication failed, the client_secrets.json file is missing. Please make sure the client_secrets.json file is in wpvivid-backuprestore\includes\customclass directory.', 'wpvivid');
|
208 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
209 |
}
|
210 |
else if($e->getMessage() === 'invalid json for auth config'){
|
211 |
-
$error_msg = __('Authentication failed, the format of the client_secrets.json file is incorrect. Please delete and re-install the plugin to recreate the file.', 'wpvivid');
|
212 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
213 |
}
|
214 |
else{
|
@@ -269,7 +269,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
269 |
}
|
270 |
}
|
271 |
public function wpvivid_show_notice_add_google_drive_success(){
|
272 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Google Drive account as your remote storage.', 'wpvivid').'</p></div>';
|
273 |
}
|
274 |
public function wpvivid_show_notice_add_google_drive_error(){
|
275 |
global $wpvivid_plugin;
|
@@ -277,7 +277,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
277 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
278 |
}
|
279 |
public function wpvivid_show_notice_edit_google_drive_success(){
|
280 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid').'</p></div>';
|
281 |
}
|
282 |
public function wpvivid_show_notice_edit_google_drive_error(){
|
283 |
global $wpvivid_plugin;
|
@@ -289,7 +289,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
289 |
{
|
290 |
?>
|
291 |
<div class="storage-providers storage-providers-active" remote_type="googledrive" onclick="select_remote_storage(event, 'storage_account_google_drive');">
|
292 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/stroage-google-drive.png'); ?>" style="vertical-align:middle;"/><?php _e('Google Drive', 'wpvivid'); ?>
|
293 |
</div>
|
294 |
<?php
|
295 |
}
|
@@ -301,22 +301,22 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
301 |
?>
|
302 |
<div id="storage_account_google_drive" class="storage-account-page">
|
303 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
304 |
-
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Google Drive authorization app (none of your backup data is sent to us).', 'wpvivid'); ?>
|
305 |
</div>
|
306 |
<div style="padding: 10px 10px 10px 0;">
|
307 |
-
<strong><?php _e('Enter Your Google Drive Information', 'wpvivid'); ?></strong>
|
308 |
</div>
|
309 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
310 |
<tbody>
|
311 |
<tr>
|
312 |
<td class="plugin-title column-primary">
|
313 |
<div class="wpvivid-storage-form">
|
314 |
-
<input type="text" class="regular-text" autocomplete="off" option="googledrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Google Drive-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
315 |
</div>
|
316 |
</td>
|
317 |
<td class="column-description desc">
|
318 |
<div class="wpvivid-storage-form-desc">
|
319 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
320 |
</div>
|
321 |
</td>
|
322 |
</tr>
|
@@ -328,7 +328,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
328 |
</td>
|
329 |
<td class="column-description desc">
|
330 |
<div class="wpvivid-storage-form-desc">
|
331 |
-
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid'); ?></i>
|
332 |
</div>
|
333 |
</td>
|
334 |
</tr>
|
@@ -340,7 +340,7 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
340 |
</td>
|
341 |
<td class="column-description desc">
|
342 |
<div class="wpvivid-storage-form-desc">
|
343 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-google-drive-custom-folder-name?utm_source=client_google_drive&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid'); ?></a>
|
344 |
</div>
|
345 |
</td>
|
346 |
</tr>
|
@@ -348,25 +348,25 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
348 |
<td class="plugin-title column-primary">
|
349 |
<div class="wpvivid-storage-select">
|
350 |
<label>
|
351 |
-
<input type="checkbox" option="googledrive" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
352 |
</label>
|
353 |
</div>
|
354 |
</td>
|
355 |
<td class="column-description desc">
|
356 |
<div class="wpvivid-storage-form-desc">
|
357 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
358 |
</div>
|
359 |
</td>
|
360 |
</tr>
|
361 |
<tr>
|
362 |
<td class="plugin-title column-primary">
|
363 |
<div class="wpvivid-storage-form">
|
364 |
-
<input onclick="wpvivid_google_drive_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Google Drive', 'wpvivid'); ?>" />
|
365 |
</div>
|
366 |
</td>
|
367 |
<td class="column-description desc">
|
368 |
<div class="wpvivid-storage-form-desc">
|
369 |
-
<i><?php _e('Click the button to get Google authentication and add it to the storage list below.', 'wpvivid'); ?></i>
|
370 |
</div>
|
371 |
</td>
|
372 |
</tr>
|
@@ -432,31 +432,31 @@ class Wpvivid_Google_drive extends WPvivid_Remote
|
|
432 |
?>
|
433 |
<div id="remote_storage_edit_googledrive" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
434 |
<div style="padding: 0 10px 10px 0;">
|
435 |
-
<strong><?php _e('Enter Your Google Drive Information', 'wpvivid'); ?></strong>
|
436 |
</div>
|
437 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
438 |
<tbody>
|
439 |
<tr>
|
440 |
<td class="plugin-title column-primary">
|
441 |
<div class="wpvivid-storage-form">
|
442 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-googledrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Google Drive-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
443 |
</div>
|
444 |
</td>
|
445 |
<td class="column-description desc">
|
446 |
<div class="wpvivid-storage-form-desc">
|
447 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
448 |
</div>
|
449 |
</td>
|
450 |
</tr>
|
451 |
<tr>
|
452 |
<td class="plugin-title column-primary">
|
453 |
<div class="wpvivid-storage-form">
|
454 |
-
<input onclick="wpvivid_google_drive_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>" />
|
455 |
</div>
|
456 |
</td>
|
457 |
<td class="column-description desc">
|
458 |
<div class="wpvivid-storage-form-desc">
|
459 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid');?></i>
|
460 |
</div>
|
461 |
</td>
|
462 |
</tr>
|
75 |
{
|
76 |
if(!isset($_GET['name'])||empty($_GET['name']))
|
77 |
{
|
78 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
79 |
return;
|
80 |
}
|
81 |
|
86 |
{
|
87 |
if(isset($value['name'])&&$value['name'] == $_GET['name'])
|
88 |
{
|
89 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
90 |
return;
|
91 |
}
|
92 |
}
|
108 |
}
|
109 |
catch (Exception $e){
|
110 |
if($e->getMessage() === 'file does not exist'){
|
111 |
+
$error_msg = __('Authentication failed, the client_secrets.json file is missing. Please make sure the client_secrets.json file is in wpvivid-backuprestore\includes\customclass directory.', 'wpvivid-backuprestore');
|
112 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
113 |
}
|
114 |
else if($e->getMessage() === 'invalid json for auth config'){
|
115 |
+
$error_msg = __('Authentication failed, the format of the client_secrets.json file is incorrect. Please delete and re-install the plugin to recreate the file.', 'wpvivid-backuprestore');
|
116 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
117 |
}
|
118 |
else{
|
175 |
{
|
176 |
if(!isset($_GET['name'])||empty($_GET['name']))
|
177 |
{
|
178 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
179 |
return;
|
180 |
}
|
181 |
|
186 |
{
|
187 |
if(isset($value['name'])&&$value['name'] == $_GET['name']&&$key!=$_GET['id'])
|
188 |
{
|
189 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
190 |
return;
|
191 |
}
|
192 |
}
|
204 |
}
|
205 |
catch (Exception $e){
|
206 |
if($e->getMessage() === 'file does not exist'){
|
207 |
+
$error_msg = __('Authentication failed, the client_secrets.json file is missing. Please make sure the client_secrets.json file is in wpvivid-backuprestore\includes\customclass directory.', 'wpvivid-backuprestore');
|
208 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
209 |
}
|
210 |
else if($e->getMessage() === 'invalid json for auth config'){
|
211 |
+
$error_msg = __('Authentication failed, the format of the client_secrets.json file is incorrect. Please delete and re-install the plugin to recreate the file.', 'wpvivid-backuprestore');
|
212 |
echo '<div class="notice notice-error"><p>'.$error_msg.'</p></div>';
|
213 |
}
|
214 |
else{
|
269 |
}
|
270 |
}
|
271 |
public function wpvivid_show_notice_add_google_drive_success(){
|
272 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Google Drive account as your remote storage.', 'wpvivid-backuprestore').'</p></div>';
|
273 |
}
|
274 |
public function wpvivid_show_notice_add_google_drive_error(){
|
275 |
global $wpvivid_plugin;
|
277 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
278 |
}
|
279 |
public function wpvivid_show_notice_edit_google_drive_success(){
|
280 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid-backuprestore').'</p></div>';
|
281 |
}
|
282 |
public function wpvivid_show_notice_edit_google_drive_error(){
|
283 |
global $wpvivid_plugin;
|
289 |
{
|
290 |
?>
|
291 |
<div class="storage-providers storage-providers-active" remote_type="googledrive" onclick="select_remote_storage(event, 'storage_account_google_drive');">
|
292 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/stroage-google-drive.png'); ?>" style="vertical-align:middle;"/><?php _e('Google Drive', 'wpvivid-backuprestore'); ?>
|
293 |
</div>
|
294 |
<?php
|
295 |
}
|
301 |
?>
|
302 |
<div id="storage_account_google_drive" class="storage-account-page">
|
303 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
304 |
+
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Google Drive authorization app (none of your backup data is sent to us).', 'wpvivid-backuprestore'); ?>
|
305 |
</div>
|
306 |
<div style="padding: 10px 10px 10px 0;">
|
307 |
+
<strong><?php _e('Enter Your Google Drive Information', 'wpvivid-backuprestore'); ?></strong>
|
308 |
</div>
|
309 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
310 |
<tbody>
|
311 |
<tr>
|
312 |
<td class="plugin-title column-primary">
|
313 |
<div class="wpvivid-storage-form">
|
314 |
+
<input type="text" class="regular-text" autocomplete="off" option="googledrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Google Drive-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
315 |
</div>
|
316 |
</td>
|
317 |
<td class="column-description desc">
|
318 |
<div class="wpvivid-storage-form-desc">
|
319 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
320 |
</div>
|
321 |
</td>
|
322 |
</tr>
|
328 |
</td>
|
329 |
<td class="column-description desc">
|
330 |
<div class="wpvivid-storage-form-desc">
|
331 |
+
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid-backuprestore'); ?></i>
|
332 |
</div>
|
333 |
</td>
|
334 |
</tr>
|
340 |
</td>
|
341 |
<td class="column-description desc">
|
342 |
<div class="wpvivid-storage-form-desc">
|
343 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-google-drive-custom-folder-name?utm_source=client_google_drive&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid-backuprestore'); ?></a>
|
344 |
</div>
|
345 |
</td>
|
346 |
</tr>
|
348 |
<td class="plugin-title column-primary">
|
349 |
<div class="wpvivid-storage-select">
|
350 |
<label>
|
351 |
+
<input type="checkbox" option="googledrive" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
352 |
</label>
|
353 |
</div>
|
354 |
</td>
|
355 |
<td class="column-description desc">
|
356 |
<div class="wpvivid-storage-form-desc">
|
357 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
358 |
</div>
|
359 |
</td>
|
360 |
</tr>
|
361 |
<tr>
|
362 |
<td class="plugin-title column-primary">
|
363 |
<div class="wpvivid-storage-form">
|
364 |
+
<input onclick="wpvivid_google_drive_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Google Drive', 'wpvivid-backuprestore'); ?>" />
|
365 |
</div>
|
366 |
</td>
|
367 |
<td class="column-description desc">
|
368 |
<div class="wpvivid-storage-form-desc">
|
369 |
+
<i><?php _e('Click the button to get Google authentication and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
370 |
</div>
|
371 |
</td>
|
372 |
</tr>
|
432 |
?>
|
433 |
<div id="remote_storage_edit_googledrive" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
434 |
<div style="padding: 0 10px 10px 0;">
|
435 |
+
<strong><?php _e('Enter Your Google Drive Information', 'wpvivid-backuprestore'); ?></strong>
|
436 |
</div>
|
437 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
438 |
<tbody>
|
439 |
<tr>
|
440 |
<td class="plugin-title column-primary">
|
441 |
<div class="wpvivid-storage-form">
|
442 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-googledrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. Google Drive-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
443 |
</div>
|
444 |
</td>
|
445 |
<td class="column-description desc">
|
446 |
<div class="wpvivid-storage-form-desc">
|
447 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
448 |
</div>
|
449 |
</td>
|
450 |
</tr>
|
451 |
<tr>
|
452 |
<td class="plugin-title column-primary">
|
453 |
<div class="wpvivid-storage-form">
|
454 |
+
<input onclick="wpvivid_google_drive_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>" />
|
455 |
</div>
|
456 |
</td>
|
457 |
<td class="column-description desc">
|
458 |
<div class="wpvivid-storage-form-desc">
|
459 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore');?></i>
|
460 |
</div>
|
461 |
</td>
|
462 |
</tr>
|
includes/customclass/class-wpvivid-one-drive.php
CHANGED
@@ -77,7 +77,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
77 |
{
|
78 |
try {
|
79 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
80 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
81 |
return;
|
82 |
}
|
83 |
|
@@ -86,7 +86,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
86 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
87 |
foreach ($remoteslist as $key => $value) {
|
88 |
if (isset($value['name']) && $value['name'] == $_GET['name']) {
|
89 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
90 |
return;
|
91 |
}
|
92 |
}
|
@@ -159,7 +159,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
159 |
{
|
160 |
try {
|
161 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
162 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid').'</p></div>';
|
163 |
return;
|
164 |
}
|
165 |
|
@@ -168,7 +168,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
168 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
169 |
foreach ($remoteslist as $key => $value) {
|
170 |
if (isset($value['name']) && $value['name'] == $_GET['name'] && $key != $_GET['id']) {
|
171 |
-
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid').'</p></div>';
|
172 |
return;
|
173 |
}
|
174 |
}
|
@@ -237,7 +237,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
237 |
}
|
238 |
}
|
239 |
public function wpvivid_show_notice_add_onedrive_success(){
|
240 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Microsoft OneDrive account as your remote storage.', 'wpvivid').'</p></div>';
|
241 |
}
|
242 |
public function wpvivid_show_notice_add_onedrive_error(){
|
243 |
global $wpvivid_plugin;
|
@@ -245,7 +245,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
245 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
246 |
}
|
247 |
public function wpvivid_show_notice_edit_onedrive_success(){
|
248 |
-
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid').'</p></div>';
|
249 |
}
|
250 |
public function wpvivid_show_notice_edit_onedrive_error(){
|
251 |
global $wpvivid_plugin;
|
@@ -257,7 +257,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
257 |
{
|
258 |
?>
|
259 |
<div class="storage-providers" remote_type="one_drive" onclick="select_remote_storage(event, 'storage_account_one_drive');">
|
260 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-microsoft-onedrive.png'); ?>" style="vertical-align:middle;"/><?php _e('Microsoft OneDrive', 'wpvivid'); ?>
|
261 |
</div>
|
262 |
<?php
|
263 |
}
|
@@ -269,22 +269,22 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
269 |
?>
|
270 |
<div id="storage_account_one_drive" class="storage-account-page" style="display:none;">
|
271 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
272 |
-
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Microsoft OneDrive authorization app (none of your backup data is sent to us).', 'wpvivid'); ?>
|
273 |
</div>
|
274 |
<div style="padding: 10px 10px 10px 0;">
|
275 |
-
<strong><?php _e('Enter Your Microsoft OneDrive Information', 'wpvivid'); ?></strong>
|
276 |
</div>
|
277 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
278 |
<tbody>
|
279 |
<tr>
|
280 |
<td class="plugin-title column-primary">
|
281 |
<div class="wpvivid-storage-form">
|
282 |
-
<input type="text" class="regular-text" autocomplete="off" option="one_drive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. OneDrive-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
283 |
</div>
|
284 |
</td>
|
285 |
<td class="column-description desc">
|
286 |
<div class="wpvivid-storage-form-desc">
|
287 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
288 |
</div>
|
289 |
</td>
|
290 |
</tr>
|
@@ -296,7 +296,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
296 |
</td>
|
297 |
<td class="column-description desc">
|
298 |
<div class="wpvivid-storage-form-desc">
|
299 |
-
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid'); ?></i>
|
300 |
</div>
|
301 |
</td>
|
302 |
</tr>
|
@@ -308,7 +308,7 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
308 |
</td>
|
309 |
<td class="column-description desc">
|
310 |
<div class="wpvivid-storage-form-desc">
|
311 |
-
<a href="https://wpvivid.com/wpvivid-backup-pro-microsoft-onedrive-custom-folder-name?utm_source=client_onedrive&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid'); ?></a>
|
312 |
</div>
|
313 |
</td>
|
314 |
</tr>
|
@@ -316,25 +316,25 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
316 |
<td class="plugin-title column-primary">
|
317 |
<div class="wpvivid-storage-select">
|
318 |
<label>
|
319 |
-
<input type="checkbox" option="one_drive" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
320 |
</label>
|
321 |
</div>
|
322 |
</td>
|
323 |
<td class="column-description desc">
|
324 |
<div class="wpvivid-storage-form-desc">
|
325 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
326 |
</div>
|
327 |
</td>
|
328 |
</tr>
|
329 |
<tr>
|
330 |
<td class="plugin-title column-primary">
|
331 |
<div class="wpvivid-storage-form">
|
332 |
-
<input onclick="wpvivid_one_drive_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Microsoft OneDrive', 'wpvivid'); ?>">
|
333 |
</div>
|
334 |
</td>
|
335 |
<td class="column-description desc">
|
336 |
<div class="wpvivid-storage-form-desc">
|
337 |
-
<i><?php _e('Click the button to get Microsoft authentication and add it to the storage list below.', 'wpvivid'); ?></i>
|
338 |
</div>
|
339 |
</td>
|
340 |
</tr>
|
@@ -400,31 +400,31 @@ class WPvivid_one_drive extends WPvivid_Remote
|
|
400 |
?>
|
401 |
<div id="remote_storage_edit_onedrive" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
402 |
<div style="padding: 0 10px 10px 0;">
|
403 |
-
<strong><?php _e('Enter Your Microsoft OneDrive Information', 'wpvivid'); ?></strong>
|
404 |
</div>
|
405 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
406 |
<tbody>
|
407 |
<tr>
|
408 |
<td class="plugin-title column-primary">
|
409 |
<div class="wpvivid-storage-form">
|
410 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-onedrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. OneDrive-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
411 |
</div>
|
412 |
</td>
|
413 |
<td class="column-description desc">
|
414 |
<div class="wpvivid-storage-form-desc">
|
415 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
416 |
</div>
|
417 |
</td>
|
418 |
</tr>
|
419 |
<tr>
|
420 |
<td class="plugin-title column-primary">
|
421 |
<div class="wpvivid-storage-form">
|
422 |
-
<input onclick="wpvivid_one_drive_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>">
|
423 |
</div>
|
424 |
</td>
|
425 |
<td class="column-description desc">
|
426 |
<div class="wpvivid-storage-form-desc">
|
427 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
428 |
</div>
|
429 |
</td>
|
430 |
</tr>
|
77 |
{
|
78 |
try {
|
79 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
80 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
81 |
return;
|
82 |
}
|
83 |
|
86 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
87 |
foreach ($remoteslist as $key => $value) {
|
88 |
if (isset($value['name']) && $value['name'] == $_GET['name']) {
|
89 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
90 |
return;
|
91 |
}
|
92 |
}
|
159 |
{
|
160 |
try {
|
161 |
if (!isset($_GET['name']) || empty($_GET['name'])) {
|
162 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: An alias for remote storage is required.', 'wpvivid-backuprestore').'</p></div>';
|
163 |
return;
|
164 |
}
|
165 |
|
168 |
$remoteslist = WPvivid_Setting::get_all_remote_options();
|
169 |
foreach ($remoteslist as $key => $value) {
|
170 |
if (isset($value['name']) && $value['name'] == $_GET['name'] && $key != $_GET['id']) {
|
171 |
+
echo '<div class="notice notice-warning is-dismissible"><p>'.__('Warning: The alias already exists in storage list.', 'wpvivid-backuprestore').'</p></div>';
|
172 |
return;
|
173 |
}
|
174 |
}
|
237 |
}
|
238 |
}
|
239 |
public function wpvivid_show_notice_add_onedrive_success(){
|
240 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have authenticated the Microsoft OneDrive account as your remote storage.', 'wpvivid-backuprestore').'</p></div>';
|
241 |
}
|
242 |
public function wpvivid_show_notice_add_onedrive_error(){
|
243 |
global $wpvivid_plugin;
|
245 |
echo '<div class="notice notice-error"><p>'.$_GET['resp_msg'].'</p></div>';
|
246 |
}
|
247 |
public function wpvivid_show_notice_edit_onedrive_success(){
|
248 |
+
echo '<div class="notice notice-success is-dismissible"><p>'.__('You have successfully updated the storage alias.', 'wpvivid-backuprestore').'</p></div>';
|
249 |
}
|
250 |
public function wpvivid_show_notice_edit_onedrive_error(){
|
251 |
global $wpvivid_plugin;
|
257 |
{
|
258 |
?>
|
259 |
<div class="storage-providers" remote_type="one_drive" onclick="select_remote_storage(event, 'storage_account_one_drive');">
|
260 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-microsoft-onedrive.png'); ?>" style="vertical-align:middle;"/><?php _e('Microsoft OneDrive', 'wpvivid-backuprestore'); ?>
|
261 |
</div>
|
262 |
<?php
|
263 |
}
|
269 |
?>
|
270 |
<div id="storage_account_one_drive" class="storage-account-page" style="display:none;">
|
271 |
<div style="background-color:#f1f1f1; padding: 10px;">
|
272 |
+
<?php _e('Please read <a target="_blank" href="https://wpvivid.com/privacy-policy" style="text-decoration: none;">this privacy policy</a> for use of our Microsoft OneDrive authorization app (none of your backup data is sent to us).', 'wpvivid-backuprestore'); ?>
|
273 |
</div>
|
274 |
<div style="padding: 10px 10px 10px 0;">
|
275 |
+
<strong><?php _e('Enter Your Microsoft OneDrive Information', 'wpvivid-backuprestore'); ?></strong>
|
276 |
</div>
|
277 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
278 |
<tbody>
|
279 |
<tr>
|
280 |
<td class="plugin-title column-primary">
|
281 |
<div class="wpvivid-storage-form">
|
282 |
+
<input type="text" class="regular-text" autocomplete="off" option="one_drive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. OneDrive-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
283 |
</div>
|
284 |
</td>
|
285 |
<td class="column-description desc">
|
286 |
<div class="wpvivid-storage-form-desc">
|
287 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
288 |
</div>
|
289 |
</td>
|
290 |
</tr>
|
296 |
</td>
|
297 |
<td class="column-description desc">
|
298 |
<div class="wpvivid-storage-form-desc">
|
299 |
+
<i><?php _e('All backups will be uploaded to this directory.', 'wpvivid-backuprestore'); ?></i>
|
300 |
</div>
|
301 |
</td>
|
302 |
</tr>
|
308 |
</td>
|
309 |
<td class="column-description desc">
|
310 |
<div class="wpvivid-storage-form-desc">
|
311 |
+
<a href="https://wpvivid.com/wpvivid-backup-pro-microsoft-onedrive-custom-folder-name?utm_source=client_onedrive&utm_medium=inner_link&utm_campaign=access"><?php _e('Pro feature: Create a directory for storing the backups of the site', 'wpvivid-backuprestore'); ?></a>
|
312 |
</div>
|
313 |
</td>
|
314 |
</tr>
|
316 |
<td class="plugin-title column-primary">
|
317 |
<div class="wpvivid-storage-select">
|
318 |
<label>
|
319 |
+
<input type="checkbox" option="one_drive" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
320 |
</label>
|
321 |
</div>
|
322 |
</td>
|
323 |
<td class="column-description desc">
|
324 |
<div class="wpvivid-storage-form-desc">
|
325 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
326 |
</div>
|
327 |
</td>
|
328 |
</tr>
|
329 |
<tr>
|
330 |
<td class="plugin-title column-primary">
|
331 |
<div class="wpvivid-storage-form">
|
332 |
+
<input onclick="wpvivid_one_drive_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Authenticate with Microsoft OneDrive', 'wpvivid-backuprestore'); ?>">
|
333 |
</div>
|
334 |
</td>
|
335 |
<td class="column-description desc">
|
336 |
<div class="wpvivid-storage-form-desc">
|
337 |
+
<i><?php _e('Click the button to get Microsoft authentication and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
338 |
</div>
|
339 |
</td>
|
340 |
</tr>
|
400 |
?>
|
401 |
<div id="remote_storage_edit_onedrive" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
402 |
<div style="padding: 0 10px 10px 0;">
|
403 |
+
<strong><?php _e('Enter Your Microsoft OneDrive Information', 'wpvivid-backuprestore'); ?></strong>
|
404 |
</div>
|
405 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
406 |
<tbody>
|
407 |
<tr>
|
408 |
<td class="plugin-title column-primary">
|
409 |
<div class="wpvivid-storage-form">
|
410 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-onedrive" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. OneDrive-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
411 |
</div>
|
412 |
</td>
|
413 |
<td class="column-description desc">
|
414 |
<div class="wpvivid-storage-form-desc">
|
415 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
416 |
</div>
|
417 |
</td>
|
418 |
</tr>
|
419 |
<tr>
|
420 |
<td class="plugin-title column-primary">
|
421 |
<div class="wpvivid-storage-form">
|
422 |
+
<input onclick="wpvivid_one_drive_update_auth();" class="button-primary" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>">
|
423 |
</div>
|
424 |
</td>
|
425 |
<td class="column-description desc">
|
426 |
<div class="wpvivid-storage-form-desc">
|
427 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
428 |
</div>
|
429 |
</td>
|
430 |
</tr>
|
includes/customclass/class-wpvivid-s3compat.php
CHANGED
@@ -400,7 +400,7 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
400 |
public function wpvivid_add_storage_tab_s3compat(){
|
401 |
?>
|
402 |
<div class="storage-providers" remote_type="s3compat" onclick="select_remote_storage(event, 'storage_account_s3compat');">
|
403 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-digitalocean.png'); ?>" style="vertical-align:middle;"/><?php _e('DigitalOcean Spaces', 'wpvivid'); ?>
|
404 |
</div>
|
405 |
<?php
|
406 |
}
|
@@ -409,7 +409,7 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
409 |
?>
|
410 |
<div id="storage_account_s3compat" class="storage-account-page" style="display:none;">
|
411 |
<div style="padding: 0 10px 10px 0;">
|
412 |
-
<strong><?php _e('Enter Your DigitalOcean Spaces Account', 'wpvivid'); ?></strong>
|
413 |
</div>
|
414 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
415 |
<tbody>
|
@@ -417,72 +417,72 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
417 |
<tr>
|
418 |
<td class="plugin-title column-primary">
|
419 |
<div class="wpvivid-storage-form">
|
420 |
-
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. DOS-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
421 |
</div>
|
422 |
</td>
|
423 |
<td class="column-description desc">
|
424 |
<div class="wpvivid-storage-form-desc">
|
425 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
426 |
</div>
|
427 |
</td>
|
428 |
</tr>
|
429 |
<tr>
|
430 |
<td class="plugin-title column-primary">
|
431 |
<div class="wpvivid-storage-form">
|
432 |
-
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="access" placeholder="<?php esc_attr_e('DigitalOcean Spaces access key', 'wpvivid'); ?>" />
|
433 |
</div>
|
434 |
</td>
|
435 |
<td class="column-description desc">
|
436 |
<div class="wpvivid-storage-form-desc">
|
437 |
-
<i><?php _e('Enter your DigitalOcean Spaces access key', 'wpvivid'); ?></i>
|
438 |
</div>
|
439 |
</td>
|
440 |
</tr>
|
441 |
<tr>
|
442 |
<td class="plugin-title column-primary">
|
443 |
<div class="wpvivid-storage-form">
|
444 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="s3compat" name="secret" placeholder="<?php esc_attr_e('DigitalOcean Spaces secret key', 'wpvivid'); ?>" />
|
445 |
</div>
|
446 |
</td>
|
447 |
<td class="column-description desc">
|
448 |
<div class="wpvivid-storage-form-desc">
|
449 |
-
<i><?php _e('Enter your DigitalOcean Spaces secret key', 'wpvivid'); ?></i>
|
450 |
</div>
|
451 |
</td>
|
452 |
</tr>
|
453 |
<tr>
|
454 |
<td class="plugin-title column-primary">
|
455 |
<div class="wpvivid-storage-form">
|
456 |
-
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="bucket" placeholder="<?php esc_attr_e('Space Name(e.g. test)', 'wpvivid'); ?>" />
|
457 |
</div>
|
458 |
</td>
|
459 |
<td class="column-description desc">
|
460 |
<div class="wpvivid-storage-form-desc">
|
461 |
-
<i><span><?php _e('Enter an existed Space to create a custom backup storage directory.', 'wpvivid'); ?></span></i>
|
462 |
</div>
|
463 |
</td>
|
464 |
</tr>
|
465 |
<tr>
|
466 |
<td class="plugin-title column-primary">
|
467 |
<div class="wpvivid-storage-form">
|
468 |
-
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid'); ?>" />
|
469 |
</div>
|
470 |
</td>
|
471 |
<td class="column-description desc">
|
472 |
<div class="wpvivid-storage-form-desc">
|
473 |
-
<i><span><?php _e('Customize the directory where you want to store backups within the Space.', 'wpvivid'); ?></span></i>
|
474 |
</div>
|
475 |
</td>
|
476 |
</tr>
|
477 |
<tr>
|
478 |
<td class="plugin-title column-primary">
|
479 |
<div class="wpvivid-storage-form">
|
480 |
-
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="endpoint" placeholder="<?php esc_attr_e('region.digitaloceanspaces.com', 'wpvivid'); ?>" />
|
481 |
</div>
|
482 |
</td>
|
483 |
<td class="column-description desc">
|
484 |
<div class="wpvivid-storage-form-desc">
|
485 |
-
<i><?php _e('Enter the DigitalOcean Endpoint for the storage', 'wpvivid'); ?></i>
|
486 |
</div>
|
487 |
</td>
|
488 |
</tr>
|
@@ -490,13 +490,13 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
490 |
<td class="plugin-title column-primary">
|
491 |
<div class="wpvivid-storage-select">
|
492 |
<label>
|
493 |
-
<input type="checkbox" option="s3compat" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
494 |
</label>
|
495 |
</div>
|
496 |
</td>
|
497 |
<td class="column-description desc">
|
498 |
<div class="wpvivid-storage-form-desc">
|
499 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
500 |
</div>
|
501 |
</td>
|
502 |
</tr>
|
@@ -504,12 +504,12 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
504 |
<tr>
|
505 |
<td class="plugin-title column-primary">
|
506 |
<div class="wpvivid-storage-form">
|
507 |
-
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid'); ?>" />
|
508 |
</div>
|
509 |
</td>
|
510 |
<td class="column-description desc">
|
511 |
<div class="wpvivid-storage-form-desc">
|
512 |
-
<i><?php _e('Click the button to connect to DigitalOcean Spaces storage and add it to the storage list below.', 'wpvivid'); ?></i>
|
513 |
</div>
|
514 |
</td>
|
515 |
</tr>
|
@@ -524,7 +524,7 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
524 |
?>
|
525 |
<div id="remote_storage_edit_s3compat" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
526 |
<div style="padding: 0 10px 10px 0;">
|
527 |
-
<strong><?php _e('Enter Your DigitalOcean Spaces Account', 'wpvivid'); ?></strong>
|
528 |
</div>
|
529 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
530 |
<tbody>
|
@@ -532,72 +532,72 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
532 |
<tr>
|
533 |
<td class="plugin-title column-primary">
|
534 |
<div class="wpvivid-storage-form">
|
535 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. DOS-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
536 |
</div>
|
537 |
</td>
|
538 |
<td class="column-description desc">
|
539 |
<div class="wpvivid-storage-form-desc">
|
540 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
541 |
</div>
|
542 |
</td>
|
543 |
</tr>
|
544 |
<tr>
|
545 |
<td class="plugin-title column-primary">
|
546 |
<div class="wpvivid-storage-form">
|
547 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="access" placeholder="<?php esc_attr_e('DigitalOcean Spaces access key', 'wpvivid'); ?>" />
|
548 |
</div>
|
549 |
</td>
|
550 |
<td class="column-description desc">
|
551 |
<div class="wpvivid-storage-form-desc">
|
552 |
-
<i><?php _e('Enter your DigitalOcean Spaces access key', 'wpvivid'); ?></i>
|
553 |
</div>
|
554 |
</td>
|
555 |
</tr>
|
556 |
<tr>
|
557 |
<td class="plugin-title column-primary">
|
558 |
<div class="wpvivid-storage-form">
|
559 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="edit-s3compat" name="secret" placeholder="<?php esc_attr_e('DigitalOcean Spaces secret key', 'wpvivid'); ?>" />
|
560 |
</div>
|
561 |
</td>
|
562 |
<td class="column-description desc">
|
563 |
<div class="wpvivid-storage-form-desc">
|
564 |
-
<i><?php _e('Enter your DigitalOcean Spaces secret key', 'wpvivid'); ?></i>
|
565 |
</div>
|
566 |
</td>
|
567 |
</tr>
|
568 |
<tr>
|
569 |
<td class="plugin-title column-primary">
|
570 |
<div class="wpvivid-storage-form">
|
571 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="bucket" placeholder="<?php esc_attr_e('Space Name(e.g. test)', 'wpvivid'); ?>" />
|
572 |
</div>
|
573 |
</td>
|
574 |
<td class="column-description desc">
|
575 |
<div class="wpvivid-storage-form-desc">
|
576 |
-
<i><span><?php _e('Enter an existed Space to create a custom backup storage directory.', 'wpvivid'); ?></span></i>
|
577 |
</div>
|
578 |
</td>
|
579 |
</tr>
|
580 |
<tr>
|
581 |
<td class="plugin-title column-primary">
|
582 |
<div class="wpvivid-storage-form">
|
583 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid'); ?>" />
|
584 |
</div>
|
585 |
</td>
|
586 |
<td class="column-description desc">
|
587 |
<div class="wpvivid-storage-form-desc">
|
588 |
-
<i><span><?php _e('Customize the directory where you want to store backups within the Space.', 'wpvivid'); ?></span></i>
|
589 |
</div>
|
590 |
</td>
|
591 |
</tr>
|
592 |
<tr>
|
593 |
<td class="plugin-title column-primary">
|
594 |
<div class="wpvivid-storage-form">
|
595 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="endpoint" placeholder="<?php esc_attr_e('region.digitaloceanspaces.com', 'wpvivid'); ?>" />
|
596 |
</div>
|
597 |
</td>
|
598 |
<td class="column-description desc">
|
599 |
<div class="wpvivid-storage-form-desc">
|
600 |
-
<i><?php _e('Enter the DigitalOcean Endpoint for the storage', 'wpvivid'); ?></i>
|
601 |
</div>
|
602 |
</td>
|
603 |
</tr>
|
@@ -605,12 +605,12 @@ class Wpvivid_S3Compat extends WPvivid_Remote{
|
|
605 |
<tr>
|
606 |
<td class="plugin-title column-primary">
|
607 |
<div class="wpvivid-storage-form">
|
608 |
-
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>" />
|
609 |
</div>
|
610 |
</td>
|
611 |
<td class="column-description desc">
|
612 |
<div class="wpvivid-storage-form-desc">
|
613 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
614 |
</div>
|
615 |
</td>
|
616 |
</tr>
|
400 |
public function wpvivid_add_storage_tab_s3compat(){
|
401 |
?>
|
402 |
<div class="storage-providers" remote_type="s3compat" onclick="select_remote_storage(event, 'storage_account_s3compat');">
|
403 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-digitalocean.png'); ?>" style="vertical-align:middle;"/><?php _e('DigitalOcean Spaces', 'wpvivid-backuprestore'); ?>
|
404 |
</div>
|
405 |
<?php
|
406 |
}
|
409 |
?>
|
410 |
<div id="storage_account_s3compat" class="storage-account-page" style="display:none;">
|
411 |
<div style="padding: 0 10px 10px 0;">
|
412 |
+
<strong><?php _e('Enter Your DigitalOcean Spaces Account', 'wpvivid-backuprestore'); ?></strong>
|
413 |
</div>
|
414 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
415 |
<tbody>
|
417 |
<tr>
|
418 |
<td class="plugin-title column-primary">
|
419 |
<div class="wpvivid-storage-form">
|
420 |
+
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. DOS-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
421 |
</div>
|
422 |
</td>
|
423 |
<td class="column-description desc">
|
424 |
<div class="wpvivid-storage-form-desc">
|
425 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
426 |
</div>
|
427 |
</td>
|
428 |
</tr>
|
429 |
<tr>
|
430 |
<td class="plugin-title column-primary">
|
431 |
<div class="wpvivid-storage-form">
|
432 |
+
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="access" placeholder="<?php esc_attr_e('DigitalOcean Spaces access key', 'wpvivid-backuprestore'); ?>" />
|
433 |
</div>
|
434 |
</td>
|
435 |
<td class="column-description desc">
|
436 |
<div class="wpvivid-storage-form-desc">
|
437 |
+
<i><?php _e('Enter your DigitalOcean Spaces access key', 'wpvivid-backuprestore'); ?></i>
|
438 |
</div>
|
439 |
</td>
|
440 |
</tr>
|
441 |
<tr>
|
442 |
<td class="plugin-title column-primary">
|
443 |
<div class="wpvivid-storage-form">
|
444 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="s3compat" name="secret" placeholder="<?php esc_attr_e('DigitalOcean Spaces secret key', 'wpvivid-backuprestore'); ?>" />
|
445 |
</div>
|
446 |
</td>
|
447 |
<td class="column-description desc">
|
448 |
<div class="wpvivid-storage-form-desc">
|
449 |
+
<i><?php _e('Enter your DigitalOcean Spaces secret key', 'wpvivid-backuprestore'); ?></i>
|
450 |
</div>
|
451 |
</td>
|
452 |
</tr>
|
453 |
<tr>
|
454 |
<td class="plugin-title column-primary">
|
455 |
<div class="wpvivid-storage-form">
|
456 |
+
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="bucket" placeholder="<?php esc_attr_e('Space Name(e.g. test)', 'wpvivid-backuprestore'); ?>" />
|
457 |
</div>
|
458 |
</td>
|
459 |
<td class="column-description desc">
|
460 |
<div class="wpvivid-storage-form-desc">
|
461 |
+
<i><span><?php _e('Enter an existed Space to create a custom backup storage directory.', 'wpvivid-backuprestore'); ?></span></i>
|
462 |
</div>
|
463 |
</td>
|
464 |
</tr>
|
465 |
<tr>
|
466 |
<td class="plugin-title column-primary">
|
467 |
<div class="wpvivid-storage-form">
|
468 |
+
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid-backuprestore'); ?>" />
|
469 |
</div>
|
470 |
</td>
|
471 |
<td class="column-description desc">
|
472 |
<div class="wpvivid-storage-form-desc">
|
473 |
+
<i><span><?php _e('Customize the directory where you want to store backups within the Space.', 'wpvivid-backuprestore'); ?></span></i>
|
474 |
</div>
|
475 |
</td>
|
476 |
</tr>
|
477 |
<tr>
|
478 |
<td class="plugin-title column-primary">
|
479 |
<div class="wpvivid-storage-form">
|
480 |
+
<input type="text" class="regular-text" autocomplete="off" option="s3compat" name="endpoint" placeholder="<?php esc_attr_e('region.digitaloceanspaces.com', 'wpvivid-backuprestore'); ?>" />
|
481 |
</div>
|
482 |
</td>
|
483 |
<td class="column-description desc">
|
484 |
<div class="wpvivid-storage-form-desc">
|
485 |
+
<i><?php _e('Enter the DigitalOcean Endpoint for the storage', 'wpvivid-backuprestore'); ?></i>
|
486 |
</div>
|
487 |
</td>
|
488 |
</tr>
|
490 |
<td class="plugin-title column-primary">
|
491 |
<div class="wpvivid-storage-select">
|
492 |
<label>
|
493 |
+
<input type="checkbox" option="s3compat" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
494 |
</label>
|
495 |
</div>
|
496 |
</td>
|
497 |
<td class="column-description desc">
|
498 |
<div class="wpvivid-storage-form-desc">
|
499 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
500 |
</div>
|
501 |
</td>
|
502 |
</tr>
|
504 |
<tr>
|
505 |
<td class="plugin-title column-primary">
|
506 |
<div class="wpvivid-storage-form">
|
507 |
+
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid-backuprestore'); ?>" />
|
508 |
</div>
|
509 |
</td>
|
510 |
<td class="column-description desc">
|
511 |
<div class="wpvivid-storage-form-desc">
|
512 |
+
<i><?php _e('Click the button to connect to DigitalOcean Spaces storage and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
513 |
</div>
|
514 |
</td>
|
515 |
</tr>
|
524 |
?>
|
525 |
<div id="remote_storage_edit_s3compat" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
526 |
<div style="padding: 0 10px 10px 0;">
|
527 |
+
<strong><?php _e('Enter Your DigitalOcean Spaces Account', 'wpvivid-backuprestore'); ?></strong>
|
528 |
</div>
|
529 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
530 |
<tbody>
|
532 |
<tr>
|
533 |
<td class="plugin-title column-primary">
|
534 |
<div class="wpvivid-storage-form">
|
535 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. DOS-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
536 |
</div>
|
537 |
</td>
|
538 |
<td class="column-description desc">
|
539 |
<div class="wpvivid-storage-form-desc">
|
540 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
541 |
</div>
|
542 |
</td>
|
543 |
</tr>
|
544 |
<tr>
|
545 |
<td class="plugin-title column-primary">
|
546 |
<div class="wpvivid-storage-form">
|
547 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="access" placeholder="<?php esc_attr_e('DigitalOcean Spaces access key', 'wpvivid-backuprestore'); ?>" />
|
548 |
</div>
|
549 |
</td>
|
550 |
<td class="column-description desc">
|
551 |
<div class="wpvivid-storage-form-desc">
|
552 |
+
<i><?php _e('Enter your DigitalOcean Spaces access key', 'wpvivid-backuprestore'); ?></i>
|
553 |
</div>
|
554 |
</td>
|
555 |
</tr>
|
556 |
<tr>
|
557 |
<td class="plugin-title column-primary">
|
558 |
<div class="wpvivid-storage-form">
|
559 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="edit-s3compat" name="secret" placeholder="<?php esc_attr_e('DigitalOcean Spaces secret key', 'wpvivid-backuprestore'); ?>" />
|
560 |
</div>
|
561 |
</td>
|
562 |
<td class="column-description desc">
|
563 |
<div class="wpvivid-storage-form-desc">
|
564 |
+
<i><?php _e('Enter your DigitalOcean Spaces secret key', 'wpvivid-backuprestore'); ?></i>
|
565 |
</div>
|
566 |
</td>
|
567 |
</tr>
|
568 |
<tr>
|
569 |
<td class="plugin-title column-primary">
|
570 |
<div class="wpvivid-storage-form">
|
571 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="bucket" placeholder="<?php esc_attr_e('Space Name(e.g. test)', 'wpvivid-backuprestore'); ?>" />
|
572 |
</div>
|
573 |
</td>
|
574 |
<td class="column-description desc">
|
575 |
<div class="wpvivid-storage-form-desc">
|
576 |
+
<i><span><?php _e('Enter an existed Space to create a custom backup storage directory.', 'wpvivid-backuprestore'); ?></span></i>
|
577 |
</div>
|
578 |
</td>
|
579 |
</tr>
|
580 |
<tr>
|
581 |
<td class="plugin-title column-primary">
|
582 |
<div class="wpvivid-storage-form">
|
583 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="path" placeholder="<?php esc_attr_e('Custom Path', 'wpvivid-backuprestore'); ?>" />
|
584 |
</div>
|
585 |
</td>
|
586 |
<td class="column-description desc">
|
587 |
<div class="wpvivid-storage-form-desc">
|
588 |
+
<i><span><?php _e('Customize the directory where you want to store backups within the Space.', 'wpvivid-backuprestore'); ?></span></i>
|
589 |
</div>
|
590 |
</td>
|
591 |
</tr>
|
592 |
<tr>
|
593 |
<td class="plugin-title column-primary">
|
594 |
<div class="wpvivid-storage-form">
|
595 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-s3compat" name="endpoint" placeholder="<?php esc_attr_e('region.digitaloceanspaces.com', 'wpvivid-backuprestore'); ?>" />
|
596 |
</div>
|
597 |
</td>
|
598 |
<td class="column-description desc">
|
599 |
<div class="wpvivid-storage-form-desc">
|
600 |
+
<i><?php _e('Enter the DigitalOcean Endpoint for the storage', 'wpvivid-backuprestore'); ?></i>
|
601 |
</div>
|
602 |
</td>
|
603 |
</tr>
|
605 |
<tr>
|
606 |
<td class="plugin-title column-primary">
|
607 |
<div class="wpvivid-storage-form">
|
608 |
+
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>" />
|
609 |
</div>
|
610 |
</td>
|
611 |
<td class="column-description desc">
|
612 |
<div class="wpvivid-storage-form-desc">
|
613 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
614 |
</div>
|
615 |
</td>
|
616 |
</tr>
|
includes/customclass/class-wpvivid-sftpclass.php
CHANGED
@@ -35,7 +35,7 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
35 |
{
|
36 |
?>
|
37 |
<div class="storage-providers" remote_type="sftp" onclick="select_remote_storage(event, 'storage_account_sftp');">
|
38 |
-
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-sftp.png'); ?>" style="vertical-align:middle;"/><?php _e('SFTP', 'wpvivid'); ?>
|
39 |
</div>
|
40 |
<?php
|
41 |
}
|
@@ -45,7 +45,7 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
45 |
?>
|
46 |
<div id="storage_account_sftp" class="storage-account-page" style="display:none;">
|
47 |
<div style="padding: 0 10px 10px 0;">
|
48 |
-
<strong><?php _e('Enter Your SFTP Account', 'wpvivid'); ?></strong>
|
49 |
</div>
|
50 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
51 |
<tbody>
|
@@ -53,72 +53,72 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
53 |
<tr>
|
54 |
<td class="plugin-title column-primary">
|
55 |
<div class="wpvivid-storage-form">
|
56 |
-
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. SFTP-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
57 |
</div>
|
58 |
</td>
|
59 |
<td class="column-description desc">
|
60 |
<div class="wpvivid-storage-form-desc">
|
61 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
62 |
</div>
|
63 |
</td>
|
64 |
</tr>
|
65 |
<tr>
|
66 |
<td class="plugin-title column-primary">
|
67 |
<div class="wpvivid-storage-form">
|
68 |
-
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="host" placeholder="<?php esc_attr_e('Server Address', 'wpvivid'); ?>" />
|
69 |
</div>
|
70 |
</td>
|
71 |
<td class="column-description desc">
|
72 |
<div class="wpvivid-storage-form-desc">
|
73 |
-
<i><?php _e('Enter the server address.', 'wpvivid'); ?></i>
|
74 |
</div>
|
75 |
</td>
|
76 |
</tr>
|
77 |
<tr>
|
78 |
<td class="plugin-title column-primary">
|
79 |
<div class="wpvivid-storage-form">
|
80 |
-
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="username" placeholder="<?php esc_attr_e('User Name', 'wpvivid'); ?>" />
|
81 |
</div>
|
82 |
</td>
|
83 |
<td class="column-description desc">
|
84 |
<div class="wpvivid-storage-form-desc">
|
85 |
-
<i><?php _e('Enter the user name.', 'wpvivid'); ?></i>
|
86 |
</div>
|
87 |
</td>
|
88 |
</tr>
|
89 |
<tr>
|
90 |
<td class="plugin-title column-primary">
|
91 |
<div class="wpvivid-storage-form">
|
92 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="sftp" name="password" placeholder="<?php esc_attr_e('User Password', 'wpvivid'); ?>" />
|
93 |
</div>
|
94 |
</td>
|
95 |
<td class="column-description desc">
|
96 |
<div class="wpvivid-storage-form-desc">
|
97 |
-
<i><?php _e('Enter the user password.', 'wpvivid'); ?></i>
|
98 |
</div>
|
99 |
</td>
|
100 |
</tr>
|
101 |
<tr>
|
102 |
<td class="plugin-title column-primary">
|
103 |
<div class="wpvivid-storage-form">
|
104 |
-
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="port" placeholder="<?php esc_attr_e('Port', 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />
|
105 |
</div>
|
106 |
</td>
|
107 |
<td class="column-description desc">
|
108 |
<div class="wpvivid-storage-form-desc">
|
109 |
-
<i><?php _e('Enter the server port.', 'wpvivid'); ?></i>
|
110 |
</div>
|
111 |
</td>
|
112 |
</tr>
|
113 |
<tr>
|
114 |
<td class="plugin-title column-primary">
|
115 |
<div class="wpvivid-storage-form">
|
116 |
-
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /var)', 'wpvivid'); ?>" />
|
117 |
</div>
|
118 |
</td>
|
119 |
<td class="column-description desc">
|
120 |
<div class="wpvivid-storage-form-desc">
|
121 |
-
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /var/customfolder/', 'wpvivid'); ?></i>
|
122 |
</div>
|
123 |
</td>
|
124 |
</tr>
|
@@ -126,13 +126,13 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
126 |
<td class="plugin-title column-primary">
|
127 |
<div class="wpvivid-storage-select">
|
128 |
<label>
|
129 |
-
<input type="checkbox" option="sftp" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid'); ?>
|
130 |
</label>
|
131 |
</div>
|
132 |
</td>
|
133 |
<td class="column-description desc">
|
134 |
<div class="wpvivid-storage-form-desc">
|
135 |
-
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid'); ?></i>
|
136 |
</div>
|
137 |
</td>
|
138 |
</tr>
|
@@ -140,12 +140,12 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
140 |
<tr>
|
141 |
<td class="plugin-title column-primary">
|
142 |
<div class="wpvivid-storage-form">
|
143 |
-
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid'); ?>" />
|
144 |
</div>
|
145 |
</td>
|
146 |
<td class="column-description desc">
|
147 |
<div class="wpvivid-storage-form-desc">
|
148 |
-
<i><?php _e('Click the button to connect to SFTP server and add it to the storage list below.', 'wpvivid'); ?></i>
|
149 |
</div>
|
150 |
</td>
|
151 |
</tr>
|
@@ -160,7 +160,7 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
160 |
?>
|
161 |
<div id="remote_storage_edit_sftp" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
162 |
<div style="padding: 0 10px 10px 0;">
|
163 |
-
<strong><?php _e('Enter Your SFTP Account', 'wpvivid'); ?></strong>
|
164 |
</div>
|
165 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
166 |
<tbody>
|
@@ -168,72 +168,72 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
168 |
<tr>
|
169 |
<td class="plugin-title column-primary">
|
170 |
<div class="wpvivid-storage-form">
|
171 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. SFTP-001', 'wpvivid'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
172 |
</div>
|
173 |
</td>
|
174 |
<td class="column-description desc">
|
175 |
<div class="wpvivid-storage-form-desc">
|
176 |
-
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid'); ?></i>
|
177 |
</div>
|
178 |
</td>
|
179 |
</tr>
|
180 |
<tr>
|
181 |
<td class="plugin-title column-primary">
|
182 |
<div class="wpvivid-storage-form">
|
183 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="host" placeholder="<?php esc_attr_e('Server Address', 'wpvivid'); ?>" />
|
184 |
</div>
|
185 |
</td>
|
186 |
<td class="column-description desc">
|
187 |
<div class="wpvivid-storage-form-desc">
|
188 |
-
<i><?php _e('Enter the server address.', 'wpvivid'); ?></i>
|
189 |
</div>
|
190 |
</td>
|
191 |
</tr>
|
192 |
<tr>
|
193 |
<td class="plugin-title column-primary">
|
194 |
<div class="wpvivid-storage-form">
|
195 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="username" placeholder="<?php esc_attr_e('User Name', 'wpvivid'); ?>" />
|
196 |
</div>
|
197 |
</td>
|
198 |
<td class="column-description desc">
|
199 |
<div class="wpvivid-storage-form-desc">
|
200 |
-
<i><?php _e('Enter the user name.', 'wpvivid'); ?></i>
|
201 |
</div>
|
202 |
</td>
|
203 |
</tr>
|
204 |
<tr>
|
205 |
<td class="plugin-title column-primary">
|
206 |
<div class="wpvivid-storage-form">
|
207 |
-
<input type="password" class="regular-text" autocomplete="new-password" option="edit-sftp" name="password" placeholder="<?php esc_attr_e('User Password', 'wpvivid'); ?>" />
|
208 |
</div>
|
209 |
</td>
|
210 |
<td class="column-description desc">
|
211 |
<div class="wpvivid-storage-form-desc">
|
212 |
-
<i><?php _e('Enter the user password.', 'wpvivid'); ?></i>
|
213 |
</div>
|
214 |
</td>
|
215 |
</tr>
|
216 |
<tr>
|
217 |
<td class="plugin-title column-primary">
|
218 |
<div class="wpvivid-storage-form">
|
219 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="port" placeholder="<?php esc_attr_e('Port', 'wpvivid'); ?>" onkeyup="value=value.replace(/\D/g,'')" />
|
220 |
</div>
|
221 |
</td>
|
222 |
<td class="column-description desc">
|
223 |
<div class="wpvivid-storage-form-desc">
|
224 |
-
<i><?php _e('Enter the server port.', 'wpvivid'); ?></i>
|
225 |
</div>
|
226 |
</td>
|
227 |
</tr>
|
228 |
<tr>
|
229 |
<td class="plugin-title column-primary">
|
230 |
<div class="wpvivid-storage-form">
|
231 |
-
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /var)', 'wpvivid'); ?>" />
|
232 |
</div>
|
233 |
</td>
|
234 |
<td class="column-description desc">
|
235 |
<div class="wpvivid-storage-form-desc">
|
236 |
-
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /var/customfolder/', 'wpvivid'); ?></i>
|
237 |
</div>
|
238 |
</td>
|
239 |
</tr>
|
@@ -241,12 +241,12 @@ class WPvivid_SFTPClass extends WPvivid_Remote{
|
|
241 |
<tr>
|
242 |
<td class="plugin-title column-primary">
|
243 |
<div class="wpvivid-storage-form">
|
244 |
-
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid'); ?>" />
|
245 |
</div>
|
246 |
</td>
|
247 |
<td class="column-description desc">
|
248 |
<div class="wpvivid-storage-form-desc">
|
249 |
-
<i><?php _e('Click the button to save the changes.', 'wpvivid'); ?></i>
|
250 |
</div>
|
251 |
</td>
|
252 |
</tr>
|
35 |
{
|
36 |
?>
|
37 |
<div class="storage-providers" remote_type="sftp" onclick="select_remote_storage(event, 'storage_account_sftp');">
|
38 |
+
<img src="<?php echo esc_url(WPVIVID_PLUGIN_URL.'/admin/partials/images/storage-sftp.png'); ?>" style="vertical-align:middle;"/><?php _e('SFTP', 'wpvivid-backuprestore'); ?>
|
39 |
</div>
|
40 |
<?php
|
41 |
}
|
45 |
?>
|
46 |
<div id="storage_account_sftp" class="storage-account-page" style="display:none;">
|
47 |
<div style="padding: 0 10px 10px 0;">
|
48 |
+
<strong><?php _e('Enter Your SFTP Account', 'wpvivid-backuprestore'); ?></strong>
|
49 |
</div>
|
50 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
51 |
<tbody>
|
53 |
<tr>
|
54 |
<td class="plugin-title column-primary">
|
55 |
<div class="wpvivid-storage-form">
|
56 |
+
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. SFTP-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
57 |
</div>
|
58 |
</td>
|
59 |
<td class="column-description desc">
|
60 |
<div class="wpvivid-storage-form-desc">
|
61 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
62 |
</div>
|
63 |
</td>
|
64 |
</tr>
|
65 |
<tr>
|
66 |
<td class="plugin-title column-primary">
|
67 |
<div class="wpvivid-storage-form">
|
68 |
+
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="host" placeholder="<?php esc_attr_e('Server Address', 'wpvivid-backuprestore'); ?>" />
|
69 |
</div>
|
70 |
</td>
|
71 |
<td class="column-description desc">
|
72 |
<div class="wpvivid-storage-form-desc">
|
73 |
+
<i><?php _e('Enter the server address.', 'wpvivid-backuprestore'); ?></i>
|
74 |
</div>
|
75 |
</td>
|
76 |
</tr>
|
77 |
<tr>
|
78 |
<td class="plugin-title column-primary">
|
79 |
<div class="wpvivid-storage-form">
|
80 |
+
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="username" placeholder="<?php esc_attr_e('User Name', 'wpvivid-backuprestore'); ?>" />
|
81 |
</div>
|
82 |
</td>
|
83 |
<td class="column-description desc">
|
84 |
<div class="wpvivid-storage-form-desc">
|
85 |
+
<i><?php _e('Enter the user name.', 'wpvivid-backuprestore'); ?></i>
|
86 |
</div>
|
87 |
</td>
|
88 |
</tr>
|
89 |
<tr>
|
90 |
<td class="plugin-title column-primary">
|
91 |
<div class="wpvivid-storage-form">
|
92 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="sftp" name="password" placeholder="<?php esc_attr_e('User Password', 'wpvivid-backuprestore'); ?>" />
|
93 |
</div>
|
94 |
</td>
|
95 |
<td class="column-description desc">
|
96 |
<div class="wpvivid-storage-form-desc">
|
97 |
+
<i><?php _e('Enter the user password.', 'wpvivid-backuprestore'); ?></i>
|
98 |
</div>
|
99 |
</td>
|
100 |
</tr>
|
101 |
<tr>
|
102 |
<td class="plugin-title column-primary">
|
103 |
<div class="wpvivid-storage-form">
|
104 |
+
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="port" placeholder="<?php esc_attr_e('Port', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />
|
105 |
</div>
|
106 |
</td>
|
107 |
<td class="column-description desc">
|
108 |
<div class="wpvivid-storage-form-desc">
|
109 |
+
<i><?php _e('Enter the server port.', 'wpvivid-backuprestore'); ?></i>
|
110 |
</div>
|
111 |
</td>
|
112 |
</tr>
|
113 |
<tr>
|
114 |
<td class="plugin-title column-primary">
|
115 |
<div class="wpvivid-storage-form">
|
116 |
+
<input type="text" class="regular-text" autocomplete="off" option="sftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /var)', 'wpvivid-backuprestore'); ?>" />
|
117 |
</div>
|
118 |
</td>
|
119 |
<td class="column-description desc">
|
120 |
<div class="wpvivid-storage-form-desc">
|
121 |
+
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /var/customfolder/', 'wpvivid-backuprestore'); ?></i>
|
122 |
</div>
|
123 |
</td>
|
124 |
</tr>
|
126 |
<td class="plugin-title column-primary">
|
127 |
<div class="wpvivid-storage-select">
|
128 |
<label>
|
129 |
+
<input type="checkbox" option="sftp" name="default" checked /><?php _e('Set as the default remote storage.', 'wpvivid-backuprestore'); ?>
|
130 |
</label>
|
131 |
</div>
|
132 |
</td>
|
133 |
<td class="column-description desc">
|
134 |
<div class="wpvivid-storage-form-desc">
|
135 |
+
<i><?php _e('Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default.', 'wpvivid-backuprestore'); ?></i>
|
136 |
</div>
|
137 |
</td>
|
138 |
</tr>
|
140 |
<tr>
|
141 |
<td class="plugin-title column-primary">
|
142 |
<div class="wpvivid-storage-form">
|
143 |
+
<input class="button-primary" option="add-remote" type="submit" value="<?php esc_attr_e('Test and Add', 'wpvivid-backuprestore'); ?>" />
|
144 |
</div>
|
145 |
</td>
|
146 |
<td class="column-description desc">
|
147 |
<div class="wpvivid-storage-form-desc">
|
148 |
+
<i><?php _e('Click the button to connect to SFTP server and add it to the storage list below.', 'wpvivid-backuprestore'); ?></i>
|
149 |
</div>
|
150 |
</td>
|
151 |
</tr>
|
160 |
?>
|
161 |
<div id="remote_storage_edit_sftp" class="postbox storage-account-block remote-storage-edit" style="display:none;">
|
162 |
<div style="padding: 0 10px 10px 0;">
|
163 |
+
<strong><?php _e('Enter Your SFTP Account', 'wpvivid-backuprestore'); ?></strong>
|
164 |
</div>
|
165 |
<table class="wp-list-table widefat plugins" style="width:100%;">
|
166 |
<tbody>
|
168 |
<tr>
|
169 |
<td class="plugin-title column-primary">
|
170 |
<div class="wpvivid-storage-form">
|
171 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="name" placeholder="<?php esc_attr_e('Enter a unique alias: e.g. SFTP-001', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/[^a-zA-Z0-9\-_]/g,'')" />
|
172 |
</div>
|
173 |
</td>
|
174 |
<td class="column-description desc">
|
175 |
<div class="wpvivid-storage-form-desc">
|
176 |
+
<i><?php _e('A name to help you identify the storage if you have multiple remote storage connected.', 'wpvivid-backuprestore'); ?></i>
|
177 |
</div>
|
178 |
</td>
|
179 |
</tr>
|
180 |
<tr>
|
181 |
<td class="plugin-title column-primary">
|
182 |
<div class="wpvivid-storage-form">
|
183 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="host" placeholder="<?php esc_attr_e('Server Address', 'wpvivid-backuprestore'); ?>" />
|
184 |
</div>
|
185 |
</td>
|
186 |
<td class="column-description desc">
|
187 |
<div class="wpvivid-storage-form-desc">
|
188 |
+
<i><?php _e('Enter the server address.', 'wpvivid-backuprestore'); ?></i>
|
189 |
</div>
|
190 |
</td>
|
191 |
</tr>
|
192 |
<tr>
|
193 |
<td class="plugin-title column-primary">
|
194 |
<div class="wpvivid-storage-form">
|
195 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="username" placeholder="<?php esc_attr_e('User Name', 'wpvivid-backuprestore'); ?>" />
|
196 |
</div>
|
197 |
</td>
|
198 |
<td class="column-description desc">
|
199 |
<div class="wpvivid-storage-form-desc">
|
200 |
+
<i><?php _e('Enter the user name.', 'wpvivid-backuprestore'); ?></i>
|
201 |
</div>
|
202 |
</td>
|
203 |
</tr>
|
204 |
<tr>
|
205 |
<td class="plugin-title column-primary">
|
206 |
<div class="wpvivid-storage-form">
|
207 |
+
<input type="password" class="regular-text" autocomplete="new-password" option="edit-sftp" name="password" placeholder="<?php esc_attr_e('User Password', 'wpvivid-backuprestore'); ?>" />
|
208 |
</div>
|
209 |
</td>
|
210 |
<td class="column-description desc">
|
211 |
<div class="wpvivid-storage-form-desc">
|
212 |
+
<i><?php _e('Enter the user password.', 'wpvivid-backuprestore'); ?></i>
|
213 |
</div>
|
214 |
</td>
|
215 |
</tr>
|
216 |
<tr>
|
217 |
<td class="plugin-title column-primary">
|
218 |
<div class="wpvivid-storage-form">
|
219 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="port" placeholder="<?php esc_attr_e('Port', 'wpvivid-backuprestore'); ?>" onkeyup="value=value.replace(/\D/g,'')" />
|
220 |
</div>
|
221 |
</td>
|
222 |
<td class="column-description desc">
|
223 |
<div class="wpvivid-storage-form-desc">
|
224 |
+
<i><?php _e('Enter the server port.', 'wpvivid-backuprestore'); ?></i>
|
225 |
</div>
|
226 |
</td>
|
227 |
</tr>
|
228 |
<tr>
|
229 |
<td class="plugin-title column-primary">
|
230 |
<div class="wpvivid-storage-form">
|
231 |
+
<input type="text" class="regular-text" autocomplete="off" option="edit-sftp" name="path" placeholder="<?php esc_attr_e('Absolute path must exist(e.g. /var)', 'wpvivid-backuprestore'); ?>" />
|
232 |
</div>
|
233 |
</td>
|
234 |
<td class="column-description desc">
|
235 |
<div class="wpvivid-storage-form-desc">
|
236 |
+
<i><?php _e('Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /var/customfolder/', 'wpvivid-backuprestore'); ?></i>
|
237 |
</div>
|
238 |
</td>
|
239 |
</tr>
|
241 |
<tr>
|
242 |
<td class="plugin-title column-primary">
|
243 |
<div class="wpvivid-storage-form">
|
244 |
+
<input class="button-primary" option="edit-remote" type="submit" value="<?php esc_attr_e('Save Changes', 'wpvivid-backuprestore'); ?>" />
|
245 |
</div>
|
246 |
</td>
|
247 |
<td class="column-description desc">
|
248 |
<div class="wpvivid-storage-form-desc">
|
249 |
+
<i><?php _e('Click the button to save the changes.', 'wpvivid-backuprestore'); ?></i>
|
250 |
</div>
|
251 |
</td>
|
252 |
</tr>
|
languages/{wpvivid-bg_BG.mo → wpvivid-backuprestore-bg_BG.mo}
RENAMED
Binary file
|
languages/{wpvivid-bg_BG.po → wpvivid-backuprestore-bg_BG.po}
RENAMED
@@ -1,7 +1,7 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: wpvivid backup plugin\n"
|
4 |
-
"Last-Translator:
|
5 |
"Language-Team: Български\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
@@ -12,7 +12,7 @@ msgstr ""
|
|
12 |
"X-Poedit-SourceCharset: utf-8\n"
|
13 |
"Report-Msgid-Bugs-To: \n"
|
14 |
"POT-Creation-Date: 2020-06-09 14:13+0000\n"
|
15 |
-
"PO-Revision-Date: 2020-
|
16 |
"Language: bg_BG\n"
|
17 |
"X-Generator: Poedit 2.3.1\n"
|
18 |
"X-Loco-Version: 2.4.0; wp-5.4.1\n"
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: wpvivid backup plugin\n"
|
4 |
+
"Last-Translator: \n"
|
5 |
"Language-Team: Български\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
"X-Poedit-SourceCharset: utf-8\n"
|
13 |
"Report-Msgid-Bugs-To: \n"
|
14 |
"POT-Creation-Date: 2020-06-09 14:13+0000\n"
|
15 |
+
"PO-Revision-Date: 2020-07-27 18:41+0800\n"
|
16 |
"Language: bg_BG\n"
|
17 |
"X-Generator: Poedit 2.3.1\n"
|
18 |
"X-Loco-Version: 2.4.0; wp-5.4.1\n"
|
languages/wpvivid-backuprestore-it_IT.mo
ADDED
Binary file
|
languages/{wpvivid-it_IT.po → wpvivid-backuprestore-it_IT.po}
RENAMED
@@ -10,20 +10,22 @@ msgstr ""
|
|
10 |
"X-Poedit-Basepath: ..\n"
|
11 |
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
12 |
"X-Poedit-SourceCharset: utf-8\n"
|
13 |
-
"X-Poedit-SearchPath-0: .\n"
|
14 |
"Report-Msgid-Bugs-To: \n"
|
15 |
"POT-Creation-Date: 2020-05-12 15:27+0000\n"
|
16 |
-
"PO-Revision-Date: 2020-
|
17 |
"Language: it_IT\n"
|
18 |
"X-Generator: Loco https://localise.biz/\n"
|
19 |
-
"X-Loco-Version: 2.3.3; wp-5.4.1"
|
|
|
20 |
|
21 |
-
#: admin/class-wpvivid-admin.php:100
|
|
|
22 |
#: admin/class-wpvivid-admin.php:635
|
23 |
msgid "Backup & Restore"
|
24 |
msgstr "Backup & Ripristino"
|
25 |
|
26 |
-
#: admin/class-wpvivid-admin.php:123
|
|
|
27 |
#: admin/class-wpvivid-admin.php:653
|
28 |
msgid "Settings"
|
29 |
msgstr "Impostazioni"
|
@@ -41,22 +43,12 @@ msgid "Troubleshooting"
|
|
41 |
msgstr "Risoluzione dei problemi"
|
42 |
|
43 |
#: admin/class-wpvivid-admin.php:154
|
44 |
-
msgid ""
|
45 |
-
"
|
46 |
-
"plugin\" target=\"_blank\">Troubleshooting page</a> for faster solutions."
|
47 |
-
msgstr ""
|
48 |
-
"Leggi <a href=\"https://wpvivid.com/troubleshooting-issues-wpvivid-backup-"
|
49 |
-
"plugin\" target=\"_blank\">la pagina di Risoluzione dei problemi</a> per "
|
50 |
-
"soluzioni più rapide."
|
51 |
|
52 |
#: admin/class-wpvivid-admin.php:157
|
53 |
-
msgid ""
|
54 |
-
"
|
55 |
-
"html\" target=\"_blank\">Advanced Settings</a> for higher task success rate."
|
56 |
-
msgstr ""
|
57 |
-
"Configura le <a href=\"https://wpvivid.com/wpvivid-backup-plugin-advanced-"
|
58 |
-
"settings.html\" target=\"_blank\">Impostazioni avanzate</a> per una "
|
59 |
-
"percentuale più alta di successo nello svolgimento delle attività."
|
60 |
|
61 |
#: admin/class-wpvivid-admin.php:164
|
62 |
msgid "How-to"
|
@@ -95,95 +87,57 @@ msgid "Warning: The alias already exists in storage list."
|
|
95 |
msgstr "Attenzione: l'alias esiste già nella lista degli storage."
|
96 |
|
97 |
#: admin/class-wpvivid-admin.php:213
|
98 |
-
msgid ""
|
99 |
-
"
|
100 |
-
"continue to receive this error, please go to the plugin settings, uncheck "
|
101 |
-
"'Calculate the size of files, folder and database before backing up', save "
|
102 |
-
"changes, then try again."
|
103 |
-
msgstr ""
|
104 |
-
"Il calcolo delle dimensioni dei file, delle cartelle e database è terminata "
|
105 |
-
"a causa di un time out. Se si continua a ricevere questo errore, si prega di "
|
106 |
-
"andare alle impostazioni dei plug-in, deselezionare 'Calcolare le dimensioni "
|
107 |
-
"dei file, delle cartelle e database prima di eseguire il backup', salvare le "
|
108 |
-
"modifiche, quindi provare di nuovo."
|
109 |
|
110 |
#: admin/class-wpvivid-admin.php:346
|
111 |
-
msgid ""
|
112 |
-
"
|
113 |
-
"successfully complete the migration, you'd better reinstall 301 redirect "
|
114 |
-
"plugin, firewall and security plugin, and caching plugin if they exist."
|
115 |
-
msgstr ""
|
116 |
-
"La migrazione è completa e il file htaccess è stato sostituito. Per "
|
117 |
-
"completare con successo la migrazione, è meglio reinstallare il plugin 301 "
|
118 |
-
"redirect, il plugin firewall e il plugin di sicurezza e il plugin di caching,"
|
119 |
-
" se esistono."
|
120 |
|
121 |
#: admin/class-wpvivid-admin.php:361
|
122 |
-
msgid ""
|
123 |
-
"
|
124 |
-
"found WPvivid Backup plugin helpful, a 5-star rating would be highly "
|
125 |
-
"appreciated, which motivates us to keep providing new features."
|
126 |
-
msgstr ""
|
127 |
-
"Evviva! WPvivid Backup plugin ha ripristinato con successo il tuo sito web. "
|
128 |
-
"Se hai trovato WPvivid Backup plugin utile, una valutazione di 5 stelle "
|
129 |
-
"sarebbe molto apprezzata, cosa che ci spinge a continuare a offrire nuove "
|
130 |
-
"funzionalità."
|
131 |
|
132 |
#: admin/class-wpvivid-admin.php:367
|
133 |
msgid "Restore completed successfully."
|
134 |
msgstr "Ripristino completato."
|
135 |
|
136 |
-
#: admin/class-wpvivid-admin.php:454
|
|
|
137 |
msgid "Rate Us"
|
138 |
msgstr "Votaci"
|
139 |
|
140 |
-
#: admin/class-wpvivid-admin.php:455
|
|
|
141 |
msgid "Maybe Later"
|
142 |
msgstr "Forse Più Tardi"
|
143 |
|
144 |
-
#: admin/class-wpvivid-admin.php:456
|
|
|
145 |
msgid "Never"
|
146 |
msgstr "Mai"
|
147 |
|
148 |
#: admin/class-wpvivid-admin.php:509
|
149 |
-
msgid ""
|
150 |
-
"
|
151 |
-
"please delete the previous connections and re-add your Amazon "
|
152 |
-
"S3/DigitalOcean Space accounts to make sure the connections work."
|
153 |
-
msgstr ""
|
154 |
-
"Poiché Amazon S3 e DigitalOcean Space hanno aggiornato i loro metodi di "
|
155 |
-
"connessione, si prega di cancellare le precedenti connessioni e ri-"
|
156 |
-
"aggiungere i tuoi account tuo Amazon S3/DigitalOcean Space per assicurarti "
|
157 |
-
"che le connessioni funzionino."
|
158 |
|
159 |
#: admin/class-wpvivid-admin.php:561
|
160 |
#, php-format
|
161 |
msgid "The %s extension is not detected. Please install the extension first."
|
162 |
-
msgstr ""
|
163 |
-
"L'estensione %s non è stata rilevata. Si prega di installare prima "
|
164 |
-
"l'estensione."
|
165 |
|
166 |
#: admin/class-wpvivid-admin.php:564
|
167 |
#, php-format
|
168 |
-
msgid ""
|
169 |
-
"
|
170 |
-
msgstr ""
|
171 |
-
"Le estensioni %s non sono state rilevate. Si prega di installare prima le "
|
172 |
-
"estensioni."
|
173 |
|
174 |
#: admin/class-wpvivid-admin.php:570
|
175 |
-
msgid ""
|
176 |
-
"
|
177 |
-
msgstr ""
|
178 |
-
"Classe PclZip non rilevata. Si prega di aggiornare o reinstallare WordPress."
|
179 |
|
180 |
#: admin/class-wpvivid-admin.php:575
|
181 |
-
msgid ""
|
182 |
-
"
|
183 |
-
"DISABLE_WP_CRON constant to false."
|
184 |
-
msgstr ""
|
185 |
-
"Per eseguire correttamente i backup pianificati, impostare la costante "
|
186 |
-
"DISABLE_WP_CRON su false."
|
187 |
|
188 |
#: admin/class-wpvivid-admin.php:641
|
189 |
msgid "Schedule"
|
@@ -215,36 +169,23 @@ msgstr "MainWP"
|
|
215 |
msgid "Premium"
|
216 |
msgstr "Premium"
|
217 |
|
218 |
-
#: admin/class-wpvivid-admin.php:735
|
|
|
219 |
#: admin/partials/wpvivid-remote-storage-page-display.php:48
|
220 |
msgid "Save Changes"
|
221 |
msgstr "Salvare le modifiche"
|
222 |
|
223 |
#: admin/class-wpvivid-admin.php:870
|
224 |
-
msgid ""
|
225 |
-
"
|
226 |
-
"is recommended."
|
227 |
-
msgstr ""
|
228 |
-
"Ci sono due modi per inviarci le informazioni di debug. Il primo è "
|
229 |
-
"raccomandato."
|
230 |
|
231 |
#: admin/class-wpvivid-admin.php:872
|
232 |
msgid "Method 1."
|
233 |
msgstr "Metodo 1."
|
234 |
|
235 |
#: admin/class-wpvivid-admin.php:872
|
236 |
-
msgid ""
|
237 |
-
"
|
238 |
-
"the button below to send us the relevant information (website info and "
|
239 |
-
"errors logs) when you are encountering errors. This will help us figure out "
|
240 |
-
"what happened. Once the issue is resolved, we will inform you by your email "
|
241 |
-
"address."
|
242 |
-
msgstr ""
|
243 |
-
"Se è stato configurato l'SMTP sul tuo sito, inserisci il tuo indirizzo e-"
|
244 |
-
"mail e fai clic sul pulsante qui sotto per inviarci le informazioni "
|
245 |
-
"rilevanti (informazioni sul sito e gli errori di log) quando si verificano "
|
246 |
-
"errori. Questo ci aiuterà a capire cosa è successo. Una volta risolto il "
|
247 |
-
"problema, provvederemo ad informarti per tuo indirizzo e-mail."
|
248 |
|
249 |
#: admin/class-wpvivid-admin.php:875
|
250 |
msgid "WPvivid support email:"
|
@@ -275,16 +216,8 @@ msgid "Method 2."
|
|
275 |
msgstr "Metodo 2."
|
276 |
|
277 |
#: admin/class-wpvivid-admin.php:909
|
278 |
-
msgid ""
|
279 |
-
"
|
280 |
-
"download the relevant information (website info and error logs) to your PC "
|
281 |
-
"when you are encountering some errors. Sending the files to us will help us "
|
282 |
-
"diagnose what happened."
|
283 |
-
msgstr ""
|
284 |
-
"Se non hai configurato l'SMTP sul tuo sito, clicca sul pulsante qui sotto "
|
285 |
-
"per scaricare le informazioni rilevanti (informazioni sul sito web e "
|
286 |
-
"registri degli errori) sul tuo PC quando incontrate degli errori. L'invio "
|
287 |
-
"dei file ci aiuterà a diagnosticare l'accaduto."
|
288 |
|
289 |
#: admin/class-wpvivid-admin.php:912
|
290 |
#: admin/partials/wpvivid-backup-restore-page-display.php:178
|
@@ -324,14 +257,8 @@ msgid " Next page > "
|
|
324 |
msgstr "Pagina Seguente >"
|
325 |
|
326 |
#: admin/class-wpvivid-admin.php:1164
|
327 |
-
msgid ""
|
328 |
-
"
|
329 |
-
"Pro for every child site directly from your MainWP dashboard, using our "
|
330 |
-
"WPvivid Backup for MainWP extension."
|
331 |
-
msgstr ""
|
332 |
-
"Se sei un utente MainWP, puoi impostare e controllare WPvivid Backup Free e "
|
333 |
-
"Pro per ogni sito child direttamente dalla Bacheca di MainWP, utilizzando la "
|
334 |
-
"nostra estensione WPvivid Backup for MainWP."
|
335 |
|
336 |
#: admin/class-wpvivid-admin.php:1167
|
337 |
msgid "Download WPvivid Backup for MainWP"
|
@@ -347,30 +274,20 @@ msgstr "2. Pianifica backup per tutti i siti child"
|
|
347 |
|
348 |
#: admin/class-wpvivid-admin.php:1177
|
349 |
msgid "3. Set WPvivid Backup Free and Pro settings for all child sites"
|
350 |
-
msgstr ""
|
351 |
-
"3. Configura le impostazioni di WPvivid Backup Free e Pro per tutti i siti "
|
352 |
-
"child"
|
353 |
|
354 |
#: admin/class-wpvivid-admin.php:1182
|
355 |
msgid "4. Install, claim and update WPvivid Backup Pro for child sites in bulk"
|
356 |
-
msgstr ""
|
357 |
-
"4. Installa, attiva e aggiorna WPvivid Backup Pro in massa per i siti child"
|
358 |
|
359 |
#: admin/class-wpvivid-admin.php:1187
|
360 |
-
msgid ""
|
361 |
-
"5.
|
362 |
-
"only)"
|
363 |
-
msgstr ""
|
364 |
-
"5. Imposta in massa l'archiviazione remota per i siti child (per WPvivid "
|
365 |
-
"Backup Pro)."
|
366 |
|
367 |
#: admin/class-wpvivid-admin.php:1192
|
368 |
#, php-format
|
369 |
-
msgid ""
|
370 |
-
"
|
371 |
-
msgstr ""
|
372 |
-
"Offriamo anche uno sconto del 40% su WPvivid Backup Pro per gli utenti "
|
373 |
-
"MainWP."
|
374 |
|
375 |
#: admin/class-wpvivid-admin.php:1196
|
376 |
msgid "Ask For A 40% OFF Discount"
|
@@ -396,12 +313,15 @@ msgstr "Ultimate"
|
|
396 |
msgid "Websites"
|
397 |
msgstr "Siti web"
|
398 |
|
399 |
-
#: admin/class-wpvivid-admin.php:1229
|
400 |
-
#: admin/class-wpvivid-admin.php:
|
|
|
|
|
401 |
msgid "Backup:"
|
402 |
msgstr "Backup:"
|
403 |
|
404 |
-
#: admin/class-wpvivid-admin.php:1229
|
|
|
405 |
msgid "Custom Content"
|
406 |
msgstr "Contenuto Personalizzato"
|
407 |
|
@@ -417,7 +337,8 @@ msgstr "Crea un punto di ripristino"
|
|
417 |
msgid "Include/exclude files/folders"
|
418 |
msgstr "Includere/escludere i file e le cartelle"
|
419 |
|
420 |
-
#: admin/class-wpvivid-admin.php:1233
|
|
|
421 |
msgid "Migration:"
|
422 |
msgstr "Migrazione:"
|
423 |
|
@@ -425,7 +346,8 @@ msgstr "Migrazione:"
|
|
425 |
msgid "Migration via remote storage"
|
426 |
msgstr "Migrazione tramite archiviazione remota"
|
427 |
|
428 |
-
#: admin/class-wpvivid-admin.php:1235
|
|
|
429 |
msgid "Remote Storage:"
|
430 |
msgstr "Archiviazione Remota:"
|
431 |
|
@@ -437,8 +359,10 @@ msgstr "Directory personalizzata (fornitori leader di cloud storage)"
|
|
437 |
msgid "WASABI/Pcloud (Only Pro)"
|
438 |
msgstr "WASABI/Pcloud (Solo Pro)"
|
439 |
|
440 |
-
#: admin/class-wpvivid-admin.php:1237
|
441 |
-
#: admin/class-wpvivid-admin.php:
|
|
|
|
|
442 |
msgid "Schedule:"
|
443 |
msgstr "Pianificazione:"
|
444 |
|
@@ -458,7 +382,8 @@ msgstr "Contenuti personalizzati per ogni programma"
|
|
458 |
msgid "Custom start time of schedule"
|
459 |
msgstr "Orario personalizzato di inizio del programma "
|
460 |
|
461 |
-
#: admin/class-wpvivid-admin.php:1241
|
|
|
462 |
msgid "Restore:"
|
463 |
msgstr "Ripristino:"
|
464 |
|
@@ -478,7 +403,8 @@ msgstr "Rapporti E-Mail:"
|
|
478 |
msgid "Send email reports to multiple email addresses"
|
479 |
msgstr "Invia rapporti e-mail a più indirizzi e-mail"
|
480 |
|
481 |
-
#: admin/class-wpvivid-admin.php:1244
|
|
|
482 |
msgid "Staging (add-on):"
|
483 |
msgstr "Staging (add-on):"
|
484 |
|
@@ -496,8 +422,7 @@ msgstr "Ruoli e capacità (add-on):"
|
|
496 |
|
497 |
#: admin/class-wpvivid-admin.php:1246
|
498 |
msgid "Display the individual sections according to user roles & capabilities"
|
499 |
-
msgstr ""
|
500 |
-
"Visualizza le singole sezioni in base ai ruoli e alle capacità dell'utente"
|
501 |
|
502 |
#: admin/class-wpvivid-admin.php:1247
|
503 |
msgid "Support:"
|
@@ -520,12 +445,8 @@ msgid "Unlimited"
|
|
520 |
msgstr "Illimitato"
|
521 |
|
522 |
#: admin/class-wpvivid-admin.php:1319
|
523 |
-
msgid ""
|
524 |
-
"*
|
525 |
-
"You can choose a plan at the end of the trial."
|
526 |
-
msgstr ""
|
527 |
-
"*Non è necessaria la carta di credito. La prova inizia con il piano di prova "
|
528 |
-
"gratuita con 2 siti. È possibile scegliere un piano alla fine della prova."
|
529 |
|
530 |
#: admin/class-wpvivid-admin.php:1320
|
531 |
msgid "START 14-DAY FREE TRIAL"
|
@@ -536,12 +457,8 @@ msgid "WPvivid Backup Plugin"
|
|
536 |
msgstr "WPvivid Backup Plugin"
|
537 |
|
538 |
#: admin/partials/wpvivid-admin-display.php:63
|
539 |
-
msgid ""
|
540 |
-
"
|
541 |
-
"backups, please set up it first."
|
542 |
-
msgstr ""
|
543 |
-
"Attenzione: non è disponibile uno storage remoto predefinito per i backup "
|
544 |
-
"pianificati, si prega di impostarla prima."
|
545 |
|
546 |
#: admin/partials/wpvivid-backup-restore-page-display.php:7
|
547 |
#: admin/partials/wpvivid-schedule-page-display.php:126
|
@@ -581,32 +498,16 @@ msgid "About backup download"
|
|
581 |
msgstr "Riguardo il download dei backup "
|
582 |
|
583 |
#: admin/partials/wpvivid-backup-restore-page-display.php:102
|
584 |
-
msgid ""
|
585 |
-
"->
|
586 |
-
"backup to your web server first. This may take a little time depending on "
|
587 |
-
"the size of backup files. Please be patient. Then you can download them to "
|
588 |
-
"your PC."
|
589 |
-
msgstr ""
|
590 |
-
"->Se i backup sono memorizzati nello storage remoto, il nostro plugin "
|
591 |
-
"recupererà prima il backup sul tuo server web. Questo può richiedere un po' "
|
592 |
-
"di tempo a seconda della dimensione dei file di backup. Si prega di avere "
|
593 |
-
"pazienza. Poi potrai scaricarli sul vostro PC."
|
594 |
|
595 |
#: admin/partials/wpvivid-backup-restore-page-display.php:103
|
596 |
-
msgid ""
|
597 |
-
"->
|
598 |
-
"files immediately."
|
599 |
-
msgstr ""
|
600 |
-
"->Se i backup sono memorizzati nel server web, il plugin elencherà "
|
601 |
-
"immediatamente tutti i file rilevanti."
|
602 |
|
603 |
#: admin/partials/wpvivid-backup-restore-page-display.php:109
|
604 |
-
msgid ""
|
605 |
-
"
|
606 |
-
"received backup)"
|
607 |
-
msgstr ""
|
608 |
-
"Come ripristinare il vostro sito web da un backup(programmato, manuale, "
|
609 |
-
"caricato e ricevuto)"
|
610 |
|
611 |
#: admin/partials/wpvivid-backup-restore-page-display.php:123
|
612 |
msgid "Backups"
|
@@ -635,63 +536,36 @@ msgid "Delete the selected backups"
|
|
635 |
msgstr "Elimina i backup selezionati"
|
636 |
|
637 |
#: admin/partials/wpvivid-backup-restore-page-display.php:725
|
638 |
-
msgid ""
|
639 |
-
"
|
640 |
-
"deleted permanently from your hosting (localhost) and remote storages."
|
641 |
-
msgstr ""
|
642 |
-
"Questo backup è bloccato, sei sicuro di poterlo rimuovere? Questo backup "
|
643 |
-
"sarà cancellato in modo permanente dal vostro hosting (localhost) e dai "
|
644 |
-
"magazzini remoti."
|
645 |
|
646 |
#: admin/partials/wpvivid-backup-restore-page-display.php:729
|
647 |
-
msgid ""
|
648 |
-
"
|
649 |
-
"from your hosting (localhost) and remote storages."
|
650 |
-
msgstr ""
|
651 |
-
"Sei sicuro di voler rimuovere questo backup? Questo backup verrà eliminato "
|
652 |
-
"in modo permanente dal tuo hosting (localhost) e storage remoto."
|
653 |
|
654 |
#: admin/partials/wpvivid-backup-restore-page-display.php:734
|
655 |
-
msgid ""
|
656 |
-
"
|
657 |
-
"to continue?"
|
658 |
-
msgstr ""
|
659 |
-
"Questa richiesta cancellerà il backup in fase di download, sei sicuro di "
|
660 |
-
"voler continuare?"
|
661 |
|
662 |
#: admin/partials/wpvivid-backup-restore-page-display.php:773
|
663 |
msgid "Please select at least one item."
|
664 |
msgstr "Si prega di selezionare almeno un elemento."
|
665 |
|
666 |
#: admin/partials/wpvivid-backup-restore-page-display.php:778
|
667 |
-
msgid ""
|
668 |
-
"
|
669 |
-
"to continue?"
|
670 |
-
msgstr ""
|
671 |
-
"Questa richiesta potrebbe cancellare il backup in fase di download, sei "
|
672 |
-
"sicuro di voler continuare?"
|
673 |
|
674 |
#: admin/partials/wpvivid-backup-restore-page-display.php:781
|
675 |
-
msgid ""
|
676 |
-
"
|
677 |
-
"permanently from your hosting (localhost)."
|
678 |
-
msgstr ""
|
679 |
-
"Sei sicuro di voler rimuovere il backup? Questi backup verranno eliminati in "
|
680 |
-
"modo permanente dal tuo hosting (localhost)."
|
681 |
|
682 |
#: admin/partials/wpvivid-backup-restore-page-display.php:842
|
683 |
-
msgid ""
|
684 |
-
"
|
685 |
-
"want to restore. This will bring up the restore tab"
|
686 |
-
msgstr ""
|
687 |
-
"Passo 1: Nell'elenco dei backup, fare clic sul pulsante 'Ripristina' del "
|
688 |
-
"backup che si desidera ripristinare. In questo modo si aprirà la scheda di "
|
689 |
-
"ripristino"
|
690 |
|
691 |
#: admin/partials/wpvivid-backup-restore-page-display.php:843
|
692 |
msgid "Step Two: Choose an option to complete restore, if any"
|
693 |
-
msgstr ""
|
694 |
-
"Fase Due: Scegliere una opzione per completare il ripristino, se presente"
|
695 |
|
696 |
#: admin/partials/wpvivid-backup-restore-page-display.php:844
|
697 |
msgid "Step Three: Click 'Restore' button"
|
@@ -702,29 +576,17 @@ msgid "Restore backup from:"
|
|
702 |
msgstr "Ripristino backup da:"
|
703 |
|
704 |
#: admin/partials/wpvivid-backup-restore-page-display.php:878
|
705 |
-
msgid ""
|
706 |
-
"
|
707 |
-
"running, as it could trigger some unexpected errors."
|
708 |
-
msgstr ""
|
709 |
-
"Si prega di non chiudere la pagina o di non passare ad altre pagine quando è "
|
710 |
-
"in corso un'attività di ripristino, in quanto potrebbe innescare alcuni "
|
711 |
-
"errori imprevisti."
|
712 |
|
713 |
#: admin/partials/wpvivid-backup-restore-page-display.php:879
|
714 |
-
msgid ""
|
715 |
-
"
|
716 |
-
"database and/or other content directories with the existing equivalents in "
|
717 |
-
"the selected backup."
|
718 |
-
msgstr ""
|
719 |
-
"La funzione Ripristino sostituirà i temi, i plugin, gli upload, i database "
|
720 |
-
"e/o altre directory di contenuti del sito corrente con gli equivalenti "
|
721 |
-
"esistenti nel backup selezionato."
|
722 |
|
723 |
#: admin/partials/wpvivid-backup-restore-page-display.php:882
|
724 |
#, php-format
|
725 |
msgid "Restore and replace the original domain (URL) with %s (migration)"
|
726 |
-
msgstr ""
|
727 |
-
"Ripristina e sostituisci il dominio originale (URL) con %s (migrazione)"
|
728 |
|
729 |
#: admin/partials/wpvivid-backup-restore-page-display.php:885
|
730 |
msgid "Restore and keep the original domain (URL) unchanged"
|
@@ -736,19 +598,8 @@ msgid "Tips:"
|
|
736 |
msgstr "Suggerimenti:"
|
737 |
|
738 |
#: admin/partials/wpvivid-backup-restore-page-display.php:889
|
739 |
-
msgid ""
|
740 |
-
"
|
741 |
-
"(replacing the domain name) based on the current domain name. If the domain "
|
742 |
-
"name in backup file is same as the current one, it starts restoring. On the "
|
743 |
-
"contrary, restoring backup means to replace with the current domain name. "
|
744 |
-
"The precondition is that the backup is created by version 0.9.21 or later."
|
745 |
-
msgstr ""
|
746 |
-
"Il plugin rileva automaticamente il ripristino del sito o la migrazione "
|
747 |
-
"(sostituzione del nome a dominio) in base al nome a dominio corrente. Se il "
|
748 |
-
"nome del dominio nel file di backup è uguale a quello attuale, inizia il "
|
749 |
-
"ripristino. Al contrario, ripristinare il backup significa sostituire con il "
|
750 |
-
"nome di dominio corrente. Il presupposto è che il backup venga creato dalla "
|
751 |
-
"versione 0.9.21 o successiva."
|
752 |
|
753 |
#: admin/partials/wpvivid-backup-restore-page-display.php:893
|
754 |
msgid "Terminate"
|
@@ -763,12 +614,8 @@ msgid "Retrieve the backup to localhost"
|
|
763 |
msgstr "Recupera il backup su localhost"
|
764 |
|
765 |
#: admin/partials/wpvivid-backup-restore-page-display.php:897
|
766 |
-
msgid ""
|
767 |
-
"
|
768 |
-
"it to localhost."
|
769 |
-
msgstr ""
|
770 |
-
"Il backup viene memorizzato sullo storage remoto, fai clic sul pulsante per "
|
771 |
-
"scaricarlo su localhost."
|
772 |
|
773 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1489
|
774 |
msgid "Database Size:"
|
@@ -836,12 +683,8 @@ msgid "This backup can only be deleted manually"
|
|
836 |
msgstr "Questo backup può essere cancellato solo manualmente"
|
837 |
|
838 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1787
|
839 |
-
msgid ""
|
840 |
-
"
|
841 |
-
"settings."
|
842 |
-
msgstr ""
|
843 |
-
"Le impostazioni sono solo per il backup manuale, che non influisce sulle "
|
844 |
-
"impostazioni di programmazione."
|
845 |
|
846 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1806
|
847 |
msgid "Backup Schedule"
|
@@ -906,12 +749,8 @@ msgid "Advanced Schedule"
|
|
906 |
msgstr "Pianificazione Avanzata"
|
907 |
|
908 |
#: admin/partials/wpvivid-schedule-page-display.php:85
|
909 |
-
msgid ""
|
910 |
-
"
|
911 |
-
"backups"
|
912 |
-
msgstr ""
|
913 |
-
"L'icona evidenziata indica che è stata scelta uno storage remoto per "
|
914 |
-
"memorizzare i backup"
|
915 |
|
916 |
#: admin/partials/wpvivid-schedule-page-display.php:95
|
917 |
msgid "+ Add another schedule"
|
@@ -922,13 +761,8 @@ msgid "Scheduled job will start at <strong>UTC</strong> time:"
|
|
922 |
msgstr "Il lavoro pianificato inizierà a <strong>UTC</strong> time:"
|
923 |
|
924 |
#: admin/partials/wpvivid-schedule-page-display.php:118
|
925 |
-
msgid ""
|
926 |
-
"
|
927 |
-
"will be triggered only when the site receives at least a visit at any page."
|
928 |
-
msgstr ""
|
929 |
-
"Essendo soggetto a meccanismi di PHP, un'attività di backup pianificata per "
|
930 |
-
"il vostro sito verrà attivata solo quando il sito riceverà almeno una visita "
|
931 |
-
"in qualsiasi pagina."
|
932 |
|
933 |
#: admin/partials/wpvivid-settings-page-display.php:88
|
934 |
msgid "backups retained"
|
@@ -940,53 +774,35 @@ msgstr "Funzionalità Pro: conserva più copie di backup"
|
|
940 |
|
941 |
#: admin/partials/wpvivid-settings-page-display.php:93
|
942 |
msgid "Calculate the size of files, folder and database before backing up"
|
943 |
-
msgstr ""
|
944 |
-
"Calcola la dimensione dei file, delle cartelle e del database prima di "
|
945 |
-
"eseguire il backup"
|
946 |
|
947 |
#: admin/partials/wpvivid-settings-page-display.php:99
|
948 |
msgid "Show WPvivid backup plugin on top admin bar"
|
949 |
msgstr "Mostra WPvivid backup plugin in cima all'admin bar"
|
950 |
|
951 |
#: admin/partials/wpvivid-settings-page-display.php:105
|
952 |
-
msgid ""
|
953 |
-
"
|
954 |
-
"will save great disk spaces, though takes longer time. We recommended you "
|
955 |
-
"check the option especially on sites with insufficient server resources."
|
956 |
-
msgstr ""
|
957 |
-
"Unisci tutti i file di backup in un unico pacchetto quando un backup è "
|
958 |
-
"completato. In questo modo si risparmiano grandi spazi su disco, anche se ci "
|
959 |
-
"vuole più tempo. Si consiglia di controllare l'opzione soprattutto su siti "
|
960 |
-
"con risorse server insufficienti."
|
961 |
|
962 |
#: admin/partials/wpvivid-settings-page-display.php:111
|
963 |
msgid "Keep storing the backups in localhost after uploading to remote storage"
|
964 |
-
msgstr ""
|
965 |
-
"Continua a memorizzare i backup in localhost dopo l'upload nello storage "
|
966 |
-
"remoto"
|
967 |
|
968 |
#: admin/partials/wpvivid-settings-page-display.php:116
|
969 |
msgid "Backup Folder"
|
970 |
msgstr "Cartella Di Backup"
|
971 |
|
972 |
#: admin/partials/wpvivid-settings-page-display.php:118
|
973 |
-
msgid ""
|
974 |
-
"
|
975 |
-
msgstr ""
|
976 |
-
"Dai un nome alla tua cartella, questa cartella deve essere scrivibile per la "
|
977 |
-
"creazione di file di backup."
|
978 |
|
979 |
#: admin/partials/wpvivid-settings-page-display.php:120
|
980 |
msgid "Local storage directory:"
|
981 |
msgstr "Directory di archiviazione locale:"
|
982 |
|
983 |
#: admin/partials/wpvivid-settings-page-display.php:125
|
984 |
-
msgid ""
|
985 |
-
"
|
986 |
-
"5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)"
|
987 |
-
msgstr ""
|
988 |
-
"Visualizza il dominio(url) del sito corrente nel nome di backup. (ad esempio "
|
989 |
-
"dominio_wpvivid-5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)"
|
990 |
|
991 |
#: admin/partials/wpvivid-settings-page-display.php:130
|
992 |
msgid "Remove out-of-date backups"
|
@@ -1005,29 +821,12 @@ msgid "Remove"
|
|
1005 |
msgstr "Rimuovere"
|
1006 |
|
1007 |
#: admin/partials/wpvivid-settings-page-display.php:148
|
1008 |
-
msgid ""
|
1009 |
-
"
|
1010 |
-
"(including local web server and remote storage) if they exist."
|
1011 |
-
msgstr ""
|
1012 |
-
"L'azione è irreversibile! Rimuove tutti i backup non aggiornati (incluso il "
|
1013 |
-
"server web locale e l'archiviazione remota) se presenti."
|
1014 |
|
1015 |
#: admin/partials/wpvivid-settings-page-display.php:208
|
1016 |
-
msgid ""
|
1017 |
-
"
|
1018 |
-
"href=\"https://wpvivid.com/8-best-smtp-plugins-for-wordpress.html\" "
|
1019 |
-
"style=\"text-decoration: none;\">WordPress SMTP plugin</a></strong> of your "
|
1020 |
-
"preference and configure your SMTP server first. This is because WordPress "
|
1021 |
-
"uses the PHP Mail function to send its emails by default, which is not "
|
1022 |
-
"supported by many hosts and can cause issues if it is not set properly."
|
1023 |
-
msgstr ""
|
1024 |
-
"Per utilizzare questa funzione, si prega di installare un <strong><a "
|
1025 |
-
"target=\"_blank\" href=\"https://wpvivid.com/8-best-smtp-plugins-for-"
|
1026 |
-
"wordpress.html\" style=\"text-decoration: none;\">plugin di SMTP di "
|
1027 |
-
"WordPress </a></strong> di tua preferenza e configurare prima il tuo server "
|
1028 |
-
"SMTP. Questo perché WordPress utilizza la funzione PHP Mail per inviare le "
|
1029 |
-
"sue e-mail di default, che non è supportata da molti host e può causare "
|
1030 |
-
"problemi se non è impostata correttamente."
|
1031 |
|
1032 |
#: admin/partials/wpvivid-settings-page-display.php:213
|
1033 |
msgid "Enable email report"
|
@@ -1047,8 +846,7 @@ msgstr "Invia una notifica via e-mail solo quando un backup non riesce"
|
|
1047 |
|
1048 |
#: admin/partials/wpvivid-settings-page-display.php:240
|
1049 |
msgid "Pro feature: Add another email address to get report"
|
1050 |
-
msgstr ""
|
1051 |
-
"Funzionalità Pro: aggiungi un altro indirizzo email per ottenere report"
|
1052 |
|
1053 |
#: admin/partials/wpvivid-settings-page-display.php:287
|
1054 |
msgid "Web-server disk space in use by WPvivid"
|
@@ -1082,9 +880,7 @@ msgstr "File Temporanei"
|
|
1082 |
|
1083 |
#: admin/partials/wpvivid-settings-page-display.php:318
|
1084 |
msgid "Temporary Files are created by wpvivid when restoring a website."
|
1085 |
-
msgstr ""
|
1086 |
-
"I file temporanei vengono creati da wpvivid durante il ripristino di un sito "
|
1087 |
-
"web."
|
1088 |
|
1089 |
#: admin/partials/wpvivid-settings-page-display.php:322
|
1090 |
msgid "Empty"
|
@@ -1096,21 +892,15 @@ msgstr "Esporta"
|
|
1096 |
|
1097 |
#: admin/partials/wpvivid-settings-page-display.php:425
|
1098 |
msgid "Click 'Export' button to save WPvivid settings on your local computer."
|
1099 |
-
msgstr ""
|
1100 |
-
"Clicca sul pulsante \"Esporta\" per salvare le impostazioni di WPvivid sul "
|
1101 |
-
"computer locale."
|
1102 |
|
1103 |
#: admin/partials/wpvivid-settings-page-display.php:429
|
1104 |
msgid "Import"
|
1105 |
msgstr "Importazione"
|
1106 |
|
1107 |
#: admin/partials/wpvivid-settings-page-display.php:430
|
1108 |
-
msgid ""
|
1109 |
-
"
|
1110 |
-
"wordpress site quickly."
|
1111 |
-
msgstr ""
|
1112 |
-
"L'importazione del file json può aiutare ad impostare rapidamente la "
|
1113 |
-
"configurazione di WPvivid su un altro sito WordPress."
|
1114 |
|
1115 |
#: admin/partials/wpvivid-settings-page-display.php:550
|
1116 |
msgid "Enable the option when backup failed."
|
@@ -1122,57 +912,35 @@ msgstr "Ottimizzazione speciale per il web hosting/hosting condiviso"
|
|
1122 |
|
1123 |
#: admin/partials/wpvivid-settings-page-display.php:554
|
1124 |
msgid "Enable optimization mode for web hosting/shared hosting"
|
1125 |
-
msgstr ""
|
1126 |
-
"Attiva la modalità di ottimizzazione per il web hosting/hosting condiviso"
|
1127 |
|
1128 |
#: admin/partials/wpvivid-settings-page-display.php:557
|
1129 |
-
msgid ""
|
1130 |
-
"
|
1131 |
-
"more time for backup."
|
1132 |
-
msgstr ""
|
1133 |
-
"L'attivazione di questa opzione consente di migliorare il tasso di successo "
|
1134 |
-
"del backup, ma richiede più tempo per il backup."
|
1135 |
|
1136 |
#: admin/partials/wpvivid-settings-page-display.php:564
|
1137 |
msgid "Database access method."
|
1138 |
msgstr "Metodo di accesso al database."
|
1139 |
|
1140 |
#: admin/partials/wpvivid-settings-page-display.php:569
|
1141 |
-
msgid ""
|
1142 |
-
"WPDB
|
1143 |
-
"is slower."
|
1144 |
-
msgstr ""
|
1145 |
-
"L'opzione WPDB ha una migliore compatibilità, ma la velocità di backup e "
|
1146 |
-
"ripristino è più lenta."
|
1147 |
|
1148 |
#: admin/partials/wpvivid-settings-page-display.php:575
|
1149 |
-
msgid ""
|
1150 |
-
"
|
1151 |
-
"on your server, which lets you backup and restore your site faster."
|
1152 |
-
msgstr ""
|
1153 |
-
"Si consiglia di scegliere l'opzione PDO se l'estensione pdo_mysql è "
|
1154 |
-
"installata sul vostro server, che consente di eseguire il backup e il "
|
1155 |
-
"ripristino del sito più velocemente."
|
1156 |
|
1157 |
#: admin/partials/wpvivid-settings-page-display.php:583
|
1158 |
-
msgid ""
|
1159 |
-
"
|
1160 |
-
"hosting environment."
|
1161 |
-
msgstr ""
|
1162 |
-
"Ciò comporterà un minore utilizzo della CPU e non è raccomandato in un web "
|
1163 |
-
"hosting/ ambiente di hosting condiviso."
|
1164 |
|
1165 |
#: admin/partials/wpvivid-settings-page-display.php:583
|
1166 |
msgid "Only Archive without compressing"
|
1167 |
msgstr "Solo archivio senza compressione"
|
1168 |
|
1169 |
#: admin/partials/wpvivid-settings-page-display.php:587
|
1170 |
-
msgid ""
|
1171 |
-
"
|
1172 |
-
"hosting environment."
|
1173 |
-
msgstr ""
|
1174 |
-
"Provocherà un maggiore utilizzo della CPU ed è raccomandato in un ambiente "
|
1175 |
-
"di hosting dedicato o VPS."
|
1176 |
|
1177 |
#: admin/partials/wpvivid-settings-page-display.php:587
|
1178 |
msgid "Compress and Archive"
|
@@ -1183,119 +951,61 @@ msgid "Compress Files Every"
|
|
1183 |
msgstr "Comprimi ogni File"
|
1184 |
|
1185 |
#: admin/partials/wpvivid-settings-page-display.php:599
|
1186 |
-
msgid ""
|
1187 |
-
"
|
1188 |
-
"splitting your backup into many parts is an ideal way to avoid hitting the "
|
1189 |
-
"limitation if you are running a big website. Please try to adjust the value "
|
1190 |
-
"if you are encountering backup errors. If you use a value of 0 MB, any "
|
1191 |
-
"backup files won't be split."
|
1192 |
-
msgstr ""
|
1193 |
-
"Alcuni fornitori di web hosting limitano i file zip di grandi dimensioni (ad "
|
1194 |
-
"esempio 200 MB), e quindi dividere il backup in molte parti è un modo ideale "
|
1195 |
-
"per evitare di colpire la limitazione se si esegue un grande sito web. Si "
|
1196 |
-
"prega di provare a regolare tale valore se si riscontrano errori di backup. "
|
1197 |
-
"Se si utilizza un valore di 0 MB, i file di backup non verranno divisi."
|
1198 |
|
1199 |
#: admin/partials/wpvivid-settings-page-display.php:601
|
1200 |
msgid "Exclude the files which are larger than"
|
1201 |
msgstr "Escludi i file che sono più grandi di"
|
1202 |
|
1203 |
#: admin/partials/wpvivid-settings-page-display.php:604
|
1204 |
-
msgid ""
|
1205 |
-
"
|
1206 |
-
"when backing up, '0' (zero) means unlimited."
|
1207 |
-
msgstr ""
|
1208 |
-
"Usando l'opzione si ignorerà il file più grande della dimensione determinata "
|
1209 |
-
"in MB durante il backup, '0' (zero) significa illimitato."
|
1210 |
|
1211 |
#: admin/partials/wpvivid-settings-page-display.php:606
|
1212 |
msgid "PHP script execution timeout for backup"
|
1213 |
msgstr "Timeout di esecuzione dello script PHP per il backup"
|
1214 |
|
1215 |
#: admin/partials/wpvivid-settings-page-display.php:609
|
1216 |
-
msgid ""
|
1217 |
-
"
|
1218 |
-
"exhausted, our plugin will shut the process of backup down. If the progress "
|
1219 |
-
"of backup encounters a time-out, that means you have a medium or large sized "
|
1220 |
-
"website, please try to scale the value bigger."
|
1221 |
-
msgstr ""
|
1222 |
-
"Il time-out non è il time-out del vostro server PHP. Con il tempo di "
|
1223 |
-
"esecuzione esaurito, il nostro plugin interromperà il processo di backup. Se "
|
1224 |
-
"l'avanzamento del backup incontra un time-out, ciò significa che hai un sito "
|
1225 |
-
"web di medie o grandi dimensioni, prova ad aumentare il valore."
|
1226 |
|
1227 |
#: admin/partials/wpvivid-settings-page-display.php:611
|
1228 |
msgid "PHP script execution timeout for restore"
|
1229 |
msgstr "Timeout di esecuzione dello script PHP per il ripristino"
|
1230 |
|
1231 |
#: admin/partials/wpvivid-settings-page-display.php:614
|
1232 |
-
msgid ""
|
1233 |
-
"
|
1234 |
-
"exhausted, our plugin will shut the process of restore down. If the progress "
|
1235 |
-
"of restore encounters a time-out, that means you have a medium or large "
|
1236 |
-
"sized website, please try to scale the value bigger."
|
1237 |
-
msgstr ""
|
1238 |
-
"Il time-out non è il time-out del vostro server PHP. Con il tempo di "
|
1239 |
-
"esecuzione esaurito, il nostro plugin chiuderà il processo di ripristino. Se "
|
1240 |
-
"il processo di ripristino incontra un time-out, ciò significa che avete un "
|
1241 |
-
"sito web di medie o grandi dimensioni, prova ad aumentare il valore."
|
1242 |
|
1243 |
#: admin/partials/wpvivid-settings-page-display.php:616
|
1244 |
msgid "PHP Memory Limit for backup"
|
1245 |
msgstr "Limite di memoria PHP per il backup"
|
1246 |
|
1247 |
#: admin/partials/wpvivid-settings-page-display.php:619
|
1248 |
-
msgid ""
|
1249 |
-
"
|
1250 |
-
"backup plugin to run a backup. We set this value to 256M by default. "
|
1251 |
-
"Increase the value if you encounter a memory exhausted error. Note: some web "
|
1252 |
-
"hosting providers may not support this."
|
1253 |
-
msgstr ""
|
1254 |
-
"Regola questo valore da applicare temporaneamente a PHP memory limit per "
|
1255 |
-
"WPvivid backup plugin nel processo di ripristino. Per impostazione "
|
1256 |
-
"predefinita abbiamo regolato questo valore a 256M. Aumenta il valore se si "
|
1257 |
-
"verifica un errore di memoria esaurita,. Nota: per alcuni provider di web "
|
1258 |
-
"hosting questo valore non può essere modificato."
|
1259 |
|
1260 |
#: admin/partials/wpvivid-settings-page-display.php:621
|
1261 |
msgid "PHP Memory Limit for restoration"
|
1262 |
msgstr "Limite di memoria PHP per il ripristino"
|
1263 |
|
1264 |
#: admin/partials/wpvivid-settings-page-display.php:624
|
1265 |
-
msgid ""
|
1266 |
-
"
|
1267 |
-
"backup plugin in restore process. We set this value to 256M by default. "
|
1268 |
-
"Increase the value if you encounter a memory exhausted error. Note: some web "
|
1269 |
-
"hosting providers may not support this."
|
1270 |
-
msgstr ""
|
1271 |
-
"Regola questo valore da applicare temporaneamente a PHP memory limit per "
|
1272 |
-
"WPvivid backup plugin nel processo di ripristino. Per impostazione "
|
1273 |
-
"predefinita abbiamo regolato questo valore a 256M. Aumenta il valore se si "
|
1274 |
-
"verifica un errore di memoria esaurita,. Nota: per alcuni provider di web "
|
1275 |
-
"hosting questo valore non può essere modificato."
|
1276 |
|
1277 |
#: admin/partials/wpvivid-settings-page-display.php:626
|
1278 |
msgid "Chunk Size"
|
1279 |
msgstr "Dimensione del Blocco"
|
1280 |
|
1281 |
#: admin/partials/wpvivid-settings-page-display.php:629
|
1282 |
-
msgid ""
|
1283 |
-
"
|
1284 |
-
"Decreasing this value will break the ISP's transmission limit, for example:"
|
1285 |
-
"512KB"
|
1286 |
-
msgstr ""
|
1287 |
-
"ad esempio, se si sceglie una dimensione del blocco di 2MB, un file da 8MB "
|
1288 |
-
"userà 4 blocchi. Ridurre questo valore per spezzare il limite di "
|
1289 |
-
"trasmissione ISP, ad esempio:512 KB"
|
1290 |
|
1291 |
#: admin/partials/wpvivid-settings-page-display.php:643
|
1292 |
#, php-format
|
1293 |
-
msgid ""
|
1294 |
-
"<strong>
|
1295 |
-
"error</strong>"
|
1296 |
-
msgstr ""
|
1297 |
-
"<strong>Riprovando </strong>%s<strong>volte</strong> quando si verifica un "
|
1298 |
-
"errore di timeout</strong>"
|
1299 |
|
1300 |
#: admin/partials/wpvivid-settings-page-display.php:659
|
1301 |
msgid "General Settings"
|
@@ -1306,12 +1016,8 @@ msgid "Advanced Settings"
|
|
1306 |
msgstr "Impostazioni Avanzate"
|
1307 |
|
1308 |
#: includes/class-wpvivid-backup-uploader.php:493
|
1309 |
-
msgid ""
|
1310 |
-
"
|
1311 |
-
"directory"
|
1312 |
-
msgstr ""
|
1313 |
-
"Suggerimenti: Fare clic sul pulsante qui sotto per scansionare tutti i "
|
1314 |
-
"backup caricati o ricevuti nella directory"
|
1315 |
|
1316 |
#: includes/class-wpvivid-backup-uploader.php:496
|
1317 |
msgid "Scan uploaded backup or received backup"
|
@@ -1345,8 +1051,7 @@ msgstr "tempo di esecuzione: "
|
|
1345 |
#: includes/class-wpvivid-backup.php:1133
|
1346 |
#: includes/class-wpvivid-function-realize.php:42
|
1347 |
msgid "The backup will be canceled after backing up the current chunk ends."
|
1348 |
-
msgstr ""
|
1349 |
-
"Il backup sarà annullato dopo aver eseguito il backup delle parti correnti."
|
1350 |
|
1351 |
#: includes/class-wpvivid-backup.php:2256
|
1352 |
#, php-format
|
@@ -1373,12 +1078,8 @@ msgid "Learn more"
|
|
1373 |
msgstr "Per saperne di più"
|
1374 |
|
1375 |
#: includes/class-wpvivid-export-import.php:124
|
1376 |
-
msgid ""
|
1377 |
-
"
|
1378 |
-
"(original images, featured images and thumbnails)."
|
1379 |
-
msgstr ""
|
1380 |
-
"Questo conterrà tutti i vostri post, pagine, commenti, termini e immagini "
|
1381 |
-
"(immagini originali, immagini in primo piano e miniature)."
|
1382 |
|
1383 |
#: includes/class-wpvivid-export-import.php:125
|
1384 |
#: includes/class-wpvivid-export-import.php:1518
|
@@ -1386,19 +1087,13 @@ msgid "Note:"
|
|
1386 |
msgstr "Nota:"
|
1387 |
|
1388 |
#: includes/class-wpvivid-export-import.php:125
|
1389 |
-
msgid ""
|
1390 |
-
"
|
1391 |
-
"(typically presented as a timeout error)."
|
1392 |
-
msgstr ""
|
1393 |
-
"Provare a selezionare un numero inferiore di elementi quando si trovano di "
|
1394 |
-
"fronte a una carenza di risorse del server (in genere presentato come un "
|
1395 |
-
"errore di timeout)."
|
1396 |
|
1397 |
#: includes/class-wpvivid-export-import.php:135
|
1398 |
#, php-format
|
1399 |
msgid "Exported files will be temporarily stored in %s directory"
|
1400 |
-
msgstr ""
|
1401 |
-
"I file esportati saranno temporaneamente memorizzati nella directory %s"
|
1402 |
|
1403 |
#: includes/class-wpvivid-export-import.php:141
|
1404 |
msgid "Choose post type"
|
@@ -1497,25 +1192,16 @@ msgstr "Post id vuoto "
|
|
1497 |
|
1498 |
#: includes/class-wpvivid-export-import.php:1123
|
1499 |
#: includes/class-wpvivid-export-import.php:1159
|
1500 |
-
msgid ""
|
1501 |
-
"
|
1502 |
-
"and try again."
|
1503 |
-
msgstr ""
|
1504 |
-
"Un task è già in esecuzione. Si prega di attendere fino a quando il task in "
|
1505 |
-
"esecuzione sia completato, e di provare di nuovo."
|
1506 |
|
1507 |
#: includes/class-wpvivid-export-import.php:1149
|
1508 |
-
msgid ""
|
1509 |
-
"
|
1510 |
-
"again."
|
1511 |
-
msgstr ""
|
1512 |
-
"Si è verificato un errore durante l'analisi dei dati della richiesta. Si "
|
1513 |
-
"prega di provare a eseguire di nuovo l'attività di esportazione."
|
1514 |
|
1515 |
#: includes/class-wpvivid-export-import.php:1304
|
1516 |
msgid "Ready to export. Progress: 0%, running time: 0second."
|
1517 |
-
msgstr ""
|
1518 |
-
"Pronto per l'esportazione. Progressi: 0%, tempo di esecuzione: 0 secondi."
|
1519 |
|
1520 |
#: includes/class-wpvivid-export-import.php:1316
|
1521 |
msgid "The export task is not responding."
|
@@ -1542,20 +1228,13 @@ msgid "Import posts or pages with images in bulk."
|
|
1542 |
msgstr "Importa in massa post o pagine con immagini."
|
1543 |
|
1544 |
#: includes/class-wpvivid-export-import.php:1519
|
1545 |
-
msgid ""
|
1546 |
-
"
|
1547 |
-
"importing and exporting sites have the same environment, for example, same "
|
1548 |
-
"theme or pages built with the same page builder."
|
1549 |
-
msgstr ""
|
1550 |
-
"Per visualizzare correttamente il contenuto importato, si prega di "
|
1551 |
-
"assicurarsi che l'importazione e l'esportazione siti abbiano lo stesso "
|
1552 |
-
"ambiente, per esempio, lo stesso tema o pagine costruite con lo page-builder."
|
1553 |
|
1554 |
#: includes/class-wpvivid-export-import.php:1528
|
1555 |
#, php-format
|
1556 |
msgid "Imported files will be temporarily stored in directory %s"
|
1557 |
-
msgstr ""
|
1558 |
-
"I file importati saranno temporaneamente memorizzati nella directory %s"
|
1559 |
|
1560 |
#: includes/class-wpvivid-export-import.php:1529
|
1561 |
msgid "Delete Exported Files In Folder"
|
@@ -1571,13 +1250,8 @@ msgstr "Carica e Importa"
|
|
1571 |
|
1572 |
#: includes/class-wpvivid-export-import.php:1538
|
1573 |
#, php-format
|
1574 |
-
msgid ""
|
1575 |
-
"
|
1576 |
-
"button below to scan the file to import."
|
1577 |
-
msgstr ""
|
1578 |
-
"Oppure puoi usare ftp per caricare il file di esportazione nella directory "
|
1579 |
-
"%s. Quindi clicca sul pulsante qui sotto per scansionare il file da "
|
1580 |
-
"importare."
|
1581 |
|
1582 |
#: includes/class-wpvivid-export-import.php:1539
|
1583 |
msgid "Scan Uploaded Exports"
|
@@ -1608,12 +1282,8 @@ msgid "Overwrite existing pages"
|
|
1608 |
msgstr "Sovrascrivere le pagine esistenti"
|
1609 |
|
1610 |
#: includes/class-wpvivid-export-import.php:1559
|
1611 |
-
msgid ""
|
1612 |
-
"
|
1613 |
-
"with the updated ones in an import."
|
1614 |
-
msgstr ""
|
1615 |
-
"Con questa opzione selezionata, le pagine/pubbliche già esistenti saranno "
|
1616 |
-
"sovrascritte con quelle aggiornate in un'importazione."
|
1617 |
|
1618 |
#: includes/class-wpvivid-export-import.php:1561
|
1619 |
msgid "Start to Import"
|
@@ -1690,12 +1360,8 @@ msgstr "Ultima pagina"
|
|
1690 |
|
1691 |
#: includes/class-wpvivid-function-realize.php:65
|
1692 |
#: includes/class-wpvivid-function-realize.php:93
|
1693 |
-
msgid ""
|
1694 |
-
"
|
1695 |
-
"later."
|
1696 |
-
msgstr ""
|
1697 |
-
"Il recupero delle informazioni di backup non è riuscito mentre si mostrava "
|
1698 |
-
"il log. Riprovare più tardi."
|
1699 |
|
1700 |
#: includes/class-wpvivid-function-realize.php:70
|
1701 |
#: includes/class-wpvivid-function-realize.php:82
|
@@ -1730,8 +1396,7 @@ msgstr "Il File non esiste, file:"
|
|
1730 |
#: includes/class-wpvivid-importer.php:1676
|
1731 |
#: includes/class-wpvivid-importer.php:1777
|
1732 |
msgid "Sorry, this file type is not permitted for security reasons."
|
1733 |
-
msgstr ""
|
1734 |
-
"Mi dispiace, questo tipo di file non è consentito per motivi di sicurezza."
|
1735 |
|
1736 |
#: includes/class-wpvivid-importer.php:1724
|
1737 |
msgid "Fetching attachments is not enabled"
|
@@ -1752,30 +1417,19 @@ msgid "There was an error when reading this WXR file"
|
|
1752 |
msgstr "Si è verificato un errore durante la lettura di questo file WXR"
|
1753 |
|
1754 |
#: includes/class-wpvivid-importer.php:1878
|
1755 |
-
msgid ""
|
1756 |
-
"
|
1757 |
-
"parser..."
|
1758 |
-
msgstr ""
|
1759 |
-
"I dettagli sono riportati sopra. L'importatore ora riproverà con un altro "
|
1760 |
-
"parser..."
|
1761 |
|
1762 |
#: includes/class-wpvivid-importer.php:1925
|
1763 |
#: includes/class-wpvivid-importer.php:1930
|
1764 |
#: includes/class-wpvivid-importer.php:2155
|
1765 |
#: includes/class-wpvivid-importer.php:2351
|
1766 |
-
msgid ""
|
1767 |
-
"
|
1768 |
-
msgstr ""
|
1769 |
-
"Questo non sembra essere un file WXR, numero di versione WXR mancante/non "
|
1770 |
-
"valido"
|
1771 |
|
1772 |
#: includes/class-wpvivid-interface-mainwp.php:138
|
1773 |
-
msgid ""
|
1774 |
-
"
|
1775 |
-
"again."
|
1776 |
-
msgstr ""
|
1777 |
-
"Si è verificato un errore durante l'analisi dei dati della richiesta. Si "
|
1778 |
-
"prega di provare a eseguire di nuovo il backup."
|
1779 |
|
1780 |
#: includes/class-wpvivid-interface-mainwp.php:182
|
1781 |
#: includes/class-wpvivid-interface-mainwp.php:220
|
@@ -1789,9 +1443,7 @@ msgstr "La lettura del registro dei log non è riuscita. Riprovare."
|
|
1789 |
|
1790 |
#: includes/class-wpvivid-mail-report.php:558
|
1791 |
msgid "Unable to send email. Please check the configuration of email server."
|
1792 |
-
msgstr ""
|
1793 |
-
"Impossibile inviare e-mail. Si prega di controllare la configurazione del "
|
1794 |
-
"server di posta elettronica."
|
1795 |
|
1796 |
#: includes/class-wpvivid-migrate.php:49
|
1797 |
msgid "Auto-Migration"
|
@@ -1802,28 +1454,16 @@ msgid "Key"
|
|
1802 |
msgstr "Chiave"
|
1803 |
|
1804 |
#: includes/class-wpvivid-migrate.php:390
|
1805 |
-
msgid ""
|
1806 |
-
"
|
1807 |
-
"generate a key below. Once the key is generated, this site is ready to "
|
1808 |
-
"receive a backup from another site. Then, please copy and paste the key in "
|
1809 |
-
"sending site and save it."
|
1810 |
-
msgstr ""
|
1811 |
-
"Per consentire ad un altro sito di inviare un backup a questo sito, si prega "
|
1812 |
-
"di generare una chiave qui sotto. Una volta generata la chiave, questo sito "
|
1813 |
-
"è pronto a ricevere un backup da un altro sito. Quindi, si prega di copiare "
|
1814 |
-
"e incollare la chiave nel sito di invio e salvarla."
|
1815 |
|
1816 |
#: includes/class-wpvivid-migrate.php:392
|
1817 |
msgid "The key will expire in "
|
1818 |
msgstr "La chiave scadrà in "
|
1819 |
|
1820 |
#: includes/class-wpvivid-migrate.php:399
|
1821 |
-
msgid ""
|
1822 |
-
"
|
1823 |
-
"the key."
|
1824 |
-
msgstr ""
|
1825 |
-
"Suggerimenti: Per motivi di sicurezza, si prega di scegliere un tempo di "
|
1826 |
-
"scadenza appropriato per la chiave."
|
1827 |
|
1828 |
#: includes/class-wpvivid-migrate.php:401
|
1829 |
msgid "Generate"
|
@@ -1843,31 +1483,19 @@ msgstr "Salva"
|
|
1843 |
|
1844 |
#: includes/class-wpvivid-migrate.php:969
|
1845 |
msgid "1. Visit Key tab page of WPvivid backup plugin of destination site."
|
1846 |
-
msgstr ""
|
1847 |
-
"1. Visita la scheda Chiave nella pagina di WPvivid backup plugin del sito di "
|
1848 |
-
"destinazione."
|
1849 |
|
1850 |
#: includes/class-wpvivid-migrate.php:970
|
1851 |
msgid "2. Generate a key by clicking Generate button and copy it."
|
1852 |
msgstr "2. Genera una chiave cliccando il pulsante Genera e copialo."
|
1853 |
|
1854 |
#: includes/class-wpvivid-migrate.php:971
|
1855 |
-
msgid ""
|
1856 |
-
"3.
|
1857 |
-
"Save button."
|
1858 |
-
msgstr ""
|
1859 |
-
"3. Torna a questa pagina e incolla il codice nella casella chiave "
|
1860 |
-
"sottostante. Infine, fai clic su Salva."
|
1861 |
|
1862 |
#: includes/class-wpvivid-migrate.php:985
|
1863 |
-
msgid ""
|
1864 |
-
"
|
1865 |
-
"would be a convenient way to migrate your WP site from dev environment to "
|
1866 |
-
"live server or from old server to the new."
|
1867 |
-
msgstr ""
|
1868 |
-
"La funzione può aiutare a trasferire un sito Wordpress su un nuovo dominio "
|
1869 |
-
"(sito). Sarebbe un modo conveniente per migrare il vostro sito WP "
|
1870 |
-
"dall'ambiente dev al live server o dal vecchio server al nuovo."
|
1871 |
|
1872 |
#: includes/class-wpvivid-migrate.php:995
|
1873 |
msgid "Choose the content you want to transfer"
|
@@ -1882,100 +1510,49 @@ msgid "Note: "
|
|
1882 |
msgstr "Nota: "
|
1883 |
|
1884 |
#: includes/class-wpvivid-migrate.php:1091
|
1885 |
-
msgid ""
|
1886 |
-
"1.
|
1887 |
-
"<a href=\"https://wpvivid.com/best-redirect-plugins.html\" target=\"_blank\" "
|
1888 |
-
"style=\"text-decoration: none;\">301 redirect plugin</a>, <a href=\"https:"
|
1889 |
-
"//wpvivid.com/8-best-wordpress-firewall-plugins.html\" target=\"_blank\" "
|
1890 |
-
"style=\"text-decoration: none;\">firewall and security plugin</a>, and <a "
|
1891 |
-
"href=\"https://wpvivid.com/best-free-wordpress-caching-plugins.html\" "
|
1892 |
-
"target=\"_blank\" style=\"text-decoration: none;\">caching plugin</a> (if "
|
1893 |
-
"they exist) before transferring website."
|
1894 |
-
msgstr ""
|
1895 |
-
"1. Per completare con successo la migrazione, è meglio disattivare <a "
|
1896 |
-
"href=\"https://wpvivid.com/best-redirect-plugins.html\" target=\"_blank\" "
|
1897 |
-
"style=\"text-decoration: none;\">plugin di reindirizzamento 301</a>, <a "
|
1898 |
-
"href=\"https://wpvivid.com/8-best-wordpress-firewall-plugins. html\" "
|
1899 |
-
"target=\"_blank\" style=\"text-decoration: nessuno;\">firewall e plugin di "
|
1900 |
-
"sicurezza</a>, e <a href=\"https://wpvivid.com/best-free-wordpress-caching-"
|
1901 |
-
"plugins.html\" target=\"_blank\" style=\"text-decoration: nessuno;\">plugin "
|
1902 |
-
"di caching</a> (se esistono) prima di trasferire il sito web."
|
1903 |
|
1904 |
#: includes/class-wpvivid-migrate.php:1092
|
1905 |
-
msgid ""
|
1906 |
-
"2.
|
1907 |
-
"Flywheel</strong> environment."
|
1908 |
-
msgstr ""
|
1909 |
-
"2. Si prega di migrare sito web manualmente quando si utilizza <strong>Local "
|
1910 |
-
"by Flywheel</strong>."
|
1911 |
|
1912 |
#: includes/class-wpvivid-migrate.php:1098
|
1913 |
-
msgid ""
|
1914 |
-
"<strong>
|
1915 |
-
"failure of files transfer. In this case, uploading backups to destination "
|
1916 |
-
"site is a good alternative to the automatic website migration."
|
1917 |
-
msgstr ""
|
1918 |
-
"<strong>Suggerimenti: </strong>La connessione instabile tra i siti potrebbe "
|
1919 |
-
"causare un fallimento del trasferimento dei file. In questo caso, il "
|
1920 |
-
"caricamento del backup sul sito di destinazione è una buona alternativa alla "
|
1921 |
-
"migrazione automatica del sito web."
|
1922 |
|
1923 |
#: includes/class-wpvivid-migrate.php:1099
|
1924 |
-
msgid ""
|
1925 |
-
"
|
1926 |
-
"backup plugin?"
|
1927 |
-
msgstr ""
|
1928 |
-
"Come migrare manualmente il sito Wordpress su un nuovo dominio (sito) con il "
|
1929 |
-
"plugin di backup WPvivid?"
|
1930 |
|
1931 |
#: includes/class-wpvivid-migrate.php:1100
|
1932 |
msgid "1. Download a backup in backups list to your computer."
|
1933 |
msgstr "1. Scarica un backup dall'elenco di backup sul tuo computer."
|
1934 |
|
1935 |
#: includes/class-wpvivid-migrate.php:1101
|
1936 |
-
msgid ""
|
1937 |
-
"2.
|
1938 |
-
"use:"
|
1939 |
-
msgstr ""
|
1940 |
-
"2. Carica il backup del sito di destinazione. Ci sono due modi disponibili:"
|
1941 |
|
1942 |
#: includes/class-wpvivid-migrate.php:1102
|
1943 |
-
msgid ""
|
1944 |
-
"2.1
|
1945 |
-
"destination site."
|
1946 |
-
msgstr ""
|
1947 |
-
"2.1 Carica il backup nella sezione di caricamento di WPvivid backup plugin "
|
1948 |
-
"nel sito di destinazione."
|
1949 |
|
1950 |
#: includes/class-wpvivid-migrate.php:1103
|
1951 |
#, php-format
|
1952 |
-
msgid ""
|
1953 |
-
"2.2
|
1954 |
-
"site, then click <strong>Scan uploaded backup or received backup</strong> "
|
1955 |
-
"button."
|
1956 |
-
msgstr ""
|
1957 |
-
"2.2 Carica il backup tramite client FTP nella directory di backup %s del "
|
1958 |
-
"sito di destinazione, quindi fai clic sul pulsante <strong>Scan backup "
|
1959 |
-
"caricato o backup ricevuto</strong>."
|
1960 |
|
1961 |
#: includes/class-wpvivid-migrate.php:1104
|
1962 |
-
msgid ""
|
1963 |
-
"3.
|
1964 |
-
msgstr ""
|
1965 |
-
"3. Una volta fatto, il backup viene visualizzato nell'elenco dei backup. "
|
1966 |
-
"Quindi, ripristina il backup."
|
1967 |
|
1968 |
#: includes/class-wpvivid-migrate.php:1124
|
1969 |
msgid "Choose what to migrate"
|
1970 |
msgstr "Scegli ciò che vuoi migrare"
|
1971 |
|
1972 |
#: includes/class-wpvivid-migrate.php:1185
|
1973 |
-
msgid ""
|
1974 |
-
"
|
1975 |
-
"display the backup, then restore the backup."
|
1976 |
-
msgstr ""
|
1977 |
-
"Il trasferimento è riuscito. Si prega di scansione l'elenco di backup del "
|
1978 |
-
"sito di destinazione per visualizzare il backup e poi ripristinare il backup."
|
1979 |
|
1980 |
#: includes/class-wpvivid-migrate.php:1245
|
1981 |
msgid "Upload"
|
@@ -1987,14 +1564,8 @@ msgid "The backups will be uploaded to %s directory."
|
|
1987 |
msgstr "I backup verranno caricati nella directory %s."
|
1988 |
|
1989 |
#: includes/class-wpvivid-migrate.php:1258
|
1990 |
-
msgid ""
|
1991 |
-
"
|
1992 |
-
"backup plugin. Make sure that uploading every part of a backup to the "
|
1993 |
-
"directory if the backup is split into many parts"
|
1994 |
-
msgstr ""
|
1995 |
-
"Nota: I file che si desidera caricare devono essere un backup creato dal "
|
1996 |
-
"plugin di backup di WPvivid. Assicurarsi di aver caricato ogni parte del "
|
1997 |
-
"backup nella directory se il backup è suddiviso in più parti"
|
1998 |
|
1999 |
#: includes/class-wpvivid-schedule.php:34
|
2000 |
msgid "12 Hours"
|
@@ -2027,66 +1598,55 @@ msgstr "12 ore"
|
|
2027 |
#: includes/class-wpvivid-schedule.php:282
|
2028 |
#: includes/class-wpvivid-schedule.php:296
|
2029 |
msgid "Creating scheduled tasks failed. Please try again later."
|
2030 |
-
msgstr ""
|
2031 |
-
"Creazione di attività pianificate non riuscita. Si prega di riprovare più "
|
2032 |
-
"tardi."
|
2033 |
|
2034 |
-
#: includes/class-wpvivid.php:507
|
|
|
2035 |
msgid "A backup type is required."
|
2036 |
msgstr "È richiesto un tipo di backup."
|
2037 |
|
2038 |
-
#: includes/class-wpvivid.php:521
|
|
|
2039 |
msgid "Choose at least one storage location for backups."
|
2040 |
msgstr "Scegli almeno una posizione di archiviazione per il backup."
|
2041 |
|
2042 |
-
#: includes/class-wpvivid.php:541
|
|
|
2043 |
msgid "There is no default remote storage configured. Please set it up first."
|
2044 |
-
msgstr ""
|
2045 |
-
"Non è stata configurata una memoria remota predefinita. Si prega di "
|
2046 |
-
"impostarla prima."
|
2047 |
|
2048 |
-
#: includes/class-wpvivid.php:1408
|
2049 |
-
#: includes/class-wpvivid.php:
|
|
|
|
|
2050 |
#: includes/class-wpvivid.php:1701
|
2051 |
msgid "Too many resumption attempts."
|
2052 |
msgstr "Troppi tentativi di ripresa."
|
2053 |
|
2054 |
-
#: includes/class-wpvivid.php:1589
|
|
|
2055 |
msgid "Task timed out."
|
2056 |
msgstr "Task è scaduto."
|
2057 |
|
2058 |
#: includes/class-wpvivid.php:2479
|
2059 |
-
msgid ""
|
2060 |
-
"
|
2061 |
-
"backup(s). Please try again later."
|
2062 |
-
msgstr ""
|
2063 |
-
"Il recupero delle informazioni del backup non è riuscito mentre si "
|
2064 |
-
"cancellavano i backup selezionati. Riprovare più tardi."
|
2065 |
|
2066 |
#: includes/class-wpvivid.php:2489
|
2067 |
-
msgid ""
|
2068 |
-
"
|
2069 |
-
msgstr ""
|
2070 |
-
"Non è possibile cancellare il backup bloccato. Si prega di sbloccarlo prima "
|
2071 |
-
"e provare di nuovo."
|
2072 |
|
2073 |
#: includes/class-wpvivid.php:2592
|
2074 |
msgid "You have successfully added a remote storage."
|
2075 |
msgstr "Hai aggiunto con successo uno storage remoto."
|
2076 |
|
2077 |
#: includes/class-wpvivid.php:2644
|
2078 |
-
msgid ""
|
2079 |
-
"
|
2080 |
-
"Please try again."
|
2081 |
-
msgstr ""
|
2082 |
-
"Impossibile cancellare lo storage remoto, non è possibile recuperare le "
|
2083 |
-
"informazioni sulla storage. Si prega di riprovare."
|
2084 |
|
2085 |
#: includes/class-wpvivid.php:2672
|
2086 |
msgid "Failed to get the remote storage information. Please try again later."
|
2087 |
-
msgstr ""
|
2088 |
-
"Impossibile ottenere le informazioni di archiviazione remota. Si prega di "
|
2089 |
-
"riprovare più tardi."
|
2090 |
|
2091 |
#: includes/class-wpvivid.php:3416
|
2092 |
msgid "restore failed error unknown"
|
@@ -2094,11 +1654,10 @@ msgstr "ripristino non riuscito errore sconosciuto"
|
|
2094 |
|
2095 |
#: includes/class-wpvivid.php:3449
|
2096 |
msgid "The restore file not found. Please verify the file exists."
|
2097 |
-
msgstr ""
|
2098 |
-
"Il file di ripristino non è stato trovato. Si prega di verificare che il "
|
2099 |
-
"file esista."
|
2100 |
|
2101 |
-
#: includes/class-wpvivid.php:3561
|
|
|
2102 |
msgid "The last backup message not found."
|
2103 |
msgstr "L'ultimo messaggio di backup non è stato trovato."
|
2104 |
|
@@ -2108,14 +1667,8 @@ msgstr "Ultimo Backup: "
|
|
2108 |
|
2109 |
#: includes/class-wpvivid.php:3677
|
2110 |
#, php-format
|
2111 |
-
msgid ""
|
2112 |
-
"%d
|
2113 |
-
"onclick=\"wpvivid_click_switch_page('wrap', 'wpvivid_tab_log', true);\">"
|
2114 |
-
"Log</a> page to check the details."
|
2115 |
-
msgstr ""
|
2116 |
-
"%d I task di backup sono stati completati.. Vai alla <a href=\"#\" "
|
2117 |
-
"onclick=\"wpvivid_click_switch_page('wrap', 'wpvivid_tab_log', true);\">"
|
2118 |
-
"Pagina di Log</a> per controllare i dettagli."
|
2119 |
|
2120 |
#: includes/class-wpvivid.php:3770
|
2121 |
msgid "Getting backup directory failed. Please try again later."
|
@@ -2133,19 +1686,23 @@ msgstr "I file spazzatura selezionati sono stati cancellati."
|
|
2133 |
msgid "Choose one storage from the list to be the default storage."
|
2134 |
msgstr "Scegli uno storage dalla lista come storage predefinito."
|
2135 |
|
2136 |
-
#: includes/class-wpvivid.php:4465
|
|
|
2137 |
msgid "The maximum zip file size is required."
|
2138 |
msgstr "È richiesta la dimensione massima del file zip."
|
2139 |
|
2140 |
-
#: includes/class-wpvivid.php:4479
|
|
|
2141 |
msgid "The size for excluded files is required."
|
2142 |
msgstr "È richiesta la dimensione per i file esclusi."
|
2143 |
|
2144 |
-
#: includes/class-wpvivid.php:4492
|
|
|
2145 |
msgid "The maximum execution time for PHP script is required."
|
2146 |
msgstr "È richiesto il tempo di esecuzione massimo per gli script PHP."
|
2147 |
|
2148 |
-
#: includes/class-wpvivid.php:4505
|
|
|
2149 |
msgid "The local storage path is required."
|
2150 |
msgstr "È necessario il percorso di storage locale."
|
2151 |
|
@@ -2153,22 +1710,14 @@ msgstr "È necessario il percorso di storage locale."
|
|
2153 |
msgid "An email address is required."
|
2154 |
msgstr "Un indirizzo e-mail è obbligatorio."
|
2155 |
|
2156 |
-
#: includes/class-wpvivid.php:4531
|
2157 |
-
|
2158 |
-
"The pdo_mysql extension is not detected. Please install the extension first "
|
2159 |
-
"
|
2160 |
-
msgstr ""
|
2161 |
-
"L'estensione pdo_mysql non viene rilevata. Si prega di installare prima "
|
2162 |
-
"l'estensione o di scegliere l'opzione wpdb per il metodo di connessione al "
|
2163 |
-
"database."
|
2164 |
|
2165 |
#: includes/class-wpvivid.php:4654
|
2166 |
-
msgid ""
|
2167 |
-
"
|
2168 |
-
"right file."
|
2169 |
-
msgstr ""
|
2170 |
-
"Il file selezionato non è il file di impostazione di WPvivid. Si prega di "
|
2171 |
-
"caricare il file giusto."
|
2172 |
|
2173 |
#: includes/class-wpvivid.php:4676
|
2174 |
msgid "Invalid email address"
|
@@ -2183,12 +1732,8 @@ msgid "Save backups on localhost (web server)"
|
|
2183 |
msgstr "Salva i backup su localhost (server web)"
|
2184 |
|
2185 |
#: includes/class-wpvivid.php:5406
|
2186 |
-
msgid ""
|
2187 |
-
"
|
2188 |
-
"deleted after uploading to remote storage completely)"
|
2189 |
-
msgstr ""
|
2190 |
-
"Invia i backup allo storage remoto (scegli questa opzione, il backup locale "
|
2191 |
-
"verrà cancellato dopo averlo caricato completamente nello storage remoto)"
|
2192 |
|
2193 |
#: includes/class-wpvivid.php:5571
|
2194 |
msgid "User's email address is required."
|
@@ -2220,12 +1765,8 @@ msgstr "Inserisci un alias univoco: ad esempio, Amazon S3-001"
|
|
2220 |
#: includes/customclass/class-wpvivid-ftpclass.php:184
|
2221 |
#: includes/customclass/class-wpvivid-google-drive.php:319
|
2222 |
#: includes/customclass/class-wpvivid-google-drive.php:447
|
2223 |
-
msgid ""
|
2224 |
-
"
|
2225 |
-
"connected."
|
2226 |
-
msgstr ""
|
2227 |
-
"Un nome per aiutarti a identificare lo storage se hai collegato più storage "
|
2228 |
-
"remoti."
|
2229 |
|
2230 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:82
|
2231 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:220
|
@@ -2265,9 +1806,7 @@ msgstr "Nome del Bucket di Amazon S3 (ad esempio, test)"
|
|
2265 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:111
|
2266 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:249
|
2267 |
msgid "Enter an existed Bucket to create a custom backup storage directory."
|
2268 |
-
msgstr ""
|
2269 |
-
"Inserisci un Bucket esistente per creare una directory di archiviazione di "
|
2270 |
-
"backup personalizzata."
|
2271 |
|
2272 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:118
|
2273 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:256
|
@@ -2276,11 +1815,8 @@ msgstr "Percorso Personalizzato"
|
|
2276 |
|
2277 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:123
|
2278 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:261
|
2279 |
-
msgid ""
|
2280 |
-
"
|
2281 |
-
msgstr ""
|
2282 |
-
"Personalizza la directory in cui si desidera archiviare i backup all'interno "
|
2283 |
-
"del Bucket."
|
2284 |
|
2285 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:131
|
2286 |
#: includes/customclass/class-wpvivid-dropbox.php:509
|
@@ -2293,12 +1829,8 @@ msgstr "Impostato come storage remoto predefinito."
|
|
2293 |
#: includes/customclass/class-wpvivid-dropbox.php:515
|
2294 |
#: includes/customclass/class-wpvivid-ftpclass.php:131
|
2295 |
#: includes/customclass/class-wpvivid-google-drive.php:357
|
2296 |
-
msgid ""
|
2297 |
-
"
|
2298 |
-
"will be uploaded to this storage by default."
|
2299 |
-
msgstr ""
|
2300 |
-
"Una volta spuntati, tutti i backup di questi siti inviati a una destinazione "
|
2301 |
-
"di archiviazione remota saranno caricati in questo storage di default."
|
2302 |
|
2303 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:145
|
2304 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:269
|
@@ -2307,12 +1839,8 @@ msgstr "Classe di storage: Standard (accesso non frequente)."
|
|
2307 |
|
2308 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:151
|
2309 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:275
|
2310 |
-
msgid ""
|
2311 |
-
"
|
2312 |
-
" storage class for data transfer."
|
2313 |
-
msgstr ""
|
2314 |
-
"Seleziona l'opzione per utilizzare la classe di archiviazione Amazon S3 "
|
2315 |
-
"Standard-Infrequent Access (S3 Standard-IA) per il trasferimento dei dati."
|
2316 |
|
2317 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:159
|
2318 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:283
|
@@ -2321,11 +1849,8 @@ msgstr "Crittografia Lato Server."
|
|
2321 |
|
2322 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:165
|
2323 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:289
|
2324 |
-
msgid ""
|
2325 |
-
"
|
2326 |
-
msgstr ""
|
2327 |
-
"Seleziona l'opzione per utilizzare la crittazione lato server di Amazon S3 "
|
2328 |
-
"per proteggere i dati."
|
2329 |
|
2330 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:173
|
2331 |
#: includes/customclass/class-wpvivid-ftpclass.php:153
|
@@ -2333,19 +1858,12 @@ msgid "Test and Add"
|
|
2333 |
msgstr "Testa e Aggiungi"
|
2334 |
|
2335 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:178
|
2336 |
-
msgid ""
|
2337 |
-
"
|
2338 |
-
"list below."
|
2339 |
-
msgstr ""
|
2340 |
-
"Clicca il pulsante per connetterti allo storage di Amazon S3 e aggiungerlo "
|
2341 |
-
"alla lista degli storage qui di seguito."
|
2342 |
|
2343 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:187
|
2344 |
-
msgid ""
|
2345 |
-
"
|
2346 |
-
msgstr ""
|
2347 |
-
"L'estensione simplexml non viene rilevata. Si prega di installare prima "
|
2348 |
-
"l'estensione."
|
2349 |
|
2350 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:302
|
2351 |
#: includes/customclass/class-wpvivid-dropbox.php:614
|
@@ -2368,15 +1886,8 @@ msgid "Dropbox"
|
|
2368 |
msgstr "Dropbox"
|
2369 |
|
2370 |
#: includes/customclass/class-wpvivid-dropbox.php:462
|
2371 |
-
msgid ""
|
2372 |
-
"
|
2373 |
-
"style=\"text-decoration: none;\">this privacy policy</a> for use of our "
|
2374 |
-
"Dropbox authorization app (none of your backup data is sent to us)."
|
2375 |
-
msgstr ""
|
2376 |
-
"Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-"
|
2377 |
-
"policy\" style=\"text-decoration: none;\">questa informativa sulla "
|
2378 |
-
"privacy</a> per l'utilizzo della nostra applicazione di autorizzazione per "
|
2379 |
-
"Dropbox (nessuno dei dati di backup viene inviato a noi)."
|
2380 |
|
2381 |
#: includes/customclass/class-wpvivid-dropbox.php:465
|
2382 |
#: includes/customclass/class-wpvivid-dropbox.php:590
|
@@ -2403,12 +1914,8 @@ msgid "Authenticate with Dropbox"
|
|
2403 |
msgstr "Autenticati con Dropbox"
|
2404 |
|
2405 |
#: includes/customclass/class-wpvivid-dropbox.php:527
|
2406 |
-
msgid ""
|
2407 |
-
"
|
2408 |
-
"list below."
|
2409 |
-
msgstr ""
|
2410 |
-
"Clicca il pulsante per ottenere il codice di autenticazione di Dropbox e "
|
2411 |
-
"aggiungerlo alla lista degli storage qui di seguito."
|
2412 |
|
2413 |
#: includes/customclass/class-wpvivid-ftpclass.php:36
|
2414 |
msgid "FTP"
|
@@ -2465,58 +1972,32 @@ msgstr "Un percorso assoluto deve esistere(per esempio, /home/nomeutente)"
|
|
2465 |
|
2466 |
#: includes/customclass/class-wpvivid-ftpclass.php:117
|
2467 |
#: includes/customclass/class-wpvivid-ftpclass.php:232
|
2468 |
-
msgid ""
|
2469 |
-
"
|
2470 |
-
"backups of current website. For example, /home/username/customfolder"
|
2471 |
-
msgstr ""
|
2472 |
-
"Inserisci un percorso assoluto e una sottodirectory personalizzata "
|
2473 |
-
"(opzionale) per tenere i backup del sito web corrente. Ad esempio, "
|
2474 |
-
"/home/nomeutente/cartellapersonalizzata"
|
2475 |
|
2476 |
#: includes/customclass/class-wpvivid-ftpclass.php:139
|
2477 |
#: includes/customclass/class-wpvivid-ftpclass.php:240
|
2478 |
msgid "Uncheck this to enable FTP active mode."
|
2479 |
-
msgstr ""
|
2480 |
-
"Deseleziona questa opzione per abilitare il server FTP in modalità attiva."
|
2481 |
|
2482 |
#: includes/customclass/class-wpvivid-ftpclass.php:145
|
2483 |
#: includes/customclass/class-wpvivid-ftpclass.php:246
|
2484 |
-
msgid ""
|
2485 |
-
"
|
2486 |
-
"the FTP server you are configuring supports the active FTP mode."
|
2487 |
-
msgstr ""
|
2488 |
-
"Deselezionare l'opzione per utilizzare l'FTP in modalità attiva quando il "
|
2489 |
-
"trasferimento di file. Assicurarsi che il server FTP configurazione supporti "
|
2490 |
-
"la modalità FTP attiva."
|
2491 |
|
2492 |
#: includes/customclass/class-wpvivid-ftpclass.php:158
|
2493 |
-
msgid ""
|
2494 |
-
"
|
2495 |
-
"below."
|
2496 |
-
msgstr ""
|
2497 |
-
"Clicca il pulsante per connetterti al server FTP e aggiungerlo alla lista "
|
2498 |
-
"degli storage qui di seguito."
|
2499 |
|
2500 |
#: includes/customclass/class-wpvivid-google-drive.php:111
|
2501 |
#: includes/customclass/class-wpvivid-google-drive.php:207
|
2502 |
-
msgid ""
|
2503 |
-
"
|
2504 |
-
"sure the client_secrets.json file is in wpvivid-"
|
2505 |
-
"backuprestore\\includes\\customclass directory."
|
2506 |
-
msgstr ""
|
2507 |
-
"Autenticazione non riuscita, il file client_secrets.json è mancante. Si "
|
2508 |
-
"prega di assicurarsi che il file client_secrets.json sia in wpvivid-"
|
2509 |
-
"backuprestore\\include\\customclass directory."
|
2510 |
|
2511 |
#: includes/customclass/class-wpvivid-google-drive.php:115
|
2512 |
#: includes/customclass/class-wpvivid-google-drive.php:211
|
2513 |
-
msgid ""
|
2514 |
-
"
|
2515 |
-
"incorrect. Please delete and re-install the plugin to recreate the file."
|
2516 |
-
msgstr ""
|
2517 |
-
"Autenticazione non riuscita, il formato del file client_secrets.json non è "
|
2518 |
-
"corretto. Si consiglia di cancellare e re-installare il plugin per ricreare "
|
2519 |
-
"il file."
|
2520 |
|
2521 |
#: includes/customclass/class-wpvivid-google-drive.php:272
|
2522 |
msgid "You have authenticated the Google Drive account as your remote storage."
|
@@ -2527,15 +2008,8 @@ msgid "Google Drive"
|
|
2527 |
msgstr "Google Drive"
|
2528 |
|
2529 |
#: includes/customclass/class-wpvivid-google-drive.php:304
|
2530 |
-
msgid ""
|
2531 |
-
"
|
2532 |
-
"style=\"text-decoration: none;\">this privacy policy</a> for use of our "
|
2533 |
-
"Google Drive authorization app (none of your backup data is sent to us)."
|
2534 |
-
msgstr ""
|
2535 |
-
"Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-"
|
2536 |
-
"policy\" style=\"text-decoration: none;\">questa informativa sulla "
|
2537 |
-
"privacy</a> per l'utilizzo della nostra applicazione di autorizzazione a "
|
2538 |
-
"Google Drive (nessuno dei dati di backup viene inviato a noi)."
|
2539 |
|
2540 |
#: includes/customclass/class-wpvivid-google-drive.php:307
|
2541 |
#: includes/customclass/class-wpvivid-google-drive.php:435
|
@@ -2552,16 +2026,11 @@ msgid "Authenticate with Google Drive"
|
|
2552 |
msgstr "Autenticati con Google Drive"
|
2553 |
|
2554 |
#: includes/customclass/class-wpvivid-google-drive.php:369
|
2555 |
-
msgid ""
|
2556 |
-
"
|
2557 |
-
"below."
|
2558 |
-
msgstr ""
|
2559 |
-
"Clicca il pulsante per ottenere il codice di autenticazione di Google e "
|
2560 |
-
"aggiungerlo alla lista degli storage qui di seguito."
|
2561 |
|
2562 |
#: includes/customclass/class-wpvivid-one-drive.php:240
|
2563 |
-
msgid ""
|
2564 |
-
"You have authenticated the Microsoft OneDrive account as your remote storage."
|
2565 |
msgstr "Hai autenticato l'account Microsoft OneDrive come tuo storage remoto."
|
2566 |
|
2567 |
#: includes/customclass/class-wpvivid-one-drive.php:260
|
@@ -2569,16 +2038,8 @@ msgid "Microsoft OneDrive"
|
|
2569 |
msgstr "Microsoft OneDrive"
|
2570 |
|
2571 |
#: includes/customclass/class-wpvivid-one-drive.php:272
|
2572 |
-
msgid ""
|
2573 |
-
"
|
2574 |
-
"style=\"text-decoration: none;\">this privacy policy</a> for use of our "
|
2575 |
-
"Microsoft OneDrive authorization app (none of your backup data is sent to us)"
|
2576 |
-
"."
|
2577 |
-
msgstr ""
|
2578 |
-
"Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-"
|
2579 |
-
"policy\" style=\"text-decoration: none;\">questa informativa sulla "
|
2580 |
-
"privacy</a> per l'utilizzo della nostra applicazione di autorizzazione a "
|
2581 |
-
"Microsoft OneDrive (nessuno dei dati di backup viene inviato a noi)."
|
2582 |
|
2583 |
#: includes/customclass/class-wpvivid-one-drive.php:275
|
2584 |
#: includes/customclass/class-wpvivid-one-drive.php:403
|
@@ -2595,12 +2056,8 @@ msgid "Authenticate with Microsoft OneDrive"
|
|
2595 |
msgstr "Autenticati con Microsoft OneDrive"
|
2596 |
|
2597 |
#: includes/customclass/class-wpvivid-one-drive.php:337
|
2598 |
-
msgid ""
|
2599 |
-
"
|
2600 |
-
"list below."
|
2601 |
-
msgstr ""
|
2602 |
-
"Clicca il pulsante per ottenere il codice di autenticazione di Microsoft e "
|
2603 |
-
"aggiungerlo alla lista degli storage qui di seguito."
|
2604 |
|
2605 |
#: includes/customclass/class-wpvivid-s3compat.php:403
|
2606 |
msgid "DigitalOcean Spaces"
|
@@ -2644,17 +2101,12 @@ msgstr "Nome dello spazio(ad esempio test)"
|
|
2644 |
#: includes/customclass/class-wpvivid-s3compat.php:461
|
2645 |
#: includes/customclass/class-wpvivid-s3compat.php:576
|
2646 |
msgid "Enter an existed Space to create a custom backup storage directory."
|
2647 |
-
msgstr ""
|
2648 |
-
"Inserisci uno Spazio esistente per creare una directory di archiviazione di "
|
2649 |
-
"backup personalizzata."
|
2650 |
|
2651 |
#: includes/customclass/class-wpvivid-s3compat.php:473
|
2652 |
#: includes/customclass/class-wpvivid-s3compat.php:588
|
2653 |
-
msgid ""
|
2654 |
-
"
|
2655 |
-
msgstr ""
|
2656 |
-
"Personalizzare la directory in cui si desidera archiviare i backup "
|
2657 |
-
"all'interno dello Spazio."
|
2658 |
|
2659 |
#: includes/customclass/class-wpvivid-s3compat.php:480
|
2660 |
#: includes/customclass/class-wpvivid-s3compat.php:595
|
@@ -2667,12 +2119,8 @@ msgid "Enter the DigitalOcean Endpoint for the storage"
|
|
2667 |
msgstr "Inserisci l'Endpoint di DigitalOcean per l'archiviazione"
|
2668 |
|
2669 |
#: includes/customclass/class-wpvivid-s3compat.php:512
|
2670 |
-
msgid ""
|
2671 |
-
"
|
2672 |
-
"storage list below."
|
2673 |
-
msgstr ""
|
2674 |
-
"Clicca il pulsante per connetterti allo storage di DigitalOcean Space e di "
|
2675 |
-
"aggiungerlo alla lista degli storage qui di seguito."
|
2676 |
|
2677 |
#: includes/customclass/class-wpvivid-sftpclass.php:38
|
2678 |
msgid "SFTP"
|
@@ -2735,18 +2183,10 @@ msgstr "Un percorso assoluto deve esistere(ad esempio, /var)"
|
|
2735 |
|
2736 |
#: includes/customclass/class-wpvivid-sftpclass.php:121
|
2737 |
#: includes/customclass/class-wpvivid-sftpclass.php:236
|
2738 |
-
msgid ""
|
2739 |
-
"
|
2740 |
-
"backups of current website. For example, /var/customfolder/"
|
2741 |
-
msgstr ""
|
2742 |
-
"Inserisci un percorso assoluto e una sottodirectory personalizzata "
|
2743 |
-
"(opzionale) per tenere i backup del sito web corrente. Per esempio, "
|
2744 |
-
"/var/cartellapersonalizzata/"
|
2745 |
|
2746 |
#: includes/customclass/class-wpvivid-sftpclass.php:148
|
2747 |
-
msgid ""
|
2748 |
-
"
|
2749 |
-
|
2750 |
-
msgstr ""
|
2751 |
-
"Clicca il pulsante per connetterti al server SFTP e aggiungerlo alla lista "
|
2752 |
-
"degli storage qui di seguito."
|
10 |
"X-Poedit-Basepath: ..\n"
|
11 |
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
12 |
"X-Poedit-SourceCharset: utf-8\n"
|
|
|
13 |
"Report-Msgid-Bugs-To: \n"
|
14 |
"POT-Creation-Date: 2020-05-12 15:27+0000\n"
|
15 |
+
"PO-Revision-Date: 2020-07-27 18:40+0800\n"
|
16 |
"Language: it_IT\n"
|
17 |
"X-Generator: Loco https://localise.biz/\n"
|
18 |
+
"X-Loco-Version: 2.3.3; wp-5.4.1\n"
|
19 |
+
"X-Poedit-SearchPath-0: .\n"
|
20 |
|
21 |
+
#: admin/class-wpvivid-admin.php:100
|
22 |
+
#: admin/class-wpvivid-admin.php:114
|
23 |
#: admin/class-wpvivid-admin.php:635
|
24 |
msgid "Backup & Restore"
|
25 |
msgstr "Backup & Ripristino"
|
26 |
|
27 |
+
#: admin/class-wpvivid-admin.php:123
|
28 |
+
#: admin/class-wpvivid-admin.php:313
|
29 |
#: admin/class-wpvivid-admin.php:653
|
30 |
msgid "Settings"
|
31 |
msgstr "Impostazioni"
|
43 |
msgstr "Risoluzione dei problemi"
|
44 |
|
45 |
#: admin/class-wpvivid-admin.php:154
|
46 |
+
msgid "Read <a href=\"https://wpvivid.com/troubleshooting-issues-wpvivid-backup-plugin\" target=\"_blank\">Troubleshooting page</a> for faster solutions."
|
47 |
+
msgstr "Leggi <a href=\"https://wpvivid.com/troubleshooting-issues-wpvivid-backup-plugin\" target=\"_blank\">la pagina di Risoluzione dei problemi</a> per soluzioni più rapide."
|
|
|
|
|
|
|
|
|
|
|
48 |
|
49 |
#: admin/class-wpvivid-admin.php:157
|
50 |
+
msgid "Adjust <a href=\"https://wpvivid.com/wpvivid-backup-plugin-advanced-settings.html\" target=\"_blank\">Advanced Settings</a> for higher task success rate."
|
51 |
+
msgstr "Configura le <a href=\"https://wpvivid.com/wpvivid-backup-plugin-advanced-settings.html\" target=\"_blank\">Impostazioni avanzate</a> per una percentuale più alta di successo nello svolgimento delle attività."
|
|
|
|
|
|
|
|
|
|
|
52 |
|
53 |
#: admin/class-wpvivid-admin.php:164
|
54 |
msgid "How-to"
|
87 |
msgstr "Attenzione: l'alias esiste già nella lista degli storage."
|
88 |
|
89 |
#: admin/class-wpvivid-admin.php:213
|
90 |
+
msgid "Calculating the size of files, folder and database timed out. If you continue to receive this error, please go to the plugin settings, uncheck 'Calculate the size of files, folder and database before backing up', save changes, then try again."
|
91 |
+
msgstr "Il calcolo delle dimensioni dei file, delle cartelle e database è terminata a causa di un time out. Se si continua a ricevere questo errore, si prega di andare alle impostazioni dei plug-in, deselezionare 'Calcolare le dimensioni dei file, delle cartelle e database prima di eseguire il backup', salvare le modifiche, quindi provare di nuovo."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
|
93 |
#: admin/class-wpvivid-admin.php:346
|
94 |
+
msgid "Migration is complete and htaccess file is replaced. In order to successfully complete the migration, you'd better reinstall 301 redirect plugin, firewall and security plugin, and caching plugin if they exist."
|
95 |
+
msgstr "La migrazione è completa e il file htaccess è stato sostituito. Per completare con successo la migrazione, è meglio reinstallare il plugin 301 redirect, il plugin firewall e il plugin di sicurezza e il plugin di caching, se esistono."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
|
97 |
#: admin/class-wpvivid-admin.php:361
|
98 |
+
msgid "Cheers! WPvivid Backup plugin has restored successfully your website. If you found WPvivid Backup plugin helpful, a 5-star rating would be highly appreciated, which motivates us to keep providing new features."
|
99 |
+
msgstr "Evviva! WPvivid Backup plugin ha ripristinato con successo il tuo sito web. Se hai trovato WPvivid Backup plugin utile, una valutazione di 5 stelle sarebbe molto apprezzata, cosa che ci spinge a continuare a offrire nuove funzionalità."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
|
101 |
#: admin/class-wpvivid-admin.php:367
|
102 |
msgid "Restore completed successfully."
|
103 |
msgstr "Ripristino completato."
|
104 |
|
105 |
+
#: admin/class-wpvivid-admin.php:454
|
106 |
+
#: admin/class-wpvivid-admin.php:471
|
107 |
msgid "Rate Us"
|
108 |
msgstr "Votaci"
|
109 |
|
110 |
+
#: admin/class-wpvivid-admin.php:455
|
111 |
+
#: admin/class-wpvivid-admin.php:472
|
112 |
msgid "Maybe Later"
|
113 |
msgstr "Forse Più Tardi"
|
114 |
|
115 |
+
#: admin/class-wpvivid-admin.php:456
|
116 |
+
#: admin/class-wpvivid-admin.php:473
|
117 |
msgid "Never"
|
118 |
msgstr "Mai"
|
119 |
|
120 |
#: admin/class-wpvivid-admin.php:509
|
121 |
+
msgid "As Amazon S3 and DigitalOcean Space have upgraded their connection methods, please delete the previous connections and re-add your Amazon S3/DigitalOcean Space accounts to make sure the connections work."
|
122 |
+
msgstr "Poiché Amazon S3 e DigitalOcean Space hanno aggiornato i loro metodi di connessione, si prega di cancellare le precedenti connessioni e ri-aggiungere i tuoi account tuo Amazon S3/DigitalOcean Space per assicurarti che le connessioni funzionino."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
|
124 |
#: admin/class-wpvivid-admin.php:561
|
125 |
#, php-format
|
126 |
msgid "The %s extension is not detected. Please install the extension first."
|
127 |
+
msgstr "L'estensione %s non è stata rilevata. Si prega di installare prima l'estensione."
|
|
|
|
|
128 |
|
129 |
#: admin/class-wpvivid-admin.php:564
|
130 |
#, php-format
|
131 |
+
msgid "The %s extensions are not detected. Please install the extensions first."
|
132 |
+
msgstr "Le estensioni %s non sono state rilevate. Si prega di installare prima le estensioni."
|
|
|
|
|
|
|
133 |
|
134 |
#: admin/class-wpvivid-admin.php:570
|
135 |
+
msgid "Class PclZip is not detected. Please update or reinstall your WordPress."
|
136 |
+
msgstr "Classe PclZip non rilevata. Si prega di aggiornare o reinstallare WordPress."
|
|
|
|
|
137 |
|
138 |
#: admin/class-wpvivid-admin.php:575
|
139 |
+
msgid "In order to execute the scheduled backups properly, please set the DISABLE_WP_CRON constant to false."
|
140 |
+
msgstr "Per eseguire correttamente i backup pianificati, impostare la costante DISABLE_WP_CRON su false."
|
|
|
|
|
|
|
|
|
141 |
|
142 |
#: admin/class-wpvivid-admin.php:641
|
143 |
msgid "Schedule"
|
169 |
msgid "Premium"
|
170 |
msgstr "Premium"
|
171 |
|
172 |
+
#: admin/class-wpvivid-admin.php:735
|
173 |
+
#: admin/class-wpvivid-admin.php:822
|
174 |
#: admin/partials/wpvivid-remote-storage-page-display.php:48
|
175 |
msgid "Save Changes"
|
176 |
msgstr "Salvare le modifiche"
|
177 |
|
178 |
#: admin/class-wpvivid-admin.php:870
|
179 |
+
msgid "There are two ways available to send us the debug information. The first one is recommended."
|
180 |
+
msgstr "Ci sono due modi per inviarci le informazioni di debug. Il primo è raccomandato."
|
|
|
|
|
|
|
|
|
181 |
|
182 |
#: admin/class-wpvivid-admin.php:872
|
183 |
msgid "Method 1."
|
184 |
msgstr "Metodo 1."
|
185 |
|
186 |
#: admin/class-wpvivid-admin.php:872
|
187 |
+
msgid "If you have configured SMTP on your site, enter your email address and click the button below to send us the relevant information (website info and errors logs) when you are encountering errors. This will help us figure out what happened. Once the issue is resolved, we will inform you by your email address."
|
188 |
+
msgstr "Se è stato configurato l'SMTP sul tuo sito, inserisci il tuo indirizzo e-mail e fai clic sul pulsante qui sotto per inviarci le informazioni rilevanti (informazioni sul sito e gli errori di log) quando si verificano errori. Questo ci aiuterà a capire cosa è successo. Una volta risolto il problema, provvederemo ad informarti per tuo indirizzo e-mail."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
189 |
|
190 |
#: admin/class-wpvivid-admin.php:875
|
191 |
msgid "WPvivid support email:"
|
216 |
msgstr "Metodo 2."
|
217 |
|
218 |
#: admin/class-wpvivid-admin.php:909
|
219 |
+
msgid "If you didn’t configure SMTP on your site, click the button below to download the relevant information (website info and error logs) to your PC when you are encountering some errors. Sending the files to us will help us diagnose what happened."
|
220 |
+
msgstr "Se non hai configurato l'SMTP sul tuo sito, clicca sul pulsante qui sotto per scaricare le informazioni rilevanti (informazioni sul sito web e registri degli errori) sul tuo PC quando incontrate degli errori. L'invio dei file ci aiuterà a diagnosticare l'accaduto."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
221 |
|
222 |
#: admin/class-wpvivid-admin.php:912
|
223 |
#: admin/partials/wpvivid-backup-restore-page-display.php:178
|
257 |
msgstr "Pagina Seguente >"
|
258 |
|
259 |
#: admin/class-wpvivid-admin.php:1164
|
260 |
+
msgid "If you are a MainWP user, you can set up and control WPvivid Backup Free and Pro for every child site directly from your MainWP dashboard, using our WPvivid Backup for MainWP extension."
|
261 |
+
msgstr "Se sei un utente MainWP, puoi impostare e controllare WPvivid Backup Free e Pro per ogni sito child direttamente dalla Bacheca di MainWP, utilizzando la nostra estensione WPvivid Backup for MainWP."
|
|
|
|
|
|
|
|
|
|
|
|
|
262 |
|
263 |
#: admin/class-wpvivid-admin.php:1167
|
264 |
msgid "Download WPvivid Backup for MainWP"
|
274 |
|
275 |
#: admin/class-wpvivid-admin.php:1177
|
276 |
msgid "3. Set WPvivid Backup Free and Pro settings for all child sites"
|
277 |
+
msgstr "3. Configura le impostazioni di WPvivid Backup Free e Pro per tutti i siti child"
|
|
|
|
|
278 |
|
279 |
#: admin/class-wpvivid-admin.php:1182
|
280 |
msgid "4. Install, claim and update WPvivid Backup Pro for child sites in bulk"
|
281 |
+
msgstr "4. Installa, attiva e aggiorna WPvivid Backup Pro in massa per i siti child"
|
|
|
282 |
|
283 |
#: admin/class-wpvivid-admin.php:1187
|
284 |
+
msgid "5. Set up remote storage for child sites in bulk (for WPvivid Backup Pro only)"
|
285 |
+
msgstr "5. Imposta in massa l'archiviazione remota per i siti child (per WPvivid Backup Pro)."
|
|
|
|
|
|
|
|
|
286 |
|
287 |
#: admin/class-wpvivid-admin.php:1192
|
288 |
#, php-format
|
289 |
+
msgid "We also offer a 40% off discount on WPvivid Backup Pro for MainWP users."
|
290 |
+
msgstr "Offriamo anche uno sconto del 40% su WPvivid Backup Pro per gli utenti MainWP."
|
|
|
|
|
|
|
291 |
|
292 |
#: admin/class-wpvivid-admin.php:1196
|
293 |
msgid "Ask For A 40% OFF Discount"
|
313 |
msgid "Websites"
|
314 |
msgstr "Siti web"
|
315 |
|
316 |
+
#: admin/class-wpvivid-admin.php:1229
|
317 |
+
#: admin/class-wpvivid-admin.php:1230
|
318 |
+
#: admin/class-wpvivid-admin.php:1231
|
319 |
+
#: admin/class-wpvivid-admin.php:1232
|
320 |
msgid "Backup:"
|
321 |
msgstr "Backup:"
|
322 |
|
323 |
+
#: admin/class-wpvivid-admin.php:1229
|
324 |
+
#: admin/class-wpvivid-admin.php:1233
|
325 |
msgid "Custom Content"
|
326 |
msgstr "Contenuto Personalizzato"
|
327 |
|
337 |
msgid "Include/exclude files/folders"
|
338 |
msgstr "Includere/escludere i file e le cartelle"
|
339 |
|
340 |
+
#: admin/class-wpvivid-admin.php:1233
|
341 |
+
#: admin/class-wpvivid-admin.php:1234
|
342 |
msgid "Migration:"
|
343 |
msgstr "Migrazione:"
|
344 |
|
346 |
msgid "Migration via remote storage"
|
347 |
msgstr "Migrazione tramite archiviazione remota"
|
348 |
|
349 |
+
#: admin/class-wpvivid-admin.php:1235
|
350 |
+
#: admin/class-wpvivid-admin.php:1236
|
351 |
msgid "Remote Storage:"
|
352 |
msgstr "Archiviazione Remota:"
|
353 |
|
359 |
msgid "WASABI/Pcloud (Only Pro)"
|
360 |
msgstr "WASABI/Pcloud (Solo Pro)"
|
361 |
|
362 |
+
#: admin/class-wpvivid-admin.php:1237
|
363 |
+
#: admin/class-wpvivid-admin.php:1238
|
364 |
+
#: admin/class-wpvivid-admin.php:1239
|
365 |
+
#: admin/class-wpvivid-admin.php:1240
|
366 |
msgid "Schedule:"
|
367 |
msgstr "Pianificazione:"
|
368 |
|
382 |
msgid "Custom start time of schedule"
|
383 |
msgstr "Orario personalizzato di inizio del programma "
|
384 |
|
385 |
+
#: admin/class-wpvivid-admin.php:1241
|
386 |
+
#: admin/class-wpvivid-admin.php:1242
|
387 |
msgid "Restore:"
|
388 |
msgstr "Ripristino:"
|
389 |
|
403 |
msgid "Send email reports to multiple email addresses"
|
404 |
msgstr "Invia rapporti e-mail a più indirizzi e-mail"
|
405 |
|
406 |
+
#: admin/class-wpvivid-admin.php:1244
|
407 |
+
#: admin/class-wpvivid-admin.php:1245
|
408 |
msgid "Staging (add-on):"
|
409 |
msgstr "Staging (add-on):"
|
410 |
|
422 |
|
423 |
#: admin/class-wpvivid-admin.php:1246
|
424 |
msgid "Display the individual sections according to user roles & capabilities"
|
425 |
+
msgstr "Visualizza le singole sezioni in base ai ruoli e alle capacità dell'utente"
|
|
|
426 |
|
427 |
#: admin/class-wpvivid-admin.php:1247
|
428 |
msgid "Support:"
|
445 |
msgstr "Illimitato"
|
446 |
|
447 |
#: admin/class-wpvivid-admin.php:1319
|
448 |
+
msgid "*No credit card needed. Trial starts with the Free Trial plan with 2 sites. You can choose a plan at the end of the trial."
|
449 |
+
msgstr "*Non è necessaria la carta di credito. La prova inizia con il piano di prova gratuita con 2 siti. È possibile scegliere un piano alla fine della prova."
|
|
|
|
|
|
|
|
|
450 |
|
451 |
#: admin/class-wpvivid-admin.php:1320
|
452 |
msgid "START 14-DAY FREE TRIAL"
|
457 |
msgstr "WPvivid Backup Plugin"
|
458 |
|
459 |
#: admin/partials/wpvivid-admin-display.php:63
|
460 |
+
msgid "Warning: There is no default remote storage available for the scheduled backups, please set up it first."
|
461 |
+
msgstr "Attenzione: non è disponibile uno storage remoto predefinito per i backup pianificati, si prega di impostarla prima."
|
|
|
|
|
|
|
|
|
462 |
|
463 |
#: admin/partials/wpvivid-backup-restore-page-display.php:7
|
464 |
#: admin/partials/wpvivid-schedule-page-display.php:126
|
498 |
msgstr "Riguardo il download dei backup "
|
499 |
|
500 |
#: admin/partials/wpvivid-backup-restore-page-display.php:102
|
501 |
+
msgid "->If backups are stored in remote storage, our plugin will retrieve the backup to your web server first. This may take a little time depending on the size of backup files. Please be patient. Then you can download them to your PC."
|
502 |
+
msgstr "->Se i backup sono memorizzati nello storage remoto, il nostro plugin recupererà prima il backup sul tuo server web. Questo può richiedere un po' di tempo a seconda della dimensione dei file di backup. Si prega di avere pazienza. Poi potrai scaricarli sul vostro PC."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
503 |
|
504 |
#: admin/partials/wpvivid-backup-restore-page-display.php:103
|
505 |
+
msgid "->If backups are stored in web server, the plugin will list all relevant files immediately."
|
506 |
+
msgstr "->Se i backup sono memorizzati nel server web, il plugin elencherà immediatamente tutti i file rilevanti."
|
|
|
|
|
|
|
|
|
507 |
|
508 |
#: admin/partials/wpvivid-backup-restore-page-display.php:109
|
509 |
+
msgid "How to restore your website from a backup(scheduled, manual, uploaded and received backup)"
|
510 |
+
msgstr "Come ripristinare il vostro sito web da un backup(programmato, manuale, caricato e ricevuto)"
|
|
|
|
|
|
|
|
|
511 |
|
512 |
#: admin/partials/wpvivid-backup-restore-page-display.php:123
|
513 |
msgid "Backups"
|
536 |
msgstr "Elimina i backup selezionati"
|
537 |
|
538 |
#: admin/partials/wpvivid-backup-restore-page-display.php:725
|
539 |
+
msgid "This backup is locked, are you sure to remove it? This backup will be deleted permanently from your hosting (localhost) and remote storages."
|
540 |
+
msgstr "Questo backup è bloccato, sei sicuro di poterlo rimuovere? Questo backup sarà cancellato in modo permanente dal vostro hosting (localhost) e dai magazzini remoti."
|
|
|
|
|
|
|
|
|
|
|
541 |
|
542 |
#: admin/partials/wpvivid-backup-restore-page-display.php:729
|
543 |
+
msgid "Are you sure to remove this backup? This backup will be deleted permanently from your hosting (localhost) and remote storages."
|
544 |
+
msgstr "Sei sicuro di voler rimuovere questo backup? Questo backup verrà eliminato in modo permanente dal tuo hosting (localhost) e storage remoto."
|
|
|
|
|
|
|
|
|
545 |
|
546 |
#: admin/partials/wpvivid-backup-restore-page-display.php:734
|
547 |
+
msgid "This request will delete the backup being downloaded, are you sure you want to continue?"
|
548 |
+
msgstr "Questa richiesta cancellerà il backup in fase di download, sei sicuro di voler continuare?"
|
|
|
|
|
|
|
|
|
549 |
|
550 |
#: admin/partials/wpvivid-backup-restore-page-display.php:773
|
551 |
msgid "Please select at least one item."
|
552 |
msgstr "Si prega di selezionare almeno un elemento."
|
553 |
|
554 |
#: admin/partials/wpvivid-backup-restore-page-display.php:778
|
555 |
+
msgid "This request might delete the backup being downloaded, are you sure you want to continue?"
|
556 |
+
msgstr "Questa richiesta potrebbe cancellare il backup in fase di download, sei sicuro di voler continuare?"
|
|
|
|
|
|
|
|
|
557 |
|
558 |
#: admin/partials/wpvivid-backup-restore-page-display.php:781
|
559 |
+
msgid "Are you sure to remove the selected backups? These backups will be deleted permanently from your hosting (localhost)."
|
560 |
+
msgstr "Sei sicuro di voler rimuovere il backup? Questi backup verranno eliminati in modo permanente dal tuo hosting (localhost)."
|
|
|
|
|
|
|
|
|
561 |
|
562 |
#: admin/partials/wpvivid-backup-restore-page-display.php:842
|
563 |
+
msgid "Step One: In the backup list, click the 'Restore' button on the backup you want to restore. This will bring up the restore tab"
|
564 |
+
msgstr "Passo 1: Nell'elenco dei backup, fare clic sul pulsante 'Ripristina' del backup che si desidera ripristinare. In questo modo si aprirà la scheda di ripristino"
|
|
|
|
|
|
|
|
|
|
|
565 |
|
566 |
#: admin/partials/wpvivid-backup-restore-page-display.php:843
|
567 |
msgid "Step Two: Choose an option to complete restore, if any"
|
568 |
+
msgstr "Fase Due: Scegliere una opzione per completare il ripristino, se presente"
|
|
|
569 |
|
570 |
#: admin/partials/wpvivid-backup-restore-page-display.php:844
|
571 |
msgid "Step Three: Click 'Restore' button"
|
576 |
msgstr "Ripristino backup da:"
|
577 |
|
578 |
#: admin/partials/wpvivid-backup-restore-page-display.php:878
|
579 |
+
msgid "Please do not close the page or switch to other pages when a restore task is running, as it could trigger some unexpected errors."
|
580 |
+
msgstr "Si prega di non chiudere la pagina o di non passare ad altre pagine quando è in corso un'attività di ripristino, in quanto potrebbe innescare alcuni errori imprevisti."
|
|
|
|
|
|
|
|
|
|
|
581 |
|
582 |
#: admin/partials/wpvivid-backup-restore-page-display.php:879
|
583 |
+
msgid "Restore function will replace the current site's themes, plugins, uploads, database and/or other content directories with the existing equivalents in the selected backup."
|
584 |
+
msgstr "La funzione Ripristino sostituirà i temi, i plugin, gli upload, i database e/o altre directory di contenuti del sito corrente con gli equivalenti esistenti nel backup selezionato."
|
|
|
|
|
|
|
|
|
|
|
|
|
585 |
|
586 |
#: admin/partials/wpvivid-backup-restore-page-display.php:882
|
587 |
#, php-format
|
588 |
msgid "Restore and replace the original domain (URL) with %s (migration)"
|
589 |
+
msgstr "Ripristina e sostituisci il dominio originale (URL) con %s (migrazione)"
|
|
|
590 |
|
591 |
#: admin/partials/wpvivid-backup-restore-page-display.php:885
|
592 |
msgid "Restore and keep the original domain (URL) unchanged"
|
598 |
msgstr "Suggerimenti:"
|
599 |
|
600 |
#: admin/partials/wpvivid-backup-restore-page-display.php:889
|
601 |
+
msgid "The plugin detects automatically either site restoration or migration (replacing the domain name) based on the current domain name. If the domain name in backup file is same as the current one, it starts restoring. On the contrary, restoring backup means to replace with the current domain name. The precondition is that the backup is created by version 0.9.21 or later."
|
602 |
+
msgstr "Il plugin rileva automaticamente il ripristino del sito o la migrazione (sostituzione del nome a dominio) in base al nome a dominio corrente. Se il nome del dominio nel file di backup è uguale a quello attuale, inizia il ripristino. Al contrario, ripristinare il backup significa sostituire con il nome di dominio corrente. Il presupposto è che il backup venga creato dalla versione 0.9.21 o successiva."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
603 |
|
604 |
#: admin/partials/wpvivid-backup-restore-page-display.php:893
|
605 |
msgid "Terminate"
|
614 |
msgstr "Recupera il backup su localhost"
|
615 |
|
616 |
#: admin/partials/wpvivid-backup-restore-page-display.php:897
|
617 |
+
msgid "The backup is stored on the remote storage, click on the button to download it to localhost."
|
618 |
+
msgstr "Il backup viene memorizzato sullo storage remoto, fai clic sul pulsante per scaricarlo su localhost."
|
|
|
|
|
|
|
|
|
619 |
|
620 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1489
|
621 |
msgid "Database Size:"
|
683 |
msgstr "Questo backup può essere cancellato solo manualmente"
|
684 |
|
685 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1787
|
686 |
+
msgid "The settings are only for manual backup, which won't affect schedule settings."
|
687 |
+
msgstr "Le impostazioni sono solo per il backup manuale, che non influisce sulle impostazioni di programmazione."
|
|
|
|
|
|
|
|
|
688 |
|
689 |
#: admin/partials/wpvivid-backup-restore-page-display.php:1806
|
690 |
msgid "Backup Schedule"
|
749 |
msgstr "Pianificazione Avanzata"
|
750 |
|
751 |
#: admin/partials/wpvivid-schedule-page-display.php:85
|
752 |
+
msgid "Highlighted icon illuminates that you have choosed a remote storage to store backups"
|
753 |
+
msgstr "L'icona evidenziata indica che è stata scelta uno storage remoto per memorizzare i backup"
|
|
|
|
|
|
|
|
|
754 |
|
755 |
#: admin/partials/wpvivid-schedule-page-display.php:95
|
756 |
msgid "+ Add another schedule"
|
761 |
msgstr "Il lavoro pianificato inizierà a <strong>UTC</strong> time:"
|
762 |
|
763 |
#: admin/partials/wpvivid-schedule-page-display.php:118
|
764 |
+
msgid "Being subjected to mechanisms of PHP, a scheduled backup task for your site will be triggered only when the site receives at least a visit at any page."
|
765 |
+
msgstr "Essendo soggetto a meccanismi di PHP, un'attività di backup pianificata per il vostro sito verrà attivata solo quando il sito riceverà almeno una visita in qualsiasi pagina."
|
|
|
|
|
|
|
|
|
|
|
766 |
|
767 |
#: admin/partials/wpvivid-settings-page-display.php:88
|
768 |
msgid "backups retained"
|
774 |
|
775 |
#: admin/partials/wpvivid-settings-page-display.php:93
|
776 |
msgid "Calculate the size of files, folder and database before backing up"
|
777 |
+
msgstr "Calcola la dimensione dei file, delle cartelle e del database prima di eseguire il backup"
|
|
|
|
|
778 |
|
779 |
#: admin/partials/wpvivid-settings-page-display.php:99
|
780 |
msgid "Show WPvivid backup plugin on top admin bar"
|
781 |
msgstr "Mostra WPvivid backup plugin in cima all'admin bar"
|
782 |
|
783 |
#: admin/partials/wpvivid-settings-page-display.php:105
|
784 |
+
msgid "Merge all the backup files into single package when a backup completes. This will save great disk spaces, though takes longer time. We recommended you check the option especially on sites with insufficient server resources."
|
785 |
+
msgstr "Unisci tutti i file di backup in un unico pacchetto quando un backup è completato. In questo modo si risparmiano grandi spazi su disco, anche se ci vuole più tempo. Si consiglia di controllare l'opzione soprattutto su siti con risorse server insufficienti."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
786 |
|
787 |
#: admin/partials/wpvivid-settings-page-display.php:111
|
788 |
msgid "Keep storing the backups in localhost after uploading to remote storage"
|
789 |
+
msgstr "Continua a memorizzare i backup in localhost dopo l'upload nello storage remoto"
|
|
|
|
|
790 |
|
791 |
#: admin/partials/wpvivid-settings-page-display.php:116
|
792 |
msgid "Backup Folder"
|
793 |
msgstr "Cartella Di Backup"
|
794 |
|
795 |
#: admin/partials/wpvivid-settings-page-display.php:118
|
796 |
+
msgid "Name your folder, this folder must be writable for creating backup files."
|
797 |
+
msgstr "Dai un nome alla tua cartella, questa cartella deve essere scrivibile per la creazione di file di backup."
|
|
|
|
|
|
|
798 |
|
799 |
#: admin/partials/wpvivid-settings-page-display.php:120
|
800 |
msgid "Local storage directory:"
|
801 |
msgstr "Directory di archiviazione locale:"
|
802 |
|
803 |
#: admin/partials/wpvivid-settings-page-display.php:125
|
804 |
+
msgid "Display domain(url) of current site in backup name. (e.g. domain_wpvivid-5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)"
|
805 |
+
msgstr "Visualizza il dominio(url) del sito corrente nel nome di backup. (ad esempio dominio_wpvivid-5ceb938b6dca9_2019-05-27-07-36_backup_all.zip)"
|
|
|
|
|
|
|
|
|
806 |
|
807 |
#: admin/partials/wpvivid-settings-page-display.php:130
|
808 |
msgid "Remove out-of-date backups"
|
821 |
msgstr "Rimuovere"
|
822 |
|
823 |
#: admin/partials/wpvivid-settings-page-display.php:148
|
824 |
+
msgid "The action is irreversible! It will remove all backups are out-of-date (including local web server and remote storage) if they exist."
|
825 |
+
msgstr "L'azione è irreversibile! Rimuove tutti i backup non aggiornati (incluso il server web locale e l'archiviazione remota) se presenti."
|
|
|
|
|
|
|
|
|
826 |
|
827 |
#: admin/partials/wpvivid-settings-page-display.php:208
|
828 |
+
msgid "In order to use this function, please install a <strong><a target=\"_blank\" href=\"https://wpvivid.com/8-best-smtp-plugins-for-wordpress.html\" style=\"text-decoration: none;\">WordPress SMTP plugin</a></strong> of your preference and configure your SMTP server first. This is because WordPress uses the PHP Mail function to send its emails by default, which is not supported by many hosts and can cause issues if it is not set properly."
|
829 |
+
msgstr "Per utilizzare questa funzione, si prega di installare un <strong><a target=\"_blank\" href=\"https://wpvivid.com/8-best-smtp-plugins-for-wordpress.html\" style=\"text-decoration: none;\">plugin di SMTP di WordPress </a></strong> di tua preferenza e configurare prima il tuo server SMTP. Questo perché WordPress utilizza la funzione PHP Mail per inviare le sue e-mail di default, che non è supportata da molti host e può causare problemi se non è impostata correttamente."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
830 |
|
831 |
#: admin/partials/wpvivid-settings-page-display.php:213
|
832 |
msgid "Enable email report"
|
846 |
|
847 |
#: admin/partials/wpvivid-settings-page-display.php:240
|
848 |
msgid "Pro feature: Add another email address to get report"
|
849 |
+
msgstr "Funzionalità Pro: aggiungi un altro indirizzo email per ottenere report"
|
|
|
850 |
|
851 |
#: admin/partials/wpvivid-settings-page-display.php:287
|
852 |
msgid "Web-server disk space in use by WPvivid"
|
880 |
|
881 |
#: admin/partials/wpvivid-settings-page-display.php:318
|
882 |
msgid "Temporary Files are created by wpvivid when restoring a website."
|
883 |
+
msgstr "I file temporanei vengono creati da wpvivid durante il ripristino di un sito web."
|
|
|
|
|
884 |
|
885 |
#: admin/partials/wpvivid-settings-page-display.php:322
|
886 |
msgid "Empty"
|
892 |
|
893 |
#: admin/partials/wpvivid-settings-page-display.php:425
|
894 |
msgid "Click 'Export' button to save WPvivid settings on your local computer."
|
895 |
+
msgstr "Clicca sul pulsante \"Esporta\" per salvare le impostazioni di WPvivid sul computer locale."
|
|
|
|
|
896 |
|
897 |
#: admin/partials/wpvivid-settings-page-display.php:429
|
898 |
msgid "Import"
|
899 |
msgstr "Importazione"
|
900 |
|
901 |
#: admin/partials/wpvivid-settings-page-display.php:430
|
902 |
+
msgid "Importing the json file can help you set WPvivid's configuration on another wordpress site quickly."
|
903 |
+
msgstr "L'importazione del file json può aiutare ad impostare rapidamente la configurazione di WPvivid su un altro sito WordPress."
|
|
|
|
|
|
|
|
|
904 |
|
905 |
#: admin/partials/wpvivid-settings-page-display.php:550
|
906 |
msgid "Enable the option when backup failed."
|
912 |
|
913 |
#: admin/partials/wpvivid-settings-page-display.php:554
|
914 |
msgid "Enable optimization mode for web hosting/shared hosting"
|
915 |
+
msgstr "Attiva la modalità di ottimizzazione per il web hosting/hosting condiviso"
|
|
|
916 |
|
917 |
#: admin/partials/wpvivid-settings-page-display.php:557
|
918 |
+
msgid "Enabling this option can improve the backup success rate, but it will take more time for backup."
|
919 |
+
msgstr "L'attivazione di questa opzione consente di migliorare il tasso di successo del backup, ma richiede più tempo per il backup."
|
|
|
|
|
|
|
|
|
920 |
|
921 |
#: admin/partials/wpvivid-settings-page-display.php:564
|
922 |
msgid "Database access method."
|
923 |
msgstr "Metodo di accesso al database."
|
924 |
|
925 |
#: admin/partials/wpvivid-settings-page-display.php:569
|
926 |
+
msgid "WPDB option has a better compatibility, but the speed of backup and restore is slower."
|
927 |
+
msgstr "L'opzione WPDB ha una migliore compatibilità, ma la velocità di backup e ripristino è più lenta."
|
|
|
|
|
|
|
|
|
928 |
|
929 |
#: admin/partials/wpvivid-settings-page-display.php:575
|
930 |
+
msgid "It is recommended to choose PDO option if pdo_mysql extension is installed on your server, which lets you backup and restore your site faster."
|
931 |
+
msgstr "Si consiglia di scegliere l'opzione PDO se l'estensione pdo_mysql è installata sul vostro server, che consente di eseguire il backup e il ripristino del sito più velocemente."
|
|
|
|
|
|
|
|
|
|
|
932 |
|
933 |
#: admin/partials/wpvivid-settings-page-display.php:583
|
934 |
+
msgid "It will cause a lower CPU Usage and is recommended in a web hosting/ shared hosting environment."
|
935 |
+
msgstr "Ciò comporterà un minore utilizzo della CPU e non è raccomandato in un web hosting/ ambiente di hosting condiviso."
|
|
|
|
|
|
|
|
|
936 |
|
937 |
#: admin/partials/wpvivid-settings-page-display.php:583
|
938 |
msgid "Only Archive without compressing"
|
939 |
msgstr "Solo archivio senza compressione"
|
940 |
|
941 |
#: admin/partials/wpvivid-settings-page-display.php:587
|
942 |
+
msgid "It will cause a higher CPU Usage and is recommended in a VPS/ dedicated hosting environment."
|
943 |
+
msgstr "Provocherà un maggiore utilizzo della CPU ed è raccomandato in un ambiente di hosting dedicato o VPS."
|
|
|
|
|
|
|
|
|
944 |
|
945 |
#: admin/partials/wpvivid-settings-page-display.php:587
|
946 |
msgid "Compress and Archive"
|
951 |
msgstr "Comprimi ogni File"
|
952 |
|
953 |
#: admin/partials/wpvivid-settings-page-display.php:599
|
954 |
+
msgid "Some web hosting providers limit large zip files (e.g. 200MB), and therefore splitting your backup into many parts is an ideal way to avoid hitting the limitation if you are running a big website. Please try to adjust the value if you are encountering backup errors. If you use a value of 0 MB, any backup files won't be split."
|
955 |
+
msgstr "Alcuni fornitori di web hosting limitano i file zip di grandi dimensioni (ad esempio 200 MB), e quindi dividere il backup in molte parti è un modo ideale per evitare di colpire la limitazione se si esegue un grande sito web. Si prega di provare a regolare tale valore se si riscontrano errori di backup. Se si utilizza un valore di 0 MB, i file di backup non verranno divisi."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
956 |
|
957 |
#: admin/partials/wpvivid-settings-page-display.php:601
|
958 |
msgid "Exclude the files which are larger than"
|
959 |
msgstr "Escludi i file che sono più grandi di"
|
960 |
|
961 |
#: admin/partials/wpvivid-settings-page-display.php:604
|
962 |
+
msgid "Using the option will ignore the file larger than the certain size in MB when backing up, '0' (zero) means unlimited."
|
963 |
+
msgstr "Usando l'opzione si ignorerà il file più grande della dimensione determinata in MB durante il backup, '0' (zero) significa illimitato."
|
|
|
|
|
|
|
|
|
964 |
|
965 |
#: admin/partials/wpvivid-settings-page-display.php:606
|
966 |
msgid "PHP script execution timeout for backup"
|
967 |
msgstr "Timeout di esecuzione dello script PHP per il backup"
|
968 |
|
969 |
#: admin/partials/wpvivid-settings-page-display.php:609
|
970 |
+
msgid "The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of backup down. If the progress of backup encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger."
|
971 |
+
msgstr "Il time-out non è il time-out del vostro server PHP. Con il tempo di esecuzione esaurito, il nostro plugin interromperà il processo di backup. Se l'avanzamento del backup incontra un time-out, ciò significa che hai un sito web di medie o grandi dimensioni, prova ad aumentare il valore."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
972 |
|
973 |
#: admin/partials/wpvivid-settings-page-display.php:611
|
974 |
msgid "PHP script execution timeout for restore"
|
975 |
msgstr "Timeout di esecuzione dello script PHP per il ripristino"
|
976 |
|
977 |
#: admin/partials/wpvivid-settings-page-display.php:614
|
978 |
+
msgid "The time-out is not your server PHP time-out. With the execution time exhausted, our plugin will shut the process of restore down. If the progress of restore encounters a time-out, that means you have a medium or large sized website, please try to scale the value bigger."
|
979 |
+
msgstr "Il time-out non è il time-out del vostro server PHP. Con il tempo di esecuzione esaurito, il nostro plugin chiuderà il processo di ripristino. Se il processo di ripristino incontra un time-out, ciò significa che avete un sito web di medie o grandi dimensioni, prova ad aumentare il valore."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
980 |
|
981 |
#: admin/partials/wpvivid-settings-page-display.php:616
|
982 |
msgid "PHP Memory Limit for backup"
|
983 |
msgstr "Limite di memoria PHP per il backup"
|
984 |
|
985 |
#: admin/partials/wpvivid-settings-page-display.php:619
|
986 |
+
msgid "Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin to run a backup. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this."
|
987 |
+
msgstr "Regola questo valore da applicare temporaneamente a PHP memory limit per WPvivid backup plugin nel processo di ripristino. Per impostazione predefinita abbiamo regolato questo valore a 256M. Aumenta il valore se si verifica un errore di memoria esaurita,. Nota: per alcuni provider di web hosting questo valore non può essere modificato."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
988 |
|
989 |
#: admin/partials/wpvivid-settings-page-display.php:621
|
990 |
msgid "PHP Memory Limit for restoration"
|
991 |
msgstr "Limite di memoria PHP per il ripristino"
|
992 |
|
993 |
#: admin/partials/wpvivid-settings-page-display.php:624
|
994 |
+
msgid "Adjust this value to apply for a temporary PHP memory limit for WPvivid backup plugin in restore process. We set this value to 256M by default. Increase the value if you encounter a memory exhausted error. Note: some web hosting providers may not support this."
|
995 |
+
msgstr "Regola questo valore da applicare temporaneamente a PHP memory limit per WPvivid backup plugin nel processo di ripristino. Per impostazione predefinita abbiamo regolato questo valore a 256M. Aumenta il valore se si verifica un errore di memoria esaurita,. Nota: per alcuni provider di web hosting questo valore non può essere modificato."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
996 |
|
997 |
#: admin/partials/wpvivid-settings-page-display.php:626
|
998 |
msgid "Chunk Size"
|
999 |
msgstr "Dimensione del Blocco"
|
1000 |
|
1001 |
#: admin/partials/wpvivid-settings-page-display.php:629
|
1002 |
+
msgid "e.g. if you choose a chunk size of 2MB, a 8MB file will use 4 chunks. Decreasing this value will break the ISP's transmission limit, for example:512KB"
|
1003 |
+
msgstr "ad esempio, se si sceglie una dimensione del blocco di 2MB, un file da 8MB userà 4 blocchi. Ridurre questo valore per spezzare il limite di trasmissione ISP, ad esempio:512 KB"
|
|
|
|
|
|
|
|
|
|
|
|
|
1004 |
|
1005 |
#: admin/partials/wpvivid-settings-page-display.php:643
|
1006 |
#, php-format
|
1007 |
+
msgid "<strong>Retrying </strong>%s<strong> times when encountering a time-out error</strong>"
|
1008 |
+
msgstr "<strong>Riprovando </strong>%s<strong>volte</strong> quando si verifica un errore di timeout</strong>"
|
|
|
|
|
|
|
|
|
1009 |
|
1010 |
#: admin/partials/wpvivid-settings-page-display.php:659
|
1011 |
msgid "General Settings"
|
1016 |
msgstr "Impostazioni Avanzate"
|
1017 |
|
1018 |
#: includes/class-wpvivid-backup-uploader.php:493
|
1019 |
+
msgid "Tips: Click the button below to scan all uploaded or received backups in directory"
|
1020 |
+
msgstr "Suggerimenti: Fare clic sul pulsante qui sotto per scansionare tutti i backup caricati o ricevuti nella directory"
|
|
|
|
|
|
|
|
|
1021 |
|
1022 |
#: includes/class-wpvivid-backup-uploader.php:496
|
1023 |
msgid "Scan uploaded backup or received backup"
|
1051 |
#: includes/class-wpvivid-backup.php:1133
|
1052 |
#: includes/class-wpvivid-function-realize.php:42
|
1053 |
msgid "The backup will be canceled after backing up the current chunk ends."
|
1054 |
+
msgstr "Il backup sarà annullato dopo aver eseguito il backup delle parti correnti."
|
|
|
1055 |
|
1056 |
#: includes/class-wpvivid-backup.php:2256
|
1057 |
#, php-format
|
1078 |
msgstr "Per saperne di più"
|
1079 |
|
1080 |
#: includes/class-wpvivid-export-import.php:124
|
1081 |
+
msgid "This will contain all of your posts, pages, comments, terms and images (original images, featured images and thumbnails)."
|
1082 |
+
msgstr "Questo conterrà tutti i vostri post, pagine, commenti, termini e immagini (immagini originali, immagini in primo piano e miniature)."
|
|
|
|
|
|
|
|
|
1083 |
|
1084 |
#: includes/class-wpvivid-export-import.php:125
|
1085 |
#: includes/class-wpvivid-export-import.php:1518
|
1087 |
msgstr "Nota:"
|
1088 |
|
1089 |
#: includes/class-wpvivid-export-import.php:125
|
1090 |
+
msgid "Try to select fewer items when you are facing a shortage of server resources (typically presented as a timeout error)."
|
1091 |
+
msgstr "Provare a selezionare un numero inferiore di elementi quando si trovano di fronte a una carenza di risorse del server (in genere presentato come un errore di timeout)."
|
|
|
|
|
|
|
|
|
|
|
1092 |
|
1093 |
#: includes/class-wpvivid-export-import.php:135
|
1094 |
#, php-format
|
1095 |
msgid "Exported files will be temporarily stored in %s directory"
|
1096 |
+
msgstr "I file esportati saranno temporaneamente memorizzati nella directory %s"
|
|
|
1097 |
|
1098 |
#: includes/class-wpvivid-export-import.php:141
|
1099 |
msgid "Choose post type"
|
1192 |
|
1193 |
#: includes/class-wpvivid-export-import.php:1123
|
1194 |
#: includes/class-wpvivid-export-import.php:1159
|
1195 |
+
msgid "A task is already running. Please wait until the running task is complete, and try again."
|
1196 |
+
msgstr "Un task è già in esecuzione. Si prega di attendere fino a quando il task in esecuzione sia completato, e di provare di nuovo."
|
|
|
|
|
|
|
|
|
1197 |
|
1198 |
#: includes/class-wpvivid-export-import.php:1149
|
1199 |
+
msgid "Error occurred while parsing the request data. Please try to run export task again."
|
1200 |
+
msgstr "Si è verificato un errore durante l'analisi dei dati della richiesta. Si prega di provare a eseguire di nuovo l'attività di esportazione."
|
|
|
|
|
|
|
|
|
1201 |
|
1202 |
#: includes/class-wpvivid-export-import.php:1304
|
1203 |
msgid "Ready to export. Progress: 0%, running time: 0second."
|
1204 |
+
msgstr "Pronto per l'esportazione. Progressi: 0%, tempo di esecuzione: 0 secondi."
|
|
|
1205 |
|
1206 |
#: includes/class-wpvivid-export-import.php:1316
|
1207 |
msgid "The export task is not responding."
|
1228 |
msgstr "Importa in massa post o pagine con immagini."
|
1229 |
|
1230 |
#: includes/class-wpvivid-export-import.php:1519
|
1231 |
+
msgid "To properly display the imported content, please make sure that the importing and exporting sites have the same environment, for example, same theme or pages built with the same page builder."
|
1232 |
+
msgstr "Per visualizzare correttamente il contenuto importato, si prega di assicurarsi che l'importazione e l'esportazione siti abbiano lo stesso ambiente, per esempio, lo stesso tema o pagine costruite con lo page-builder."
|
|
|
|
|
|
|
|
|
|
|
|
|
1233 |
|
1234 |
#: includes/class-wpvivid-export-import.php:1528
|
1235 |
#, php-format
|
1236 |
msgid "Imported files will be temporarily stored in directory %s"
|
1237 |
+
msgstr "I file importati saranno temporaneamente memorizzati nella directory %s"
|
|
|
1238 |
|
1239 |
#: includes/class-wpvivid-export-import.php:1529
|
1240 |
msgid "Delete Exported Files In Folder"
|
1250 |
|
1251 |
#: includes/class-wpvivid-export-import.php:1538
|
1252 |
#, php-format
|
1253 |
+
msgid "Or you can use ftp to upload the export to the directory %s. Then click the button below to scan the file to import."
|
1254 |
+
msgstr "Oppure puoi usare ftp per caricare il file di esportazione nella directory %s. Quindi clicca sul pulsante qui sotto per scansionare il file da importare."
|
|
|
|
|
|
|
|
|
|
|
1255 |
|
1256 |
#: includes/class-wpvivid-export-import.php:1539
|
1257 |
msgid "Scan Uploaded Exports"
|
1282 |
msgstr "Sovrascrivere le pagine esistenti"
|
1283 |
|
1284 |
#: includes/class-wpvivid-export-import.php:1559
|
1285 |
+
msgid "With this option checked, Pages/posts already existing will be overwritten with the updated ones in an import."
|
1286 |
+
msgstr "Con questa opzione selezionata, le pagine/pubbliche già esistenti saranno sovrascritte con quelle aggiornate in un'importazione."
|
|
|
|
|
|
|
|
|
1287 |
|
1288 |
#: includes/class-wpvivid-export-import.php:1561
|
1289 |
msgid "Start to Import"
|
1360 |
|
1361 |
#: includes/class-wpvivid-function-realize.php:65
|
1362 |
#: includes/class-wpvivid-function-realize.php:93
|
1363 |
+
msgid "Retrieving the backup information failed while showing log. Please try again later."
|
1364 |
+
msgstr "Il recupero delle informazioni di backup non è riuscito mentre si mostrava il log. Riprovare più tardi."
|
|
|
|
|
|
|
|
|
1365 |
|
1366 |
#: includes/class-wpvivid-function-realize.php:70
|
1367 |
#: includes/class-wpvivid-function-realize.php:82
|
1396 |
#: includes/class-wpvivid-importer.php:1676
|
1397 |
#: includes/class-wpvivid-importer.php:1777
|
1398 |
msgid "Sorry, this file type is not permitted for security reasons."
|
1399 |
+
msgstr "Mi dispiace, questo tipo di file non è consentito per motivi di sicurezza."
|
|
|
1400 |
|
1401 |
#: includes/class-wpvivid-importer.php:1724
|
1402 |
msgid "Fetching attachments is not enabled"
|
1417 |
msgstr "Si è verificato un errore durante la lettura di questo file WXR"
|
1418 |
|
1419 |
#: includes/class-wpvivid-importer.php:1878
|
1420 |
+
msgid "Details are shown above. The importer will now try again with a different parser..."
|
1421 |
+
msgstr "I dettagli sono riportati sopra. L'importatore ora riproverà con un altro parser..."
|
|
|
|
|
|
|
|
|
1422 |
|
1423 |
#: includes/class-wpvivid-importer.php:1925
|
1424 |
#: includes/class-wpvivid-importer.php:1930
|
1425 |
#: includes/class-wpvivid-importer.php:2155
|
1426 |
#: includes/class-wpvivid-importer.php:2351
|
1427 |
+
msgid "This does not appear to be a WXR file, missing/invalid WXR version number"
|
1428 |
+
msgstr "Questo non sembra essere un file WXR, numero di versione WXR mancante/non valido"
|
|
|
|
|
|
|
1429 |
|
1430 |
#: includes/class-wpvivid-interface-mainwp.php:138
|
1431 |
+
msgid "Error occurred while parsing the request data. Please try to run backup again."
|
1432 |
+
msgstr "Si è verificato un errore durante l'analisi dei dati della richiesta. Si prega di provare a eseguire di nuovo il backup."
|
|
|
|
|
|
|
|
|
1433 |
|
1434 |
#: includes/class-wpvivid-interface-mainwp.php:182
|
1435 |
#: includes/class-wpvivid-interface-mainwp.php:220
|
1443 |
|
1444 |
#: includes/class-wpvivid-mail-report.php:558
|
1445 |
msgid "Unable to send email. Please check the configuration of email server."
|
1446 |
+
msgstr "Impossibile inviare e-mail. Si prega di controllare la configurazione del server di posta elettronica."
|
|
|
|
|
1447 |
|
1448 |
#: includes/class-wpvivid-migrate.php:49
|
1449 |
msgid "Auto-Migration"
|
1454 |
msgstr "Chiave"
|
1455 |
|
1456 |
#: includes/class-wpvivid-migrate.php:390
|
1457 |
+
msgid "In order to allow another site to send a backup to this site, please generate a key below. Once the key is generated, this site is ready to receive a backup from another site. Then, please copy and paste the key in sending site and save it."
|
1458 |
+
msgstr "Per consentire ad un altro sito di inviare un backup a questo sito, si prega di generare una chiave qui sotto. Una volta generata la chiave, questo sito è pronto a ricevere un backup da un altro sito. Quindi, si prega di copiare e incollare la chiave nel sito di invio e salvarla."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1459 |
|
1460 |
#: includes/class-wpvivid-migrate.php:392
|
1461 |
msgid "The key will expire in "
|
1462 |
msgstr "La chiave scadrà in "
|
1463 |
|
1464 |
#: includes/class-wpvivid-migrate.php:399
|
1465 |
+
msgid "Tips: For security reason, please choose an appropriate expiration time for the key."
|
1466 |
+
msgstr "Suggerimenti: Per motivi di sicurezza, si prega di scegliere un tempo di scadenza appropriato per la chiave."
|
|
|
|
|
|
|
|
|
1467 |
|
1468 |
#: includes/class-wpvivid-migrate.php:401
|
1469 |
msgid "Generate"
|
1483 |
|
1484 |
#: includes/class-wpvivid-migrate.php:969
|
1485 |
msgid "1. Visit Key tab page of WPvivid backup plugin of destination site."
|
1486 |
+
msgstr "1. Visita la scheda Chiave nella pagina di WPvivid backup plugin del sito di destinazione."
|
|
|
|
|
1487 |
|
1488 |
#: includes/class-wpvivid-migrate.php:970
|
1489 |
msgid "2. Generate a key by clicking Generate button and copy it."
|
1490 |
msgstr "2. Genera una chiave cliccando il pulsante Genera e copialo."
|
1491 |
|
1492 |
#: includes/class-wpvivid-migrate.php:971
|
1493 |
+
msgid "3. Go back to this page and paste the key in key box below. Lastly, click Save button."
|
1494 |
+
msgstr "3. Torna a questa pagina e incolla il codice nella casella chiave sottostante. Infine, fai clic su Salva."
|
|
|
|
|
|
|
|
|
1495 |
|
1496 |
#: includes/class-wpvivid-migrate.php:985
|
1497 |
+
msgid "The feature can help you transfer a Wordpress site to a new domain(site). It would be a convenient way to migrate your WP site from dev environment to live server or from old server to the new."
|
1498 |
+
msgstr "La funzione può aiutare a trasferire un sito Wordpress su un nuovo dominio (sito). Sarebbe un modo conveniente per migrare il vostro sito WP dall'ambiente dev al live server o dal vecchio server al nuovo."
|
|
|
|
|
|
|
|
|
|
|
|
|
1499 |
|
1500 |
#: includes/class-wpvivid-migrate.php:995
|
1501 |
msgid "Choose the content you want to transfer"
|
1510 |
msgstr "Nota: "
|
1511 |
|
1512 |
#: includes/class-wpvivid-migrate.php:1091
|
1513 |
+
msgid "1. In order to successfully complete the migration, you'd better deactivate <a href=\"https://wpvivid.com/best-redirect-plugins.html\" target=\"_blank\" style=\"text-decoration: none;\">301 redirect plugin</a>, <a href=\"https://wpvivid.com/8-best-wordpress-firewall-plugins.html\" target=\"_blank\" style=\"text-decoration: none;\">firewall and security plugin</a>, and <a href=\"https://wpvivid.com/best-free-wordpress-caching-plugins.html\" target=\"_blank\" style=\"text-decoration: none;\">caching plugin</a> (if they exist) before transferring website."
|
1514 |
+
msgstr "1. Per completare con successo la migrazione, è meglio disattivare <a href=\"https://wpvivid.com/best-redirect-plugins.html\" target=\"_blank\" style=\"text-decoration: none;\">plugin di reindirizzamento 301</a>, <a href=\"https://wpvivid.com/8-best-wordpress-firewall-plugins. html\" target=\"_blank\" style=\"text-decoration: nessuno;\">firewall e plugin di sicurezza</a>, e <a href=\"https://wpvivid.com/best-free-wordpress-caching-plugins.html\" target=\"_blank\" style=\"text-decoration: nessuno;\">plugin di caching</a> (se esistono) prima di trasferire il sito web."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1515 |
|
1516 |
#: includes/class-wpvivid-migrate.php:1092
|
1517 |
+
msgid "2. Please migrate website with the manual way when using <strong>Local by Flywheel</strong> environment."
|
1518 |
+
msgstr "2. Si prega di migrare sito web manualmente quando si utilizza <strong>Local by Flywheel</strong>."
|
|
|
|
|
|
|
|
|
1519 |
|
1520 |
#: includes/class-wpvivid-migrate.php:1098
|
1521 |
+
msgid "<strong>Tips: </strong>The unstable connection between sites could cause a failure of files transfer. In this case, uploading backups to destination site is a good alternative to the automatic website migration."
|
1522 |
+
msgstr "<strong>Suggerimenti: </strong>La connessione instabile tra i siti potrebbe causare un fallimento del trasferimento dei file. In questo caso, il caricamento del backup sul sito di destinazione è una buona alternativa alla migrazione automatica del sito web."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1523 |
|
1524 |
#: includes/class-wpvivid-migrate.php:1099
|
1525 |
+
msgid "How to migrate Wordpress site manually to a new domain(site) with WPvivid backup plugin?"
|
1526 |
+
msgstr "Come migrare manualmente il sito Wordpress su un nuovo dominio (sito) con il plugin di backup WPvivid?"
|
|
|
|
|
|
|
|
|
1527 |
|
1528 |
#: includes/class-wpvivid-migrate.php:1100
|
1529 |
msgid "1. Download a backup in backups list to your computer."
|
1530 |
msgstr "1. Scarica un backup dall'elenco di backup sul tuo computer."
|
1531 |
|
1532 |
#: includes/class-wpvivid-migrate.php:1101
|
1533 |
+
msgid "2. Upload the backup to destination site. There are two ways available to use:"
|
1534 |
+
msgstr "2. Carica il backup del sito di destinazione. Ci sono due modi disponibili:"
|
|
|
|
|
|
|
1535 |
|
1536 |
#: includes/class-wpvivid-migrate.php:1102
|
1537 |
+
msgid "2.1 Upload the backup to the upload section of WPvivid backup plugin in destination site."
|
1538 |
+
msgstr "2.1 Carica il backup nella sezione di caricamento di WPvivid backup plugin nel sito di destinazione."
|
|
|
|
|
|
|
|
|
1539 |
|
1540 |
#: includes/class-wpvivid-migrate.php:1103
|
1541 |
#, php-format
|
1542 |
+
msgid "2.2 Upload the backup with FTP client to backup directory %s in destination site, then click <strong>Scan uploaded backup or received backup</strong> button."
|
1543 |
+
msgstr "2.2 Carica il backup tramite client FTP nella directory di backup %s del sito di destinazione, quindi fai clic sul pulsante <strong>Scan backup caricato o backup ricevuto</strong>."
|
|
|
|
|
|
|
|
|
|
|
|
|
1544 |
|
1545 |
#: includes/class-wpvivid-migrate.php:1104
|
1546 |
+
msgid "3. Once done, the backup appears in backups list. Then, restore the backup."
|
1547 |
+
msgstr "3. Una volta fatto, il backup viene visualizzato nell'elenco dei backup. Quindi, ripristina il backup."
|
|
|
|
|
|
|
1548 |
|
1549 |
#: includes/class-wpvivid-migrate.php:1124
|
1550 |
msgid "Choose what to migrate"
|
1551 |
msgstr "Scegli ciò che vuoi migrare"
|
1552 |
|
1553 |
#: includes/class-wpvivid-migrate.php:1185
|
1554 |
+
msgid "Transfer succeeded. Please scan the backup list on the destination site to display the backup, then restore the backup."
|
1555 |
+
msgstr "Il trasferimento è riuscito. Si prega di scansione l'elenco di backup del sito di destinazione per visualizzare il backup e poi ripristinare il backup."
|
|
|
|
|
|
|
|
|
1556 |
|
1557 |
#: includes/class-wpvivid-migrate.php:1245
|
1558 |
msgid "Upload"
|
1564 |
msgstr "I backup verranno caricati nella directory %s."
|
1565 |
|
1566 |
#: includes/class-wpvivid-migrate.php:1258
|
1567 |
+
msgid "Note: The files you want to upload must be a backup created by WPvivid backup plugin. Make sure that uploading every part of a backup to the directory if the backup is split into many parts"
|
1568 |
+
msgstr "Nota: I file che si desidera caricare devono essere un backup creato dal plugin di backup di WPvivid. Assicurarsi di aver caricato ogni parte del backup nella directory se il backup è suddiviso in più parti"
|
|
|
|
|
|
|
|
|
|
|
|
|
1569 |
|
1570 |
#: includes/class-wpvivid-schedule.php:34
|
1571 |
msgid "12 Hours"
|
1598 |
#: includes/class-wpvivid-schedule.php:282
|
1599 |
#: includes/class-wpvivid-schedule.php:296
|
1600 |
msgid "Creating scheduled tasks failed. Please try again later."
|
1601 |
+
msgstr "Creazione di attività pianificate non riuscita. Si prega di riprovare più tardi."
|
|
|
|
|
1602 |
|
1603 |
+
#: includes/class-wpvivid.php:507
|
1604 |
+
#: includes/class-wpvivid.php:515
|
1605 |
msgid "A backup type is required."
|
1606 |
msgstr "È richiesto un tipo di backup."
|
1607 |
|
1608 |
+
#: includes/class-wpvivid.php:521
|
1609 |
+
#: includes/class-wpvivid.php:530
|
1610 |
msgid "Choose at least one storage location for backups."
|
1611 |
msgstr "Scegli almeno una posizione di archiviazione per il backup."
|
1612 |
|
1613 |
+
#: includes/class-wpvivid.php:541
|
1614 |
+
#: includes/class-wpvivid.php:4557
|
1615 |
msgid "There is no default remote storage configured. Please set it up first."
|
1616 |
+
msgstr "Non è stata configurata una memoria remota predefinita. Si prega di impostarla prima."
|
|
|
|
|
1617 |
|
1618 |
+
#: includes/class-wpvivid.php:1408
|
1619 |
+
#: includes/class-wpvivid.php:1430
|
1620 |
+
#: includes/class-wpvivid.php:1456
|
1621 |
+
#: includes/class-wpvivid.php:1581
|
1622 |
#: includes/class-wpvivid.php:1701
|
1623 |
msgid "Too many resumption attempts."
|
1624 |
msgstr "Troppi tentativi di ripresa."
|
1625 |
|
1626 |
+
#: includes/class-wpvivid.php:1589
|
1627 |
+
#: includes/class-wpvivid.php:1709
|
1628 |
msgid "Task timed out."
|
1629 |
msgstr "Task è scaduto."
|
1630 |
|
1631 |
#: includes/class-wpvivid.php:2479
|
1632 |
+
msgid "Retrieving the backup(s) information failed while deleting the selected backup(s). Please try again later."
|
1633 |
+
msgstr "Il recupero delle informazioni del backup non è riuscito mentre si cancellavano i backup selezionati. Riprovare più tardi."
|
|
|
|
|
|
|
|
|
1634 |
|
1635 |
#: includes/class-wpvivid.php:2489
|
1636 |
+
msgid "Unable to delete the locked backup. Please unlock it first and try again."
|
1637 |
+
msgstr "Non è possibile cancellare il backup bloccato. Si prega di sbloccarlo prima e provare di nuovo."
|
|
|
|
|
|
|
1638 |
|
1639 |
#: includes/class-wpvivid.php:2592
|
1640 |
msgid "You have successfully added a remote storage."
|
1641 |
msgstr "Hai aggiunto con successo uno storage remoto."
|
1642 |
|
1643 |
#: includes/class-wpvivid.php:2644
|
1644 |
+
msgid "Fail to delete the remote storage, can not retrieve the storage infomation. Please try again."
|
1645 |
+
msgstr "Impossibile cancellare lo storage remoto, non è possibile recuperare le informazioni sulla storage. Si prega di riprovare."
|
|
|
|
|
|
|
|
|
1646 |
|
1647 |
#: includes/class-wpvivid.php:2672
|
1648 |
msgid "Failed to get the remote storage information. Please try again later."
|
1649 |
+
msgstr "Impossibile ottenere le informazioni di archiviazione remota. Si prega di riprovare più tardi."
|
|
|
|
|
1650 |
|
1651 |
#: includes/class-wpvivid.php:3416
|
1652 |
msgid "restore failed error unknown"
|
1654 |
|
1655 |
#: includes/class-wpvivid.php:3449
|
1656 |
msgid "The restore file not found. Please verify the file exists."
|
1657 |
+
msgstr "Il file di ripristino non è stato trovato. Si prega di verificare che il file esista."
|
|
|
|
|
1658 |
|
1659 |
+
#: includes/class-wpvivid.php:3561
|
1660 |
+
#: includes/class-wpvivid.php:3577
|
1661 |
msgid "The last backup message not found."
|
1662 |
msgstr "L'ultimo messaggio di backup non è stato trovato."
|
1663 |
|
1667 |
|
1668 |
#: includes/class-wpvivid.php:3677
|
1669 |
#, php-format
|
1670 |
+
msgid "%d backup tasks have been completed. Please switch to <a href=\"#\" onclick=\"wpvivid_click_switch_page('wrap', 'wpvivid_tab_log', true);\">Log</a> page to check the details."
|
1671 |
+
msgstr "%d I task di backup sono stati completati.. Vai alla <a href=\"#\" onclick=\"wpvivid_click_switch_page('wrap', 'wpvivid_tab_log', true);\">Pagina di Log</a> per controllare i dettagli."
|
|
|
|
|
|
|
|
|
|
|
|
|
1672 |
|
1673 |
#: includes/class-wpvivid.php:3770
|
1674 |
msgid "Getting backup directory failed. Please try again later."
|
1686 |
msgid "Choose one storage from the list to be the default storage."
|
1687 |
msgstr "Scegli uno storage dalla lista come storage predefinito."
|
1688 |
|
1689 |
+
#: includes/class-wpvivid.php:4465
|
1690 |
+
#: includes/class-wpvivid.php:4473
|
1691 |
msgid "The maximum zip file size is required."
|
1692 |
msgstr "È richiesta la dimensione massima del file zip."
|
1693 |
|
1694 |
+
#: includes/class-wpvivid.php:4479
|
1695 |
+
#: includes/class-wpvivid.php:4486
|
1696 |
msgid "The size for excluded files is required."
|
1697 |
msgstr "È richiesta la dimensione per i file esclusi."
|
1698 |
|
1699 |
+
#: includes/class-wpvivid.php:4492
|
1700 |
+
#: includes/class-wpvivid.php:4499
|
1701 |
msgid "The maximum execution time for PHP script is required."
|
1702 |
msgstr "È richiesto il tempo di esecuzione massimo per gli script PHP."
|
1703 |
|
1704 |
+
#: includes/class-wpvivid.php:4505
|
1705 |
+
#: includes/class-wpvivid.php:4512
|
1706 |
msgid "The local storage path is required."
|
1707 |
msgstr "È necessario il percorso di storage locale."
|
1708 |
|
1710 |
msgid "An email address is required."
|
1711 |
msgstr "Un indirizzo e-mail è obbligatorio."
|
1712 |
|
1713 |
+
#: includes/class-wpvivid.php:4531
|
1714 |
+
#: includes/class-wpvivid.php:4535
|
1715 |
+
msgid "The pdo_mysql extension is not detected. Please install the extension first or choose wpdb option for Database connection method."
|
1716 |
+
msgstr "L'estensione pdo_mysql non viene rilevata. Si prega di installare prima l'estensione o di scegliere l'opzione wpdb per il metodo di connessione al database."
|
|
|
|
|
|
|
|
|
1717 |
|
1718 |
#: includes/class-wpvivid.php:4654
|
1719 |
+
msgid "The selected file is not the setting file for WPvivid. Please upload the right file."
|
1720 |
+
msgstr "Il file selezionato non è il file di impostazione di WPvivid. Si prega di caricare il file giusto."
|
|
|
|
|
|
|
|
|
1721 |
|
1722 |
#: includes/class-wpvivid.php:4676
|
1723 |
msgid "Invalid email address"
|
1732 |
msgstr "Salva i backup su localhost (server web)"
|
1733 |
|
1734 |
#: includes/class-wpvivid.php:5406
|
1735 |
+
msgid "Send backups to remote storage (choose this option, the local backup will be deleted after uploading to remote storage completely)"
|
1736 |
+
msgstr "Invia i backup allo storage remoto (scegli questa opzione, il backup locale verrà cancellato dopo averlo caricato completamente nello storage remoto)"
|
|
|
|
|
|
|
|
|
1737 |
|
1738 |
#: includes/class-wpvivid.php:5571
|
1739 |
msgid "User's email address is required."
|
1765 |
#: includes/customclass/class-wpvivid-ftpclass.php:184
|
1766 |
#: includes/customclass/class-wpvivid-google-drive.php:319
|
1767 |
#: includes/customclass/class-wpvivid-google-drive.php:447
|
1768 |
+
msgid "A name to help you identify the storage if you have multiple remote storage connected."
|
1769 |
+
msgstr "Un nome per aiutarti a identificare lo storage se hai collegato più storage remoti."
|
|
|
|
|
|
|
|
|
1770 |
|
1771 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:82
|
1772 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:220
|
1806 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:111
|
1807 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:249
|
1808 |
msgid "Enter an existed Bucket to create a custom backup storage directory."
|
1809 |
+
msgstr "Inserisci un Bucket esistente per creare una directory di archiviazione di backup personalizzata."
|
|
|
|
|
1810 |
|
1811 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:118
|
1812 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:256
|
1815 |
|
1816 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:123
|
1817 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:261
|
1818 |
+
msgid "Customize the directory where you want to store backups within the Bucket."
|
1819 |
+
msgstr "Personalizza la directory in cui si desidera archiviare i backup all'interno del Bucket."
|
|
|
|
|
|
|
1820 |
|
1821 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:131
|
1822 |
#: includes/customclass/class-wpvivid-dropbox.php:509
|
1829 |
#: includes/customclass/class-wpvivid-dropbox.php:515
|
1830 |
#: includes/customclass/class-wpvivid-ftpclass.php:131
|
1831 |
#: includes/customclass/class-wpvivid-google-drive.php:357
|
1832 |
+
msgid "Once checked, all this sites backups sent to a remote storage destination will be uploaded to this storage by default."
|
1833 |
+
msgstr "Una volta spuntati, tutti i backup di questi siti inviati a una destinazione di archiviazione remota saranno caricati in questo storage di default."
|
|
|
|
|
|
|
|
|
1834 |
|
1835 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:145
|
1836 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:269
|
1839 |
|
1840 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:151
|
1841 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:275
|
1842 |
+
msgid "Check the option to use Amazon S3 Standard-Infrequent Access (S3 Standard-IA) storage class for data transfer."
|
1843 |
+
msgstr "Seleziona l'opzione per utilizzare la classe di archiviazione Amazon S3 Standard-Infrequent Access (S3 Standard-IA) per il trasferimento dei dati."
|
|
|
|
|
|
|
|
|
1844 |
|
1845 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:159
|
1846 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:283
|
1849 |
|
1850 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:165
|
1851 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:289
|
1852 |
+
msgid "Check the option to use Amazon S3 server-side encryption to protect data."
|
1853 |
+
msgstr "Seleziona l'opzione per utilizzare la crittazione lato server di Amazon S3 per proteggere i dati."
|
|
|
|
|
|
|
1854 |
|
1855 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:173
|
1856 |
#: includes/customclass/class-wpvivid-ftpclass.php:153
|
1858 |
msgstr "Testa e Aggiungi"
|
1859 |
|
1860 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:178
|
1861 |
+
msgid "Click the button to connect to Amazon S3 storage and add it to the storage list below."
|
1862 |
+
msgstr "Clicca il pulsante per connetterti allo storage di Amazon S3 e aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
1863 |
|
1864 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:187
|
1865 |
+
msgid "The simplexml extension is not detected. Please install the extension first."
|
1866 |
+
msgstr "L'estensione simplexml non viene rilevata. Si prega di installare prima l'estensione."
|
|
|
|
|
|
|
1867 |
|
1868 |
#: includes/customclass/class-wpvivid-amazons3-plus.php:302
|
1869 |
#: includes/customclass/class-wpvivid-dropbox.php:614
|
1886 |
msgstr "Dropbox"
|
1887 |
|
1888 |
#: includes/customclass/class-wpvivid-dropbox.php:462
|
1889 |
+
msgid "Please read <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">this privacy policy</a> for use of our Dropbox authorization app (none of your backup data is sent to us)."
|
1890 |
+
msgstr "Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">questa informativa sulla privacy</a> per l'utilizzo della nostra applicazione di autorizzazione per Dropbox (nessuno dei dati di backup viene inviato a noi)."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1891 |
|
1892 |
#: includes/customclass/class-wpvivid-dropbox.php:465
|
1893 |
#: includes/customclass/class-wpvivid-dropbox.php:590
|
1914 |
msgstr "Autenticati con Dropbox"
|
1915 |
|
1916 |
#: includes/customclass/class-wpvivid-dropbox.php:527
|
1917 |
+
msgid "Click the button to get Dropbox authentication and add it to the storage list below."
|
1918 |
+
msgstr "Clicca il pulsante per ottenere il codice di autenticazione di Dropbox e aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
1919 |
|
1920 |
#: includes/customclass/class-wpvivid-ftpclass.php:36
|
1921 |
msgid "FTP"
|
1972 |
|
1973 |
#: includes/customclass/class-wpvivid-ftpclass.php:117
|
1974 |
#: includes/customclass/class-wpvivid-ftpclass.php:232
|
1975 |
+
msgid "Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /home/username/customfolder"
|
1976 |
+
msgstr "Inserisci un percorso assoluto e una sottodirectory personalizzata (opzionale) per tenere i backup del sito web corrente. Ad esempio, /home/nomeutente/cartellapersonalizzata"
|
|
|
|
|
|
|
|
|
|
|
1977 |
|
1978 |
#: includes/customclass/class-wpvivid-ftpclass.php:139
|
1979 |
#: includes/customclass/class-wpvivid-ftpclass.php:240
|
1980 |
msgid "Uncheck this to enable FTP active mode."
|
1981 |
+
msgstr "Deseleziona questa opzione per abilitare il server FTP in modalità attiva."
|
|
|
1982 |
|
1983 |
#: includes/customclass/class-wpvivid-ftpclass.php:145
|
1984 |
#: includes/customclass/class-wpvivid-ftpclass.php:246
|
1985 |
+
msgid "Uncheck the option to use FTP active mode when transferring files. Make sure the FTP server you are configuring supports the active FTP mode."
|
1986 |
+
msgstr "Deselezionare l'opzione per utilizzare l'FTP in modalità attiva quando il trasferimento di file. Assicurarsi che il server FTP configurazione supporti la modalità FTP attiva."
|
|
|
|
|
|
|
|
|
|
|
1987 |
|
1988 |
#: includes/customclass/class-wpvivid-ftpclass.php:158
|
1989 |
+
msgid "Click the button to connect to FTP server and add it to the storage list below."
|
1990 |
+
msgstr "Clicca il pulsante per connetterti al server FTP e aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
1991 |
|
1992 |
#: includes/customclass/class-wpvivid-google-drive.php:111
|
1993 |
#: includes/customclass/class-wpvivid-google-drive.php:207
|
1994 |
+
msgid "Authentication failed, the client_secrets.json file is missing. Please make sure the client_secrets.json file is in wpvivid-backuprestore\\includes\\customclass directory."
|
1995 |
+
msgstr "Autenticazione non riuscita, il file client_secrets.json è mancante. Si prega di assicurarsi che il file client_secrets.json sia in wpvivid-backuprestore\\include\\customclass directory."
|
|
|
|
|
|
|
|
|
|
|
|
|
1996 |
|
1997 |
#: includes/customclass/class-wpvivid-google-drive.php:115
|
1998 |
#: includes/customclass/class-wpvivid-google-drive.php:211
|
1999 |
+
msgid "Authentication failed, the format of the client_secrets.json file is incorrect. Please delete and re-install the plugin to recreate the file."
|
2000 |
+
msgstr "Autenticazione non riuscita, il formato del file client_secrets.json non è corretto. Si consiglia di cancellare e re-installare il plugin per ricreare il file."
|
|
|
|
|
|
|
|
|
|
|
2001 |
|
2002 |
#: includes/customclass/class-wpvivid-google-drive.php:272
|
2003 |
msgid "You have authenticated the Google Drive account as your remote storage."
|
2008 |
msgstr "Google Drive"
|
2009 |
|
2010 |
#: includes/customclass/class-wpvivid-google-drive.php:304
|
2011 |
+
msgid "Please read <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">this privacy policy</a> for use of our Google Drive authorization app (none of your backup data is sent to us)."
|
2012 |
+
msgstr "Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">questa informativa sulla privacy</a> per l'utilizzo della nostra applicazione di autorizzazione a Google Drive (nessuno dei dati di backup viene inviato a noi)."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013 |
|
2014 |
#: includes/customclass/class-wpvivid-google-drive.php:307
|
2015 |
#: includes/customclass/class-wpvivid-google-drive.php:435
|
2026 |
msgstr "Autenticati con Google Drive"
|
2027 |
|
2028 |
#: includes/customclass/class-wpvivid-google-drive.php:369
|
2029 |
+
msgid "Click the button to get Google authentication and add it to the storage list below."
|
2030 |
+
msgstr "Clicca il pulsante per ottenere il codice di autenticazione di Google e aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
2031 |
|
2032 |
#: includes/customclass/class-wpvivid-one-drive.php:240
|
2033 |
+
msgid "You have authenticated the Microsoft OneDrive account as your remote storage."
|
|
|
2034 |
msgstr "Hai autenticato l'account Microsoft OneDrive come tuo storage remoto."
|
2035 |
|
2036 |
#: includes/customclass/class-wpvivid-one-drive.php:260
|
2038 |
msgstr "Microsoft OneDrive"
|
2039 |
|
2040 |
#: includes/customclass/class-wpvivid-one-drive.php:272
|
2041 |
+
msgid "Please read <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">this privacy policy</a> for use of our Microsoft OneDrive authorization app (none of your backup data is sent to us)."
|
2042 |
+
msgstr "Si prega di leggere <a target=\"_blank\" href=\"https://wpvivid.com/privacy-policy\" style=\"text-decoration: none;\">questa informativa sulla privacy</a> per l'utilizzo della nostra applicazione di autorizzazione a Microsoft OneDrive (nessuno dei dati di backup viene inviato a noi)."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2043 |
|
2044 |
#: includes/customclass/class-wpvivid-one-drive.php:275
|
2045 |
#: includes/customclass/class-wpvivid-one-drive.php:403
|
2056 |
msgstr "Autenticati con Microsoft OneDrive"
|
2057 |
|
2058 |
#: includes/customclass/class-wpvivid-one-drive.php:337
|
2059 |
+
msgid "Click the button to get Microsoft authentication and add it to the storage list below."
|
2060 |
+
msgstr "Clicca il pulsante per ottenere il codice di autenticazione di Microsoft e aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
2061 |
|
2062 |
#: includes/customclass/class-wpvivid-s3compat.php:403
|
2063 |
msgid "DigitalOcean Spaces"
|
2101 |
#: includes/customclass/class-wpvivid-s3compat.php:461
|
2102 |
#: includes/customclass/class-wpvivid-s3compat.php:576
|
2103 |
msgid "Enter an existed Space to create a custom backup storage directory."
|
2104 |
+
msgstr "Inserisci uno Spazio esistente per creare una directory di archiviazione di backup personalizzata."
|
|
|
|
|
2105 |
|
2106 |
#: includes/customclass/class-wpvivid-s3compat.php:473
|
2107 |
#: includes/customclass/class-wpvivid-s3compat.php:588
|
2108 |
+
msgid "Customize the directory where you want to store backups within the Space."
|
2109 |
+
msgstr "Personalizzare la directory in cui si desidera archiviare i backup all'interno dello Spazio."
|
|
|
|
|
|
|
2110 |
|
2111 |
#: includes/customclass/class-wpvivid-s3compat.php:480
|
2112 |
#: includes/customclass/class-wpvivid-s3compat.php:595
|
2119 |
msgstr "Inserisci l'Endpoint di DigitalOcean per l'archiviazione"
|
2120 |
|
2121 |
#: includes/customclass/class-wpvivid-s3compat.php:512
|
2122 |
+
msgid "Click the button to connect to DigitalOcean Spaces storage and add it to the storage list below."
|
2123 |
+
msgstr "Clicca il pulsante per connetterti allo storage di DigitalOcean Space e di aggiungerlo alla lista degli storage qui di seguito."
|
|
|
|
|
|
|
|
|
2124 |
|
2125 |
#: includes/customclass/class-wpvivid-sftpclass.php:38
|
2126 |
msgid "SFTP"
|
2183 |
|
2184 |
#: includes/customclass/class-wpvivid-sftpclass.php:121
|
2185 |
#: includes/customclass/class-wpvivid-sftpclass.php:236
|
2186 |
+
msgid "Enter an absolute path and a custom subdirectory (optional) for holding the backups of current website. For example, /var/customfolder/"
|
2187 |
+
msgstr "Inserisci un percorso assoluto e una sottodirectory personalizzata (opzionale) per tenere i backup del sito web corrente. Per esempio, /var/cartellapersonalizzata/"
|
|
|
|
|
|
|
|
|
|
|
2188 |
|
2189 |
#: includes/customclass/class-wpvivid-sftpclass.php:148
|
2190 |
+
msgid "Click the button to connect to SFTP server and add it to the storage list below."
|
2191 |
+
msgstr "Clicca il pulsante per connetterti al server SFTP e aggiungerlo alla lista degli storage qui di seguito."
|
2192 |
+
|
|
|
|
|
|
languages/{wpvivid.pot → wpvivid-backuprestore.pot}
RENAMED
File without changes
|
languages/wpvivid-it_IT.mo
DELETED
Binary file
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
-
|
2 |
Contributors: wpvivid
|
3 |
Tags: move, clone, migrate, copy, backup, restore, auto backup, cloud backup
|
4 |
Requires at least: 4.5
|
5 |
-
Tested up to: 5.4.
|
6 |
Requires PHP: 5.3
|
7 |
-
Stable tag: 0.9.
|
8 |
License: GPLv3 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
|
10 |
|
@@ -179,6 +179,10 @@ Thank you for translating WPvivid Backup Plugin to your languages!
|
|
179 |
* Valentin Lyong (Bulgarian)
|
180 |
|
181 |
== Changelog ==
|
|
|
|
|
|
|
|
|
182 |
= 0.9.42 =
|
183 |
- Added Bulgarian language translation.
|
184 |
- Fixed a fatal error occurred during website transfer in some cases.
|
1 |
+
=== Migrate & Backup WordPress - WPvivid Backup Plugin ===
|
2 |
Contributors: wpvivid
|
3 |
Tags: move, clone, migrate, copy, backup, restore, auto backup, cloud backup
|
4 |
Requires at least: 4.5
|
5 |
+
Tested up to: 5.4.2
|
6 |
Requires PHP: 5.3
|
7 |
+
Stable tag: 0.9.43
|
8 |
License: GPLv3 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
|
10 |
|
179 |
* Valentin Lyong (Bulgarian)
|
180 |
|
181 |
== Changelog ==
|
182 |
+
= 0.9.43 =
|
183 |
+
- Optimized migration process.
|
184 |
+
- Fixed some bugs in the plugin code.
|
185 |
+
- Optimized the plugin code.
|
186 |
= 0.9.42 =
|
187 |
- Added Bulgarian language translation.
|
188 |
- Fixed a fatal error occurred during website transfer in some cases.
|
wpvivid-backuprestore.php
CHANGED
@@ -7,12 +7,12 @@
|
|
7 |
* @wordpress-plugin
|
8 |
* Plugin Name: WPvivid Backup Plugin
|
9 |
* Description: Clone or copy WP sites then move or migrate them to new host (new domain), schedule backups, transfer backups to leading remote storage. All in one.
|
10 |
-
* Version: 0.9.
|
11 |
* Author: WPvivid Team
|
12 |
* Author URI: https://wpvivid.com
|
13 |
* License: GPL-3.0+
|
14 |
* License URI: http://www.gnu.org/copyleft/gpl.html
|
15 |
-
* Text Domain: wpvivid
|
16 |
* Domain Path: /languages
|
17 |
*/
|
18 |
|
@@ -21,7 +21,7 @@ if ( ! defined( 'WPINC' ) ) {
|
|
21 |
die;
|
22 |
}
|
23 |
|
24 |
-
define( 'WPVIVID_PLUGIN_VERSION', '0.9.
|
25 |
//
|
26 |
define('WPVIVID_RESTORE_INIT','init');
|
27 |
define('WPVIVID_RESTORE_READY','ready');
|
7 |
* @wordpress-plugin
|
8 |
* Plugin Name: WPvivid Backup Plugin
|
9 |
* Description: Clone or copy WP sites then move or migrate them to new host (new domain), schedule backups, transfer backups to leading remote storage. All in one.
|
10 |
+
* Version: 0.9.43
|
11 |
* Author: WPvivid Team
|
12 |
* Author URI: https://wpvivid.com
|
13 |
* License: GPL-3.0+
|
14 |
* License URI: http://www.gnu.org/copyleft/gpl.html
|
15 |
+
* Text Domain: wpvivid-backuprestore
|
16 |
* Domain Path: /languages
|
17 |
*/
|
18 |
|
21 |
die;
|
22 |
}
|
23 |
|
24 |
+
define( 'WPVIVID_PLUGIN_VERSION', '0.9.43' );
|
25 |
//
|
26 |
define('WPVIVID_RESTORE_INIT','init');
|
27 |
define('WPVIVID_RESTORE_READY','ready');
|