All-in-One WP Migration - Version 7.9

Version Description

Added

  • Uploads, plugins, and themes path to the backup

Removed

  • Sorting of active plugins on import
Download this release

Release Info

Developer bangelov
Plugin Icon 128x128 All-in-One WP Migration
Version 7.9
Comparing to
See all releases

Code changes from version 7.8 to 7.9

all-in-one-wp-migration.php CHANGED
@@ -5,7 +5,7 @@
5
* Description: Migration tool for all your blog data. Import or Export your blog content with a single click.
6
* Author: ServMask
7
* Author URI: https://servmask.com/
8
- * Version: 7.8
9
* Text Domain: all-in-one-wp-migration
10
* Domain Path: /languages
11
* Network: True
5
* Description: Migration tool for all your blog data. Import or Export your blog content with a single click.
6
* Author: ServMask
7
* Author URI: https://servmask.com/
8
+ * Version: 7.9
9
* Text Domain: all-in-one-wp-migration
10
* Domain Path: /languages
11
* Network: True
constants.php CHANGED
@@ -35,7 +35,7 @@ define( 'AI1WM_DEBUG', false );
35
// ==================
36
// = Plugin Version =
37
// ==================
38
- define( 'AI1WM_VERSION', '7.8' );
39
40
// ===============
41
// = Plugin Name =
35
// ==================
36
// = Plugin Version =
37
// ==================
38
+ define( 'AI1WM_VERSION', '7.9' );
39
40
// ===============
41
// = Plugin Name =
functions.php CHANGED
@@ -997,8 +997,6 @@ function ai1wm_activate_plugins( $plugins ) {
997
}
998
}
999
1000
- sort( $current );
1001
-
1002
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
1003
}
1004
@@ -1076,8 +1074,6 @@ function ai1wm_deactivate_plugins( $plugins ) {
1076
}
1077
}
1078
1079
- sort( $current );
1080
-
1081
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
1082
}
1083
@@ -1097,8 +1093,6 @@ function ai1wm_deactivate_jetpack_modules( $modules ) {
1097
}
1098
}
1099
1100
- sort( $current );
1101
-
1102
return update_option( AI1WM_JETPACK_ACTIVE_MODULES, $current );
1103
}
1104
@@ -1581,6 +1575,19 @@ function ai1wm_get_filters( $tag ) {
1581
return $filters;
1582
}
1583
1584
/**
1585
* i18n friendly version of basename()
1586
*
997
}
998
}
999
1000
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
1001
}
1002
1074
}
1075
}
1076
1077
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
1078
}
1079
1093
}
1094
}
1095
1096
return update_option( AI1WM_JETPACK_ACTIVE_MODULES, $current );
1097
}
1098
1575
return $filters;
1576
}
1577
1578
+ /**
1579
+ * Get WordPress uploads directory
1580
+ *
1581
+ * @return string
1582
+ */
1583
+ function ai1wm_get_uploads_dir() {
1584
+ if ( ( $upload_dir = wp_upload_dir() ) ) {
1585
+ if ( isset( $upload_dir['basedir'] ) ) {
1586
+ return $upload_dir['basedir'];
1587
+ }
1588
+ }
1589
+ }
1590
+
1591
/**
1592
* i18n friendly version of basename()
1593
*
lib/model/class-ai1wm-extensions.php CHANGED
@@ -201,7 +201,7 @@ class Ai1wm_Extensions {
201
'about' => AI1WMME_PLUGIN_ABOUT,
202
'basename' => AI1WMME_PLUGIN_BASENAME,
203
'version' => AI1WMME_VERSION,
204
- 'requires' => '3.76',
205
'short' => AI1WMME_PLUGIN_SHORT,
206
);
207
}
201
'about' => AI1WMME_PLUGIN_ABOUT,
202
'basename' => AI1WMME_PLUGIN_BASENAME,
203
'version' => AI1WMME_VERSION,
204
+ 'requires' => '3.82',
205
'short' => AI1WMME_PLUGIN_SHORT,
206
);
207
}
lib/model/export/class-ai1wm-export-config.php CHANGED
@@ -132,13 +132,13 @@ class Ai1wm_Export_Config {
132
$config['Plugin'] = array( 'Version' => AI1WM_VERSION );
133
134
// Set WordPress version and content
135
- $config['WordPress'] = array( 'Version' => $wp_version, 'Content' => WP_CONTENT_DIR );
136
137
// Set database version
138
$config['Database'] = array( 'Version' => $mysql->version(), 'Charset' => DB_CHARSET, 'Collate' => DB_COLLATE );
139
140
// Set PHP version
141
- $config['PHP'] = array( 'Version' => PHP_VERSION );
142
143
// Set active plugins
144
$config['Plugins'] = array_values( array_diff( ai1wm_active_plugins(), ai1wm_active_servmask_plugins() ) );
132
$config['Plugin'] = array( 'Version' => AI1WM_VERSION );
133
134
// Set WordPress version and content
135
+ $config['WordPress'] = array( 'Version' => $wp_version, 'Content' => WP_CONTENT_DIR, 'Plugins' => WP_PLUGIN_DIR, 'Themes' => get_theme_root(), 'Uploads' => ai1wm_get_uploads_dir() );
136
137
// Set database version
138
$config['Database'] = array( 'Version' => $mysql->version(), 'Charset' => DB_CHARSET, 'Collate' => DB_COLLATE );
139
140
// Set PHP version
141
+ $config['PHP'] = array( 'Version' => PHP_VERSION, 'Integer' => PHP_INT_SIZE );
142
143
// Set active plugins
144
$config['Plugins'] = array_values( array_diff( ai1wm_active_plugins(), ai1wm_active_servmask_plugins() ) );
lib/view/assets/javascript/backups.min.js CHANGED
@@ -126,7 +126,7 @@ jQuery(document).ready(function ($) {
126
127
// Idea
128
129
- $('#ai1wm-feedback-type-link-1').click(function (e) {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
@@ -175,13 +175,13 @@ jQuery(document).ready(function ($) {
175
dataType: 'json',
176
async: true,
177
data: {
178
- 'secret_key': ai1wm_feedback.secret_key,
179
- 'ai1wm_type': type,
180
- 'ai1wm_email': email,
181
- 'ai1wm_message': message,
182
- 'ai1wm_terms': +terms
183
},
184
- dataFilter: function dataFilter(data, type) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
@@ -272,12 +272,12 @@ jQuery(document).ready(function ($) {
272
dataType: 'json',
273
async: true,
274
data: {
275
- 'secret_key': ai1wm_report.secret_key,
276
- 'ai1wm_email': email,
277
- 'ai1wm_message': message,
278
- 'ai1wm_terms': +terms
279
},
280
- dataFilter: function dataFilter(data, type) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
@@ -378,7 +378,7 @@ Import.prototype.setParams = function (params) {
378
379
Import.prototype.start = function (options, retries) {
380
var self = this;
381
- var retries = retries || 0;
382
383
// Set stop flag
384
if (retries === 0) {
@@ -412,14 +412,14 @@ Import.prototype.start = function (options, retries) {
412
type: 'POST',
413
dataType: 'json',
414
data: params,
415
- dataFilter: function dataFilter(data, type) {
416
return Ai1wm.Util.json(data);
417
}
418
}).done(function () {
419
self.getStatus();
420
- }).done(function (params) {
421
- if (params) {
422
- self.run(params);
423
}
424
}).fail(function () {
425
var timeout = retries * 1000;
@@ -439,7 +439,7 @@ Import.prototype.start = function (options, retries) {
439
440
Import.prototype.run = function (params, retries) {
441
var self = this;
442
- var retries = retries || 0;
443
444
// Stop running import
445
if (this.stopImport) {
@@ -452,12 +452,12 @@ Import.prototype.run = function (params, retries) {
452
type: 'POST',
453
dataType: 'json',
454
data: params,
455
- dataFilter: function dataFilter(data, type) {
456
return Ai1wm.Util.json(data);
457
}
458
- }).done(function (params) {
459
- if (params) {
460
- self.run(params);
461
}
462
}).fail(function () {
463
var timeout = retries * 1000;
@@ -470,7 +470,7 @@ Import.prototype.run = function (params, retries) {
470
471
Import.prototype.confirm = function (options, retries) {
472
var self = this;
473
- var retries = retries || 0;
474
475
// Stop running import
476
if (this.stopImport) {
@@ -491,14 +491,14 @@ Import.prototype.confirm = function (options, retries) {
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
- dataFilter: function dataFilter(data, type) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
498
self.getStatus();
499
- }).done(function (params) {
500
- if (params) {
501
- self.run(params);
502
}
503
}).fail(function () {
504
var timeout = retries * 1000;
@@ -518,7 +518,7 @@ Import.prototype.confirm = function (options, retries) {
518
519
Import.prototype.blogs = function (options, retries) {
520
var self = this;
521
- var retries = retries || 0;
522
523
// Stop running import
524
if (this.stopImport) {
@@ -539,14 +539,14 @@ Import.prototype.blogs = function (options, retries) {
539
type: 'POST',
540
dataType: 'json',
541
data: params,
542
- dataFilter: function dataFilter(data, type) {
543
return Ai1wm.Util.json(data);
544
}
545
}).done(function () {
546
self.getStatus();
547
- }).done(function (params) {
548
- if (params) {
549
- self.run(params);
550
}
551
}).fail(function () {
552
var timeout = retries * 1000;
@@ -566,7 +566,7 @@ Import.prototype.blogs = function (options, retries) {
566
567
Import.prototype.clean = function (options, retries) {
568
var self = this;
569
- var retries = retries || 0;
570
571
// Set stop flag
572
this.stopImport = true;
@@ -588,7 +588,7 @@ Import.prototype.clean = function (options, retries) {
588
type: 'POST',
589
dataType: 'json',
590
data: params,
591
- dataFilter: function dataFilter(data, type) {
592
return Ai1wm.Util.json(data);
593
}
594
}).done(function () {
@@ -626,7 +626,7 @@ Import.prototype.getStatus = function () {
626
type: 'GET',
627
dataType: 'json',
628
cache: false,
629
- dataFilter: function dataFilter(data, type) {
630
return Ai1wm.Util.json(data);
631
}
632
}).done(function (params) {
@@ -652,7 +652,7 @@ Import.prototype.getStatus = function () {
652
}).fail(function () {
653
// Import is not done yet, let's check status in 3 seconds
654
setTimeout(self.getStatus.bind(self), 3000);
655
- });;
656
};
657
658
Import.prototype.setStatus = function (params) {
@@ -712,7 +712,6 @@ var Modal = function Modal() {
712
713
// Error Modal
714
this.error = function (params) {
715
-
716
// Create the modal container
717
var container = $('<div></div>');
718
@@ -760,14 +759,12 @@ var Modal = function Modal() {
760
// Progress Modal
761
this.progress = function (params) {
762
if (this.view === 'progress') {
763
-
764
// Update progress bar meter
765
this.progress.progressBarMeter.width(params.percent + '%');
766
767
// Update progress bar percent
768
this.progress.progressBarPercent.text(params.percent + '%');
769
} else {
770
-
771
// Create the modal container
772
var container = $('<div></div>');
773
@@ -777,9 +774,6 @@ var Modal = function Modal() {
777
// Create header to hold progress bar
778
var header = $('<h1></h1>');
779
780
- // Create paragraph to hold mesage
781
- var message = $('<p></p>');
782
-
783
// Create action section
784
var action = $('<div></div>');
785
@@ -825,7 +819,6 @@ var Modal = function Modal() {
825
826
// Pro Modal
827
this.pro = function (params) {
828
-
829
// Create the modal container
830
var container = $('<div></div>');
831
@@ -872,7 +865,6 @@ var Modal = function Modal() {
872
873
// Confirm Modal
874
this.confirm = function (params) {
875
-
876
// Create the modal container
877
var container = $('<div></div>');
878
@@ -932,7 +924,6 @@ var Modal = function Modal() {
932
933
// Blogs Modal
934
this.blogs = function (params) {
935
-
936
// Create the modal container
937
var container = $('<form></form>');
938
@@ -980,7 +971,6 @@ var Modal = function Modal() {
980
981
// Info Modal
982
this.info = function (params) {
983
-
984
// Create the modal container
985
var container = $('<div></div>');
986
@@ -1028,7 +1018,6 @@ var Modal = function Modal() {
1028
1029
// Done Modal
1030
this.done = function (params) {
1031
-
1032
// Create the modal container
1033
var container = $('<div></div>');
1034
@@ -1084,7 +1073,6 @@ var Modal = function Modal() {
1084
};
1085
1086
Modal.prototype.render = function (params) {
1087
-
1088
// Show modal
1089
switch (params.type) {
1090
case 'pro':
@@ -1184,7 +1172,7 @@ Export.prototype.setParams = function (params) {
1184
1185
Export.prototype.start = function (options, retries) {
1186
var self = this;
1187
- var retries = retries || 0;
1188
1189
// Set stop flag
1190
if (retries === 0) {
@@ -1218,14 +1206,14 @@ Export.prototype.start = function (options, retries) {
1218
type: 'POST',
1219
dataType: 'json',
1220
data: params,
1221
- dataFilter: function dataFilter(data, type) {
1222
return Ai1wm.Util.json(data);
1223
}
1224
}).done(function () {
1225
self.getStatus();
1226
- }).done(function (params) {
1227
- if (params) {
1228
- self.run(params);
1229
}
1230
}).fail(function () {
1231
var timeout = retries * 1000;
@@ -1245,7 +1233,7 @@ Export.prototype.start = function (options, retries) {
1245
1246
Export.prototype.run = function (params, retries) {
1247
var self = this;
1248
- var retries = retries || 0;
1249
1250
// Stop running export
1251
if (this.stopExport) {
@@ -1258,12 +1246,12 @@ Export.prototype.run = function (params, retries) {
1258
type: 'POST',
1259
dataType: 'json',
1260
data: params,
1261
- dataFilter: function dataFilter(data, type) {
1262
return Ai1wm.Util.json(data);
1263
}
1264
- }).done(function (params) {
1265
- if (params) {
1266
- self.run(params);
1267
}
1268
}).fail(function () {
1269
var timeout = retries * 1000;
@@ -1283,7 +1271,7 @@ Export.prototype.run = function (params, retries) {
1283
1284
Export.prototype.clean = function (options, retries) {
1285
var self = this;
1286
- var retries = retries || 0;
1287
1288
// Set stop flag
1289
this.stopExport = true;
@@ -1305,7 +1293,7 @@ Export.prototype.clean = function (options, retries) {
1305
type: 'POST',
1306
dataType: 'json',
1307
data: params,
1308
- dataFilter: function dataFilter(data, type) {
1309
return Ai1wm.Util.json(data);
1310
}
1311
}).done(function () {
@@ -1343,7 +1331,7 @@ Export.prototype.getStatus = function () {
1343
type: 'GET',
1344
dataType: 'json',
1345
cache: false,
1346
- dataFilter: function dataFilter(data, type) {
1347
return Ai1wm.Util.json(data);
1348
}
1349
}).done(function (params) {
@@ -1417,7 +1405,6 @@ var Modal = function Modal() {
1417
1418
// Error Modal
1419
this.error = function (params) {
1420
-
1421
// Create the modal container
1422
var container = $('<div></div>');
1423
@@ -1464,7 +1451,6 @@ var Modal = function Modal() {
1464
1465
// Info Modal
1466
this.info = function (params) {
1467
-
1468
// Create the modal container
1469
var container = $('<div></div>');
1470
@@ -1512,7 +1498,6 @@ var Modal = function Modal() {
1512
1513
// Done Modal
1514
this.done = function (params) {
1515
-
1516
// Create the modal container
1517
var container = $('<div></div>');
1518
@@ -1559,16 +1544,12 @@ var Modal = function Modal() {
1559
1560
// Download Modal
1561
this.download = function (params) {
1562
-
1563
// Create the modal container
1564
var container = $('<div></div>');
1565
1566
// Create section to hold title, message and action
1567
var section = $('<section></section>');
1568
1569
- // Create header to hold title
1570
- var header = $('<h1></h1>');
1571
-
1572
// Create paragraph to hold mesage
1573
var message = $('<p></p>').html(params.message);
1574
@@ -1692,16 +1673,18 @@ jQuery(document).ready(function ($) {
1692
var self = $(this);
1693
1694
// Delete file
1695
if (confirm(ai1wm_locale.want_to_delete_this_file)) {
1696
$.ajax({
1697
url: ai1wm_backups.ajax.url,
1698
type: 'POST',
1699
dataType: 'json',
1700
data: {
1701
- 'secret_key': ai1wm_backups.secret_key,
1702
- 'archive': self.data('archive')
1703
},
1704
- dataFilter: function dataFilter(data, type) {
1705
return Ai1wm.Util.json(data);
1706
}
1707
}).done(function (data) {
@@ -1725,15 +1708,17 @@ jQuery(document).ready(function ($) {
1725
$('#ai1wm-backups-list').on('click', '.ai1wm-backup-restore', function (e) {
1726
e.preventDefault();
1727
1728
- if (!!Ai1wm.MultisiteExtensionRestore) {
1729
var restore = new Ai1wm.MultisiteExtensionRestore($(this).data('archive'));
1730
- } else if (!!Ai1wm.UnlimitedExtensionRestore) {
1731
- var restore = new Ai1wm.UnlimitedExtensionRestore($(this).data('archive'));
1732
- } else if (!!Ai1wm.FreeExtensionRestore) {
1733
- var restore = new Ai1wm.FreeExtensionRestore($(this).data('archive'));
1734
} else {
1735
- var restore = new Ai1wm.Restore($(this).data('archive'));
1736
}
1737
});
1738
1739
$('#ai1wm-backups-list').on('click', '.ai1wm-backup-label-description, .ai1wm-backup-label-text', function () {
@@ -1757,11 +1742,11 @@ jQuery(document).ready(function ($) {
1757
type: 'POST',
1758
dataType: 'json',
1759
data: {
1760
- 'secret_key': ai1wm_backups.secret_key,
1761
- 'archive': self.data('archive'),
1762
- 'label': self.val()
1763
},
1764
- dataFilter: function dataFilter(data, type) {
1765
return Ai1wm.Util.json(data);
1766
}
1767
}).done(function (data) {
@@ -1814,7 +1799,7 @@ jQuery(document).ready(function ($) {
1814
}
1815
});
1816
1817
- var model = new Export();
1818
1819
$('#ai1wm-create-backup').click(function (e) {
1820
var storage = Ai1wm.Util.random(12);
@@ -1864,7 +1849,7 @@ global.Ai1wm = jQuery.extend({}, global.Ai1wm, { Feedback: Feedback, Report: Rep
1864
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
1865
*/
1866
var Import = __webpack_require__(3);
1867
- var Restore = function Restore(archive) {
1868
var model = new Import();
1869
model.setStatus({ type: 'pro', message: ai1wm_locale.restore_from_file });
1870
};
126
127
// Idea
128
129
+ $('#ai1wm-feedback-type-link-1').click(function () {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
175
dataType: 'json',
176
async: true,
177
data: {
178
+ secret_key: ai1wm_feedback.secret_key,
179
+ ai1wm_type: type,
180
+ ai1wm_email: email,
181
+ ai1wm_message: message,
182
+ ai1wm_terms: +terms
183
},
184
+ dataFilter: function dataFilter(data) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
272
dataType: 'json',
273
async: true,
274
data: {
275
+ secret_key: ai1wm_report.secret_key,
276
+ ai1wm_email: email,
277
+ ai1wm_message: message,
278
+ ai1wm_terms: +terms
279
},
280
+ dataFilter: function dataFilter(data) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
378
379
Import.prototype.start = function (options, retries) {
380
var self = this;
381
+ retries = retries || 0;
382
383
// Set stop flag
384
if (retries === 0) {
412
type: 'POST',
413
dataType: 'json',
414
data: params,
415
+ dataFilter: function dataFilter(data) {
416
return Ai1wm.Util.json(data);
417
}
418
}).done(function () {
419
self.getStatus();
420
+ }).done(function (result) {
421
+ if (result) {
422
+ self.run(result);
423
}
424
}).fail(function () {
425
var timeout = retries * 1000;
439
440
Import.prototype.run = function (params, retries) {
441
var self = this;
442
+ retries = retries || 0;
443
444
// Stop running import
445
if (this.stopImport) {
452
type: 'POST',
453
dataType: 'json',
454
data: params,
455
+ dataFilter: function dataFilter(data) {
456
return Ai1wm.Util.json(data);
457
}
458
+ }).done(function (result) {
459
+ if (result) {
460
+ self.run(result);
461
}
462
}).fail(function () {
463
var timeout = retries * 1000;
470
471
Import.prototype.confirm = function (options, retries) {
472
var self = this;
473
+ retries = retries || 0;
474
475
// Stop running import
476
if (this.stopImport) {
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
+ dataFilter: function dataFilter(data) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
498
self.getStatus();
499
+ }).done(function (result) {
500
+ if (result) {
501
+ self.run(result);
502
}
503
}).fail(function () {
504
var timeout = retries * 1000;
518
519
Import.prototype.blogs = function (options, retries) {
520
var self = this;
521
+ retries = retries || 0;
522
523
// Stop running import
524
if (this.stopImport) {
539
type: 'POST',
540
dataType: 'json',
541
data: params,
542
+ dataFilter: function dataFilter(data) {
543
return Ai1wm.Util.json(data);
544
}
545
}).done(function () {
546
self.getStatus();
547
+ }).done(function (result) {
548
+ if (result) {
549
+ self.run(result);
550
}
551
}).fail(function () {
552
var timeout = retries * 1000;
566
567
Import.prototype.clean = function (options, retries) {
568
var self = this;
569
+ retries = retries || 0;
570
571
// Set stop flag
572
this.stopImport = true;
588
type: 'POST',
589
dataType: 'json',
590
data: params,
591
+ dataFilter: function dataFilter(data) {
592
return Ai1wm.Util.json(data);
593
}
594
}).done(function () {
626
type: 'GET',
627
dataType: 'json',
628
cache: false,
629
+ dataFilter: function dataFilter(data) {
630
return Ai1wm.Util.json(data);
631
}
632
}).done(function (params) {
652
}).fail(function () {
653
// Import is not done yet, let's check status in 3 seconds
654
setTimeout(self.getStatus.bind(self), 3000);
655
+ });
656
};
657
658
Import.prototype.setStatus = function (params) {
712
713
// Error Modal
714
this.error = function (params) {
715
// Create the modal container
716
var container = $('<div></div>');
717
759
// Progress Modal
760
this.progress = function (params) {
761
if (this.view === 'progress') {
762
// Update progress bar meter
763
this.progress.progressBarMeter.width(params.percent + '%');
764
765
// Update progress bar percent
766
this.progress.progressBarPercent.text(params.percent + '%');
767
} else {
768
// Create the modal container
769
var container = $('<div></div>');
770
774
// Create header to hold progress bar
775
var header = $('<h1></h1>');
776
777
// Create action section
778
var action = $('<div></div>');
779
819
820
// Pro Modal
821
this.pro = function (params) {
822
// Create the modal container
823
var container = $('<div></div>');
824
865
866
// Confirm Modal
867
this.confirm = function (params) {
868
// Create the modal container
869
var container = $('<div></div>');
870
924
925
// Blogs Modal
926
this.blogs = function (params) {
927
// Create the modal container
928
var container = $('<form></form>');
929
971
972
// Info Modal
973
this.info = function (params) {
974
// Create the modal container
975
var container = $('<div></div>');
976
1018
1019
// Done Modal
1020
this.done = function (params) {
1021
// Create the modal container
1022
var container = $('<div></div>');
1023
1073
};
1074
1075
Modal.prototype.render = function (params) {
1076
// Show modal
1077
switch (params.type) {
1078
case 'pro':
1172
1173
Export.prototype.start = function (options, retries) {
1174
var self = this;
1175
+ retries = retries || 0;
1176
1177
// Set stop flag
1178
if (retries === 0) {
1206
type: 'POST',
1207
dataType: 'json',
1208
data: params,
1209
+ dataFilter: function dataFilter(data) {
1210
return Ai1wm.Util.json(data);
1211
}
1212
}).done(function () {
1213
self.getStatus();
1214
+ }).done(function (result) {
1215
+ if (result) {
1216
+ self.run(result);
1217
}
1218
}).fail(function () {
1219
var timeout = retries * 1000;
1233
1234
Export.prototype.run = function (params, retries) {
1235
var self = this;
1236
+ retries = retries || 0;
1237
1238
// Stop running export
1239
if (this.stopExport) {
1246
type: 'POST',
1247
dataType: 'json',
1248
data: params,
1249
+ dataFilter: function dataFilter(data) {
1250
return Ai1wm.Util.json(data);
1251
}
1252
+ }).done(function (result) {
1253
+ if (result) {
1254
+ self.run(result);
1255
}
1256
}).fail(function () {
1257
var timeout = retries * 1000;
1271
1272
Export.prototype.clean = function (options, retries) {
1273
var self = this;
1274
+ retries = retries || 0;
1275
1276
// Set stop flag
1277
this.stopExport = true;
1293
type: 'POST',
1294
dataType: 'json',
1295
data: params,
1296
+ dataFilter: function dataFilter(data) {
1297
return Ai1wm.Util.json(data);
1298
}
1299
}).done(function () {
1331
type: 'GET',
1332
dataType: 'json',
1333
cache: false,
1334
+ dataFilter: function dataFilter(data) {
1335
return Ai1wm.Util.json(data);
1336
}
1337
}).done(function (params) {
1405
1406
// Error Modal
1407
this.error = function (params) {
1408
// Create the modal container
1409
var container = $('<div></div>');
1410
1451
1452
// Info Modal
1453
this.info = function (params) {
1454
// Create the modal container
1455
var container = $('<div></div>');
1456
1498
1499
// Done Modal
1500
this.done = function (params) {
1501
// Create the modal container
1502
var container = $('<div></div>');
1503
1544
1545
// Download Modal
1546
this.download = function (params) {
1547
// Create the modal container
1548
var container = $('<div></div>');
1549
1550
// Create section to hold title, message and action
1551
var section = $('<section></section>');
1552
1553
// Create paragraph to hold mesage
1554
var message = $('<p></p>').html(params.message);
1555
1673
var self = $(this);
1674
1675
// Delete file
1676
+ /* eslint-disable no-alert */
1677
if (confirm(ai1wm_locale.want_to_delete_this_file)) {
1678
+ /* eslint-enable no-alert */
1679
$.ajax({
1680
url: ai1wm_backups.ajax.url,
1681
type: 'POST',
1682
dataType: 'json',
1683
data: {
1684
+ secret_key: ai1wm_backups.secret_key,
1685
+ archive: self.data('archive')
1686
},
1687
+ dataFilter: function dataFilter(data) {
1688
return Ai1wm.Util.json(data);
1689
}
1690
}).done(function (data) {
1708
$('#ai1wm-backups-list').on('click', '.ai1wm-backup-restore', function (e) {
1709
e.preventDefault();
1710
1711
+ /* eslint-disable no-unused-vars */
1712
+ if (Ai1wm.MultisiteExtensionRestore) {
1713
var restore = new Ai1wm.MultisiteExtensionRestore($(this).data('archive'));
1714
+ } else if (Ai1wm.UnlimitedExtensionRestore) {
1715
+ var _restore = new Ai1wm.UnlimitedExtensionRestore($(this).data('archive'));
1716
+ } else if (Ai1wm.FreeExtensionRestore) {
1717
+ var _restore2 = new Ai1wm.FreeExtensionRestore($(this).data('archive'));
1718
} else {
1719
+ var _restore3 = new Ai1wm.Restore($(this).data('archive'));
1720
}
1721
+ /* eslint-enable no-unused-vars */
1722
});
1723
1724
$('#ai1wm-backups-list').on('click', '.ai1wm-backup-label-description, .ai1wm-backup-label-text', function () {
1742
type: 'POST',
1743
dataType: 'json',
1744
data: {
1745
+ secret_key: ai1wm_backups.secret_key,
1746
+ archive: self.data('archive'),
1747
+ label: self.val()
1748
},
1749
+ dataFilter: function dataFilter(data) {
1750
return Ai1wm.Util.json(data);
1751
}
1752
}).done(function (data) {
1799
}
1800
});
1801
1802
+ model = new Export();
1803
1804
$('#ai1wm-create-backup').click(function (e) {
1805
var storage = Ai1wm.Util.random(12);
1849
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
1850
*/
1851
var Import = __webpack_require__(3);
1852
+ var Restore = function Restore() {
1853
var model = new Import();
1854
model.setStatus({ type: 'pro', message: ai1wm_locale.restore_from_file });
1855
};
lib/view/assets/javascript/export.min.js CHANGED
@@ -126,7 +126,7 @@ jQuery(document).ready(function ($) {
126
127
// Idea
128
129
- $('#ai1wm-feedback-type-link-1').click(function (e) {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
@@ -175,13 +175,13 @@ jQuery(document).ready(function ($) {
175
dataType: 'json',
176
async: true,
177
data: {
178
- 'secret_key': ai1wm_feedback.secret_key,
179
- 'ai1wm_type': type,
180
- 'ai1wm_email': email,
181
- 'ai1wm_message': message,
182
- 'ai1wm_terms': +terms
183
},
184
- dataFilter: function dataFilter(data, type) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
@@ -272,12 +272,12 @@ jQuery(document).ready(function ($) {
272
dataType: 'json',
273
async: true,
274
data: {
275
- 'secret_key': ai1wm_report.secret_key,
276
- 'ai1wm_email': email,
277
- 'ai1wm_message': message,
278
- 'ai1wm_terms': +terms
279
},
280
- dataFilter: function dataFilter(data, type) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
@@ -370,7 +370,7 @@ Export.prototype.setParams = function (params) {
370
371
Export.prototype.start = function (options, retries) {
372
var self = this;
373
- var retries = retries || 0;
374
375
// Set stop flag
376
if (retries === 0) {
@@ -404,14 +404,14 @@ Export.prototype.start = function (options, retries) {
404
type: 'POST',
405
dataType: 'json',
406
data: params,
407
- dataFilter: function dataFilter(data, type) {
408
return Ai1wm.Util.json(data);
409
}
410
}).done(function () {
411
self.getStatus();
412
- }).done(function (params) {
413
- if (params) {
414
- self.run(params);
415
}
416
}).fail(function () {
417
var timeout = retries * 1000;
@@ -431,7 +431,7 @@ Export.prototype.start = function (options, retries) {
431
432
Export.prototype.run = function (params, retries) {
433
var self = this;
434
- var retries = retries || 0;
435
436
// Stop running export
437
if (this.stopExport) {
@@ -444,12 +444,12 @@ Export.prototype.run = function (params, retries) {
444
type: 'POST',
445
dataType: 'json',
446
data: params,
447
- dataFilter: function dataFilter(data, type) {
448
return Ai1wm.Util.json(data);
449
}
450
- }).done(function (params) {
451
- if (params) {
452
- self.run(params);
453
}
454
}).fail(function () {
455
var timeout = retries * 1000;
@@ -469,7 +469,7 @@ Export.prototype.run = function (params, retries) {
469
470
Export.prototype.clean = function (options, retries) {
471
var self = this;
472
- var retries = retries || 0;
473
474
// Set stop flag
475
this.stopExport = true;
@@ -491,7 +491,7 @@ Export.prototype.clean = function (options, retries) {
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
- dataFilter: function dataFilter(data, type) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
@@ -529,7 +529,7 @@ Export.prototype.getStatus = function () {
529
type: 'GET',
530
dataType: 'json',
531
cache: false,
532
- dataFilter: function dataFilter(data, type) {
533
return Ai1wm.Util.json(data);
534
}
535
}).done(function (params) {
@@ -603,7 +603,6 @@ var Modal = function Modal() {
603
604
// Error Modal
605
this.error = function (params) {
606
-
607
// Create the modal container
608
var container = $('<div></div>');
609
@@ -650,7 +649,6 @@ var Modal = function Modal() {
650
651
// Info Modal
652
this.info = function (params) {
653
-
654
// Create the modal container
655
var container = $('<div></div>');
656
@@ -698,7 +696,6 @@ var Modal = function Modal() {
698
699
// Done Modal
700
this.done = function (params) {
701
-
702
// Create the modal container
703
var container = $('<div></div>');
704
@@ -745,16 +742,12 @@ var Modal = function Modal() {
745
746
// Download Modal
747
this.download = function (params) {
748
-
749
// Create the modal container
750
var container = $('<div></div>');
751
752
// Create section to hold title, message and action
753
var section = $('<section></section>');
754
755
- // Create header to hold title
756
- var header = $('<h1></h1>');
757
-
758
// Create paragraph to hold mesage
759
var message = $('<p></p>').html(params.message);
760
@@ -929,8 +922,7 @@ global.Ai1wm = jQuery.extend({}, global.Ai1wm, { Query: Query, FindReplace: Find
929
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
930
*/
931
932
- ;(function ($) {
933
-
934
$.fn.ai1wm_query = function () {
935
var findInput = $(this).find('input.ai1wm-query-find-input'),
936
replaceInput = $(this).find('input.ai1wm-query-replace-input'),
@@ -982,8 +974,7 @@ global.Ai1wm = jQuery.extend({}, global.Ai1wm, { Query: Query, FindReplace: Find
982
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
983
*/
984
985
- ;(function ($) {
986
-
987
$.fn.ai1wm_find_replace = function () {
988
$(this).click(function (e) {
989
e.preventDefault();
126
127
// Idea
128
129
+ $('#ai1wm-feedback-type-link-1').click(function () {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
175
dataType: 'json',
176
async: true,
177
data: {
178
+ secret_key: ai1wm_feedback.secret_key,
179
+ ai1wm_type: type,
180
+ ai1wm_email: email,
181
+ ai1wm_message: message,
182
+ ai1wm_terms: +terms
183
},
184
+ dataFilter: function dataFilter(data) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
272
dataType: 'json',
273
async: true,
274
data: {
275
+ secret_key: ai1wm_report.secret_key,
276
+ ai1wm_email: email,
277
+ ai1wm_message: message,
278
+ ai1wm_terms: +terms
279
},
280
+ dataFilter: function dataFilter(data) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
370
371
Export.prototype.start = function (options, retries) {
372
var self = this;
373
+ retries = retries || 0;
374
375
// Set stop flag
376
if (retries === 0) {
404
type: 'POST',
405
dataType: 'json',
406
data: params,
407
+ dataFilter: function dataFilter(data) {
408
return Ai1wm.Util.json(data);
409
}
410
}).done(function () {
411
self.getStatus();
412
+ }).done(function (result) {
413
+ if (result) {
414
+ self.run(result);
415
}
416
}).fail(function () {
417
var timeout = retries * 1000;
431
432
Export.prototype.run = function (params, retries) {
433
var self = this;
434
+ retries = retries || 0;
435
436
// Stop running export
437
if (this.stopExport) {
444
type: 'POST',
445
dataType: 'json',
446
data: params,
447
+ dataFilter: function dataFilter(data) {
448
return Ai1wm.Util.json(data);
449
}
450
+ }).done(function (result) {
451
+ if (result) {
452
+ self.run(result);
453
}
454
}).fail(function () {
455
var timeout = retries * 1000;
469
470
Export.prototype.clean = function (options, retries) {
471
var self = this;
472
+ retries = retries || 0;
473
474
// Set stop flag
475
this.stopExport = true;
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
+ dataFilter: function dataFilter(data) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
529
type: 'GET',
530
dataType: 'json',
531
cache: false,
532
+ dataFilter: function dataFilter(data) {
533
return Ai1wm.Util.json(data);
534
}
535
}).done(function (params) {
603
604
// Error Modal
605
this.error = function (params) {
606
// Create the modal container
607
var container = $('<div></div>');
608
649
650
// Info Modal
651
this.info = function (params) {
652
// Create the modal container
653
var container = $('<div></div>');
654
696
697
// Done Modal
698
this.done = function (params) {
699
// Create the modal container
700
var container = $('<div></div>');
701
742
743
// Download Modal
744
this.download = function (params) {
745
// Create the modal container
746
var container = $('<div></div>');
747
748
// Create section to hold title, message and action
749
var section = $('<section></section>');
750
751
// Create paragraph to hold mesage
752
var message = $('<p></p>').html(params.message);
753
922
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
923
*/
924
925
+ (function ($) {
926
$.fn.ai1wm_query = function () {
927
var findInput = $(this).find('input.ai1wm-query-find-input'),
928
replaceInput = $(this).find('input.ai1wm-query-replace-input'),
974
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
975
*/
976
977
+ (function ($) {
978
$.fn.ai1wm_find_replace = function () {
979
$(this).click(function (e) {
980
e.preventDefault();
lib/view/assets/javascript/import.min.js CHANGED
@@ -126,7 +126,7 @@ jQuery(document).ready(function ($) {
126
127
// Idea
128
129
- $('#ai1wm-feedback-type-link-1').click(function (e) {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
@@ -175,13 +175,13 @@ jQuery(document).ready(function ($) {
175
dataType: 'json',
176
async: true,
177
data: {
178
- 'secret_key': ai1wm_feedback.secret_key,
179
- 'ai1wm_type': type,
180
- 'ai1wm_email': email,
181
- 'ai1wm_message': message,
182
- 'ai1wm_terms': +terms
183
},
184
- dataFilter: function dataFilter(data, type) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
@@ -272,12 +272,12 @@ jQuery(document).ready(function ($) {
272
dataType: 'json',
273
async: true,
274
data: {
275
- 'secret_key': ai1wm_report.secret_key,
276
- 'ai1wm_email': email,
277
- 'ai1wm_message': message,
278
- 'ai1wm_terms': +terms
279
},
280
- dataFilter: function dataFilter(data, type) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
@@ -378,7 +378,7 @@ Import.prototype.setParams = function (params) {
378
379
Import.prototype.start = function (options, retries) {
380
var self = this;
381
- var retries = retries || 0;
382
383
// Set stop flag
384
if (retries === 0) {
@@ -412,14 +412,14 @@ Import.prototype.start = function (options, retries) {
412
type: 'POST',
413
dataType: 'json',
414
data: params,
415
- dataFilter: function dataFilter(data, type) {
416
return Ai1wm.Util.json(data);
417
}
418
}).done(function () {
419
self.getStatus();
420
- }).done(function (params) {
421
- if (params) {
422
- self.run(params);
423
}
424
}).fail(function () {
425
var timeout = retries * 1000;
@@ -439,7 +439,7 @@ Import.prototype.start = function (options, retries) {
439
440
Import.prototype.run = function (params, retries) {
441
var self = this;
442
- var retries = retries || 0;
443
444
// Stop running import
445
if (this.stopImport) {
@@ -452,12 +452,12 @@ Import.prototype.run = function (params, retries) {
452
type: 'POST',
453
dataType: 'json',
454
data: params,
455
- dataFilter: function dataFilter(data, type) {
456
return Ai1wm.Util.json(data);
457
}
458
- }).done(function (params) {
459
- if (params) {
460
- self.run(params);
461
}
462
}).fail(function () {
463
var timeout = retries * 1000;
@@ -470,7 +470,7 @@ Import.prototype.run = function (params, retries) {
470
471
Import.prototype.confirm = function (options, retries) {
472
var self = this;
473
- var retries = retries || 0;
474
475
// Stop running import
476
if (this.stopImport) {
@@ -491,14 +491,14 @@ Import.prototype.confirm = function (options, retries) {
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
- dataFilter: function dataFilter(data, type) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
498
self.getStatus();
499
- }).done(function (params) {
500
- if (params) {
501
- self.run(params);
502
}
503
}).fail(function () {
504
var timeout = retries * 1000;
@@ -518,7 +518,7 @@ Import.prototype.confirm = function (options, retries) {
518
519
Import.prototype.blogs = function (options, retries) {
520
var self = this;
521
- var retries = retries || 0;
522
523
// Stop running import
524
if (this.stopImport) {
@@ -539,14 +539,14 @@ Import.prototype.blogs = function (options, retries) {
539
type: 'POST',
540
dataType: 'json',
541
data: params,
542
- dataFilter: function dataFilter(data, type) {
543
return Ai1wm.Util.json(data);
544
}
545
}).done(function () {
546
self.getStatus();
547
- }).done(function (params) {
548
- if (params) {
549
- self.run(params);
550
}
551
}).fail(function () {
552
var timeout = retries * 1000;
@@ -566,7 +566,7 @@ Import.prototype.blogs = function (options, retries) {
566
567
Import.prototype.clean = function (options, retries) {
568
var self = this;
569
- var retries = retries || 0;
570
571
// Set stop flag
572
this.stopImport = true;
@@ -588,7 +588,7 @@ Import.prototype.clean = function (options, retries) {
588
type: 'POST',
589
dataType: 'json',
590
data: params,
591
- dataFilter: function dataFilter(data, type) {
592
return Ai1wm.Util.json(data);
593
}
594
}).done(function () {
@@ -626,7 +626,7 @@ Import.prototype.getStatus = function () {
626
type: 'GET',
627
dataType: 'json',
628
cache: false,
629
- dataFilter: function dataFilter(data, type) {
630
return Ai1wm.Util.json(data);
631
}
632
}).done(function (params) {
@@ -652,7 +652,7 @@ Import.prototype.getStatus = function () {
652
}).fail(function () {
653
// Import is not done yet, let's check status in 3 seconds
654
setTimeout(self.getStatus.bind(self), 3000);
655
- });;
656
};
657
658
Import.prototype.setStatus = function (params) {
@@ -712,7 +712,6 @@ var Modal = function Modal() {
712
713
// Error Modal
714
this.error = function (params) {
715
-
716
// Create the modal container
717
var container = $('<div></div>');
718
@@ -760,14 +759,12 @@ var Modal = function Modal() {
760
// Progress Modal
761
this.progress = function (params) {
762
if (this.view === 'progress') {
763
-
764
// Update progress bar meter
765
this.progress.progressBarMeter.width(params.percent + '%');
766
767
// Update progress bar percent
768
this.progress.progressBarPercent.text(params.percent + '%');
769
} else {
770
-
771
// Create the modal container
772
var container = $('<div></div>');
773
@@ -777,9 +774,6 @@ var Modal = function Modal() {
777
// Create header to hold progress bar
778
var header = $('<h1></h1>');
779
780
- // Create paragraph to hold mesage
781
- var message = $('<p></p>');
782
-
783
// Create action section
784
var action = $('<div></div>');
785
@@ -825,7 +819,6 @@ var Modal = function Modal() {
825
826
// Pro Modal
827
this.pro = function (params) {
828
-
829
// Create the modal container
830
var container = $('<div></div>');
831
@@ -872,7 +865,6 @@ var Modal = function Modal() {
872
873
// Confirm Modal
874
this.confirm = function (params) {
875
-
876
// Create the modal container
877
var container = $('<div></div>');
878
@@ -932,7 +924,6 @@ var Modal = function Modal() {
932
933
// Blogs Modal
934
this.blogs = function (params) {
935
-
936
// Create the modal container
937
var container = $('<form></form>');
938
@@ -980,7 +971,6 @@ var Modal = function Modal() {
980
981
// Info Modal
982
this.info = function (params) {
983
-
984
// Create the modal container
985
var container = $('<div></div>');
986
@@ -1028,7 +1018,6 @@ var Modal = function Modal() {
1028
1029
// Done Modal
1030
this.done = function (params) {
1031
-
1032
// Create the modal container
1033
var container = $('<div></div>');
1034
@@ -1084,7 +1073,6 @@ var Modal = function Modal() {
1084
};
1085
1086
Modal.prototype.render = function (params) {
1087
-
1088
// Show modal
1089
switch (params.type) {
1090
case 'pro':
@@ -1172,14 +1160,15 @@ var FileUploader = __webpack_require__(13),
1172
jQuery(document).ready(function ($) {
1173
'use strict';
1174
1175
- if (!!Ai1wm.MultisiteExtensionUploader) {
1176
- var uploader = new Ai1wm.MultisiteExtensionUploader();
1177
- } else if (!!Ai1wm.UnlimitedExtensionUploader) {
1178
- var uploader = new Ai1wm.UnlimitedExtensionUploader();
1179
- } else if (!!Ai1wm.FileExtensionUploader) {
1180
- var uploader = new Ai1wm.FileExtensionUploader();
1181
} else {
1182
- var uploader = new Ai1wm.FileUploader();
1183
}
1184
1185
uploader.init();
@@ -1314,7 +1303,7 @@ FileUploader.prototype.c1 = function (file) {
1314
};
1315
1316
// Check compatibility
1317
- FileUploader.prototype.c3 = function (file) {
1318
if (ai1wm_compatibility.messages.length > 0) {
1319
throw new Error(ai1wm_compatibility.messages.join());
1320
}
@@ -1357,7 +1346,7 @@ FileUploader.prototype.onBeforeUpload = function (file) {
1357
this.model.setStatus({ type: 'progress', percent: '0.00' });
1358
};
1359
1360
- FileUploader.prototype.upload = function (file, retries) {
1361
var self = this;
1362
1363
var formData = new FormData();
@@ -1384,14 +1373,14 @@ FileUploader.prototype.upload = function (file, retries) {
1384
1385
return handle;
1386
},
1387
- success: function success(data, textStatus, jqXHR) {
1388
if (self.stopUpload) {
1389
return;
1390
}
1391
1392
self.onFileUploaded();
1393
},
1394
- error: function error(jqXHR, textStatus, errorThrown) {
1395
throw new Error(textStatus);
1396
}
1397
});
126
127
// Idea
128
129
+ $('#ai1wm-feedback-type-link-1').click(function () {
130
var radio = $('#ai1wm-feedback-type-1');
131
if (radio.is(':checked')) {
132
radio.attr('checked', false);
175
dataType: 'json',
176
async: true,
177
data: {
178
+ secret_key: ai1wm_feedback.secret_key,
179
+ ai1wm_type: type,
180
+ ai1wm_email: email,
181
+ ai1wm_message: message,
182
+ ai1wm_terms: +terms
183
},
184
+ dataFilter: function dataFilter(data) {
185
return Ai1wm.Util.json(data);
186
}
187
}).done(function (data) {
272
dataType: 'json',
273
async: true,
274
data: {
275
+ secret_key: ai1wm_report.secret_key,
276
+ ai1wm_email: email,
277
+ ai1wm_message: message,
278
+ ai1wm_terms: +terms
279
},
280
+ dataFilter: function dataFilter(data) {
281
return Ai1wm.Util.json(data);
282
}
283
}).done(function (data) {
378
379
Import.prototype.start = function (options, retries) {
380
var self = this;
381
+ retries = retries || 0;
382
383
// Set stop flag
384
if (retries === 0) {
412
type: 'POST',
413
dataType: 'json',
414
data: params,
415
+ dataFilter: function dataFilter(data) {
416
return Ai1wm.Util.json(data);
417
}
418
}).done(function () {
419
self.getStatus();
420
+ }).done(function (result) {
421
+ if (result) {
422
+ self.run(result);
423
}
424
}).fail(function () {
425
var timeout = retries * 1000;
439
440
Import.prototype.run = function (params, retries) {
441
var self = this;
442
+ retries = retries || 0;
443
444
// Stop running import
445
if (this.stopImport) {
452
type: 'POST',
453
dataType: 'json',
454
data: params,
455
+ dataFilter: function dataFilter(data) {
456
return Ai1wm.Util.json(data);
457
}
458
+ }).done(function (result) {
459
+ if (result) {
460
+ self.run(result);
461
}
462
}).fail(function () {
463
var timeout = retries * 1000;
470
471
Import.prototype.confirm = function (options, retries) {
472
var self = this;
473
+ retries = retries || 0;
474
475
// Stop running import
476
if (this.stopImport) {
491
type: 'POST',
492
dataType: 'json',
493
data: params,
494
+ dataFilter: function dataFilter(data) {
495
return Ai1wm.Util.json(data);
496
}
497
}).done(function () {
498
self.getStatus();
499
+ }).done(function (result) {
500
+ if (result) {
501
+ self.run(result);
502
}
503
}).fail(function () {
504
var timeout = retries * 1000;
518
519
Import.prototype.blogs = function (options, retries) {
520
var self = this;
521
+ retries = retries || 0;
522
523
// Stop running import
524
if (this.stopImport) {
539
type: 'POST',
540
dataType: 'json',
541
data: params,
542
+ dataFilter: function dataFilter(data) {
543
return Ai1wm.Util.json(data);
544
}
545
}).done(function () {
546
self.getStatus();
547
+ }).done(function (result) {
548
+ if (result) {
549
+ self.run(result);
550
}
551
}).fail(function () {
552
var timeout = retries * 1000;
566
567
Import.prototype.clean = function (options, retries) {
568
var self = this;
569
+ retries = retries || 0;
570
571
// Set stop flag
572
this.stopImport = true;
588
type: 'POST',
589
dataType: 'json',
590
data: params,
591
+ dataFilter: function dataFilter(data) {
592
return Ai1wm.Util.json(data);
593
}
594
}).done(function () {
626
type: 'GET',
627
dataType: 'json',
628
cache: false,
629
+ dataFilter: function dataFilter(data) {
630
return Ai1wm.Util.json(data);
631
}
632
}).done(function (params) {
652
}).fail(function () {
653
// Import is not done yet, let's check status in 3 seconds
654
setTimeout(self.getStatus.bind(self), 3000);
655
+ });
656
};
657
658
Import.prototype.setStatus = function (params) {
712
713
// Error Modal
714
this.error = function (params) {
715
// Create the modal container
716
var container = $('<div></div>');
717
759
// Progress Modal
760
this.progress = function (params) {
761
if (this.view === 'progress') {
762
// Update progress bar meter
763
this.progress.progressBarMeter.width(params.percent + '%');
764
765
// Update progress bar percent
766
this.progress.progressBarPercent.text(params.percent + '%');
767
} else {
768
// Create the modal container
769
var container = $('<div></div>');
770
774
// Create header to hold progress bar
775
var header = $('<h1></h1>');
776
777
// Create action section
778
var action = $('<div></div>');
779
819
820
// Pro Modal
821
this.pro = function (params) {
822
// Create the modal container
823
var container = $('<div></div>');
824
865
866
// Confirm Modal
867
this.confirm = function (params) {
868
// Create the modal container
869
var container = $('<div></div>');
870
924
925
// Blogs Modal
926
this.blogs = function (params) {
927
// Create the modal container
928
var container = $('<form></form>');
929
971
972
// Info Modal
973
this.info = function (params) {
974
// Create the modal container
975
var container = $('<div></div>');
976
1018
1019
// Done Modal
1020
this.done = function (params) {
1021
// Create the modal container
1022
var container = $('<div></div>');
1023
1073
};
1074
1075
Modal.prototype.render = function (params) {
1076
// Show modal
1077
switch (params.type) {
1078
case 'pro':
1160
jQuery(document).ready(function ($) {
1161
'use strict';
1162
1163
+ var uploader = void 0;
1164
+ if (Ai1wm.MultisiteExtensionUploader) {
1165
+ uploader = new Ai1wm.MultisiteExtensionUploader();
1166
+ } else if (Ai1wm.UnlimitedExtensionUploader) {
1167
+ uploader = new Ai1wm.UnlimitedExtensionUploader();
1168
+ } else if (Ai1wm.FileExtensionUploader) {
1169
+ uploader = new Ai1wm.FileExtensionUploader();
1170
} else {
1171
+ uploader = new Ai1wm.FileUploader();
1172
}
1173
1174
uploader.init();
1303
};
1304
1305
// Check compatibility
1306
+ FileUploader.prototype.c3 = function () {
1307
if (ai1wm_compatibility.messages.length > 0) {
1308
throw new Error(ai1wm_compatibility.messages.join());
1309
}
1346
this.model.setStatus({ type: 'progress', percent: '0.00' });
1347
};
1348
1349
+ FileUploader.prototype.upload = function (file) {
1350
var self = this;
1351
1352
var formData = new FormData();
1373
1374
return handle;
1375
},
1376
+ success: function success() {
1377
if (self.stopUpload) {
1378
return;
1379
}
1380
1381
self.onFileUploaded();
1382
},
1383
+ error: function error(jqXHR, textStatus) {
1384
throw new Error(textStatus);
1385
}
1386
});
lib/view/assets/javascript/settings.min.js CHANGED
@@ -128,7 +128,7 @@ jQuery(document).ready(function ($) {
128
129
// Idea
130
131
- $('#ai1wm-feedback-type-link-1').click(function (e) {
132
var radio = $('#ai1wm-feedback-type-1');
133
if (radio.is(':checked')) {
134
radio.attr('checked', false);
@@ -177,13 +177,13 @@ jQuery(document).ready(function ($) {
177
dataType: 'json',
178
async: true,
179
data: {
180
- 'secret_key': ai1wm_feedback.secret_key,
181
- 'ai1wm_type': type,
182
- 'ai1wm_email': email,
183
- 'ai1wm_message': message,
184
- 'ai1wm_terms': +terms
185
},
186
- dataFilter: function dataFilter(data, type) {
187
return Ai1wm.Util.json(data);
188
}
189
}).done(function (data) {
@@ -246,7 +246,7 @@ jQuery(document).ready(function ($) {
246
var Feedback = __webpack_require__(1),
247
Report = __webpack_require__(2);
248
249
- jQuery(document).ready(function ($) {
250
'use strict';
251
});
252
@@ -317,12 +317,12 @@ jQuery(document).ready(function ($) {
317
dataType: 'json',
318
async: true,
319
data: {
320
- 'secret_key': ai1wm_report.secret_key,
321
- 'ai1wm_email': email,
322
- 'ai1wm_message': message,
323
- 'ai1wm_terms': +terms
324
},
325
- dataFilter: function dataFilter(data, type) {
326
return Ai1wm.Util.json(data);
327
}
328
}).done(function (data) {
128
129
// Idea
130
131
+ $('#ai1wm-feedback-type-link-1').click(function () {
132
var radio = $('#ai1wm-feedback-type-1');
133
if (radio.is(':checked')) {
134
radio.attr('checked', false);
177
dataType: 'json',
178
async: true,
179
data: {
180
+ secret_key: ai1wm_feedback.secret_key,
181
+ ai1wm_type: type,
182
+ ai1wm_email: email,
183
+ ai1wm_message: message,
184
+ ai1wm_terms: +terms
185
},
186
+ dataFilter: function dataFilter(data) {
187
return Ai1wm.Util.json(data);
188
}
189
}).done(function (data) {
246
var Feedback = __webpack_require__(1),
247
Report = __webpack_require__(2);
248
249
+ jQuery(document).ready(function () {
250
'use strict';
251
});
252
317
dataType: 'json',
318
async: true,
319
data: {
320
+ secret_key: ai1wm_report.secret_key,
321
+ ai1wm_email: email,
322
+ ai1wm_message: message,
323
+ ai1wm_terms: +terms
324
},
325
+ dataFilter: function dataFilter(data) {
326
return Ai1wm.Util.json(data);
327
}
328
}).done(function (data) {
lib/view/assets/javascript/updater.min.js CHANGED
@@ -114,7 +114,7 @@ jQuery(document).ready(function ($) {
114
url: 'https://servmask.com/purchase/' + purchaseId + '/check',
115
type: 'GET',
116
dataType: 'json',
117
- dataFilter: function dataFilter(data, type) {
118
return Ai1wm.Util.json(data);
119
}
120
}).done(function (product) {
@@ -124,10 +124,10 @@ jQuery(document).ready(function ($) {
124
type: 'POST',
125
dataType: 'json',
126
data: {
127
- 'ai1wm_uuid': product.uuid,
128
- 'ai1wm_extension': product.extension
129
},
130
- dataFilter: function dataFilter(data, type) {
131
return Ai1wm.Util.json(data);
132
}
133
}).done(function () {
114
url: 'https://servmask.com/purchase/' + purchaseId + '/check',
115
type: 'GET',
116
dataType: 'json',
117
+ dataFilter: function dataFilter(data) {
118
return Ai1wm.Util.json(data);
119
}
120
}).done(function (product) {
124
type: 'POST',
125
dataType: 'json',
126
data: {
127
+ ai1wm_uuid: product.uuid,
128
+ ai1wm_extension: product.extension
129
},
130
+ dataFilter: function dataFilter(data) {
131
return Ai1wm.Util.json(data);
132
}
133
}).done(function () {
readme.txt CHANGED
@@ -2,9 +2,9 @@
2
Contributors: yani.iliev, bangelov, pimjitsawang
3
Tags: move, transfer, copy, migrate, backup, clone, restore, db migration, wordpress migration, website migration, database export, database import, apoyo, sauvegarde, di riserva, バックアップ
4
Requires at least: 3.3
5
- Tested up to: 5.2
6
Requires PHP: 5.2.17
7
- Stable tag: 7.8
8
License: GPLv2 or later
9
10
Move, transfer, copy, migrate, and backup a site with 1-click. Quick, easy, and reliable.
@@ -109,6 +109,15 @@ Alternatively you can download the plugin using the download button on this page
109
All-in-One WP Migration **asks for your consent** to collect **requester's email address** when filling plugin's contact form. [GDPR Compliant Privacy Policy](https://www.iubenda.com/privacy-policy/946881)
110
111
== Changelog ==
112
= 7.8 =
113
**Added**
114
2
Contributors: yani.iliev, bangelov, pimjitsawang
3
Tags: move, transfer, copy, migrate, backup, clone, restore, db migration, wordpress migration, website migration, database export, database import, apoyo, sauvegarde, di riserva, バックアップ
4
Requires at least: 3.3
5
+ Tested up to: 5.3
6
Requires PHP: 5.2.17
7
+ Stable tag: 7.9
8
License: GPLv2 or later
9
10
Move, transfer, copy, migrate, and backup a site with 1-click. Quick, easy, and reliable.
109
All-in-One WP Migration **asks for your consent** to collect **requester's email address** when filling plugin's contact form. [GDPR Compliant Privacy Policy](https://www.iubenda.com/privacy-policy/946881)
110
111
== Changelog ==
112
+ = 7.9 =
113
+ **Added**
114
+
115
+ * Uploads, plugins, and themes path to the backup
116
+
117
+ **Removed**
118
+
119
+ * Sorting of active plugins on import
120
+
121
= 7.8 =
122
**Added**
123