Version Description
- Fixed an issue with large media files
- Fixed an issue with status file being cached
Download this release
Release Info
Developer | bangelov |
Plugin | All-in-One WP Migration |
Version | 4.18 |
Comparing to | |
See all releases |
Code changes from version 4.17 to 4.18
- all-in-one-wp-migration.php +1 -1
- constants.php +6 -1
- functions.php +50 -0
- lib/controller/class-ai1wm-export-controller.php +4 -0
- lib/controller/class-ai1wm-import-controller.php +4 -0
- lib/controller/class-ai1wm-main-controller.php +5 -10
- lib/controller/class-ai1wm-resolve-controller.php +3 -0
- lib/model/class-ai1wm-export-abstract.php +101 -42
- lib/model/class-ai1wm-export-file.php +20 -21
- lib/model/class-ai1wm-http.php +3 -2
- lib/model/class-ai1wm-import-abstract.php +91 -51
- lib/model/class-ai1wm-log.php +13 -17
- lib/model/service/class-ai1wm-service-database.php +24 -54
- lib/vendor/servmask/archiver/class-ai1wm-archiver.php +22 -7
- lib/vendor/servmask/archiver/class-ai1wm-compressor.php +46 -18
- lib/vendor/servmask/archiver/class-ai1wm-extractor.php +47 -15
- lib/view/assets/css/backup.min.css +1 -1
- lib/view/assets/javascript/export.min.js +1 -1
- lib/view/assets/javascript/import.min.js +1 -1
- lib/view/backup/index.php +1 -3
- lib/view/common/http-authentication.php +20 -16
- readme.txt +22 -3
- status.php +4 -0
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: 4.
|
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: 4.18
|
9 |
* Text Domain: all-in-one-wp-migration
|
10 |
* Domain Path: /languages
|
11 |
* Network: True
|
constants.php
CHANGED
@@ -38,7 +38,7 @@ if ( function_exists( 'gethostname' ) && in_array( gethostname(), $local ) ) {
|
|
38 |
// ==================
|
39 |
// = Plugin Version =
|
40 |
// ==================
|
41 |
-
define( 'AI1WM_VERSION', '4.
|
42 |
|
43 |
// ===============
|
44 |
// = Plugin Name =
|
@@ -190,6 +190,11 @@ define( 'AI1WM_AUTH_USER', 'ai1wm_auth_user' );
|
|
190 |
// =================
|
191 |
define( 'AI1WM_AUTH_PASSWORD', 'ai1wm_auth_password' );
|
192 |
|
|
|
|
|
|
|
|
|
|
|
193 |
// ================
|
194 |
// = Messages Key =
|
195 |
// ================
|
38 |
// ==================
|
39 |
// = Plugin Version =
|
40 |
// ==================
|
41 |
+
define( 'AI1WM_VERSION', '4.18' );
|
42 |
|
43 |
// ===============
|
44 |
// = Plugin Name =
|
190 |
// =================
|
191 |
define( 'AI1WM_AUTH_PASSWORD', 'ai1wm_auth_password' );
|
192 |
|
193 |
+
// ==================
|
194 |
+
// = Active Plugins =
|
195 |
+
// ==================
|
196 |
+
define( 'AI1WM_ACTIVE_PLUGINS', 'active_plugins' );
|
197 |
+
|
198 |
// ================
|
199 |
// = Messages Key =
|
200 |
// ================
|
functions.php
CHANGED
@@ -42,3 +42,53 @@ function ai1wm_urlencode( $value ) {
|
|
42 |
function ai1wm_urldecode( $value ) {
|
43 |
return is_array( $value ) ? array_map( 'ai1wm_urldecode', $value ) : urldecode( stripslashes( $value ) );
|
44 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
function ai1wm_urldecode( $value ) {
|
43 |
return is_array( $value ) ? array_map( 'ai1wm_urldecode', $value ) : urldecode( stripslashes( $value ) );
|
44 |
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Get active plugins
|
48 |
+
*
|
49 |
+
* @param array $plugins List of plugins
|
50 |
+
* @return array
|
51 |
+
*/
|
52 |
+
function ai1wm_active_plugins( $plugins = array() ) {
|
53 |
+
// WP Migration Plugin
|
54 |
+
if ( defined( 'AI1WM_PLUGIN_BASENAME' ) ) {
|
55 |
+
$plugins[] = AI1WM_PLUGIN_BASENAME;
|
56 |
+
}
|
57 |
+
|
58 |
+
// Dropbox Extension
|
59 |
+
if ( defined( 'AI1WMDE_PLUGIN_BASENAME' ) ) {
|
60 |
+
$plugins[] = AI1WMDE_PLUGIN_BASENAME;
|
61 |
+
}
|
62 |
+
|
63 |
+
// Google Drive Extension
|
64 |
+
if ( defined( 'AI1WMGE_PLUGIN_BASENAME' ) ) {
|
65 |
+
$plugins[] = AI1WMGE_PLUGIN_BASENAME;
|
66 |
+
}
|
67 |
+
|
68 |
+
// Amazon S3 Extension
|
69 |
+
if ( defined( 'AI1WMSE_PLUGIN_BASENAME' ) ) {
|
70 |
+
$plugins[] = AI1WMSE_PLUGIN_BASENAME;
|
71 |
+
}
|
72 |
+
|
73 |
+
// Multisite Extension
|
74 |
+
if ( defined( 'AI1WMME_PLUGIN_BASENAME' ) ) {
|
75 |
+
$plugins[] = AI1WMME_PLUGIN_BASENAME;
|
76 |
+
}
|
77 |
+
|
78 |
+
// Unlimited Extension
|
79 |
+
if ( defined( 'AI1WMUE_PLUGIN_BASENAME' ) ) {
|
80 |
+
$plugins[] = AI1WMUE_PLUGIN_BASENAME;
|
81 |
+
}
|
82 |
+
|
83 |
+
// FTP Extension
|
84 |
+
if ( defined( 'AI1WMFE_PLUGIN_BASENAME' ) ) {
|
85 |
+
$plugins[] = AI1WMFE_PLUGIN_BASENAME;
|
86 |
+
}
|
87 |
+
|
88 |
+
// URL Extension
|
89 |
+
if ( defined( 'AI1WMLE_PLUGIN_BASENAME' ) ) {
|
90 |
+
$plugins[] = AI1WMLE_PLUGIN_BASENAME;
|
91 |
+
}
|
92 |
+
|
93 |
+
return $plugins;
|
94 |
+
}
|
lib/controller/class-ai1wm-export-controller.php
CHANGED
@@ -38,6 +38,10 @@ class Ai1wm_Export_Controller {
|
|
38 |
}
|
39 |
|
40 |
public static function export( $args = array() ) {
|
|
|
|
|
|
|
|
|
41 |
try {
|
42 |
|
43 |
// Set arguments
|
38 |
}
|
39 |
|
40 |
public static function export( $args = array() ) {
|
41 |
+
|
42 |
+
// Set error handler
|
43 |
+
@set_error_handler( 'Ai1wm_Log::error_handler' );
|
44 |
+
|
45 |
try {
|
46 |
|
47 |
// Set arguments
|
lib/controller/class-ai1wm-import-controller.php
CHANGED
@@ -29,6 +29,10 @@ class Ai1wm_Import_Controller {
|
|
29 |
}
|
30 |
|
31 |
public static function import( $args = array() ) {
|
|
|
|
|
|
|
|
|
32 |
try {
|
33 |
|
34 |
// Set arguments
|
29 |
}
|
30 |
|
31 |
public static function import( $args = array() ) {
|
32 |
+
|
33 |
+
// Set error handler
|
34 |
+
@set_error_handler( 'Ai1wm_Log::error_handler' );
|
35 |
+
|
36 |
try {
|
37 |
|
38 |
// Set arguments
|
lib/controller/class-ai1wm-main-controller.php
CHANGED
@@ -31,14 +31,7 @@ class Ai1wm_Main_Controller {
|
|
31 |
* @return Ai1wm_Main_Controller
|
32 |
*/
|
33 |
public function __construct() {
|
34 |
-
|
35 |
-
@set_error_handler( 'Ai1wm_Log::error_handler' );
|
36 |
-
|
37 |
-
register_activation_hook(
|
38 |
-
AI1WM_PLUGIN_BASENAME,
|
39 |
-
array( $this, 'activation_hook' )
|
40 |
-
);
|
41 |
-
|
42 |
|
43 |
// Activate hooks
|
44 |
$this->activate_actions()
|
@@ -575,7 +568,8 @@ class Ai1wm_Main_Controller {
|
|
575 |
'url' => wp_make_link_relative( admin_url( 'admin-ajax.php?action=ai1wm_export' ) ),
|
576 |
),
|
577 |
'status' => array(
|
578 |
-
'
|
|
|
579 |
),
|
580 |
'secret_key' => get_site_option( AI1WM_SECRET_KEY, false, false ),
|
581 |
) );
|
@@ -685,7 +679,8 @@ class Ai1wm_Main_Controller {
|
|
685 |
'url' => wp_make_link_relative( admin_url( 'admin-ajax.php?action=ai1wm_import' ) ),
|
686 |
),
|
687 |
'status' => array(
|
688 |
-
'
|
|
|
689 |
),
|
690 |
'secret_key' => get_site_option( AI1WM_SECRET_KEY, false, false ),
|
691 |
'oversize' => sprintf(
|
31 |
* @return Ai1wm_Main_Controller
|
32 |
*/
|
33 |
public function __construct() {
|
34 |
+
register_activation_hook( AI1WM_PLUGIN_BASENAME, array( $this, 'activation_hook' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
// Activate hooks
|
37 |
$this->activate_actions()
|
568 |
'url' => wp_make_link_relative( admin_url( 'admin-ajax.php?action=ai1wm_export' ) ),
|
569 |
),
|
570 |
'status' => array(
|
571 |
+
'php' => wp_make_link_relative( plugins_url( 'status.php', AI1WM_PLUGIN_BASENAME ) ),
|
572 |
+
'js' => wp_make_link_relative( plugins_url( 'storage/status.js', AI1WM_PLUGIN_BASENAME ) ),
|
573 |
),
|
574 |
'secret_key' => get_site_option( AI1WM_SECRET_KEY, false, false ),
|
575 |
) );
|
679 |
'url' => wp_make_link_relative( admin_url( 'admin-ajax.php?action=ai1wm_import' ) ),
|
680 |
),
|
681 |
'status' => array(
|
682 |
+
'php' => wp_make_link_relative( plugins_url( 'status.php', AI1WM_PLUGIN_BASENAME ) ),
|
683 |
+
'js' => wp_make_link_relative( plugins_url( 'storage/status.js', AI1WM_PLUGIN_BASENAME ) ),
|
684 |
),
|
685 |
'secret_key' => get_site_option( AI1WM_SECRET_KEY, false, false ),
|
686 |
'oversize' => sprintf(
|
lib/controller/class-ai1wm-resolve-controller.php
CHANGED
@@ -27,6 +27,9 @@ class Ai1wm_Resolve_Controller {
|
|
27 |
|
28 |
public static function resolve( $args = array() ) {
|
29 |
|
|
|
|
|
|
|
30 |
// Set arguments
|
31 |
if ( empty( $args ) ) {
|
32 |
$args = ai1wm_urldecode( $_REQUEST );
|
27 |
|
28 |
public static function resolve( $args = array() ) {
|
29 |
|
30 |
+
// Set error handler
|
31 |
+
@set_error_handler( 'Ai1wm_Log::error_handler' );
|
32 |
+
|
33 |
// Set arguments
|
34 |
if ( empty( $args ) ) {
|
35 |
$args = ai1wm_urldecode( $_REQUEST );
|
lib/model/class-ai1wm-export-abstract.php
CHANGED
@@ -46,10 +46,8 @@ abstract class Ai1wm_Export_Abstract {
|
|
46 |
public function start() {
|
47 |
// Set default progress
|
48 |
Ai1wm_Status::set( array(
|
49 |
-
'
|
50 |
-
'
|
51 |
-
'type' => 'info',
|
52 |
-
'message' => __( 'Creating an empty archive...', AI1WM_PLUGIN_NAME )
|
53 |
) );
|
54 |
|
55 |
// Get package file
|
@@ -65,6 +63,7 @@ abstract class Ai1wm_Export_Abstract {
|
|
65 |
|
66 |
// Set progress
|
67 |
Ai1wm_Status::set( array(
|
|
|
68 |
'message' => __( 'Done creating an empty archive.', AI1WM_PLUGIN_NAME )
|
69 |
) );
|
70 |
|
@@ -80,6 +79,7 @@ abstract class Ai1wm_Export_Abstract {
|
|
80 |
public function enumerate() {
|
81 |
// Set progress
|
82 |
Ai1wm_Status::set( array(
|
|
|
83 |
'message' => __( 'Retrieving a list of all WordPress files...', AI1WM_PLUGIN_NAME )
|
84 |
) );
|
85 |
|
@@ -144,11 +144,15 @@ abstract class Ai1wm_Export_Abstract {
|
|
144 |
}
|
145 |
}
|
146 |
|
|
|
147 |
fclose( $filemap );
|
148 |
|
|
|
|
|
|
|
149 |
// Set progress
|
150 |
Ai1wm_Status::set( array(
|
151 |
-
'
|
152 |
'message' => __( 'Done retrieving a list of all WordPress files.', AI1WM_PLUGIN_NAME )
|
153 |
) );
|
154 |
|
@@ -162,17 +166,44 @@ abstract class Ai1wm_Export_Abstract {
|
|
162 |
* @return void
|
163 |
*/
|
164 |
public function content() {
|
165 |
-
//
|
166 |
-
|
167 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
168 |
|
169 |
// What percent of files have we processed?
|
170 |
-
$progress
|
171 |
|
172 |
// Set progress
|
173 |
-
|
174 |
-
|
175 |
-
|
|
|
|
|
|
|
176 |
|
177 |
// Get map file
|
178 |
$filemap = fopen( $this->storage()->filemap(), 'r' );
|
@@ -184,24 +215,59 @@ abstract class Ai1wm_Export_Abstract {
|
|
184 |
$completed = true;
|
185 |
|
186 |
// Set file map pointer at the current index
|
187 |
-
if ( fseek( $filemap, $
|
|
|
188 |
// Get archive
|
189 |
$archive = new Ai1wm_Compressor( $this->storage()->archive() );
|
190 |
|
191 |
while ( $path = trim( fgets( $filemap ) ) ) {
|
192 |
try {
|
|
|
|
|
|
|
|
|
193 |
// Add file to archive
|
194 |
-
$archive->add_file(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
} catch ( Exception $e ) {
|
196 |
// Skip bad file permissions
|
197 |
}
|
198 |
|
199 |
$processed++;
|
200 |
|
201 |
-
//
|
202 |
-
|
203 |
-
|
204 |
-
if ( $time > 3 ) {
|
205 |
// More than 3 seconds have passed, break and do another request
|
206 |
$completed = false;
|
207 |
break;
|
@@ -211,17 +277,20 @@ abstract class Ai1wm_Export_Abstract {
|
|
211 |
$archive->close();
|
212 |
}
|
213 |
|
214 |
-
// Set
|
215 |
-
$this->
|
216 |
|
217 |
-
|
|
|
218 |
|
219 |
-
// Set
|
220 |
-
|
|
|
|
|
|
|
221 |
|
222 |
// Redirect
|
223 |
if ( $completed ) {
|
224 |
-
// Redirect
|
225 |
$this->route_to( 'database' );
|
226 |
} else {
|
227 |
$this->route_to( 'content' );
|
@@ -244,7 +313,10 @@ abstract class Ai1wm_Export_Abstract {
|
|
244 |
}
|
245 |
|
246 |
// Set progress
|
247 |
-
Ai1wm_Status::set( array(
|
|
|
|
|
|
|
248 |
|
249 |
// Get databsae file
|
250 |
$service = new Ai1wm_Service_Database( $this->args );
|
@@ -258,7 +330,10 @@ abstract class Ai1wm_Export_Abstract {
|
|
258 |
$archive->close();
|
259 |
|
260 |
// Set progress
|
261 |
-
Ai1wm_Status::set( array(
|
|
|
|
|
|
|
262 |
|
263 |
// Disable maintenance mode
|
264 |
Ai1wm_Maintenance::disable();
|
@@ -311,22 +386,6 @@ abstract class Ai1wm_Export_Abstract {
|
|
311 |
return $this->storage;
|
312 |
}
|
313 |
|
314 |
-
/**
|
315 |
-
* Get filemap pointer or set new one
|
316 |
-
*
|
317 |
-
* @param int $pointer Set new file pointer
|
318 |
-
* @return int
|
319 |
-
*/
|
320 |
-
protected function pointer( $pointer = null ) {
|
321 |
-
if ( ! isset( $this->args['pointer'] ) ) {
|
322 |
-
$this->args['pointer'] = 0;
|
323 |
-
} else if ( ! is_null( $pointer ) ) {
|
324 |
-
$this->args['pointer'] = $pointer;
|
325 |
-
}
|
326 |
-
|
327 |
-
return (int) $this->args['pointer'];
|
328 |
-
}
|
329 |
-
|
330 |
/**
|
331 |
* Get file name
|
332 |
*
|
46 |
public function start() {
|
47 |
// Set default progress
|
48 |
Ai1wm_Status::set( array(
|
49 |
+
'type' => 'info',
|
50 |
+
'message' => __( 'Creating an empty archive...', AI1WM_PLUGIN_NAME )
|
|
|
|
|
51 |
) );
|
52 |
|
53 |
// Get package file
|
63 |
|
64 |
// Set progress
|
65 |
Ai1wm_Status::set( array(
|
66 |
+
'type' => 'info',
|
67 |
'message' => __( 'Done creating an empty archive.', AI1WM_PLUGIN_NAME )
|
68 |
) );
|
69 |
|
79 |
public function enumerate() {
|
80 |
// Set progress
|
81 |
Ai1wm_Status::set( array(
|
82 |
+
'type' => 'info',
|
83 |
'message' => __( 'Retrieving a list of all WordPress files...', AI1WM_PLUGIN_NAME )
|
84 |
) );
|
85 |
|
144 |
}
|
145 |
}
|
146 |
|
147 |
+
// Close handler
|
148 |
fclose( $filemap );
|
149 |
|
150 |
+
// Set total files
|
151 |
+
$this->args['total'] = $total;
|
152 |
+
|
153 |
// Set progress
|
154 |
Ai1wm_Status::set( array(
|
155 |
+
'type' => 'info',
|
156 |
'message' => __( 'Done retrieving a list of all WordPress files.', AI1WM_PLUGIN_NAME )
|
157 |
) );
|
158 |
|
166 |
* @return void
|
167 |
*/
|
168 |
public function content() {
|
169 |
+
// Set content offset
|
170 |
+
if ( isset( $this->args['content_offset'] ) ) {
|
171 |
+
$content_offset = $this->args['content_offset'];
|
172 |
+
} else {
|
173 |
+
$content_offset = 0;
|
174 |
+
}
|
175 |
+
|
176 |
+
// Set filemap offset
|
177 |
+
if ( isset( $this->args['filemap_offset'] ) ) {
|
178 |
+
$filemap_offset = $this->args['filemap_offset'];
|
179 |
+
} else {
|
180 |
+
$filemap_offset = 0;
|
181 |
+
}
|
182 |
+
|
183 |
+
// Set total files
|
184 |
+
if ( isset( $this->args['total'] ) ) {
|
185 |
+
$total = $this->args['total'];
|
186 |
+
} else {
|
187 |
+
$total = 1;
|
188 |
+
}
|
189 |
+
|
190 |
+
// Set processed files
|
191 |
+
if ( isset( $this->args['processed'] ) ) {
|
192 |
+
$processed = $this->args['processed'];
|
193 |
+
} else {
|
194 |
+
$processed = 0;
|
195 |
+
}
|
196 |
|
197 |
// What percent of files have we processed?
|
198 |
+
$progress = (int) ( ( $processed / $total ) * 100 );
|
199 |
|
200 |
// Set progress
|
201 |
+
if ( empty( $content_offset ) ) {
|
202 |
+
Ai1wm_Status::set( array(
|
203 |
+
'type' => 'info',
|
204 |
+
'message' => sprintf( __( 'Archiving %d files...<br />%.2f%% complete', AI1WM_PLUGIN_NAME ), $total, $progress )
|
205 |
+
) );
|
206 |
+
}
|
207 |
|
208 |
// Get map file
|
209 |
$filemap = fopen( $this->storage()->filemap(), 'r' );
|
215 |
$completed = true;
|
216 |
|
217 |
// Set file map pointer at the current index
|
218 |
+
if ( fseek( $filemap, $filemap_offset ) !== -1 ) {
|
219 |
+
|
220 |
// Get archive
|
221 |
$archive = new Ai1wm_Compressor( $this->storage()->archive() );
|
222 |
|
223 |
while ( $path = trim( fgets( $filemap ) ) ) {
|
224 |
try {
|
225 |
+
|
226 |
+
// Set absolute path
|
227 |
+
$abs_path = WP_CONTENT_DIR . DIRECTORY_SEPARATOR . $path;
|
228 |
+
|
229 |
// Add file to archive
|
230 |
+
if ( ( $content_offset = $archive->add_file( $abs_path, $path, $content_offset, 3 ) ) ) {
|
231 |
+
|
232 |
+
// Set progress
|
233 |
+
if ( ( $sub_progress = ( $content_offset / $archive->get_current_filesize() ) ) < 1 ) {
|
234 |
+
$progress += $sub_progress;
|
235 |
+
}
|
236 |
+
|
237 |
+
// Set progress
|
238 |
+
Ai1wm_Status::set( array(
|
239 |
+
'type' => 'info',
|
240 |
+
'message' => sprintf( __( 'Archiving %d files...<br />%.2f%% complete', AI1WM_PLUGIN_NAME ), $total, $progress )
|
241 |
+
) );
|
242 |
+
|
243 |
+
// Set content offset
|
244 |
+
$this->args['content_offset'] = $content_offset;
|
245 |
+
|
246 |
+
// Set filemap offset
|
247 |
+
$this->args['filemap_offset'] = $filemap_offset;
|
248 |
+
|
249 |
+
// Close the filemap file
|
250 |
+
fclose( $filemap );
|
251 |
+
|
252 |
+
// Redirect
|
253 |
+
return $this->route_to( 'content' );
|
254 |
+
|
255 |
+
}
|
256 |
+
|
257 |
+
// Set content offset
|
258 |
+
$content_offset = 0;
|
259 |
+
|
260 |
+
// Set filemap offset
|
261 |
+
$filemap_offset = ftell( $filemap );
|
262 |
+
|
263 |
} catch ( Exception $e ) {
|
264 |
// Skip bad file permissions
|
265 |
}
|
266 |
|
267 |
$processed++;
|
268 |
|
269 |
+
// Time elapsed
|
270 |
+
if ( ( microtime( true ) - $start ) > 3 ) {
|
|
|
|
|
271 |
// More than 3 seconds have passed, break and do another request
|
272 |
$completed = false;
|
273 |
break;
|
277 |
$archive->close();
|
278 |
}
|
279 |
|
280 |
+
// Set content offset
|
281 |
+
$this->args['content_offset'] = $content_offset;
|
282 |
|
283 |
+
// Set filemap offset
|
284 |
+
$this->args['filemap_offset'] = $filemap_offset;
|
285 |
|
286 |
+
// Set processed files
|
287 |
+
$this->args['processed'] = $processed;
|
288 |
+
|
289 |
+
// Close the filemap file
|
290 |
+
fclose( $filemap );
|
291 |
|
292 |
// Redirect
|
293 |
if ( $completed ) {
|
|
|
294 |
$this->route_to( 'database' );
|
295 |
} else {
|
296 |
$this->route_to( 'content' );
|
313 |
}
|
314 |
|
315 |
// Set progress
|
316 |
+
Ai1wm_Status::set( array(
|
317 |
+
'type' => 'info',
|
318 |
+
'message' => __( 'Exporting database...', AI1WM_PLUGIN_NAME )
|
319 |
+
) );
|
320 |
|
321 |
// Get databsae file
|
322 |
$service = new Ai1wm_Service_Database( $this->args );
|
330 |
$archive->close();
|
331 |
|
332 |
// Set progress
|
333 |
+
Ai1wm_Status::set( array(
|
334 |
+
'type' => 'info',
|
335 |
+
'message' => __( 'Done exporting database.', AI1WM_PLUGIN_NAME )
|
336 |
+
) );
|
337 |
|
338 |
// Disable maintenance mode
|
339 |
Ai1wm_Maintenance::disable();
|
386 |
return $this->storage;
|
387 |
}
|
388 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
389 |
/**
|
390 |
* Get file name
|
391 |
*
|
lib/model/class-ai1wm-export-file.php
CHANGED
@@ -27,7 +27,10 @@ class Ai1wm_Export_File extends Ai1wm_Export_Abstract {
|
|
27 |
|
28 |
public function export() {
|
29 |
// Set progress
|
30 |
-
Ai1wm_Status::set( array(
|
|
|
|
|
|
|
31 |
|
32 |
// Close achive file
|
33 |
$archive = new Ai1wm_Compressor( $this->storage()->archive() );
|
@@ -37,27 +40,23 @@ class Ai1wm_Export_File extends Ai1wm_Export_Abstract {
|
|
37 |
|
38 |
// Rename archive file
|
39 |
if ( rename( $this->storage()->archive(), $this->storage()->backup() ) ) {
|
40 |
-
|
41 |
// Set progress
|
42 |
-
Ai1wm_Status::set(
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
),
|
59 |
-
$this->storage()->status() // status.js file
|
60 |
-
);
|
61 |
}
|
62 |
}
|
63 |
}
|
27 |
|
28 |
public function export() {
|
29 |
// Set progress
|
30 |
+
Ai1wm_Status::set( array(
|
31 |
+
'type' => 'info',
|
32 |
+
'message' => __( 'Renaming exported file...', AI1WM_PLUGIN_NAME )
|
33 |
+
) );
|
34 |
|
35 |
// Close achive file
|
36 |
$archive = new Ai1wm_Compressor( $this->storage()->archive() );
|
40 |
|
41 |
// Rename archive file
|
42 |
if ( rename( $this->storage()->archive(), $this->storage()->backup() ) ) {
|
|
|
43 |
// Set progress
|
44 |
+
Ai1wm_Status::set( array(
|
45 |
+
'type' => 'download',
|
46 |
+
'message' => sprintf(
|
47 |
+
__(
|
48 |
+
'<a href="%s/%s" class="ai1wm-button-green ai1wm-emphasize">' .
|
49 |
+
'<span>Download %s</span>' .
|
50 |
+
'<em>Size: %s</em>' .
|
51 |
+
'</a>',
|
52 |
+
AI1WM_PLUGIN_NAME
|
53 |
+
),
|
54 |
+
AI1WM_BACKUPS_URL,
|
55 |
+
basename( $this->storage()->backup() ),
|
56 |
+
parse_url( home_url(), PHP_URL_HOST ),
|
57 |
+
size_format( filesize( $this->storage()->backup() ) )
|
58 |
+
)
|
59 |
+
) );
|
|
|
|
|
|
|
60 |
}
|
61 |
}
|
62 |
}
|
lib/model/class-ai1wm-http.php
CHANGED
@@ -138,13 +138,14 @@ class Ai1wm_Http {
|
|
138 |
|
139 |
// HTTP request
|
140 |
remove_all_filters( 'http_request_args' );
|
141 |
-
|
142 |
-
|
143 |
array(
|
144 |
'timeout' => apply_filters( 'ai1wm_http_timeout', 5 ),
|
145 |
'blocking' => false,
|
146 |
'sslverify' => false,
|
147 |
'headers' => $headers,
|
|
|
148 |
)
|
149 |
);
|
150 |
}
|
138 |
|
139 |
// HTTP request
|
140 |
remove_all_filters( 'http_request_args' );
|
141 |
+
wp_remote_post(
|
142 |
+
$url,
|
143 |
array(
|
144 |
'timeout' => apply_filters( 'ai1wm_http_timeout', 5 ),
|
145 |
'blocking' => false,
|
146 |
'sslverify' => false,
|
147 |
'headers' => $headers,
|
148 |
+
'body' => $params,
|
149 |
)
|
150 |
);
|
151 |
}
|
lib/model/class-ai1wm-import-abstract.php
CHANGED
@@ -46,10 +46,8 @@ abstract class Ai1wm_Import_Abstract {
|
|
46 |
public function start() {
|
47 |
// Set default progress
|
48 |
Ai1wm_Status::set( array(
|
49 |
-
'
|
50 |
-
'
|
51 |
-
'type' => 'info',
|
52 |
-
'message' => __( 'Unpacking archive...', AI1WM_PLUGIN_NAME ),
|
53 |
) );
|
54 |
|
55 |
// Open the archive file for reading
|
@@ -151,18 +149,17 @@ abstract class Ai1wm_Import_Abstract {
|
|
151 |
// Open the archive file for reading
|
152 |
$archive = new Ai1wm_Extractor( $this->storage()->archive() );
|
153 |
|
154 |
-
//
|
155 |
$total = $archive->get_number_of_files();
|
156 |
|
157 |
-
//
|
158 |
-
$total -= 2;
|
159 |
-
|
160 |
-
// close the archive file
|
161 |
$archive->close();
|
162 |
|
|
|
|
|
|
|
163 |
// Set progress
|
164 |
Ai1wm_Status::set( array(
|
165 |
-
'total' => $total,
|
166 |
'type' => 'info',
|
167 |
'message' => __( 'Done retrieving a list of all WordPress files.', AI1WM_PLUGIN_NAME ),
|
168 |
) );
|
@@ -190,16 +187,44 @@ abstract class Ai1wm_Import_Abstract {
|
|
190 |
* @return void
|
191 |
*/
|
192 |
public function content() {
|
193 |
-
//
|
194 |
-
|
195 |
-
|
196 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
|
198 |
// Set progress
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
|
|
|
|
203 |
|
204 |
// Start time
|
205 |
$start = microtime( true );
|
@@ -211,15 +236,45 @@ abstract class Ai1wm_Import_Abstract {
|
|
211 |
$archive = new Ai1wm_Extractor( $this->storage()->archive() );
|
212 |
|
213 |
// Set the file pointer to the one that we have saved
|
214 |
-
$archive->set_file_pointer( null, $
|
215 |
|
216 |
while ( $archive->has_not_reached_eof() ) {
|
217 |
try {
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
} catch ( Exception $e ) {
|
224 |
// Skip bad file permissions
|
225 |
}
|
@@ -227,26 +282,26 @@ abstract class Ai1wm_Import_Abstract {
|
|
227 |
// Increment processed files counter
|
228 |
$processed++;
|
229 |
|
230 |
-
//
|
231 |
-
|
232 |
-
|
233 |
-
// More than 5 seconds have passed, break and do another request
|
234 |
$completed = false;
|
235 |
break;
|
236 |
}
|
237 |
}
|
238 |
|
239 |
-
// Set
|
240 |
-
$this->
|
|
|
|
|
|
|
|
|
|
|
|
|
241 |
|
242 |
// Close the archive file
|
243 |
$archive->close();
|
244 |
|
245 |
-
// Set progress
|
246 |
-
Ai1wm_Status::set( array(
|
247 |
-
'processed' => $processed,
|
248 |
-
) );
|
249 |
-
|
250 |
// Redirect
|
251 |
if ( $completed ) {
|
252 |
$this->route_to( 'database' );
|
@@ -268,6 +323,7 @@ abstract class Ai1wm_Import_Abstract {
|
|
268 |
|
269 |
// Display progress
|
270 |
Ai1wm_Status::set( array(
|
|
|
271 |
'message' => __( 'Restoring database...', AI1WM_PLUGIN_NAME ),
|
272 |
) );
|
273 |
|
@@ -359,22 +415,6 @@ abstract class Ai1wm_Import_Abstract {
|
|
359 |
return $this->storage;
|
360 |
}
|
361 |
|
362 |
-
/**
|
363 |
-
* Get filemap pointer or set new one
|
364 |
-
*
|
365 |
-
* @param int $pointer Set new file pointer
|
366 |
-
* @return int
|
367 |
-
*/
|
368 |
-
protected function pointer( $pointer = null ) {
|
369 |
-
if ( ! isset( $this->args['pointer'] ) ) {
|
370 |
-
$this->args['pointer'] = 0;
|
371 |
-
} else if ( ! is_null( $pointer ) ) {
|
372 |
-
$this->args['pointer'] = $pointer;
|
373 |
-
}
|
374 |
-
|
375 |
-
return (int) $this->args['pointer'];
|
376 |
-
}
|
377 |
-
|
378 |
/**
|
379 |
* Route to method
|
380 |
*
|
46 |
public function start() {
|
47 |
// Set default progress
|
48 |
Ai1wm_Status::set( array(
|
49 |
+
'type' => 'info',
|
50 |
+
'message' => __( 'Unpacking archive...', AI1WM_PLUGIN_NAME ),
|
|
|
|
|
51 |
) );
|
52 |
|
53 |
// Open the archive file for reading
|
149 |
// Open the archive file for reading
|
150 |
$archive = new Ai1wm_Extractor( $this->storage()->archive() );
|
151 |
|
152 |
+
// Get number of files
|
153 |
$total = $archive->get_number_of_files();
|
154 |
|
155 |
+
// Close the archive file
|
|
|
|
|
|
|
156 |
$archive->close();
|
157 |
|
158 |
+
// Set total
|
159 |
+
$this->args['total'] = $total;
|
160 |
+
|
161 |
// Set progress
|
162 |
Ai1wm_Status::set( array(
|
|
|
163 |
'type' => 'info',
|
164 |
'message' => __( 'Done retrieving a list of all WordPress files.', AI1WM_PLUGIN_NAME ),
|
165 |
) );
|
187 |
* @return void
|
188 |
*/
|
189 |
public function content() {
|
190 |
+
// Set content offset
|
191 |
+
if ( isset( $this->args['content_offset'] ) ) {
|
192 |
+
$content_offset = $this->args['content_offset'];
|
193 |
+
} else {
|
194 |
+
$content_offset = 0;
|
195 |
+
}
|
196 |
+
|
197 |
+
// Set archive offset
|
198 |
+
if ( isset( $this->args['archive_offset']) ) {
|
199 |
+
$archive_offset = $this->args['archive_offset'];
|
200 |
+
} else {
|
201 |
+
$archive_offset = 0;
|
202 |
+
}
|
203 |
+
|
204 |
+
// Set total files
|
205 |
+
if ( isset( $this->args['total'] ) ) {
|
206 |
+
$total = $this->args['total'];
|
207 |
+
} else {
|
208 |
+
$total = 1;
|
209 |
+
}
|
210 |
+
|
211 |
+
// Set processed files
|
212 |
+
if ( isset( $this->args['processed'] ) ) {
|
213 |
+
$processed = $this->args['processed'];
|
214 |
+
} else {
|
215 |
+
$processed = 0;
|
216 |
+
}
|
217 |
+
|
218 |
+
// What percent of files have we processed?
|
219 |
+
$progress = (int) ( ( $processed / $total ) * 100 );
|
220 |
|
221 |
// Set progress
|
222 |
+
if ( empty( $content_offset ) ) {
|
223 |
+
Ai1wm_Status::set( array(
|
224 |
+
'type' => 'info',
|
225 |
+
'message' => sprintf( __( 'Restoring %d files...<br />%.2f%% complete', AI1WM_PLUGIN_NAME ), $total, $progress ),
|
226 |
+
) );
|
227 |
+
}
|
228 |
|
229 |
// Start time
|
230 |
$start = microtime( true );
|
236 |
$archive = new Ai1wm_Extractor( $this->storage()->archive() );
|
237 |
|
238 |
// Set the file pointer to the one that we have saved
|
239 |
+
$archive->set_file_pointer( null, $archive_offset );
|
240 |
|
241 |
while ( $archive->has_not_reached_eof() ) {
|
242 |
try {
|
243 |
+
|
244 |
+
// Extract a file from archive to WP_CONTENT_DIR
|
245 |
+
if ( ( $content_offset = $archive->extract_one_file_to( WP_CONTENT_DIR, array( AI1WM_PACKAGE_NAME, AI1WM_DATABASE_NAME ), $content_offset, 3 ) ) ) {
|
246 |
+
|
247 |
+
// Set progress
|
248 |
+
if ( ( $sub_progress = ( $content_offset / $archive->get_current_filesize() ) ) < 1 ) {
|
249 |
+
$progress += $sub_progress;
|
250 |
+
}
|
251 |
+
|
252 |
+
// Set progress
|
253 |
+
Ai1wm_Status::set( array(
|
254 |
+
'type' => 'info',
|
255 |
+
'message' => sprintf( __( 'Restoring %d files...<br />%.2f%% complete', AI1WM_PLUGIN_NAME ), $total, $progress ),
|
256 |
+
) );
|
257 |
+
|
258 |
+
// Set content offset
|
259 |
+
$this->args['content_offset'] = $content_offset;
|
260 |
+
|
261 |
+
// Set archive offset
|
262 |
+
$this->args['archive_offset'] = $archive_offset;
|
263 |
+
|
264 |
+
// Close the archive file
|
265 |
+
$archive->close();
|
266 |
+
|
267 |
+
// Redirect
|
268 |
+
return $this->route_to( 'content' );
|
269 |
+
|
270 |
+
}
|
271 |
+
|
272 |
+
// Set content offset
|
273 |
+
$content_offset = 0;
|
274 |
+
|
275 |
+
// Set archive offset
|
276 |
+
$archive_offset = $archive->get_file_pointer();
|
277 |
+
|
278 |
} catch ( Exception $e ) {
|
279 |
// Skip bad file permissions
|
280 |
}
|
282 |
// Increment processed files counter
|
283 |
$processed++;
|
284 |
|
285 |
+
// Time elapsed
|
286 |
+
if ( ( microtime( true ) - $start ) > 3 ) {
|
287 |
+
// More than 3 seconds have passed, break and do another request
|
|
|
288 |
$completed = false;
|
289 |
break;
|
290 |
}
|
291 |
}
|
292 |
|
293 |
+
// Set content offset
|
294 |
+
$this->args['content_offset'] = $content_offset;
|
295 |
+
|
296 |
+
// Set archive offset
|
297 |
+
$this->args['archive_offset'] = $archive_offset;
|
298 |
+
|
299 |
+
// Set processed files
|
300 |
+
$this->args['processed'] = $processed;
|
301 |
|
302 |
// Close the archive file
|
303 |
$archive->close();
|
304 |
|
|
|
|
|
|
|
|
|
|
|
305 |
// Redirect
|
306 |
if ( $completed ) {
|
307 |
$this->route_to( 'database' );
|
323 |
|
324 |
// Display progress
|
325 |
Ai1wm_Status::set( array(
|
326 |
+
'type' => 'info',
|
327 |
'message' => __( 'Restoring database...', AI1WM_PLUGIN_NAME ),
|
328 |
) );
|
329 |
|
415 |
return $this->storage;
|
416 |
}
|
417 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
418 |
/**
|
419 |
* Route to method
|
420 |
*
|
lib/model/class-ai1wm-log.php
CHANGED
@@ -92,23 +92,19 @@ class Ai1wm_Log {
|
|
92 |
* @return void
|
93 |
*/
|
94 |
public static function error_handler( $errno, $errstr, $errfile, $errline ) {
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
$message = implode( PHP_EOL, $message );
|
109 |
-
|
110 |
-
self::write( $message, 'ERROR_HANDLER' );
|
111 |
-
}
|
112 |
}
|
113 |
|
114 |
/**
|
92 |
* @return void
|
93 |
*/
|
94 |
public static function error_handler( $errno, $errstr, $errfile, $errline ) {
|
95 |
+
$message = array();
|
96 |
+
|
97 |
+
// Add an empty line
|
98 |
+
$message[] = '';
|
99 |
+
$message[] = 'Number: ' . $errno;
|
100 |
+
$message[] = 'Message: ' . $errstr;
|
101 |
+
$message[] = 'File: ' . $errfile;
|
102 |
+
$message[] = 'Line: ' . $errline;
|
103 |
+
$message[] = '--------------------------------------------';
|
104 |
+
|
105 |
+
$message = implode( PHP_EOL, $message );
|
106 |
+
|
107 |
+
self::write( $message, 'ERROR_HANDLER' );
|
|
|
|
|
|
|
|
|
108 |
}
|
109 |
|
110 |
/**
|
lib/model/service/class-ai1wm-service-database.php
CHANGED
@@ -150,20 +150,23 @@ class Ai1wm_Service_Database implements Ai1wm_Service_Interface {
|
|
150 |
$user = array();
|
151 |
}
|
152 |
|
153 |
-
// Get
|
154 |
-
$
|
155 |
|
156 |
-
// Get
|
157 |
-
$
|
158 |
|
159 |
// Get secret key
|
160 |
$secret_key = get_site_option( AI1WM_SECRET_KEY, false, false );
|
161 |
|
162 |
-
// Get
|
163 |
-
$
|
164 |
|
165 |
-
// Get
|
166 |
-
$
|
|
|
|
|
|
|
167 |
|
168 |
// Get database client
|
169 |
$client = MysqlDumpFactory::makeMysqlDump( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
|
@@ -188,44 +191,11 @@ class Ai1wm_Service_Database implements Ai1wm_Service_Interface {
|
|
188 |
// Clear WP options cache
|
189 |
wp_cache_flush();
|
190 |
|
191 |
-
//
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
// Dropbox Extension
|
197 |
-
if ( is_plugin_active( AI1WMDE_PLUGIN_BASENAME ) ) {
|
198 |
-
activate_plugin( AI1WMDE_PLUGIN_BASENAME );
|
199 |
-
}
|
200 |
-
|
201 |
-
// Google Drive Extension
|
202 |
-
if ( is_plugin_active( AI1WMGE_PLUGIN_BASENAME ) ) {
|
203 |
-
activate_plugin( AI1WMGE_PLUGIN_BASENAME );
|
204 |
-
}
|
205 |
-
|
206 |
-
// Amazon S3 Extension
|
207 |
-
if ( is_plugin_active( AI1WMSE_PLUGIN_BASENAME ) ) {
|
208 |
-
activate_plugin( AI1WMSE_PLUGIN_BASENAME );
|
209 |
-
}
|
210 |
-
|
211 |
-
// Multisite Extension
|
212 |
-
if ( is_plugin_active( AI1WMME_PLUGIN_BASENAME ) ) {
|
213 |
-
activate_plugin( AI1WMME_PLUGIN_BASENAME );
|
214 |
-
}
|
215 |
-
|
216 |
-
// Unlimited Extension
|
217 |
-
if ( is_plugin_active( AI1WMUE_PLUGIN_BASENAME ) ) {
|
218 |
-
activate_plugin( AI1WMUE_PLUGIN_BASENAME );
|
219 |
-
}
|
220 |
-
|
221 |
-
// FTP Extension
|
222 |
-
if ( is_plugin_active( AI1WMFE_PLUGIN_BASENAME ) ) {
|
223 |
-
activate_plugin( AI1WMFE_PLUGIN_BASENAME );
|
224 |
-
}
|
225 |
-
|
226 |
-
// URL Extension
|
227 |
-
if ( is_plugin_active( AI1WMLE_PLUGIN_BASENAME ) ) {
|
228 |
-
activate_plugin( AI1WMLE_PLUGIN_BASENAME );
|
229 |
}
|
230 |
|
231 |
// Set new user identity
|
@@ -257,20 +227,20 @@ class Ai1wm_Service_Database implements Ai1wm_Service_Interface {
|
|
257 |
}
|
258 |
}
|
259 |
|
260 |
-
// Set the new
|
261 |
-
update_site_option(
|
262 |
|
263 |
-
// Set the new
|
264 |
-
update_site_option(
|
265 |
|
266 |
// Set the new secret key value
|
267 |
update_site_option( AI1WM_SECRET_KEY, $secret_key );
|
268 |
|
269 |
-
// Set the new
|
270 |
-
update_site_option(
|
271 |
|
272 |
-
// Set the new
|
273 |
-
update_site_option(
|
274 |
}
|
275 |
|
276 |
/**
|
150 |
$user = array();
|
151 |
}
|
152 |
|
153 |
+
// Get URL IP
|
154 |
+
$url_ip = get_site_option( AI1WM_URL_IP, false, false );
|
155 |
|
156 |
+
// Get URL transport
|
157 |
+
$url_transport = get_site_option( AI1WM_URL_TRANSPORT, false, false );
|
158 |
|
159 |
// Get secret key
|
160 |
$secret_key = get_site_option( AI1WM_SECRET_KEY, false, false );
|
161 |
|
162 |
+
// Get HTTP user
|
163 |
+
$auth_user = get_site_option( AI1WM_AUTH_USER, false, false );
|
164 |
|
165 |
+
// Get HTTP password
|
166 |
+
$auth_password = get_site_option( AI1WM_AUTH_PASSWORD, false, false );
|
167 |
+
|
168 |
+
// Get active plugins
|
169 |
+
$active_plugins = get_site_option( AI1WM_ACTIVE_PLUGINS, array(), false );
|
170 |
|
171 |
// Get database client
|
172 |
$client = MysqlDumpFactory::makeMysqlDump( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
|
191 |
// Clear WP options cache
|
192 |
wp_cache_flush();
|
193 |
|
194 |
+
// Activate plugins
|
195 |
+
foreach ( $active_plugins as $plugin ) {
|
196 |
+
if ( in_array( $plugin, ai1wm_active_plugins() ) ) {
|
197 |
+
activate_plugin( $plugin );
|
198 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
199 |
}
|
200 |
|
201 |
// Set new user identity
|
227 |
}
|
228 |
}
|
229 |
|
230 |
+
// Set the new URL IP
|
231 |
+
update_site_option( AI1WM_URL_IP, $url_ip );
|
232 |
|
233 |
+
// Set the new URL transport
|
234 |
+
update_site_option( AI1WM_URL_TRANSPORT, $url_transport );
|
235 |
|
236 |
// Set the new secret key value
|
237 |
update_site_option( AI1WM_SECRET_KEY, $secret_key );
|
238 |
|
239 |
+
// Set the new HTTP user
|
240 |
+
update_site_option( AI1WM_AUTH_USER, $auth_user );
|
241 |
|
242 |
+
// Set the new HTTP password
|
243 |
+
update_site_option( AI1WM_AUTH_PASSWORD, $auth_password );
|
244 |
}
|
245 |
|
246 |
/**
|
lib/vendor/servmask/archiver/class-ai1wm-archiver.php
CHANGED
@@ -30,7 +30,7 @@ abstract class Ai1wm_Archiver {
|
|
30 |
*
|
31 |
* Field Name Offset Length Contents
|
32 |
* name 0 255 filename (no path, no slash)
|
33 |
-
* size 255 14
|
34 |
* mtime 269 12 last modification time
|
35 |
* prefix 281 4096 path name, no trailing slashes
|
36 |
*
|
@@ -38,7 +38,7 @@ abstract class Ai1wm_Archiver {
|
|
38 |
*/
|
39 |
protected $block_format = array(
|
40 |
'a255', // filename
|
41 |
-
'a14', //
|
42 |
'a12', // last time modified
|
43 |
'a4096' // path
|
44 |
);
|
@@ -57,6 +57,13 @@ abstract class Ai1wm_Archiver {
|
|
57 |
*/
|
58 |
protected $file_handle = null;
|
59 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
/**
|
61 |
* End Of File block string
|
62 |
*
|
@@ -147,8 +154,8 @@ abstract class Ai1wm_Archiver {
|
|
147 |
* Write data to a handle and check if the data has been written
|
148 |
*
|
149 |
* @param resource $handle File handle
|
150 |
-
* @param string
|
151 |
-
* @param string
|
152 |
*
|
153 |
* @throws \Ai1wm_Not_Writable_Exception
|
154 |
*/
|
@@ -163,8 +170,8 @@ abstract class Ai1wm_Archiver {
|
|
163 |
* Read data from a handle
|
164 |
*
|
165 |
* @param resource $handle File handle
|
166 |
-
* @param int
|
167 |
-
* @param string
|
168 |
*
|
169 |
* @return string Content that was read
|
170 |
* @throws \Ai1wm_Not_Readable_Exception
|
@@ -178,7 +185,6 @@ abstract class Ai1wm_Archiver {
|
|
178 |
return $result;
|
179 |
}
|
180 |
|
181 |
-
|
182 |
/**
|
183 |
* Appends end of file block to the archive
|
184 |
*
|
@@ -188,6 +194,15 @@ abstract class Ai1wm_Archiver {
|
|
188 |
$this->write_to_handle( $this->file_handle, $this->eof, $this->filename );
|
189 |
}
|
190 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
/**
|
192 |
* Closes the archive file
|
193 |
*
|
30 |
*
|
31 |
* Field Name Offset Length Contents
|
32 |
* name 0 255 filename (no path, no slash)
|
33 |
+
* size 255 14 Size of file contents
|
34 |
* mtime 269 12 last modification time
|
35 |
* prefix 281 4096 path name, no trailing slashes
|
36 |
*
|
38 |
*/
|
39 |
protected $block_format = array(
|
40 |
'a255', // filename
|
41 |
+
'a14', // size of file contents
|
42 |
'a12', // last time modified
|
43 |
'a4096' // path
|
44 |
);
|
57 |
*/
|
58 |
protected $file_handle = null;
|
59 |
|
60 |
+
/**
|
61 |
+
* Current file size
|
62 |
+
*
|
63 |
+
* @type int
|
64 |
+
*/
|
65 |
+
protected $current_filesize = null;
|
66 |
+
|
67 |
/**
|
68 |
* End Of File block string
|
69 |
*
|
154 |
* Write data to a handle and check if the data has been written
|
155 |
*
|
156 |
* @param resource $handle File handle
|
157 |
+
* @param string $data Data to be written - binary
|
158 |
+
* @param string $file Filename that the file handle belongs to
|
159 |
*
|
160 |
* @throws \Ai1wm_Not_Writable_Exception
|
161 |
*/
|
170 |
* Read data from a handle
|
171 |
*
|
172 |
* @param resource $handle File handle
|
173 |
+
* @param int $size Size of data to be read in bytes
|
174 |
+
* @param string $file Filename that the file handle belongs to
|
175 |
*
|
176 |
* @return string Content that was read
|
177 |
* @throws \Ai1wm_Not_Readable_Exception
|
185 |
return $result;
|
186 |
}
|
187 |
|
|
|
188 |
/**
|
189 |
* Appends end of file block to the archive
|
190 |
*
|
194 |
$this->write_to_handle( $this->file_handle, $this->eof, $this->filename );
|
195 |
}
|
196 |
|
197 |
+
/**
|
198 |
+
* Get current file size
|
199 |
+
*
|
200 |
+
* return int
|
201 |
+
*/
|
202 |
+
public function get_current_filesize() {
|
203 |
+
return $this->current_filesize;
|
204 |
+
}
|
205 |
+
|
206 |
/**
|
207 |
* Closes the archive file
|
208 |
*
|
lib/vendor/servmask/archiver/class-ai1wm-compressor.php
CHANGED
@@ -38,33 +38,56 @@ class Ai1wm_Compressor extends Ai1wm_Archiver {
|
|
38 |
/**
|
39 |
* Add a file to the archive
|
40 |
*
|
41 |
-
* @param string
|
42 |
-
* @param string
|
|
|
|
|
43 |
*
|
44 |
* @throws \Ai1wm_Not_Accesible_Exception
|
45 |
* @throws \Ai1wm_Not_Readable_Exception
|
46 |
* @throws \Ai1wm_Not_Writable_Exception
|
47 |
*/
|
48 |
-
public function add_file( $file, $new_filename = '' ) {
|
49 |
// open the file for reading in binary mode
|
50 |
$handle = $this->open_file_for_reading( $file );
|
51 |
|
52 |
// get file block header of the file we are trying to archive
|
53 |
$block = $this->get_file_block( $file, $new_filename );
|
54 |
|
55 |
-
//
|
56 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
|
58 |
// read the file in 512KB chunks
|
59 |
while ( false === feof( $handle ) ) {
|
60 |
$content = $this->read_from_handle( $handle, 512000, $file );
|
|
|
61 |
// write file contents
|
62 |
-
$this->write_to_handle(
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
}
|
|
|
68 |
// close the handle
|
69 |
fclose( $handle );
|
70 |
}
|
@@ -72,7 +95,7 @@ class Ai1wm_Compressor extends Ai1wm_Archiver {
|
|
72 |
/**
|
73 |
* Generate binary block header for a file
|
74 |
*
|
75 |
-
* @param string $file
|
76 |
* @param string $new_filename Write the file with a different name
|
77 |
*
|
78 |
* @return string
|
@@ -95,19 +118,24 @@ class Ai1wm_Compressor extends Ai1wm_Archiver {
|
|
95 |
}
|
96 |
|
97 |
// filename of the file we are accessing
|
98 |
-
$name
|
99 |
-
|
100 |
-
|
|
|
|
|
101 |
// last time the file was modified
|
102 |
-
$date
|
|
|
|
|
|
|
103 |
|
104 |
// replace DIRECTORY_SEPARATOR with / in path, we want to always have /
|
105 |
-
$path = str_replace( DIRECTORY_SEPARATOR,
|
106 |
|
107 |
// concatenate block format parts
|
108 |
-
$format = implode(
|
109 |
|
110 |
// pack file data into binary string
|
111 |
-
return pack( $format, $name, $
|
112 |
}
|
113 |
}
|
38 |
/**
|
39 |
* Add a file to the archive
|
40 |
*
|
41 |
+
* @param string $file File to Add to the archive
|
42 |
+
* @param string $new_filename Write the file with a different name
|
43 |
+
* @param int $offset File offset
|
44 |
+
* @param int $timeout Process timeout
|
45 |
*
|
46 |
* @throws \Ai1wm_Not_Accesible_Exception
|
47 |
* @throws \Ai1wm_Not_Readable_Exception
|
48 |
* @throws \Ai1wm_Not_Writable_Exception
|
49 |
*/
|
50 |
+
public function add_file( $file, $new_filename = '', $offset = 0, $timeout = 0 ) {
|
51 |
// open the file for reading in binary mode
|
52 |
$handle = $this->open_file_for_reading( $file );
|
53 |
|
54 |
// get file block header of the file we are trying to archive
|
55 |
$block = $this->get_file_block( $file, $new_filename );
|
56 |
|
57 |
+
// set file offset or set file header
|
58 |
+
if ( $offset ) {
|
59 |
+
// set file offset
|
60 |
+
fseek( $handle, $offset, SEEK_SET );
|
61 |
+
} else {
|
62 |
+
// write file block header to our archive file
|
63 |
+
$this->write_to_handle( $this->file_handle, $block, $this->filename );
|
64 |
+
}
|
65 |
+
|
66 |
+
// start time
|
67 |
+
$start = microtime( true );
|
68 |
|
69 |
// read the file in 512KB chunks
|
70 |
while ( false === feof( $handle ) ) {
|
71 |
$content = $this->read_from_handle( $handle, 512000, $file );
|
72 |
+
|
73 |
// write file contents
|
74 |
+
$this->write_to_handle( $this->file_handle, $content, $this->filename );
|
75 |
+
|
76 |
+
// time elapsed
|
77 |
+
if ( $timeout ) {
|
78 |
+
if ( ( microtime( true ) - $start ) > $timeout ) {
|
79 |
+
// set file offset
|
80 |
+
$offset = ftell( $handle );
|
81 |
+
|
82 |
+
// close the handle
|
83 |
+
fclose( $handle );
|
84 |
+
|
85 |
+
// get file offset
|
86 |
+
return $offset;
|
87 |
+
}
|
88 |
+
}
|
89 |
}
|
90 |
+
|
91 |
// close the handle
|
92 |
fclose( $handle );
|
93 |
}
|
95 |
/**
|
96 |
* Generate binary block header for a file
|
97 |
*
|
98 |
+
* @param string $file Filename to generate block header for
|
99 |
* @param string $new_filename Write the file with a different name
|
100 |
*
|
101 |
* @return string
|
118 |
}
|
119 |
|
120 |
// filename of the file we are accessing
|
121 |
+
$name = $pathinfo['basename'];
|
122 |
+
|
123 |
+
// size in bytes of the file
|
124 |
+
$size = $stat['7'];
|
125 |
+
|
126 |
// last time the file was modified
|
127 |
+
$date = $stat['9'];
|
128 |
+
|
129 |
+
// current file size
|
130 |
+
$this->current_filesize = $size;
|
131 |
|
132 |
// replace DIRECTORY_SEPARATOR with / in path, we want to always have /
|
133 |
+
$path = str_replace( DIRECTORY_SEPARATOR, '/', $pathinfo['dirname'] );
|
134 |
|
135 |
// concatenate block format parts
|
136 |
+
$format = implode( '', $this->block_format );
|
137 |
|
138 |
// pack file data into binary string
|
139 |
+
return pack( $format, $name, $size, $date, $path );
|
140 |
}
|
141 |
}
|
lib/vendor/servmask/archiver/class-ai1wm-extractor.php
CHANGED
@@ -74,7 +74,7 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
74 |
return $files_found;
|
75 |
}
|
76 |
|
77 |
-
public function extract_one_file_to( $location, $exclude = array() ) {
|
78 |
if ( false === file_exists( $location ) ) {
|
79 |
throw new Ai1wm_Not_Readable_Exception( sprintf( __( '%s doesn\'t exist', AI1WM_PLUGIN_NAME ), $location ) );
|
80 |
}
|
@@ -117,11 +117,13 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
117 |
}
|
118 |
|
119 |
try {
|
120 |
-
|
|
|
|
|
|
|
121 |
} catch ( Exception $e ) {
|
122 |
// we don't have file permissions, skip file content
|
123 |
$this->set_file_pointer( $this->file_handle, $data['size'], $this->filename );
|
124 |
-
return;
|
125 |
}
|
126 |
}
|
127 |
|
@@ -131,7 +133,7 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
131 |
* @param string $location Location where to extract files
|
132 |
* @param array $files Files to extract
|
133 |
*/
|
134 |
-
public function extract_by_files_array( $location, $files = array() ) {
|
135 |
if ( false === file_exists( $location ) ) {
|
136 |
throw new Ai1wm_Not_Readable_Exception( sprintf( __( '%s doesn\'t exist', AI1WM_PLUGIN_NAME ), $location ) );
|
137 |
}
|
@@ -163,7 +165,9 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
163 |
if ( in_array( $filename, $files ) ) {
|
164 |
try {
|
165 |
// we have a match, let's extract the file and remove it from the array
|
166 |
-
$this->extract_to( $location . DIRECTORY_SEPARATOR . $data['filename'], $data )
|
|
|
|
|
167 |
} catch ( Exception $e ) {
|
168 |
// we don't have file permissions, skip file content
|
169 |
$this->set_file_pointer( $this->file_handle, $data['size'], $this->filename );
|
@@ -207,28 +211,53 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
207 |
}
|
208 |
}
|
209 |
|
210 |
-
private function extract_to( $file, $data, $
|
211 |
-
// local file handle
|
212 |
-
$handle = null;
|
213 |
-
|
214 |
// should the extract overwrite the file if it exists?
|
215 |
-
if ( $
|
216 |
-
$handle = $this->open_file_for_overwriting( $file );
|
217 |
-
} else {
|
218 |
$handle = $this->open_file_for_writing( $file );
|
|
|
|
|
219 |
}
|
220 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
221 |
// is the filesize more than 0 bytes?
|
222 |
while ( $data['size'] > 0 ) {
|
223 |
// read the file in chunks of 512KB
|
224 |
-
$
|
|
|
225 |
// read the file in chunks of 512KB from archiver
|
226 |
-
$content = $this->read_from_handle( $this->file_handle, $
|
|
|
227 |
// remote the amount of bytes we read
|
228 |
-
$data['size'] -= $
|
229 |
|
230 |
// write file contents
|
231 |
$this->write_to_handle( $handle, $content, $file );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
}
|
233 |
|
234 |
// close the handle
|
@@ -266,6 +295,9 @@ class Ai1wm_Extractor extends Ai1wm_Archiver {
|
|
266 |
$data['mtime'] = trim( $data['mtime'] );
|
267 |
$data['path'] = trim( $data['path'] );
|
268 |
|
|
|
|
|
|
|
269 |
return $data;
|
270 |
}
|
271 |
|
74 |
return $files_found;
|
75 |
}
|
76 |
|
77 |
+
public function extract_one_file_to( $location, $exclude = array(), $offset = 0, $timeout = 0 ) {
|
78 |
if ( false === file_exists( $location ) ) {
|
79 |
throw new Ai1wm_Not_Readable_Exception( sprintf( __( '%s doesn\'t exist', AI1WM_PLUGIN_NAME ), $location ) );
|
80 |
}
|
117 |
}
|
118 |
|
119 |
try {
|
120 |
+
// we have a match, let's extract the file
|
121 |
+
if ( ( $offset = $this->extract_to( $path . DIRECTORY_SEPARATOR . $data['filename'], $data, $offset, $timeout ) ) ) {
|
122 |
+
return $offset;
|
123 |
+
}
|
124 |
} catch ( Exception $e ) {
|
125 |
// we don't have file permissions, skip file content
|
126 |
$this->set_file_pointer( $this->file_handle, $data['size'], $this->filename );
|
|
|
127 |
}
|
128 |
}
|
129 |
|
133 |
* @param string $location Location where to extract files
|
134 |
* @param array $files Files to extract
|
135 |
*/
|
136 |
+
public function extract_by_files_array( $location, $files = array(), $offset = 0, $timeout = 0 ) {
|
137 |
if ( false === file_exists( $location ) ) {
|
138 |
throw new Ai1wm_Not_Readable_Exception( sprintf( __( '%s doesn\'t exist', AI1WM_PLUGIN_NAME ), $location ) );
|
139 |
}
|
165 |
if ( in_array( $filename, $files ) ) {
|
166 |
try {
|
167 |
// we have a match, let's extract the file and remove it from the array
|
168 |
+
if ( ( $offset = $this->extract_to( $location . DIRECTORY_SEPARATOR . $data['filename'], $data, $offset, $timeout ) ) ) {
|
169 |
+
return $offset;
|
170 |
+
}
|
171 |
} catch ( Exception $e ) {
|
172 |
// we don't have file permissions, skip file content
|
173 |
$this->set_file_pointer( $this->file_handle, $data['size'], $this->filename );
|
211 |
}
|
212 |
}
|
213 |
|
214 |
+
private function extract_to( $file, $data, $offset = 0, $timeout = 0 ) {
|
|
|
|
|
|
|
215 |
// should the extract overwrite the file if it exists?
|
216 |
+
if ( $offset ) {
|
|
|
|
|
217 |
$handle = $this->open_file_for_writing( $file );
|
218 |
+
} else {
|
219 |
+
$handle = $this->open_file_for_overwriting( $file );
|
220 |
}
|
221 |
|
222 |
+
// get data file pointer
|
223 |
+
$data_file_pointer = $this->get_file_pointer();
|
224 |
+
|
225 |
+
// set data file pointer
|
226 |
+
$this->set_file_pointer( $this->file_handle, $offset, $this->filename );
|
227 |
+
|
228 |
+
// set file size
|
229 |
+
$data['size'] -= $offset;
|
230 |
+
|
231 |
+
// start time
|
232 |
+
$start = microtime( true );
|
233 |
+
|
234 |
// is the filesize more than 0 bytes?
|
235 |
while ( $data['size'] > 0 ) {
|
236 |
// read the file in chunks of 512KB
|
237 |
+
$chunk_size = $data['size'] > 512000 ? 512000 : $data['size'];
|
238 |
+
|
239 |
// read the file in chunks of 512KB from archiver
|
240 |
+
$content = $this->read_from_handle( $this->file_handle, $chunk_size, $this->filename );
|
241 |
+
|
242 |
// remote the amount of bytes we read
|
243 |
+
$data['size'] -= $chunk_size;
|
244 |
|
245 |
// write file contents
|
246 |
$this->write_to_handle( $handle, $content, $file );
|
247 |
+
|
248 |
+
// time elapsed
|
249 |
+
if ( $timeout ) {
|
250 |
+
if ( ( microtime( true ) - $start ) > $timeout ) {
|
251 |
+
// set file offset
|
252 |
+
$offset = $this->get_file_pointer() - $data_file_pointer;
|
253 |
+
|
254 |
+
// close the handle
|
255 |
+
fclose( $handle );
|
256 |
+
|
257 |
+
// get file offset
|
258 |
+
return $offset;
|
259 |
+
}
|
260 |
+
}
|
261 |
}
|
262 |
|
263 |
// close the handle
|
295 |
$data['mtime'] = trim( $data['mtime'] );
|
296 |
$data['path'] = trim( $data['path'] );
|
297 |
|
298 |
+
// current file size
|
299 |
+
$this->current_filesize = $data['size'];
|
300 |
+
|
301 |
return $data;
|
302 |
}
|
303 |
|
lib/view/assets/css/backup.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@charset "UTF-8";.ai1wm-divider{-ms-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:none;height:0;background-color:transparent;font-size:14px;font-weight:700;text-align:center;text-transform:uppercase;color:rgba(0,0,0,.8);position:relative;top:0%;left:0%;margin:1rem 2.5rem;height:auto;padding:0;line-height:1}.ai1wm-divider:before,.ai1wm-divider:after{position:absolute;content:" ";z-index:3;width:50%;top:50%;height:0%;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(255,255,255,.8)}.ai1wm-divider:before{left:0%;margin-left:-2.5rem}.ai1wm-divider:after{left:auto;right:0%;margin-right:-2.5rem}@-webkit-keyframes ai1wm-rotate{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}25%{-webkit-transform:rotateZ(-90deg);transform:rotateZ(-90deg)}50%{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}75%{-webkit-transform:rotateZ(-270deg);transform:rotateZ(-270deg)}100%{-webkit-transform:rotateZ(-360deg);transform:rotateZ(-360deg)}}@keyframes ai1wm-rotate{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}25%{-webkit-transform:rotateZ(-90deg);transform:rotateZ(-90deg)}50%{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}75%{-webkit-transform:rotateZ(-270deg);transform:rotateZ(-270deg)}100%{-webkit-transform:rotateZ(-360deg);transform:rotateZ(-360deg)}}@-webkit-keyframes ai1wm-emphasize{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes ai1wm-emphasize{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes ai1wm-fadein{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes ai1wm-fadein{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}[class^="ai1wm-icon-"],[class*=" ai1wm-icon-"]{font-family:'servmask';speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ai1wm-icon-file-zip:before{content:"\e60f"}.ai1wm-icon-folder:before{content:"\e60e"}.ai1wm-icon-file:before{content:"\e60b"}.ai1wm-icon-file-content:before{content:"\e60c"}.ai1wm-icon-cloud-upload:before{content:"\e600"}.ai1wm-icon-history:before{content:"\e603"}.ai1wm-icon-notification:before{content:"\e619"}.ai1wm-icon-arrow-down:before{content:"\e604"}.ai1wm-icon-close:before{content:"\e61a"}.ai1wm-icon-wordpress2:before{content:"\e620"}.ai1wm-icon-arrow-right:before{content:"\e605"}.ai1wm-icon-plus2:before{content:"\e607"}.ai1wm-icon-export:before{content:"\e601"}.ai1wm-icon-publish:before{content:"\e602"}.ai1wm-icon-paperplane:before{content:"\e608"}.ai1wm-icon-help:before{content:"\e609"}.ai1wm-icon-chevron-right:before{content:"\e60d"}.ai1wm-icon-chevron-down{display:inline-block;position:relative;-webkit-transform:rotateZ(90deg);transform:rotateZ(90deg);margin-left:.5em!important}.ai1wm-icon-chevron-down:before{content:"\e60d"}.ai1wm-icon-dropbox:before{content:"\e606"}.ai1wm-icon-gear:before{content:"\e60a"}.ai1wm-icon-alone{margin:0!important}@media (min-width:855px){.ai1wm-row{margin-right:399px}.ai1wm-row:before,.ai1wm-row:after{content:" ";display:table}.ai1wm-row:after{clear:both}.ai1wm-left{float:left;width:100%}.ai1wm-right{float:right;width:377px;margin-right:-399px}.ai1wm-right .ai1wm-sidebar{width:100%}.ai1wm-right .ai1wm-segment{width:333px;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;color:#333;background-color:#f9f9f9;padding:20px;text-decoration:none;text-shadow:0 1px 0 #fff;background-clip:padding-box}.ai1wm-right .ai1wm-segment h2{margin:22px 0 0;padding:0;font-weight:700;font-size:14px;text-transform:uppercase;text-align:center}.ai1wm-right .ai1wm-feedback-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-right .ai1wm-feedback-message,.ai1wm-right .ai1wm-http-authentication{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-right .ai1wm-feedback-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px}.ai1wm-right .ai1wm-feedback-terms-segment>.ai1wm-feedback-terms{border-radius:3px}}.ai1wm-holder{position:relative;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;padding:20px;background:#f9f9f9}.ai1wm-holder h1{margin:0;padding:0;float:left;font-weight:300;font-size:22px;text-transform:uppercase}.ai1wm-holder h1 i{position:relative;top:2px}@media (max-width:854px){.ai1wm-container{margin-left:10px!important}.ai1wm-row,.ai1wm-right{margin-right:0!important}.ai1wm-right{float:left!important;width:100%!important;margin-top:18px}.ai1wm-right .ai1wm-sidebar{width:auto!important;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;padding:20px;background:#f9f9f9}.ai1wm-right .ai1wm-feedback-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-right .ai1wm-feedback-message{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-right .ai1wm-feedback-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px;border-radius:3px}.ai1wm-right .ai1wm-feedback-terms-segment>.ai1wm-feedback-terms{border-radius:3px}}.ai1wm-container{margin:20px 20px 0 2px}.ai1wm-container:before,.ai1wm-container:after{content:" ";display:table}.ai1wm-container:after{clear:both}.ai1wm-replace-row{width:100%;box-shadow:outset 0 1px 0 0 #fff;border-radius:3px;color:#333;font-size:11px;font-weight:700;background-color:#f9f9f9;text-decoration:none;text-shadow:0 1px 0 #fff;background-clip:padding-box;margin-bottom:10px}.ai1wm-replace-row .ai1wm-field-inline{float:left;width:100%}.ai1wm-replace-row .ai1wm-field-inline input{width:100%;font-weight:400;font-size:.8rem;padding:0 10px;height:2.3rem;line-height:2.3rem;margin-bottom:4px}.ai1wm-field{margin-bottom:4px}.ai1wm-field input[type="text"],.ai1wm-field textarea{width:100%;font-weight:400}.ai1wm-field-set{margin-top:18px}.ai1wm-message{-moz-box-sizing:border-box;background-color:#EFEFEF;border-radius:4px;color:rgba(0,0,0,.6);height:auto;margin:10px 0;min-height:18px;padding:6px 10px;position:relative;border:1px solid;transition:opacity .1s ease 0s,color .1s ease 0s,background .1s ease 0s,box-shadow .1s ease 0s}.ai1wm-message.ai1wm-success-message{background-color:#F2F8F0;color:#119000;font-size:12px}.ai1wm-message.ai1wm-info-message{background-color:#d9edf7;color:#31708f;font-size:11px}.ai1wm-message.ai1wm-error-message{background-color:#F1D7D7;color:#A95252;font-size:12px}.ai1wm-message.ai1wm-red-message{color:#D95C5C;border:2px solid #D95C5C;background-color:transparent}.ai1wm-message.ai1wm-red-message h3{margin:.4em 0;color:#D95C5C}.ai1wm-message p{margin:4px 0;font-size:12px}.ai1wm-message-warning{display:block;font-size:14px;line-height:18px;padding:12px 20px;margin:0 0 22px;background-color:#f9f9f9;border:1px solid #d6d6d6;border-radius:3px;box-shadow:0 1px 0 0 #fff inset;border-left:4px solid #ffba00}.ai1wm-button-group{border:2px solid #27ae60;background-color:transparent;color:#27ae60;border-radius:5px;cursor:pointer;text-transform:uppercase;font-weight:600;transition:background-color .2s ease-out;display:inline-block}.ai1wm-button-group.ai1wm-button-export{width:147px}.ai1wm-button-group.ai1wm-button-export.ai1wm-open>.ai1wm-dropdown-menu{height:150px;border-top:1px solid #27ae60}.ai1wm-button-group.ai1wm-button-import{width:158px}.ai1wm-button-group.ai1wm-button-import.ai1wm-open>.ai1wm-dropdown-menu{height:180px;border-top:1px solid #27ae60}.ai1wm-button-group .ai1wm-button-main{padding:6px 25px 1px;height:22px}.ai1wm-button-group .ai1wm-dropdown-menu{height:0;overflow:hidden;transition:height .2s cubic-bezier(.19,1,.22,1);border-top:none}.ai1wm-dropdown-menu{list-style:none}.ai1wm-dropdown-menu,.ai1wm-dropdown-menu li{margin:0!important;padding:0}.ai1wm-dropdown-menu li a,.ai1wm-dropdown-menu li a:visited{display:block;padding:6px 25px 1px 26px;height:22px;line-height:22px;text-decoration:none;color:#27ae60;text-align:left}.ai1wm-dropdown-menu li a:hover,.ai1wm-dropdown-menu li a:visited:hover{text-decoration:none;color:#111}.ai1mw-lines{-webkit-transform:translate(11px,-1px);transform:translate(11px,-1px);position:relative;display:inline-block;width:12px;height:10px}.ai1wm-line{display:inline-block;width:100%;height:2px;margin:auto;background:#27ae60;position:absolute;transition:all .2s ease-in-out}.ai1wm-line-first{top:0}div.ai1wm-open .ai1wm-line-first,div.ai1wm-open .ai1wm-line-third,.ai1wm-line-second{top:50%}.ai1wm-line-third{top:100%}.ai1wm-button-gray{border:2px solid #95a5a6;background-color:transparent;color:#95a5a6;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-gray:hover{background-color:#95a5a6;color:#fff}.ai1wm-button-green{border:2px solid #27ae60;background-color:transparent;color:#27ae60;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-green:hover{background-color:#27ae60;color:#fff}.ai1wm-button-green-small{border:2px solid #6eb649;background-color:transparent;color:#6eb649;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-green-small:hover{background-color:#6eb649;color:#fff}.ai1wm-button-blue{border:2px solid #00aff0;background-color:transparent;color:#00aff0;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-blue:hover{background-color:#00aff0;color:#fff}.ai1wm-button-red{border:2px solid #e74c3c;background-color:transparent;color:#e74c3c;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-red:hover{background-color:#e74c3c;color:#fff}.ai1wm-button-alone{border-radius:50px!important;padding:5px 8px!important}.ai1wm-button-blue[disabled="disabled"],.ai1wm-button-green[disabled="disabled"],.ai1wm-button-red[disabled="disabled"],.ai1wm-button-green-small[disabled="disabled"]{opacity:.6;cursor:default}.ai1wm-button-blue[disabled="disabled"]:hover{color:#00aff0}.ai1wm-button-red[disabled="disabled"]:hover{color:#e74c3c}.ai1wm-button-green[disabled="disabled"]:hover{color:#27ae60}.ai1wm-button-blue[disabled="disabled"]:hover,.ai1wm-button-green[disabled="disabled"]:hover,.ai1wm-button-red[disabled="disabled"]:hover,.ai1wm-button-green-small[disabled="disabled"]:hover{background:0 0}.ai1wm-button-gray i,.ai1wm-button-green i,.ai1wm-button-blue i,.ai1wm-button-red i{margin-left:-.5em;margin-right:.2em}.ai1wm-message-close-button{position:absolute;right:10px;top:6px;text-decoration:none;font-size:10px}input[type="radio"].ai1wm-flat-radio-button{display:none}input[type="radio"].ai1wm-flat-radio-button+a i,input[type="radio"].ai1wm-flat-radio-button+label i{vertical-align:middle;float:left;width:25px;height:25px;border-radius:50%;background:0 0;border:2px solid #ccc;content:" ";cursor:pointer;position:relative;box-sizing:content-box}input[type="radio"].ai1wm-flat-radio-button:checked+a i,input[type="radio"].ai1wm-flat-radio-button:checked+label i{background-color:#d9d9d9;border-color:#6f6f6f}.ai1wm-clear{*zoom:1;clear:both}.ai1wm-clear:before,.ai1wm-clear:after{content:" ";display:table}.ai1wm-clear:after{clear:both}.ai1wm-list-expanded{display:block!important}.ai1wm-field-inline input{border-radius:5px}.ai1wm-container .ai1wm-row label{position:relative;top:-1px}.ai1wm-share-button-container{text-align:center}.ai1wm-share-button-container .ai1wm-share-button{text-decoration:none;margin:10px;font-size:30px}.ai1wm-report-problem{position:relative;float:right}.ai1wm-report-problem-dialog{position:absolute;z-index:999;width:280px;right:0;background-color:#fff;margin:6px 0 0;padding:15px 15px 10px;border:1px solid #D6D6D6;border-radius:3px;box-shadow:0 1px 0 0 #fff inset;display:none}.ai1wm-report-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-report-message{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-report-cancel:link,.ai1wm-report-cancel:visited,.ai1wm-report-cancel:active,.ai1wm-feedback-cancel:link,.ai1wm-feedback-cancel:visited,.ai1wm-feedback-cancel:active{float:right;line-height:34px;outline:0;text-decoration:none;color:#e74c3c}.ai1wm-report-active{display:block}.ai1wm-report-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px}.ai1wm-report-terms-segment>.ai1wm-report-terms{border-radius:3px}.ai1wm-no-underline{text-decoration:none}.ai1wm-top-negative-four{top:-4px}.ai1wm-feedback-form{display:none}.ai1wm-feedback-types{margin:0;padding:0;list-style:none}.ai1wm-feedback-types li{margin:14px 0;padding:0}.ai1wm-feedback-types>li>label>span{display:inline-block;padding:5px 0 6px 8px}.ai1wm-feedback-types>li>a{height:29px;outline:none;color:#333;text-deciration:none}.ai1wm-feedback-types>li>a>span{display:inline-block;padding:5px 0 6px 8px}.ai1wm-loader{display:inline-block;width:128px;height:128px;position:relative;-webkit-animation:ai1wm-rotate 1.5s infinite linear;animation:ai1wm-rotate 1.5s infinite linear;background:url("../img/logo.svg") no-repeat center center}.ai1wm-hide{display:none}#ai1wm-backup-progress{background-color:#dfdfdf;height:20px;width:350px;border-radius:15px}#ai1wm-backup-progress-bar{background-color:#00aff0;height:20px;line-height:20px;border-radius:15px;color:#fff;width:0;text-align:center}.ai1wm-backups{width:100%;margin:20px 0 0;padding:0;border-collapse:collapse}.ai1wm-backups .ai1wm-column-name{text-align:left}.ai1wm-backups .ai1wm-column-date,.ai1wm-backups .ai1wm-column-size{text-align:center}.ai1wm-backups .ai1wm-column-actions{text-align:right}.ai1wm-backups thead th{padding:4px 6px;text-align:left;font-size:1.2em}.ai1wm-backups tbody tr:first-child{border-top:1px solid #ccc}.ai1wm-backups tbody tr{border-bottom:1px solid #ccc}.ai1wm-backups tbody tr:hover{background:rgba(0,0,0,.1)}.ai1wm-backups tbody td{padding:4px 6px;box-sizing:border-box;line-height:36px}.ai1wm-backups tbody td span{font-weight:700}.ai1wm-backups tbody td.ai1wm-backup-actions{text-align:right;width:250px}.ai1wm-backups tbody td.ai1wm-backup-actions a{margin-left:4px}.ai1wm-backups tbody td.ai1wm-backup-actions span{transition:width 2s cubic-bezier(.19,1,.22,1);display:inline-block;width:0;text-align:center;visibility:hidden}.ai1wm-backups tbody td.ai1wm-backup-actions .ai1wm-button-on span{width:80px;visibility:visible}
|
1 |
+
@charset "UTF-8";.ai1wm-divider{-ms-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:none;height:0;background-color:transparent;font-size:14px;font-weight:700;text-align:center;text-transform:uppercase;color:rgba(0,0,0,.8);position:relative;top:0%;left:0%;margin:1rem 2.5rem;height:auto;padding:0;line-height:1}.ai1wm-divider:before,.ai1wm-divider:after{position:absolute;content:" ";z-index:3;width:50%;top:50%;height:0%;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(255,255,255,.8)}.ai1wm-divider:before{left:0%;margin-left:-2.5rem}.ai1wm-divider:after{left:auto;right:0%;margin-right:-2.5rem}@-webkit-keyframes ai1wm-rotate{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}25%{-webkit-transform:rotateZ(-90deg);transform:rotateZ(-90deg)}50%{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}75%{-webkit-transform:rotateZ(-270deg);transform:rotateZ(-270deg)}100%{-webkit-transform:rotateZ(-360deg);transform:rotateZ(-360deg)}}@keyframes ai1wm-rotate{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}25%{-webkit-transform:rotateZ(-90deg);transform:rotateZ(-90deg)}50%{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}75%{-webkit-transform:rotateZ(-270deg);transform:rotateZ(-270deg)}100%{-webkit-transform:rotateZ(-360deg);transform:rotateZ(-360deg)}}@-webkit-keyframes ai1wm-emphasize{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes ai1wm-emphasize{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes ai1wm-fadein{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes ai1wm-fadein{0%{-webkit-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}[class^="ai1wm-icon-"],[class*=" ai1wm-icon-"]{font-family:'servmask';speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ai1wm-icon-file-zip:before{content:"\e60f"}.ai1wm-icon-folder:before{content:"\e60e"}.ai1wm-icon-file:before{content:"\e60b"}.ai1wm-icon-file-content:before{content:"\e60c"}.ai1wm-icon-cloud-upload:before{content:"\e600"}.ai1wm-icon-history:before{content:"\e603"}.ai1wm-icon-notification:before{content:"\e619"}.ai1wm-icon-arrow-down:before{content:"\e604"}.ai1wm-icon-close:before{content:"\e61a"}.ai1wm-icon-wordpress2:before{content:"\e620"}.ai1wm-icon-arrow-right:before{content:"\e605"}.ai1wm-icon-plus2:before{content:"\e607"}.ai1wm-icon-export:before{content:"\e601"}.ai1wm-icon-publish:before{content:"\e602"}.ai1wm-icon-paperplane:before{content:"\e608"}.ai1wm-icon-help:before{content:"\e609"}.ai1wm-icon-chevron-right:before{content:"\e60d"}.ai1wm-icon-chevron-down{display:inline-block;position:relative;-webkit-transform:rotateZ(90deg);transform:rotateZ(90deg);margin-left:.5em!important}.ai1wm-icon-chevron-down:before{content:"\e60d"}.ai1wm-icon-dropbox:before{content:"\e606"}.ai1wm-icon-gear:before{content:"\e60a"}.ai1wm-icon-alone{margin:0!important}@media (min-width:855px){.ai1wm-row{margin-right:399px}.ai1wm-row:before,.ai1wm-row:after{content:" ";display:table}.ai1wm-row:after{clear:both}.ai1wm-left{float:left;width:100%}.ai1wm-right{float:right;width:377px;margin-right:-399px}.ai1wm-right .ai1wm-sidebar{width:100%}.ai1wm-right .ai1wm-segment{width:333px;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;color:#333;background-color:#f9f9f9;padding:20px;text-decoration:none;text-shadow:0 1px 0 #fff;background-clip:padding-box}.ai1wm-right .ai1wm-segment h2{margin:22px 0 0;padding:0;font-weight:700;font-size:14px;text-transform:uppercase;text-align:center}.ai1wm-right .ai1wm-feedback-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-right .ai1wm-feedback-message,.ai1wm-right .ai1wm-http-authentication{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-right .ai1wm-feedback-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px}.ai1wm-right .ai1wm-feedback-terms-segment>.ai1wm-feedback-terms{border-radius:3px}}.ai1wm-holder{position:relative;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;padding:20px;background:#f9f9f9}.ai1wm-holder h1{margin:0;padding:0;float:left;font-weight:300;font-size:22px;text-transform:uppercase}.ai1wm-holder h1 i{position:relative;top:2px}@media (max-width:854px){.ai1wm-container{margin-left:10px!important}.ai1wm-row,.ai1wm-right{margin-right:0!important}.ai1wm-right{float:left!important;width:100%!important;margin-top:18px}.ai1wm-right .ai1wm-sidebar{width:auto!important;border:1px solid #d6d6d6;border-radius:3px;box-shadow:inset 0 1px 0 0 #fff;padding:20px;background:#f9f9f9}.ai1wm-right .ai1wm-feedback-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-right .ai1wm-feedback-message{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-right .ai1wm-feedback-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px;border-radius:3px}.ai1wm-right .ai1wm-feedback-terms-segment>.ai1wm-feedback-terms{border-radius:3px}}.ai1wm-container{margin:20px 20px 0 2px}.ai1wm-container:before,.ai1wm-container:after{content:" ";display:table}.ai1wm-container:after{clear:both}.ai1wm-replace-row{width:100%;box-shadow:outset 0 1px 0 0 #fff;border-radius:3px;color:#333;font-size:11px;font-weight:700;background-color:#f9f9f9;text-decoration:none;text-shadow:0 1px 0 #fff;background-clip:padding-box;margin-bottom:10px}.ai1wm-replace-row .ai1wm-field-inline{float:left;width:100%}.ai1wm-replace-row .ai1wm-field-inline input{width:100%;font-weight:400;font-size:.8rem;padding:0 10px;height:2.3rem;line-height:2.3rem;margin-bottom:4px}.ai1wm-field{margin-bottom:4px}.ai1wm-field input[type="text"],.ai1wm-field textarea{width:100%;font-weight:400}.ai1wm-field-set{margin-top:18px}.ai1wm-message{-moz-box-sizing:border-box;background-color:#EFEFEF;border-radius:4px;color:rgba(0,0,0,.6);height:auto;margin:10px 0;min-height:18px;padding:6px 10px;position:relative;border:1px solid;transition:opacity .1s ease 0s,color .1s ease 0s,background .1s ease 0s,box-shadow .1s ease 0s}.ai1wm-message.ai1wm-success-message{background-color:#F2F8F0;color:#119000;font-size:12px}.ai1wm-message.ai1wm-info-message{background-color:#d9edf7;color:#31708f;font-size:11px}.ai1wm-message.ai1wm-error-message{background-color:#F1D7D7;color:#A95252;font-size:12px}.ai1wm-message.ai1wm-red-message{color:#D95C5C;border:2px solid #D95C5C;background-color:transparent}.ai1wm-message.ai1wm-red-message h3{margin:.4em 0;color:#D95C5C}.ai1wm-message p{margin:4px 0;font-size:12px}.ai1wm-message-warning{display:block;font-size:14px;line-height:18px;padding:12px 20px;margin:0 0 22px;background-color:#f9f9f9;border:1px solid #d6d6d6;border-radius:3px;box-shadow:0 1px 0 0 #fff inset;border-left:4px solid #ffba00}.ai1wm-button-group{border:2px solid #27ae60;background-color:transparent;color:#27ae60;border-radius:5px;cursor:pointer;text-transform:uppercase;font-weight:600;transition:background-color .2s ease-out;display:inline-block}.ai1wm-button-group.ai1wm-button-export{width:147px}.ai1wm-button-group.ai1wm-button-export.ai1wm-open>.ai1wm-dropdown-menu{height:150px;border-top:1px solid #27ae60}.ai1wm-button-group.ai1wm-button-import{width:158px}.ai1wm-button-group.ai1wm-button-import.ai1wm-open>.ai1wm-dropdown-menu{height:180px;border-top:1px solid #27ae60}.ai1wm-button-group .ai1wm-button-main{padding:6px 25px 1px;height:22px}.ai1wm-button-group .ai1wm-dropdown-menu{height:0;overflow:hidden;transition:height .2s cubic-bezier(.19,1,.22,1);border-top:none}.ai1wm-dropdown-menu{list-style:none}.ai1wm-dropdown-menu,.ai1wm-dropdown-menu li{margin:0!important;padding:0}.ai1wm-dropdown-menu li a,.ai1wm-dropdown-menu li a:visited{display:block;padding:6px 25px 1px 26px;height:22px;line-height:22px;text-decoration:none;color:#27ae60;text-align:left}.ai1wm-dropdown-menu li a:hover,.ai1wm-dropdown-menu li a:visited:hover{text-decoration:none;color:#111}.ai1mw-lines{-webkit-transform:translate(11px,-1px);transform:translate(11px,-1px);position:relative;display:inline-block;width:12px;height:10px}.ai1wm-line{display:inline-block;width:100%;height:2px;margin:auto;background:#27ae60;position:absolute;transition:all .2s ease-in-out}.ai1wm-line-first{top:0}div.ai1wm-open .ai1wm-line-first,div.ai1wm-open .ai1wm-line-third,.ai1wm-line-second{top:50%}.ai1wm-line-third{top:100%}.ai1wm-button-gray{border:2px solid #95a5a6;background-color:transparent;color:#95a5a6;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-gray:hover{background-color:#95a5a6;color:#fff}.ai1wm-button-green{border:2px solid #27ae60;background-color:transparent;color:#27ae60;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-green:hover{background-color:#27ae60;color:#fff}.ai1wm-button-green-small{border:2px solid #6eb649;background-color:transparent;color:#6eb649;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-green-small:hover{background-color:#6eb649;color:#fff}.ai1wm-button-blue{border:2px solid #00aff0;background-color:transparent;color:#00aff0;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-blue:hover{background-color:#00aff0;color:#fff}.ai1wm-button-red{border:2px solid #e74c3c;background-color:transparent;color:#e74c3c;border-radius:5px;cursor:pointer;padding:5px 25px 5px 26px;text-transform:uppercase;font-weight:600;outline:none;transition:background-color .2s ease-out;text-decoration:none}.ai1wm-button-red:hover{background-color:#e74c3c;color:#fff}.ai1wm-button-alone{border-radius:50px!important;padding:5px 8px!important}.ai1wm-button-blue[disabled="disabled"],.ai1wm-button-green[disabled="disabled"],.ai1wm-button-red[disabled="disabled"],.ai1wm-button-green-small[disabled="disabled"]{opacity:.6;cursor:default}.ai1wm-button-blue[disabled="disabled"]:hover{color:#00aff0}.ai1wm-button-red[disabled="disabled"]:hover{color:#e74c3c}.ai1wm-button-green[disabled="disabled"]:hover{color:#27ae60}.ai1wm-button-blue[disabled="disabled"]:hover,.ai1wm-button-green[disabled="disabled"]:hover,.ai1wm-button-red[disabled="disabled"]:hover,.ai1wm-button-green-small[disabled="disabled"]:hover{background:0 0}.ai1wm-button-gray i,.ai1wm-button-green i,.ai1wm-button-blue i,.ai1wm-button-red i{margin-left:-.5em;margin-right:.2em}.ai1wm-message-close-button{position:absolute;right:10px;top:6px;text-decoration:none;font-size:10px}input[type="radio"].ai1wm-flat-radio-button{display:none}input[type="radio"].ai1wm-flat-radio-button+a i,input[type="radio"].ai1wm-flat-radio-button+label i{vertical-align:middle;float:left;width:25px;height:25px;border-radius:50%;background:0 0;border:2px solid #ccc;content:" ";cursor:pointer;position:relative;box-sizing:content-box}input[type="radio"].ai1wm-flat-radio-button:checked+a i,input[type="radio"].ai1wm-flat-radio-button:checked+label i{background-color:#d9d9d9;border-color:#6f6f6f}.ai1wm-clear{*zoom:1;clear:both}.ai1wm-clear:before,.ai1wm-clear:after{content:" ";display:table}.ai1wm-clear:after{clear:both}.ai1wm-list-expanded{display:block!important}.ai1wm-field-inline input{border-radius:5px}.ai1wm-container .ai1wm-row label{position:relative;top:-1px}.ai1wm-share-button-container{text-align:center}.ai1wm-share-button-container .ai1wm-share-button{text-decoration:none;margin:10px;font-size:30px}.ai1wm-report-problem{position:relative;float:right}.ai1wm-report-problem-dialog{position:absolute;z-index:999;width:280px;right:0;background-color:#fff;margin:6px 0 0;padding:15px 15px 10px;border:1px solid #D6D6D6;border-radius:3px;box-shadow:0 1px 0 0 #fff inset;display:none}.ai1wm-report-email{width:100%;font-weight:400;font-size:.8rem;height:2.3rem;line-height:2.3rem;border-radius:5px;margin-bottom:4px;padding:0 10px}.ai1wm-report-message{width:100%;border-radius:3px;font-size:.8rem;padding:6px 10px;resize:none}.ai1wm-report-cancel:link,.ai1wm-report-cancel:visited,.ai1wm-report-cancel:active,.ai1wm-feedback-cancel:link,.ai1wm-feedback-cancel:visited,.ai1wm-feedback-cancel:active{float:right;line-height:34px;outline:0;text-decoration:none;color:#e74c3c}.ai1wm-report-active{display:block}.ai1wm-report-terms-segment{font-size:.7rem;line-height:1rem;margin:4px 0 8px}.ai1wm-report-terms-segment>.ai1wm-report-terms{border-radius:3px}.ai1wm-no-underline{text-decoration:none}.ai1wm-top-negative-four{top:-4px}.ai1wm-feedback-form{display:none}.ai1wm-feedback-types{margin:0;padding:0;list-style:none}.ai1wm-feedback-types li{margin:14px 0;padding:0}.ai1wm-feedback-types>li>label>span{display:inline-block;padding:5px 0 6px 8px}.ai1wm-feedback-types>li>a{height:29px;outline:none;color:#333;text-deciration:none}.ai1wm-feedback-types>li>a>span{display:inline-block;padding:5px 0 6px 8px}.ai1wm-loader{display:inline-block;width:128px;height:128px;position:relative;-webkit-animation:ai1wm-rotate 1.5s infinite linear;animation:ai1wm-rotate 1.5s infinite linear;background:url("../img/logo.svg") no-repeat center center}.ai1wm-hide{display:none}#ai1wm-backup-progress{background-color:#dfdfdf;height:20px;width:350px;border-radius:15px}#ai1wm-backup-progress-bar{background-color:#00aff0;height:20px;line-height:20px;border-radius:15px;color:#fff;width:0;text-align:center}.ai1wm-backups{width:100%;margin:20px 0 0;padding:0;border-collapse:collapse}.ai1wm-backups .ai1wm-column-name{text-align:left}.ai1wm-backups .ai1wm-column-date,.ai1wm-backups .ai1wm-column-size{text-align:center}.ai1wm-backups .ai1wm-column-actions{text-align:right}.ai1wm-backups thead th{padding:4px 6px;text-align:left;font-size:1.2em}.ai1wm-backups tbody tr:first-child{border-top:1px solid #ccc}.ai1wm-backups tbody tr{border-bottom:1px solid #ccc}.ai1wm-backups tbody tr:hover{background:rgba(0,0,0,.1)}.ai1wm-backups tbody td{padding:4px 6px;box-sizing:border-box;line-height:36px}.ai1wm-backups tbody td span{font-weight:700}.ai1wm-backups tbody td.ai1wm-backup-actions{text-align:right;width:250px}.ai1wm-backups tbody td.ai1wm-backup-actions a{margin-left:4px}.ai1wm-backups tbody td.ai1wm-backup-actions span{transition:width 2s cubic-bezier(.19,1,.22,1);display:inline-block;width:0;text-align:center;visibility:hidden}.ai1wm-backups tbody td.ai1wm-backup-actions .ai1wm-button-on span{width:80px;visibility:visible}.ai1wm-authentication{margin:10px 0}.ai1wm-authentication .ai1wm-authentication-info{font-size:.7rem;line-height:1rem;margin:4px 0 8px}
|
lib/view/assets/javascript/export.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function e(t,a,i){function s(o,n){if(!a[o]){if(!t[o]){var c="function"==typeof require&&require;if(!n&&c)return c(o,!0);if(r)return r(o,!0);throw new Error("Cannot find module '"+o+"'")}var m=a[o]={exports:{}};t[o][0].call(m.exports,function(e){var a=t[o][1][e];return s(a?a:e)},m,m.exports,e,t,a,i)}return a[o].exports}for(var r="function"==typeof require&&require,o=0;o<i.length;o++)s(i[o]);return s}({1:[function(e){var t=(e("./jquery/query"),e("./jquery/find_replace"),e("./jquery/message_close"),e("./servmask/report"),e("./servmask/maintenance"),e("./servmask/feedback"),e("./servmask/export_controller"));jQuery(document).ready(function(e){"use strict";e("#ai1wm-export-file").click(function(e){e.preventDefault();var a=new t("file");a.start()}),e(".ai1wm-accordion > .ai1wm-title").click(function(){e(this).parent().toggleClass("ai1wm-active")}),e("#ai1wm-add-new-replace-button").ai1wm_find_replace(),e(".ai1wm-message-close-button").ai1wm_message_close(),e(".ai1wm-expandable > p:first, .ai1wm-expandable > h4:first, .ai1wm-expandable > div.ai1wm-button-main").on("click",function(){e(this).parent().toggleClass("ai1wm-open")}),e(".ai1wm-collapsable").ai1wm_query()})},{"./jquery/find_replace":2,"./jquery/message_close":3,"./jquery/query":4,"./servmask/export_controller":6,"./servmask/feedback":8,"./servmask/maintenance":9,"./servmask/report":10}],2:[function(){!function(e){e.fn.ai1wm_find_replace=function(){return e(this).click(function(t){t.preventDefault();var a=e("#ai1wm-queries > li:first").clone();a.find("input").val(""),a.find(".ai1wm-query-find-text").html("<text>"),a.find(".ai1wm-query-replace-text").html("<another-text>"),e("#ai1wm-queries > li").removeClass("ai1wm-open"),e(a).addClass("ai1wm-open"),e("#ai1wm-queries").append(a),e(a).ai1wm_query(),e(a).find("p:first").on("click",function(){e(this).parent().toggleClass("ai1wm-open")})}),this}}(jQuery)},{}],3:[function(){!function(e){e.fn.ai1wm_message_close=function(){return e(this).click(function(t){var a=ai1wm_message.ajax.url,i=e(this),s=i.attr("data-key");e.ajax({type:"POST",url:a,data:{key:s},success:function(e){var t=e.errors;0===t.length&&i.closest(".ai1wm-message").remove()},dataType:"json"}),t.preventDefault()}),this}}(jQuery)},{}],4:[function(){!function(e){e.fn.ai1wm_query=function(){var t=e(this).find("input.ai1wm-query-find-input"),a=e(this).find("input.ai1wm-query-replace-input"),i=e(this).find("small.ai1wm-query-find-text"),s=e(this).find("small.ai1wm-query-replace-text");return t.on("change paste input keypress keydown keyup",function(){var t=e(this).val().length>0?e(this).val():"<text>";i.text(t)}),a.on("change paste input keypress keydown keyup",function(){var t=e(this).val().length>0?e(this).val():"<another-text>";s.text(t)}),this}}(jQuery)},{}],5:[function(e,t){var a=jQuery,i=function(e){this._stop=!1,this._provider=e,this._storage=this.random(12)};i.prototype.start=function(e){var t=this,i=new jQuery.Deferred,s=e.concat("&",a.param({method:"start",secret_key:ai1wm_export.secret_key,provider:t._provider,storage:t._storage}));return a.post(ai1wm_export.ajax.url,s).done(function(){t.getStatus().progress(function(e){i.notify(e)}).done(function(){i.resolve()}).fail(function(e){i.reject(e)})}).fail(function(){i.reject({message:"Unable to start the export. Refresh the page and try again"})}),i.promise()},i.prototype.getStatus=function(e,t){var i=this;return e=e||new jQuery.Deferred,t=t||0,i._stop?e.resolve():(a.ajax({cache:!1,url:ai1wm_export.status.url+"/status.js",dataType:"json"}).done(function(t){if(t)switch(e.notify(t),t.type){case"finish":case"download":e.resolve(),a.post(ai1wm_export.ajax.url,{method:"clean",secret_key:ai1wm_export.secret_key,provider:i._provider,storage:i._storage});break;default:setTimeout(function(){i.getStatus(e)},3e3)}}).fail(function(){t>3?e.reject({message:"Unable to retrieve status of the export. Is your server running?"}):(t++,i.getStatus(e,t))}),e.promise())},i.prototype.stop=function(e,t){var e=new jQuery.Deferred,i=this;return e=e||new jQuery.Deferred,t=t||0,t>0?e.notify({message:"Please wait, stopping the export... Retry "+t}):(e.notify({message:"Please wait, stopping the export..."}),i._stop=!0),a.post(ai1wm_export.ajax.url,{method:"stop",secret_key:ai1wm_export.secret_key,provider:i._provider,storage:i._storage}).done(function(){e.resolve()}).fail(function(){t>3?e.reject({message:"Unable to retrieve status of the export. Is your server running?"}):(t++,i.stop(e,t))}),e.promise()},i.prototype.random=function(e){for(var t="",a="abcdefghijklmnopqrstuvwxyz0123456789",i=0;e>i;i++)t+=a.charAt(Math.floor(Math.random()*a.length));return t},t.exports=i},{}],6:[function(e,t){(function(a){var i=e("./export_modal"),s=e("./export"),r=jQuery,o=function(e){this._export=new s(e),this._modal=new i};o.prototype.start=function(){var e=this;this._modal._stop.on("click",function(t){t.preventDefault(),e.stop()}),this._modal._close.on("click",function(t){t.preventDefault(),e._modal.remove()}),this._modal.show(),e._modal._loader.show(),e._modal._stop.show();var t=r("#ai1wm-export-form").serialize();e.display({type:"info",message:"Preparing to export..."}),this._export.start(t).progress(function(t){e.display(t)}).done(function(){}).fail(function(e){alert(e.message)})},o.prototype.display=function(e){var t=this;switch(t._modal.reset(),t._modal.show(),e.type){case"error":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-red"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.css("text-align","left"),t._modal._message.show(),t._modal._close.show();break;case"download":t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;case"finish":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-green"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;default:t._modal._loader.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._stop.show()}},o.prototype.stop=function(){var e=this;this._export.stop().progress(function(t){e.display(t)}).done(function(){e._modal.remove()}).fail(function(e){alert(e)})},t.exports=o,a.window.Ai1wmExportController=o}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./export":5,"./export_modal":7}],7:[function(e,t){var a=jQuery,i=function(){this._overlay=a('<div class="ai1wm-overlay"></div>'),this._modal=a('<div class="ai1wm-modal-container"></div>'),this._section=a("<section></section>"),this._header=a("<h1></h1>"),this._message=a("<p></p>").hide(),this._action=a("<div></div>"),this._title=a("<span></span>").hide(),this._loader=a('<span class="ai1wm-loader"></span>').hide(),this._warning=a('<span class="ai1wm-icon-notification"></span>').hide(),this._progressBar=a('<span class="ai1wm-progress-bar"></span>').hide(),this._progressBarMeter=a('<span class="ai1wm-progress-bar-meter"></span>'),this._progressBarPercent=a('<span class="ai1wm-progress-bar-percent">0%</span>'),this._stop=a('<button class="ai1wm-button-red"><i class="ai1wm-icon-notification"></i> Stop export</button>').hide(),this._close=a('<button class="ai1wm-button-red">Close</button>').hide(),this._confirm=a('<button class="ai1wm-button-green">Continue</button>').hide(),this._progressBar.append(this._progressBarMeter).append(this._progressBarPercent),this._action.append(this._stop).append(this._close).append(this._confirm),this._header.append(this._title).append(this._loader).append(this._warning).append(this._progressBar),this._section.append(this._header).append(this._message),this._modal.append(this._section).append(this._action),a("body").append(this._overlay).append(this._modal)};i.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},i.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},i.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},i.prototype.reset=function(){return this._title.hide(),this._loader.hide(),this._warning.hide(),this._progressBar.hide(),this._message.hide(),this._stop.hide(),this._close.hide(),this._confirm.hide(),this},t.exports=i},{}],8:[function(){jQuery(document).ready(function(e){"use strict";e(".ai1wm-feedback-type").attr("checked",!1),e("#ai1wm-feedback-type-link-1").click(function(t){var a=e("#ai1wm-feedback-type-1");a.is(":checked")?(a.attr("checked",!1),t.preventDefault()):a.attr("checked",!0)}),e("#ai1wm-feedback-type-2").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-3").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","Leave plugin developers any feedback here"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-type-3").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-2").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","How may we help you?"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-cancel").click(function(t){e(".ai1wm-feedback-form").fadeOut(function(){e(".ai1wm-feedback-type").attr("checked",!1).closest("li").show()}),t.preventDefault()}),e("#ai1wm-feedback-submit").click(function(){var t=ai1wm_feedback.ajax.url,a=e(".ai1wm-feedback-type:checked").val(),i=e(".ai1wm-feedback-email").val(),s=e(".ai1wm-feedback-message").val(),r=e(".ai1wm-feedback-terms").is(":checked");e.ajax({type:"POST",url:t,data:{type:a,email:i,message:s,terms:+r},success:function(t){var a=t.errors;if(a.length>0){e(".ai1wm-feedback .ai1wm-message").remove();var i=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(a,function(e,t){i.append("<p>"+t+"</p>")}),e(".ai1wm-feedback").prepend(i)}else{var s=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your feedback!</p>");e(".ai1wm-feedback").html(s)}},dataType:"json",async:!1})})})},{}],9:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-maintenance-off").click(function(t){var a=ai1wm_maintenance.ajax.url,i=e(this);e.ajax({type:"POST",url:a,success:function(){i.closest(".ai1wm-message-warning").remove()}}),t.preventDefault()})})},{}],10:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-report-problem-button").click(function(t){e(this).next(".ai1wm-report-problem-dialog").toggleClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-cancel").click(function(t){e(this).closest(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-submit").click(function(){var t=ai1wm_report.ajax.url,a=e(".ai1wm-report-email").val(),i=e(".ai1wm-report-message").val(),s=e(".ai1wm-report-terms").is(":checked");e.ajax({type:"POST",url:t,data:{email:a,message:i,terms:+s},success:function(t){var a=t.errors;if(a.length>0){e(".ai1wm-report-problem-dialog .ai1wm-message").remove();var i=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(a,function(e,t){i.append("<p>"+t+"</p>")}),e(".ai1wm-report-problem-dialog").prepend(i)}else{var s=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your request!</p>");e(".ai1wm-report-problem-dialog").html(s),setTimeout(function(){e(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active")},2e3)}},dataType:"json",async:!1})})})},{}]},{},[1]);
|
1 |
+
!function e(t,a,i){function s(o,n){if(!a[o]){if(!t[o]){var c="function"==typeof require&&require;if(!n&&c)return c(o,!0);if(r)return r(o,!0);throw new Error("Cannot find module '"+o+"'")}var m=a[o]={exports:{}};t[o][0].call(m.exports,function(e){var a=t[o][1][e];return s(a?a:e)},m,m.exports,e,t,a,i)}return a[o].exports}for(var r="function"==typeof require&&require,o=0;o<i.length;o++)s(i[o]);return s}({1:[function(e){var t=(e("./jquery/query"),e("./jquery/find_replace"),e("./jquery/message_close"),e("./servmask/report"),e("./servmask/maintenance"),e("./servmask/feedback"),e("./servmask/export_controller"));jQuery(document).ready(function(e){"use strict";e("#ai1wm-export-file").click(function(e){e.preventDefault();var a=new t("file");a.start()}),e(".ai1wm-accordion > .ai1wm-title").click(function(){e(this).parent().toggleClass("ai1wm-active")}),e("#ai1wm-add-new-replace-button").ai1wm_find_replace(),e(".ai1wm-message-close-button").ai1wm_message_close(),e(".ai1wm-expandable > p:first, .ai1wm-expandable > h4:first, .ai1wm-expandable > div.ai1wm-button-main").on("click",function(){e(this).parent().toggleClass("ai1wm-open")}),e(".ai1wm-collapsable").ai1wm_query()})},{"./jquery/find_replace":2,"./jquery/message_close":3,"./jquery/query":4,"./servmask/export_controller":6,"./servmask/feedback":8,"./servmask/maintenance":9,"./servmask/report":10}],2:[function(){!function(e){e.fn.ai1wm_find_replace=function(){return e(this).click(function(t){t.preventDefault();var a=e("#ai1wm-queries > li:first").clone();a.find("input").val(""),a.find(".ai1wm-query-find-text").html("<text>"),a.find(".ai1wm-query-replace-text").html("<another-text>"),e("#ai1wm-queries > li").removeClass("ai1wm-open"),e(a).addClass("ai1wm-open"),e("#ai1wm-queries").append(a),e(a).ai1wm_query(),e(a).find("p:first").on("click",function(){e(this).parent().toggleClass("ai1wm-open")})}),this}}(jQuery)},{}],3:[function(){!function(e){e.fn.ai1wm_message_close=function(){return e(this).click(function(t){var a=ai1wm_message.ajax.url,i=e(this),s=i.attr("data-key");e.ajax({type:"POST",url:a,data:{key:s},success:function(e){var t=e.errors;0===t.length&&i.closest(".ai1wm-message").remove()},dataType:"json"}),t.preventDefault()}),this}}(jQuery)},{}],4:[function(){!function(e){e.fn.ai1wm_query=function(){var t=e(this).find("input.ai1wm-query-find-input"),a=e(this).find("input.ai1wm-query-replace-input"),i=e(this).find("small.ai1wm-query-find-text"),s=e(this).find("small.ai1wm-query-replace-text");return t.on("change paste input keypress keydown keyup",function(){var t=e(this).val().length>0?e(this).val():"<text>";i.text(t)}),a.on("change paste input keypress keydown keyup",function(){var t=e(this).val().length>0?e(this).val():"<another-text>";s.text(t)}),this}}(jQuery)},{}],5:[function(e,t){var a=jQuery,i=function(e){this._stop=!1,this._provider=e,this._storage=this.random(12)};i.prototype.start=function(e){var t=this,i=new jQuery.Deferred,s=e.concat("&",a.param({method:"start",secret_key:ai1wm_export.secret_key,provider:t._provider,storage:t._storage}));return a.post(ai1wm_export.ajax.url,s).done(function(){t.getStatus(ai1wm_export.status.php).progress(function(e){i.notify(e)}).done(function(){i.resolve()}).fail(function(e){i.reject(e)})}).fail(function(){i.reject({message:"Unable to start the export. Refresh the page and try again"})}),i.promise()},i.prototype.getStatus=function(e,t,i){var s=this;return t=t||new jQuery.Deferred,i=i||0,s._stop?t.resolve():(a.ajax({cache:!1,url:e,dataType:"json"}).done(function(i){if(i)switch(t.notify(i),i.type){case"finish":case"download":t.resolve(),a.post(ai1wm_export.ajax.url,{method:"clean",secret_key:ai1wm_export.secret_key,provider:s._provider,storage:s._storage});break;default:setTimeout(function(){s.getStatus(e,t)},3e3)}}).fail(function(){i++,i>=6?t.reject({message:"Unable to retrieve status of the export. Is your server running?"}):i>=3?s.getStatus(ai1wm_export.status.js,t,i):s.getStatus(ai1wm_export.status.php,t,i)}),t.promise())},i.prototype.stop=function(e,t){var e=new jQuery.Deferred,i=this;return e=e||new jQuery.Deferred,t=t||0,t>0?e.notify({message:"Please wait, stopping the export... Retry "+t}):(e.notify({message:"Please wait, stopping the export..."}),i._stop=!0),a.post(ai1wm_export.ajax.url,{method:"stop",secret_key:ai1wm_export.secret_key,provider:i._provider,storage:i._storage}).done(function(){e.resolve()}).fail(function(){t++,t>=3?e.reject({message:"Unable to retrieve status of the export. Is your server running?"}):i.stop(e,t)}),e.promise()},i.prototype.random=function(e){for(var t="",a="abcdefghijklmnopqrstuvwxyz0123456789",i=0;e>i;i++)t+=a.charAt(Math.floor(Math.random()*a.length));return t},t.exports=i},{}],6:[function(e,t){(function(a){var i=e("./export_modal"),s=e("./export"),r=jQuery,o=function(e){this._export=new s(e),this._modal=new i};o.prototype.start=function(){var e=this;this._modal._stop.on("click",function(t){t.preventDefault(),e.stop()}),this._modal._close.on("click",function(t){t.preventDefault(),e._modal.remove()}),this._modal.show(),e._modal._loader.show(),e._modal._stop.show();var t=r("#ai1wm-export-form").serialize();e.display({type:"info",message:"Preparing to export..."}),this._export.start(t).progress(function(t){e.display(t)}).done(function(){}).fail(function(e){alert(e.message)})},o.prototype.display=function(e){var t=this;switch(t._modal.reset(),t._modal.show(),e.type){case"error":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-red"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.css("text-align","left"),t._modal._message.show(),t._modal._close.show();break;case"download":t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;case"finish":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-green"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;default:t._modal._loader.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._stop.show()}},o.prototype.stop=function(){var e=this;this._export.stop().progress(function(t){e.display(t)}).done(function(){e._modal.remove()}).fail(function(e){alert(e)})},t.exports=o,a.window.Ai1wmExportController=o}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./export":5,"./export_modal":7}],7:[function(e,t){var a=jQuery,i=function(){this._overlay=a('<div class="ai1wm-overlay"></div>'),this._modal=a('<div class="ai1wm-modal-container"></div>'),this._section=a("<section></section>"),this._header=a("<h1></h1>"),this._message=a("<p></p>").hide(),this._action=a("<div></div>"),this._title=a("<span></span>").hide(),this._loader=a('<span class="ai1wm-loader"></span>').hide(),this._warning=a('<span class="ai1wm-icon-notification"></span>').hide(),this._progressBar=a('<span class="ai1wm-progress-bar"></span>').hide(),this._progressBarMeter=a('<span class="ai1wm-progress-bar-meter"></span>'),this._progressBarPercent=a('<span class="ai1wm-progress-bar-percent">0%</span>'),this._stop=a('<button class="ai1wm-button-red"><i class="ai1wm-icon-notification"></i> Stop export</button>').hide(),this._close=a('<button class="ai1wm-button-red">Close</button>').hide(),this._confirm=a('<button class="ai1wm-button-green">Continue</button>').hide(),this._progressBar.append(this._progressBarMeter).append(this._progressBarPercent),this._action.append(this._stop).append(this._close).append(this._confirm),this._header.append(this._title).append(this._loader).append(this._warning).append(this._progressBar),this._section.append(this._header).append(this._message),this._modal.append(this._section).append(this._action),a("body").append(this._overlay).append(this._modal)};i.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},i.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},i.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},i.prototype.reset=function(){return this._title.hide(),this._loader.hide(),this._warning.hide(),this._progressBar.hide(),this._message.hide(),this._stop.hide(),this._close.hide(),this._confirm.hide(),this},t.exports=i},{}],8:[function(){jQuery(document).ready(function(e){"use strict";e(".ai1wm-feedback-type").attr("checked",!1),e("#ai1wm-feedback-type-link-1").click(function(t){var a=e("#ai1wm-feedback-type-1");a.is(":checked")?(a.attr("checked",!1),t.preventDefault()):a.attr("checked",!0)}),e("#ai1wm-feedback-type-2").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-3").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","Leave plugin developers any feedback here"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-type-3").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-2").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","How may we help you?"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-cancel").click(function(t){e(".ai1wm-feedback-form").fadeOut(function(){e(".ai1wm-feedback-type").attr("checked",!1).closest("li").show()}),t.preventDefault()}),e("#ai1wm-feedback-submit").click(function(){var t=ai1wm_feedback.ajax.url,a=e(".ai1wm-feedback-type:checked").val(),i=e(".ai1wm-feedback-email").val(),s=e(".ai1wm-feedback-message").val(),r=e(".ai1wm-feedback-terms").is(":checked");e.ajax({type:"POST",url:t,data:{type:a,email:i,message:s,terms:+r},success:function(t){var a=t.errors;if(a.length>0){e(".ai1wm-feedback .ai1wm-message").remove();var i=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(a,function(e,t){i.append("<p>"+t+"</p>")}),e(".ai1wm-feedback").prepend(i)}else{var s=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your feedback!</p>");e(".ai1wm-feedback").html(s)}},dataType:"json",async:!1})})})},{}],9:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-maintenance-off").click(function(t){var a=ai1wm_maintenance.ajax.url,i=e(this);e.ajax({type:"POST",url:a,success:function(){i.closest(".ai1wm-message-warning").remove()}}),t.preventDefault()})})},{}],10:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-report-problem-button").click(function(t){e(this).next(".ai1wm-report-problem-dialog").toggleClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-cancel").click(function(t){e(this).closest(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-submit").click(function(){var t=ai1wm_report.ajax.url,a=e(".ai1wm-report-email").val(),i=e(".ai1wm-report-message").val(),s=e(".ai1wm-report-terms").is(":checked");e.ajax({type:"POST",url:t,data:{email:a,message:i,terms:+s},success:function(t){var a=t.errors;if(a.length>0){e(".ai1wm-report-problem-dialog .ai1wm-message").remove();var i=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(a,function(e,t){i.append("<p>"+t+"</p>")}),e(".ai1wm-report-problem-dialog").prepend(i)}else{var s=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your request!</p>");e(".ai1wm-report-problem-dialog").html(s),setTimeout(function(){e(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active")},2e3)}},dataType:"json",async:!1})})})},{}]},{},[1]);
|
lib/view/assets/javascript/import.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function e(t,i,a){function o(s,n){if(!i[s]){if(!t[s]){var d="function"==typeof require&&require;if(!n&&d)return d(s,!0);if(r)return r(s,!0);throw new Error("Cannot find module '"+s+"'")}var p=i[s]={exports:{}};t[s][0].call(p.exports,function(e){var i=t[s][1][e];return o(i?i:e)},p,p.exports,e,t,i,a)}return i[s].exports}for(var r="function"==typeof require&&require,s=0;s<a.length;s++)o(a[s]);return o}({1:[function(e){var t=(e("./servmask/report.js"),e("./servmask/maintenance"),e("./servmask/feedback"),e("./servmask/import_controller"));jQuery(document).ready(function(e){"use strict";var i=function(e){for(var t=window.location.search.substring(1),i=t.split("&"),a=0;a<i.length;a++){var o=i[a].split("=");if(o[0]==e)return o[1]}},a=new t("file");a.init(),a.upload(),i("restore-file")&&a.restore(i("restore-file")),e(".ai1wm-expandable > div.ai1wm-button-main").on("click",function(){e(this).parent().toggleClass("ai1wm-open")})})},{"./servmask/feedback":3,"./servmask/import_controller":6,"./servmask/maintenance":9,"./servmask/report.js":10}],2:[function(e,t){var i=jQuery,a=function(e){this._overlay=i('<div class="ai1wm-overlay"></div>'),this._modal=i('<div class="ai1wm-modal-container"></div>'),this._modal_section=i("<section></section>"),this._modal_content=i('<p style="text-align: left; line-height: 1.5em;">'+e+"</p>"),this._modal_close=i('<button class="ai1wm-button-red">Close</button>'),this._modal_section.append(this._modal_content),this._modal.append(this._modal_section).append(this._modal_close),console.log(this._modal),i("body").append(this._overlay).append(this._modal),this._modal_close.on("click",function(){this.remove()}.bind(this)),this.show()};a.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},a.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},a.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},t.exports=a},{}],3:[function(){jQuery(document).ready(function(e){"use strict";e(".ai1wm-feedback-type").attr("checked",!1),e("#ai1wm-feedback-type-link-1").click(function(t){var i=e("#ai1wm-feedback-type-1");i.is(":checked")?(i.attr("checked",!1),t.preventDefault()):i.attr("checked",!0)}),e("#ai1wm-feedback-type-2").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-3").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","Leave plugin developers any feedback here"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-type-3").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-2").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","How may we help you?"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-cancel").click(function(t){e(".ai1wm-feedback-form").fadeOut(function(){e(".ai1wm-feedback-type").attr("checked",!1).closest("li").show()}),t.preventDefault()}),e("#ai1wm-feedback-submit").click(function(){var t=ai1wm_feedback.ajax.url,i=e(".ai1wm-feedback-type:checked").val(),a=e(".ai1wm-feedback-email").val(),o=e(".ai1wm-feedback-message").val(),r=e(".ai1wm-feedback-terms").is(":checked");e.ajax({type:"POST",url:t,data:{type:i,email:a,message:o,terms:+r},success:function(t){var i=t.errors;if(i.length>0){e(".ai1wm-feedback .ai1wm-message").remove();var a=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(i,function(e,t){a.append("<p>"+t+"</p>")}),e(".ai1wm-feedback").prepend(a)}else{var o=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your feedback!</p>");e(".ai1wm-feedback").html(o)}},dataType:"json",async:!1})})})},{}],4:[function(e,t){var i=jQuery,a=function(){this.FILES_ADDED=1,this.BEFORE_UPLOAD=2,this.UPLOAD_PROGRESS=3,this.CHUNK_UPLOADED=4,this.UPLOAD_FINISHED=5,this.UPLOAD_ERROR=6,this.OVERSIZED_FILE=7,this.INVALID_EXTENSION=8,this._dfd=new i.Deferred,this._chunkUploaded=!1,this._storage=null,this.addFileFilters(),this._uploader=new plupload.Uploader(ai1wm_uploader),this._uploader.bind("Init",this._onInit),this._uploader.init(),this._uploader.bind("FilesAdded",this._onFilesAdded.bind(this)),this._uploader.bind("BeforeUpload",this._onBeforeUpload.bind(this)),this._uploader.bind("UploadProgress",this._onUploadProgress.bind(this)),this._uploader.bind("ChunkUploaded",this._onChunkUploaded.bind(this)),this._uploader.bind("FileUploaded",this._onFileUploaded.bind(this)),this._uploader.bind("Error",this._onError.bind(this))};a.prototype.addFileFilters=function(){var e=this;plupload.addFileFilter("ai1wm_archive_size",function(t,i,a){t=parseInt(t,10),i.size=i.hasOwnProperty("size")?parseInt(i.size,10):0,0===t||i.size<=t?a(!0):(this.trigger("Error",{code:e.OVERSIZED_FILE,message:ai1wm_import.oversize}),a(!1))}),plupload.addFileFilter("ai1wm_archive_extension",function(t,a,o){var r=a.name.substr((~-a.name.lastIndexOf(".")>>>0)+2);i.inArray(r,t)>-1?o(!0):(this.trigger("Error",{code:e.INVALID_EXTENSION,message:ai1wm_import.invalid_extension}),o(!1))})},a.prototype.watch=function(){return this._dfd.promise()},a.prototype.random=function(e){for(var t="",i="abcdefghijklmnopqrstuvwxyz0123456789",a=0;e>a;a++)t+=i.charAt(Math.floor(Math.random()*i.length));return t},a.prototype._onInit=function(e){var t=i("#ai1wm-plupload-upload-ui");e.features.dragdrop&&!i(document.body).hasClass("mobile")?i("#ai1wm-drag-drop-area").bind("dragover.wp-uploader",function(){t.addClass("ai1wm-drag-over")}).bind("dragleave.wp-uploader, drop.wp-uploader",function(){t.removeClass("ai1wm-drag-over")}):i("#ai1wm-drag-drop-area").unbind(".wp-uploader"),"html4"==e.runtime&&i(".upload-flash-bypass").hide()},a.prototype._onFilesAdded=function(e,t){this._storage=this.random(12),this._uploader.settings.multipart_params.storage=this._storage,this._dfd.notify({state:this.FILES_ADDED,up:e,files:t})},a.prototype._onBeforeUpload=function(e,t){this._dfd.notify({state:this.BEFORE_UPLOAD,up:e,files:t})},a.prototype._onUploadProgress=function(e,t){this._dfd.notify({state:this.UPLOAD_PROGRESS,up:e,files:t})},a.prototype._onChunkUploaded=function(){this._dfd.notify({state:this.CHUNK_UPLOADED})},a.prototype._onFileUploaded=function(e,t){this._dfd.notify({state:this.UPLOAD_FINISHED,up:e,files:t})},a.prototype._onError=function(e,t){this._dfd.notify({state:this.UPLOAD_ERROR,up:e,error:t})},t.exports=a},{}],5:[function(e,t){var i=jQuery,a=function(e){this._stop=!1,this._archive=null,this._storage=null,this._provider=e};a.prototype.start=function(){var e=this,t=new jQuery.Deferred;return i.post(ai1wm_import.ajax.url,{method:"start",secret_key:ai1wm_import.secret_key,provider:e._provider,storage:e._storage,archive:e._archive}).done(function(){e.getStatus().progress(function(e){t.notify(e)}).done(function(){t.resolve()}).fail(function(e){t.reject(e)})}).fail(function(){t.reject({message:"Unable to start the import. Refresh the page and try again"})}),t.promise()},a.prototype.getStatus=function(e,t){var a=this;return e=e||new jQuery.Deferred,t=t||0,a._stop?e.resolve():(i.ajax({cache:!1,url:ai1wm_import.status.url+"/status.js",dataType:"json"}).done(function(t){if(t)switch(e.notify(t),t.type){case"finish":e.resolve(),i.post(ai1wm_import.ajax.url,{method:"clean",secret_key:ai1wm_import.secret_key,provider:a._provider,storage:a._storage});break;case"confirm":e.resolve();break;default:setTimeout(function(){a.getStatus(e)},3e3)}}).fail(function(){t>3?e.reject({message:"Unable to retrieve status of the import. Is your server running?"}):(t++,a.getStatus(e,t))}),e.promise())},a.prototype.stop=function(e,t){var e=new jQuery.Deferred,a=this;return e=e||new jQuery.Deferred,t=t||0,t>0?e.notify({message:"Please wait, stopping the import... Retry "+t}):(e.notify({message:"Please wait, stopping the import..."}),a._stop=!0),i.post(ai1wm_import.ajax.url,{method:"stop",secret_key:ai1wm_import.secret_key,provider:a._provider,storage:a._storage}).done(function(){e.resolve()}).fail(function(){t>3?e.reject({message:"Unable to retrieve status of the import. Is your server running?"}):(t++,a.stop(e,t))}),e.promise()},a.prototype.confirm=function(){var e=new jQuery.Deferred,t=this;return i.post(ai1wm_import.ajax.url,{method:"enumerate",secret_key:ai1wm_import.secret_key,provider:t._provider,storage:t._storage,archive:t._archive}).done(function(){t.getStatus().progress(function(t){e.notify(t)}).done(function(){e.resolve()}).fail(function(t){e.reject(t)})}).fail(function(){e.reject({message:"Unable to start the import. Refresh the page and try again"})}),e.promise()},a.prototype.download=function(e){var t=new jQuery.Deferred,a=this;return i.post(ai1wm_import.ajax.url,i.extend({method:"import",secret_key:ai1wm_import.secret_key,provider:a._provider,storage:a._storage,archive:a._archive},e)).done(function(){a.getStatus().progress(function(e){t.notify(e)}).done(function(){t.resolve()}).fail(function(e){t.reject(e)})}).fail(function(){t.reject({message:"Unable to start the import. Refresh the page and try again"})}),t.promise()},t.exports=a},{}],6:[function(e,t){(function(i){var a=e("./import_modal"),o=e("./file_uploader"),r=e("./import"),s=e("./info"),n=e("./dialog"),d=jQuery,p=function(e){this._import=new r(e),this._modal=new a};p.prototype.init=function(){var e=this;this._modal._stop.on("click",function(t){t.preventDefault(),d(this).attr("disabled","disabled"),e.stop()}),this._modal._confirm.on("click",function(t){t.preventDefault(),d(this).attr("disabled","disabled"),e.confirm()}),this._modal._close.on("click",function(t){t.preventDefault(),e._modal.remove()})},p.prototype.stop=function(){var e=this;this._import.stop().progress(function(t){e.display(t)}).done(function(){e._modal.remove()}).fail(function(e){alert(e.message)})},p.prototype.confirm=function(){var e=this;this._import.confirm().progress(function(t){e.display(t)}).fail(function(e){alert(e.message)})},p.prototype.download=function(e){var t=this;t.display({type:"info",message:"Preparing to import..."}),this._import.download(e).progress(function(e){t.display(e)}).fail(function(e){alert(e.message)})},p.prototype.display=function(e){var t=this;switch(t._modal.reset(),t._modal.show(),e.type){case"error":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-red"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.css("text-align","left"),t._modal._message.show(),t._modal._close.show();break;case"confirm":t._modal._warning.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._confirm.show();break;case"progress":t._modal._progressBar.show(),t._modal._progressBarPercent.text(e.percent+"%"),t._modal._progressBarMeter.width(e.meter+"%"),t._modal._stop.show();break;case"finish":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-green"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;default:t._modal._loader.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._stop.show(),t._modal._stop.attr("disabled","disabled")}},p.prototype.upload=function(){var e=this;this._uploadFinished=!1,this._uploadProgress=0,this._fileUploader=new o,this._fileUploader.watch().progress(function(t){e._handleUploadState(t)}).done(function(){e.display({type:"info",message:"Preparing to import..."}),e._import.start().progress(function(t){e.display(t)}).done(function(){}).fail(function(e){alert(e.message)})}).fail(function(e){alert(e.message)})},p.prototype.restore=function(e){var t=this;this._import._archive=e,this._import._storage=this.random(12),t.display({type:"info",message:"Preparing to import..."}),this._import.start().progress(function(e){t.display(e)}).done(function(){}).fail(function(e){alert(e.message)})},p.prototype._handleUploadState=function(e){var t=this;switch(e.state){case t._fileUploader.FILES_ADDED:t.display({type:"progress",percent:1,meter:7}),t._fileUploader._uploader.refresh(),t._fileUploader._uploader.start();break;case t._fileUploader.BEFORE_UPLOAD:break;case t._fileUploader.UPLOAD_PROGRESS:if(e.files.size>e.up.settings.chunk_size&&t._fileUploader._chunkUploaded){var i=e.files.percent>7?e.files.percent:7;t.display({type:"progress",percent:i,meter:i})}else t._uploadFinished?(t._uploadProgress++,2==t._uploadProgress&&t.display({type:"progress",percent:100,meter:100})):t.display({type:"progress",percent:1,meter:7});break;case t._fileUploader.CHUNK_UPLOADED:t._fileUploader._chunkUploaded===!1&&(t._fileUploader._uploader.settings.max_retries=100),t._fileUploader._chunkUploaded=!0;break;case t._fileUploader.UPLOAD_FINISHED:t._uploadFinished=!0,t._import._archive=e.files.target_name,t._import._storage=this._fileUploader._storage,t._fileUploader._dfd.resolve();break;case t._fileUploader.UPLOAD_ERROR:switch(e.error.code){case t._fileUploader.OVERSIZED_FILE:new n(e.error.message);break;case t._fileUploader.INVALID_EXTENSION:new n(e.error.message);break;default:if(t._fileUploader._chunkUploaded)return alert("Unable to upload the file. Is your server running? Please refresh and try again."),void 0;if(t._uploadProgress=0,t._uploadFinished=!1,e.up.settings.chunk_size/=2,e.up.settings.chunk_size<102400)return alert("Unable to upload the file. Is your server running? Please refresh and try again."),void 0;new s("Trying new chunk size: "+(e.up.settings.chunk_size/1048576).toFixed(2)+"MB"),e.up.files[0].status=plupload.QUEUED,e.up.files[0].loaded=0,e.up.refresh(),e.up.start()}break;default:alert("Unknown state: "+state)}},p.prototype.random=function(e){for(var t="",i="abcdefghijklmnopqrstuvwxyz0123456789",a=0;e>a;a++)t+=i.charAt(Math.floor(Math.random()*i.length));return t},t.exports=p,i.window.Ai1wmImportController=p}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./dialog":2,"./file_uploader":4,"./import":5,"./import_modal":7,"./info":8}],7:[function(e,t){var i=jQuery,a=function(){this._overlay=i('<div class="ai1wm-overlay"></div>'),this._modal=i('<div class="ai1wm-modal-container"></div>'),this._section=i("<section></section>"),this._header=i("<h1></h1>"),this._message=i("<p></p>").hide(),this._action=i("<div></div>"),this._title=i("<span></span>").hide(),this._loader=i('<span class="ai1wm-loader"></span>').hide(),this._warning=i('<span class="ai1wm-icon-notification"></span>').hide(),this._progressBar=i('<span class="ai1wm-progress-bar"></span>').hide(),this._progressBarMeter=i('<span class="ai1wm-progress-bar-meter"></span>'),this._progressBarPercent=i('<span class="ai1wm-progress-bar-percent">0%</span>'),this._stop=i('<button class="ai1wm-button-red"><i class="ai1wm-icon-notification"></i> Stop import</button>').hide(),this._close=i('<button class="ai1wm-button-red">Close</button>').hide(),this._confirm=i('<button class="ai1wm-button-green">Continue</button>').hide(),this._progressBar.append(this._progressBarMeter).append(this._progressBarPercent),this._action.append(this._stop).append(this._close).append(this._confirm),this._header.append(this._title).append(this._loader).append(this._warning).append(this._progressBar),this._section.append(this._header).append(this._message),this._modal.append(this._section).append(this._action),i("body").append(this._overlay).append(this._modal)};a.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},a.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},a.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},a.prototype.reset=function(){return this._title.hide(),this._loader.hide(),this._warning.hide(),this._progressBar.hide(),this._message.hide(),this._stop.hide(),this._stop.removeAttr("disabled"),this._close.hide(),this._confirm.hide(),this},t.exports=a},{}],8:[function(e,t){var i=jQuery,a=function(e){var t=i('<div class="ai1wm-growl-info">'+e+"</div>");t.hide(),i("body").append(t),t.show("normal",function(){setTimeout(function(){t.hide(),t.remove()},3e3)})};t.exports=a},{}],9:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-maintenance-off").click(function(t){var i=ai1wm_maintenance.ajax.url,a=e(this);e.ajax({type:"POST",url:i,success:function(){a.closest(".ai1wm-message-warning").remove()}}),t.preventDefault()})})},{}],10:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-report-problem-button").click(function(t){e(this).next(".ai1wm-report-problem-dialog").toggleClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-cancel").click(function(t){e(this).closest(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-submit").click(function(){var t=ai1wm_report.ajax.url,i=e(".ai1wm-report-email").val(),a=e(".ai1wm-report-message").val(),o=e(".ai1wm-report-terms").is(":checked");e.ajax({type:"POST",url:t,data:{email:i,message:a,terms:+o},success:function(t){var i=t.errors;if(i.length>0){e(".ai1wm-report-problem-dialog .ai1wm-message").remove();var a=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(i,function(e,t){a.append("<p>"+t+"</p>")}),e(".ai1wm-report-problem-dialog").prepend(a)}else{var o=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your request!</p>");e(".ai1wm-report-problem-dialog").html(o),setTimeout(function(){e(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active")},2e3)}},dataType:"json",async:!1})})})},{}]},{},[1]);
|
1 |
+
!function e(t,i,a){function o(s,n){if(!i[s]){if(!t[s]){var d="function"==typeof require&&require;if(!n&&d)return d(s,!0);if(r)return r(s,!0);throw new Error("Cannot find module '"+s+"'")}var p=i[s]={exports:{}};t[s][0].call(p.exports,function(e){var i=t[s][1][e];return o(i?i:e)},p,p.exports,e,t,i,a)}return i[s].exports}for(var r="function"==typeof require&&require,s=0;s<a.length;s++)o(a[s]);return o}({1:[function(e){var t=(e("./servmask/report.js"),e("./servmask/maintenance"),e("./servmask/feedback"),e("./servmask/import_controller"));jQuery(document).ready(function(e){"use strict";var i=function(e){for(var t=window.location.search.substring(1),i=t.split("&"),a=0;a<i.length;a++){var o=i[a].split("=");if(o[0]==e)return o[1]}},a=new t("file");a.init(),a.upload(),i("restore-file")&&a.restore(i("restore-file")),e(".ai1wm-expandable > div.ai1wm-button-main").on("click",function(){e(this).parent().toggleClass("ai1wm-open")})})},{"./servmask/feedback":3,"./servmask/import_controller":6,"./servmask/maintenance":9,"./servmask/report.js":10}],2:[function(e,t){var i=jQuery,a=function(e){this._overlay=i('<div class="ai1wm-overlay"></div>'),this._modal=i('<div class="ai1wm-modal-container"></div>'),this._modal_section=i("<section></section>"),this._modal_content=i('<p style="text-align: left; line-height: 1.5em;">'+e+"</p>"),this._modal_close=i('<button class="ai1wm-button-red">Close</button>'),this._modal_section.append(this._modal_content),this._modal.append(this._modal_section).append(this._modal_close),console.log(this._modal),i("body").append(this._overlay).append(this._modal),this._modal_close.on("click",function(){this.remove()}.bind(this)),this.show()};a.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},a.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},a.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},t.exports=a},{}],3:[function(){jQuery(document).ready(function(e){"use strict";e(".ai1wm-feedback-type").attr("checked",!1),e("#ai1wm-feedback-type-link-1").click(function(t){var i=e("#ai1wm-feedback-type-1");i.is(":checked")?(i.attr("checked",!1),t.preventDefault()):i.attr("checked",!0)}),e("#ai1wm-feedback-type-2").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-3").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","Leave plugin developers any feedback here"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-type-3").click(function(){e("#ai1wm-feedback-type-1, #ai1wm-feedback-type-2").closest("li").hide(),e(".ai1wm-feedback-form").find(".ai1wm-feedback-message").attr("placeholder","How may we help you?"),e(".ai1wm-feedback-form").fadeIn()}),e("#ai1wm-feedback-cancel").click(function(t){e(".ai1wm-feedback-form").fadeOut(function(){e(".ai1wm-feedback-type").attr("checked",!1).closest("li").show()}),t.preventDefault()}),e("#ai1wm-feedback-submit").click(function(){var t=ai1wm_feedback.ajax.url,i=e(".ai1wm-feedback-type:checked").val(),a=e(".ai1wm-feedback-email").val(),o=e(".ai1wm-feedback-message").val(),r=e(".ai1wm-feedback-terms").is(":checked");e.ajax({type:"POST",url:t,data:{type:i,email:a,message:o,terms:+r},success:function(t){var i=t.errors;if(i.length>0){e(".ai1wm-feedback .ai1wm-message").remove();var a=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(i,function(e,t){a.append("<p>"+t+"</p>")}),e(".ai1wm-feedback").prepend(a)}else{var o=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your feedback!</p>");e(".ai1wm-feedback").html(o)}},dataType:"json",async:!1})})})},{}],4:[function(e,t){var i=jQuery,a=function(){this.FILES_ADDED=1,this.BEFORE_UPLOAD=2,this.UPLOAD_PROGRESS=3,this.CHUNK_UPLOADED=4,this.UPLOAD_FINISHED=5,this.UPLOAD_ERROR=6,this.OVERSIZED_FILE=7,this.INVALID_EXTENSION=8,this._dfd=new i.Deferred,this._chunkUploaded=!1,this._storage=null,this.addFileFilters(),this._uploader=new plupload.Uploader(ai1wm_uploader),this._uploader.bind("Init",this._onInit),this._uploader.init(),this._uploader.bind("FilesAdded",this._onFilesAdded.bind(this)),this._uploader.bind("BeforeUpload",this._onBeforeUpload.bind(this)),this._uploader.bind("UploadProgress",this._onUploadProgress.bind(this)),this._uploader.bind("ChunkUploaded",this._onChunkUploaded.bind(this)),this._uploader.bind("FileUploaded",this._onFileUploaded.bind(this)),this._uploader.bind("Error",this._onError.bind(this))};a.prototype.addFileFilters=function(){var e=this;plupload.addFileFilter("ai1wm_archive_size",function(t,i,a){t=parseInt(t,10),i.size=i.hasOwnProperty("size")?parseInt(i.size,10):0,0===t||i.size<=t?a(!0):(this.trigger("Error",{code:e.OVERSIZED_FILE,message:ai1wm_import.oversize}),a(!1))}),plupload.addFileFilter("ai1wm_archive_extension",function(t,a,o){var r=a.name.substr((~-a.name.lastIndexOf(".")>>>0)+2);i.inArray(r,t)>-1?o(!0):(this.trigger("Error",{code:e.INVALID_EXTENSION,message:ai1wm_import.invalid_extension}),o(!1))})},a.prototype.watch=function(){return this._dfd.promise()},a.prototype.random=function(e){for(var t="",i="abcdefghijklmnopqrstuvwxyz0123456789",a=0;e>a;a++)t+=i.charAt(Math.floor(Math.random()*i.length));return t},a.prototype._onInit=function(e){var t=i("#ai1wm-plupload-upload-ui");e.features.dragdrop&&!i(document.body).hasClass("mobile")?i("#ai1wm-drag-drop-area").bind("dragover.wp-uploader",function(){t.addClass("ai1wm-drag-over")}).bind("dragleave.wp-uploader, drop.wp-uploader",function(){t.removeClass("ai1wm-drag-over")}):i("#ai1wm-drag-drop-area").unbind(".wp-uploader"),"html4"==e.runtime&&i(".upload-flash-bypass").hide()},a.prototype._onFilesAdded=function(e,t){this._storage=this.random(12),this._uploader.settings.multipart_params.storage=this._storage,this._dfd.notify({state:this.FILES_ADDED,up:e,files:t})},a.prototype._onBeforeUpload=function(e,t){this._dfd.notify({state:this.BEFORE_UPLOAD,up:e,files:t})},a.prototype._onUploadProgress=function(e,t){this._dfd.notify({state:this.UPLOAD_PROGRESS,up:e,files:t})},a.prototype._onChunkUploaded=function(){this._dfd.notify({state:this.CHUNK_UPLOADED})},a.prototype._onFileUploaded=function(e,t){this._dfd.notify({state:this.UPLOAD_FINISHED,up:e,files:t})},a.prototype._onError=function(e,t){this._dfd.notify({state:this.UPLOAD_ERROR,up:e,error:t})},t.exports=a},{}],5:[function(e,t){var i=jQuery,a=function(e){this._stop=!1,this._archive=null,this._storage=null,this._provider=e};a.prototype.start=function(){var e=this,t=new jQuery.Deferred;return i.post(ai1wm_import.ajax.url,{method:"start",secret_key:ai1wm_import.secret_key,provider:e._provider,storage:e._storage,archive:e._archive}).done(function(){e.getStatus(ai1wm_import.status.php).progress(function(e){t.notify(e)}).done(function(){t.resolve()}).fail(function(e){t.reject(e)})}).fail(function(){t.reject({message:"Unable to start the import. Refresh the page and try again"})}),t.promise()},a.prototype.getStatus=function(e,t,a){var o=this;return t=t||new jQuery.Deferred,a=a||0,o._stop?t.resolve():(i.ajax({cache:!1,url:e,dataType:"json"}).done(function(a){if(a)switch(t.notify(a),a.type){case"finish":t.resolve(),i.post(ai1wm_import.ajax.url,{method:"clean",secret_key:ai1wm_import.secret_key,provider:o._provider,storage:o._storage});break;case"confirm":t.resolve();break;default:setTimeout(function(){o.getStatus(e,t)},3e3)}}).fail(function(){a++,a>=6?t.reject({message:"Unable to retrieve status of the import. Is your server running?"}):a>=3?o.getStatus(ai1wm_import.status.js,t,a):o.getStatus(ai1wm_import.status.php,t,a)}),t.promise())},a.prototype.stop=function(e,t){var e=new jQuery.Deferred,a=this;return e=e||new jQuery.Deferred,t=t||0,t>0?e.notify({message:"Please wait, stopping the import... Retry "+t}):(e.notify({message:"Please wait, stopping the import..."}),a._stop=!0),i.post(ai1wm_import.ajax.url,{method:"stop",secret_key:ai1wm_import.secret_key,provider:a._provider,storage:a._storage}).done(function(){e.resolve()}).fail(function(){t++,t>3?e.reject({message:"Unable to retrieve status of the import. Is your server running?"}):a.stop(e,t)}),e.promise()},a.prototype.confirm=function(){var e=new jQuery.Deferred,t=this;return i.post(ai1wm_import.ajax.url,{method:"enumerate",secret_key:ai1wm_import.secret_key,provider:t._provider,storage:t._storage,archive:t._archive}).done(function(){t.getStatus(ai1wm_import.status.php).progress(function(t){e.notify(t)}).done(function(){e.resolve()}).fail(function(t){e.reject(t)})}).fail(function(){e.reject({message:"Unable to start the import. Refresh the page and try again"})}),e.promise()},a.prototype.download=function(e){var t=new jQuery.Deferred,a=this;return i.post(ai1wm_import.ajax.url,i.extend({method:"import",secret_key:ai1wm_import.secret_key,provider:a._provider,storage:a._storage,archive:a._archive},e)).done(function(){a.getStatus(ai1wm_import.status.php).progress(function(e){t.notify(e)}).done(function(){t.resolve()}).fail(function(e){t.reject(e)})}).fail(function(){t.reject({message:"Unable to start the import. Refresh the page and try again"})}),t.promise()},t.exports=a},{}],6:[function(e,t){(function(i){var a=e("./import_modal"),o=e("./file_uploader"),r=e("./import"),s=e("./info"),n=e("./dialog"),d=jQuery,p=function(e){this._import=new r(e),this._modal=new a};p.prototype.init=function(){var e=this;this._modal._stop.on("click",function(t){t.preventDefault(),d(this).attr("disabled","disabled"),e.stop()}),this._modal._confirm.on("click",function(t){t.preventDefault(),d(this).attr("disabled","disabled"),e.confirm()}),this._modal._close.on("click",function(t){t.preventDefault(),e._modal.remove()})},p.prototype.stop=function(){var e=this;this._import.stop().progress(function(t){e.display(t)}).done(function(){e._modal.remove()}).fail(function(e){alert(e.message)})},p.prototype.confirm=function(){var e=this;this._import.confirm().progress(function(t){e.display(t)}).fail(function(e){alert(e.message)})},p.prototype.download=function(e){var t=this;t.display({type:"info",message:"Preparing to import..."}),this._import.download(e).progress(function(e){t.display(e)}).fail(function(e){alert(e.message)})},p.prototype.display=function(e){var t=this;switch(t._modal.reset(),t._modal.show(),e.type){case"error":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-red"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.css("text-align","left"),t._modal._message.show(),t._modal._close.show();break;case"confirm":t._modal._warning.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._confirm.show();break;case"progress":t._modal._progressBar.show(),t._modal._progressBarPercent.text(e.percent+"%"),t._modal._progressBarMeter.width(e.meter+"%"),t._modal._stop.show();break;case"finish":t._modal._title.html(e.title),t._modal._title.addClass("ai1wm-title-green"),t._modal._title.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._close.show();break;default:t._modal._loader.show(),t._modal._message.html(e.message),t._modal._message.show(),t._modal._stop.show(),t._modal._stop.attr("disabled","disabled")}},p.prototype.upload=function(){var e=this;this._uploadFinished=!1,this._uploadProgress=0,this._fileUploader=new o,this._fileUploader.watch().progress(function(t){e._handleUploadState(t)}).done(function(){e.display({type:"info",message:"Preparing to import..."}),e._import.start().progress(function(t){e.display(t)}).done(function(){}).fail(function(e){alert(e.message)})}).fail(function(e){alert(e.message)})},p.prototype.restore=function(e){var t=this;this._import._archive=e,this._import._storage=this.random(12),t.display({type:"info",message:"Preparing to import..."}),this._import.start().progress(function(e){t.display(e)}).done(function(){}).fail(function(e){alert(e.message)})},p.prototype._handleUploadState=function(e){var t=this;switch(e.state){case t._fileUploader.FILES_ADDED:t.display({type:"progress",percent:1,meter:7}),t._fileUploader._uploader.refresh(),t._fileUploader._uploader.start();break;case t._fileUploader.BEFORE_UPLOAD:break;case t._fileUploader.UPLOAD_PROGRESS:if(e.files.size>e.up.settings.chunk_size&&t._fileUploader._chunkUploaded){var i=e.files.percent>7?e.files.percent:7;t.display({type:"progress",percent:i,meter:i})}else t._uploadFinished?(t._uploadProgress++,2==t._uploadProgress&&t.display({type:"progress",percent:100,meter:100})):t.display({type:"progress",percent:1,meter:7});break;case t._fileUploader.CHUNK_UPLOADED:t._fileUploader._chunkUploaded===!1&&(t._fileUploader._uploader.settings.max_retries=100),t._fileUploader._chunkUploaded=!0;break;case t._fileUploader.UPLOAD_FINISHED:t._uploadFinished=!0,t._import._archive=e.files.target_name,t._import._storage=this._fileUploader._storage,t._fileUploader._dfd.resolve();break;case t._fileUploader.UPLOAD_ERROR:switch(e.error.code){case t._fileUploader.OVERSIZED_FILE:new n(e.error.message);break;case t._fileUploader.INVALID_EXTENSION:new n(e.error.message);break;default:if(t._fileUploader._chunkUploaded)return alert("Unable to upload the file. Is your server running? Please refresh and try again."),void 0;if(t._uploadProgress=0,t._uploadFinished=!1,e.up.settings.chunk_size/=2,e.up.settings.chunk_size<102400)return alert("Unable to upload the file. Is your server running? Please refresh and try again."),void 0;new s("Trying new chunk size: "+(e.up.settings.chunk_size/1048576).toFixed(2)+"MB"),e.up.files[0].status=plupload.QUEUED,e.up.files[0].loaded=0,e.up.refresh(),e.up.start()}break;default:alert("Unknown state: "+state)}},p.prototype.random=function(e){for(var t="",i="abcdefghijklmnopqrstuvwxyz0123456789",a=0;e>a;a++)t+=i.charAt(Math.floor(Math.random()*i.length));return t},t.exports=p,i.window.Ai1wmImportController=p}).call(this,"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./dialog":2,"./file_uploader":4,"./import":5,"./import_modal":7,"./info":8}],7:[function(e,t){var i=jQuery,a=function(){this._overlay=i('<div class="ai1wm-overlay"></div>'),this._modal=i('<div class="ai1wm-modal-container"></div>'),this._section=i("<section></section>"),this._header=i("<h1></h1>"),this._message=i("<p></p>").hide(),this._action=i("<div></div>"),this._title=i("<span></span>").hide(),this._loader=i('<span class="ai1wm-loader"></span>').hide(),this._warning=i('<span class="ai1wm-icon-notification"></span>').hide(),this._progressBar=i('<span class="ai1wm-progress-bar"></span>').hide(),this._progressBarMeter=i('<span class="ai1wm-progress-bar-meter"></span>'),this._progressBarPercent=i('<span class="ai1wm-progress-bar-percent">0%</span>'),this._stop=i('<button class="ai1wm-button-red"><i class="ai1wm-icon-notification"></i> Stop import</button>').hide(),this._close=i('<button class="ai1wm-button-red">Close</button>').hide(),this._confirm=i('<button class="ai1wm-button-green">Continue</button>').hide(),this._progressBar.append(this._progressBarMeter).append(this._progressBarPercent),this._action.append(this._stop).append(this._close).append(this._confirm),this._header.append(this._title).append(this._loader).append(this._warning).append(this._progressBar),this._section.append(this._header).append(this._message),this._modal.append(this._section).append(this._action),i("body").append(this._overlay).append(this._modal)};a.prototype.show=function(){return this._overlay.show(),this._modal.show(),this},a.prototype.hide=function(){return this._modal.hide(),this._overlay.hide(),this},a.prototype.remove=function(){return this.hide(),this._modal.remove(),this._overlay.remove(),this},a.prototype.reset=function(){return this._title.hide(),this._loader.hide(),this._warning.hide(),this._progressBar.hide(),this._message.hide(),this._stop.hide(),this._stop.removeAttr("disabled"),this._close.hide(),this._confirm.hide(),this},t.exports=a},{}],8:[function(e,t){var i=jQuery,a=function(e){var t=i('<div class="ai1wm-growl-info">'+e+"</div>");t.hide(),i("body").append(t),t.show("normal",function(){setTimeout(function(){t.hide(),t.remove()},3e3)})};t.exports=a},{}],9:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-maintenance-off").click(function(t){var i=ai1wm_maintenance.ajax.url,a=e(this);e.ajax({type:"POST",url:i,success:function(){a.closest(".ai1wm-message-warning").remove()}}),t.preventDefault()})})},{}],10:[function(){jQuery(document).ready(function(e){"use strict";e("#ai1wm-report-problem-button").click(function(t){e(this).next(".ai1wm-report-problem-dialog").toggleClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-cancel").click(function(t){e(this).closest(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active"),t.preventDefault()}),e("#ai1wm-report-submit").click(function(){var t=ai1wm_report.ajax.url,i=e(".ai1wm-report-email").val(),a=e(".ai1wm-report-message").val(),o=e(".ai1wm-report-terms").is(":checked");e.ajax({type:"POST",url:t,data:{email:i,message:a,terms:+o},success:function(t){var i=t.errors;if(i.length>0){e(".ai1wm-report-problem-dialog .ai1wm-message").remove();var a=e("<div />").addClass("ai1wm-message ai1wm-error-message");e.each(i,function(e,t){a.append("<p>"+t+"</p>")}),e(".ai1wm-report-problem-dialog").prepend(a)}else{var o=e("<div />").addClass("ai1wm-message ai1wm-success-message").append("<p>Thanks for submitting your request!</p>");e(".ai1wm-report-problem-dialog").html(o),setTimeout(function(){e(".ai1wm-report-problem-dialog").removeClass("ai1wm-report-active")},2e3)}},dataType:"json",async:!1})})})},{}]},{},[1]);
|
lib/view/backup/index.php
CHANGED
@@ -133,9 +133,7 @@
|
|
133 |
|
134 |
<?php include AI1WM_TEMPLATES_PATH . '/common/leave-feedback.php'; ?>
|
135 |
|
136 |
-
<?php
|
137 |
-
<?php include AI1WM_TEMPLATES_PATH . '/common/http-authentication.php'; ?>
|
138 |
-
<?php endif; ?>
|
139 |
|
140 |
</div>
|
141 |
</div>
|
133 |
|
134 |
<?php include AI1WM_TEMPLATES_PATH . '/common/leave-feedback.php'; ?>
|
135 |
|
136 |
+
<?php include AI1WM_TEMPLATES_PATH . '/common/http-authentication.php'; ?>
|
|
|
|
|
137 |
|
138 |
</div>
|
139 |
</div>
|
lib/view/common/http-authentication.php
CHANGED
@@ -1,20 +1,24 @@
|
|
1 |
<h2><?php _e( 'HTTP Basic Authentication', AI1WM_PLUGIN_NAME ); ?></h2>
|
2 |
|
3 |
-
<
|
4 |
-
<
|
5 |
-
<
|
6 |
-
|
7 |
-
|
|
|
8 |
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
</
|
|
|
|
|
|
1 |
<h2><?php _e( 'HTTP Basic Authentication', AI1WM_PLUGIN_NAME ); ?></h2>
|
2 |
|
3 |
+
<div class="ai1wm-authentication">
|
4 |
+
<form method="POST" action="">
|
5 |
+
<div class="ai1wm-field">
|
6 |
+
<label for="ai1wm-username"><?php _e( 'Username', AI1WM_PLUGIN_NAME ); ?></label>
|
7 |
+
<input type="text" autocomplete="off" placeholder="<?php _e( 'Enter Username', AI1WM_PLUGIN_NAME ); ?>" id="ai1wm-username" name="ai1wm-username" class="ai1wm-http-authentication" value="<?php echo $username; ?>" />
|
8 |
+
</div>
|
9 |
|
10 |
+
<div class="ai1wm-field">
|
11 |
+
<label for="ai1wm-password"><?php _e( 'Password', AI1WM_PLUGIN_NAME ); ?></label>
|
12 |
+
<input type="password" autocomplete="off" placeholder="<?php _e( 'Enter Password', AI1WM_PLUGIN_NAME ); ?>" id="ai1wm-password" name="ai1wm-password" class="ai1wm-http-authentication" value="<?php echo $password; ?>" />
|
13 |
+
</div>
|
14 |
|
15 |
+
<p class="ai1wm-authentication-info"><?php _e( 'Populate the above fields if current site is password protected with <strong>.htaccess</strong> or any other HTTP Basic Authentication mechanism.', AI1WM_PLUGIN_NAME ); ?></p>
|
16 |
+
|
17 |
+
<div class="ai1wm-field">
|
18 |
+
<button type="submit" class="ai1wm-button-blue">
|
19 |
+
<i class="ai1wm-icon-save"></i>
|
20 |
+
<?php _e( 'Update', AI1WM_PLUGIN_NAME ); ?>
|
21 |
+
</button>
|
22 |
+
</div>
|
23 |
+
</form>
|
24 |
+
</div>
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: yani.iliev, bangelov, pimjitsawang
|
|
3 |
Tags: db migration, migration, wordpress migration, db backup, db restore, website backup, website restore, website migration, website deploy, wordpress deploy, db backup, database export, database serialization, database find replace
|
4 |
Requires at least: 3.3
|
5 |
Tested up to: 4.4
|
6 |
-
Stable tag: 4.
|
7 |
License: GPLv2 or later
|
8 |
|
9 |
All-in-One WP Migration is the only tool that you will ever need to migrate a WordPress site.
|
@@ -28,8 +28,23 @@ All in One WP Plugin is the first plugin to offer true mobile experience on Word
|
|
28 |
= Support for MySQL, PDO, MySQLi =
|
29 |
* No matter what php mysql driver your webserver ships with, we support it.
|
30 |
|
31 |
-
= Support WordPress v3.3 up to v4.
|
32 |
-
* We tested every WordPress version from `3.3` up to `4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
|
34 |
= Migrate WordPress to most popular cloud services using our completely new extensions =
|
35 |
* [Unlimited](https://servmask.com/products/unlimited-extension)
|
@@ -60,6 +75,10 @@ All in One WP Plugin is the first plugin to offer true mobile experience on Word
|
|
60 |
3. Plugin Menu
|
61 |
|
62 |
== Changelog ==
|
|
|
|
|
|
|
|
|
63 |
= 4.17 =
|
64 |
* Set "Tested up to" WordPress 4.4
|
65 |
|
3 |
Tags: db migration, migration, wordpress migration, db backup, db restore, website backup, website restore, website migration, website deploy, wordpress deploy, db backup, database export, database serialization, database find replace
|
4 |
Requires at least: 3.3
|
5 |
Tested up to: 4.4
|
6 |
+
Stable tag: 4.18
|
7 |
License: GPLv2 or later
|
8 |
|
9 |
All-in-One WP Migration is the only tool that you will ever need to migrate a WordPress site.
|
28 |
= Support for MySQL, PDO, MySQLi =
|
29 |
* No matter what php mysql driver your webserver ships with, we support it.
|
30 |
|
31 |
+
= Support WordPress v3.3 up to v4.x =
|
32 |
+
* We tested every WordPress version from `3.3` up to `4.x`.
|
33 |
+
|
34 |
+
= Supported hosting providers =
|
35 |
+
* Bluehost
|
36 |
+
* InMotion
|
37 |
+
* Web Hosting Hub
|
38 |
+
* Siteground
|
39 |
+
* Pagely
|
40 |
+
* Dreamhost
|
41 |
+
* Justhost
|
42 |
+
* GoDaddy
|
43 |
+
* WP Engine
|
44 |
+
* Site5
|
45 |
+
* 1&1
|
46 |
+
* Pantheon
|
47 |
+
* [See the full list of supported providers here](https://help.servmask.com/knowledgebase/supported-hosting-providers/)
|
48 |
|
49 |
= Migrate WordPress to most popular cloud services using our completely new extensions =
|
50 |
* [Unlimited](https://servmask.com/products/unlimited-extension)
|
75 |
3. Plugin Menu
|
76 |
|
77 |
== Changelog ==
|
78 |
+
= 4.18 =
|
79 |
+
* Fixed an issue with large media files
|
80 |
+
* Fixed an issue with status file being cached
|
81 |
+
|
82 |
= 4.17 =
|
83 |
* Set "Tested up to" WordPress 4.4
|
84 |
|
status.php
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
@header( 'Content-Type: application/json' );
|
4 |
+
@readfile( 'storage' . DIRECTORY_SEPARATOR . 'status.js' );
|