Clearfy – WordPress optimization plugin and disable ultimate tweaker - Version 1.7.4

Version Description

(16.09.2020) = * Fixed: Cannot declare class Minify_HTML (Conflict with WP-Optimize).

Download this release

Release Info

Developer alexkovalevv
Plugin Icon 128x128 Clearfy – WordPress optimization plugin and disable ultimate tweaker
Version 1.7.4
Comparing to
See all releases

Code changes from version 1.7.0 to 1.7.4

Files changed (203) hide show
  1. admin/activation.php +4 -2
  2. admin/ajax/configurate.php +1 -1
  3. admin/ajax/google-page-speed.php +85 -0
  4. admin/ajax/import-settings.php +2 -2
  5. admin/assets/css/general.css +8 -2
  6. admin/assets/css/setup/page-setup.css +99 -0
  7. admin/assets/css/setup/page-setup.css.map +1 -0
  8. admin/assets/css/setup/page-setup.less +119 -0
  9. admin/assets/css/setup/step-optimize-images.css +673 -0
  10. admin/assets/css/setup/step-optimize-images.css.map +1 -0
  11. admin/assets/css/setup/step-optimize-images.less +819 -0
  12. admin/assets/img/Spinner-1s-33px.gif +0 -0
  13. admin/assets/img/clearfylogo-768x300.png +0 -0
  14. admin/assets/img/setup-preloader-124x124.gif +0 -0
  15. admin/assets/js/circular-progress.js +139 -0
  16. admin/assets/js/general.js +46 -18
  17. admin/assets/js/install-addons.js +0 -358
  18. admin/assets/js/license-manager.js +4 -4
  19. admin/assets/js/setup.js +95 -0
  20. admin/boot.php +42 -8
  21. admin/includes/compatibility.php +4 -4
  22. admin/pages/class-page.php +8 -8
  23. admin/pages/class-pages-advanced.php +1 -1
  24. admin/pages/class-pages-clearfy-settings.php +2 -2
  25. admin/pages/class-pages-components-license.php +172 -169
  26. admin/pages/class-pages-components.php +8 -222
  27. admin/pages/class-pages-defence-titan.php +8 -8
  28. admin/pages/class-pages-defence.php +2 -2
  29. admin/pages/class-pages-hide-login-page.php +94 -94
  30. admin/pages/class-pages-image-optimization.php +8 -8
  31. admin/pages/class-pages-license.php +3 -3
  32. admin/pages/class-pages-performance-google.php +1 -1
  33. admin/pages/class-pages-quick-start.php +14 -4
  34. admin/pages/class-pages-seo-double-pages.php +1 -1
  35. admin/pages/class-pages-seo.php +1 -1
  36. admin/pages/class-pages-widgets.php +1 -1
  37. admin/pages/setup/class-pages-setup.php +62 -0
  38. admin/pages/setup/steps/class-step-congratulation.php +157 -0
  39. admin/pages/setup/steps/class-step-default.php +37 -0
  40. admin/pages/setup/steps/class-step-google-page-speed-after.php +98 -0
  41. admin/pages/setup/steps/class-step-google-page-speed-before.php +96 -0
  42. admin/pages/setup/steps/class-step-optimize-images.php +179 -0
  43. admin/pages/setup/steps/class-step-plugins.php +73 -0
  44. admin/pages/setup/steps/class-step-setting-seo-optimize.php +163 -0
  45. admin/pages/setup/steps/class-step-setting-speed-optimize.php +243 -0
  46. clearfy.php +13 -13
  47. components/assets-manager/admin/activation.php +2 -2
  48. components/assets-manager/admin/ajax/save-settings.php +1 -1
  49. components/assets-manager/admin/boot.php +2 -2
  50. components/assets-manager/admin/pages/class-pages-more-features.php +1 -1
  51. components/assets-manager/admin/pages/class-pages-settings.php +4 -4
  52. components/assets-manager/assets/css/assets-conditions.css +174 -175
  53. components/assets-manager/assets/css/assets-manager.css +1208 -1209
  54. components/assets-manager/gonzales.php +7 -7
  55. components/assets-manager/includes/class-plugin.php +3 -3
  56. components/assets-manager/includes/classes/class-assets-manager-global.php +2 -2
  57. components/assets-manager/includes/classes/class-views.php +4 -4
  58. components/assets-manager/migrations/010100.php +1 -1
  59. components/assets-manager/migrations/010108.php +1 -1
  60. components/assets-manager/migrations/020005.php +1 -1
  61. components/assets-manager/mu-plugins/assets-manager.php +1 -1
  62. components/comments-plus/admin/boot.php +1 -1
  63. components/comments-plus/admin/pages/class-page-comments.php +3 -3
  64. components/comments-plus/admin/pages/class-page-delete-comments.php +6 -6
  65. components/comments-plus/admin/pages/class-page-more-features.php +1 -1
  66. components/comments-plus/comments-plus.php +7 -7
  67. components/comments-plus/includes/class-plugin.php +3 -3
  68. components/comments-plus/includes/classes/class-configurate-comments.php +3 -3
  69. components/cyrlitera/admin/activation.php +2 -2
  70. components/cyrlitera/admin/boot.php +1 -1
  71. components/cyrlitera/admin/pages/class-page-cyrlitera.php +4 -4
  72. components/cyrlitera/admin/pages/class-page-more-features.php +1 -1
  73. components/cyrlitera/cyrlitera.php +7 -7
  74. components/cyrlitera/includes/class-plugin.php +3 -3
  75. components/cyrlitera/includes/classes/class-configurate-cyrlitera.php +2 -2
  76. components/cyrlitera/migrations/010004.php +1 -1
  77. components/disable-admin-notices/.idea/workspace.xml +0 -47
  78. components/disable-admin-notices/admin/ajax/hide-notice.php +25 -8
  79. components/disable-admin-notices/admin/ajax/restore-notice.php +9 -2
  80. components/disable-admin-notices/admin/assets/css/general.css +50 -0
  81. components/disable-admin-notices/admin/assets/css/notifications-panel.css +76 -66
  82. components/disable-admin-notices/admin/assets/css/notifications-panel.less +22 -3
  83. components/disable-admin-notices/admin/assets/css/page.css +8 -0
  84. components/disable-admin-notices/admin/assets/css/page.less +8 -0
  85. components/disable-admin-notices/admin/assets/css/settings.css +219 -177
  86. components/disable-admin-notices/admin/assets/css/settings.less +55 -1
  87. components/disable-admin-notices/admin/assets/img/hide-icon-white.svg +25 -0
  88. components/disable-admin-notices/admin/assets/img/hide-icon.svg +25 -0
  89. components/disable-admin-notices/admin/assets/img/loader.gif +0 -0
  90. components/disable-admin-notices/admin/assets/js/settings.js +69 -0
  91. components/disable-admin-notices/admin/boot.php +2 -2
  92. components/disable-admin-notices/admin/{pages/class-pages.php → class-page-basic.php} +19 -1
  93. components/disable-admin-notices/admin/options.php +43 -26
  94. components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php +5 -5
  95. components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php +4 -4
  96. components/disable-admin-notices/admin/pages/class-pages-license.php +3 -3
  97. components/disable-admin-notices/admin/pages/class-pages-notices.php +91 -0
  98. components/disable-admin-notices/admin/pages/class-pages-settings.php +8 -7
  99. components/disable-admin-notices/clearfy.php +1 -1
  100. components/disable-admin-notices/disable-admin-notices.php +10 -10
  101. components/disable-admin-notices/includes/class-plugin.php +24 -4
  102. components/disable-admin-notices/includes/classes/class-configurate-notices.php +138 -109
  103. components/disable-admin-notices/languages/disable-admin-notices-ru_RU.mo +0 -0
  104. components/disable-admin-notices/languages/disable-admin-notices-ru_RU.po +148 -314
  105. components/disable-admin-notices/migrations/010007.php +1 -1
  106. components/disable-admin-notices/readme.txt +19 -4
  107. components/ga-cache/admin/activation.php +2 -2
  108. components/ga-cache/admin/boot.php +3 -3
  109. components/ga-cache/admin/options.php +1 -1
  110. components/ga-cache/admin/pages/class-pages-general-settings.php +3 -3
  111. components/ga-cache/admin/pages/class-pages-more-features.php +1 -1
  112. components/ga-cache/includes/class-plugin.php +3 -3
  113. components/ga-cache/includes/classes/class-configurate-ga.php +1 -1
  114. components/ga-cache/migrations/030002.php +1 -1
  115. components/ga-cache/simple_google_analytics.php +6 -6
  116. components/html-minify/admin/pages/class-pages-settings.php +3 -3
  117. components/html-minify/clearfy.php +17 -17
  118. components/html-minify/html-minify.php +8 -8
  119. components/html-minify/includes/class-plugin.php +3 -3
  120. components/html-minify/includes/classes/class-html.php +2 -2
  121. components/html-minify/includes/classes/ext/php/class-minify-html.php +3 -3
  122. components/minify-and-combine/admin/pages/class-pages-settings.php +3 -3
  123. components/minify-and-combine/includes/class-plugin.php +3 -3
  124. components/minify-and-combine/includes/classes/class-cache.php +1 -1
  125. components/minify-and-combine/minify-and-combine.php +7 -7
  126. components/updates-manager/admin/activation.php +2 -2
  127. components/updates-manager/admin/assets/css/general.css +155 -156
  128. components/updates-manager/admin/assets/css/plugins.css +32 -33
  129. components/updates-manager/admin/assets/css/themes.css +20 -21
  130. components/updates-manager/admin/assets/js/ajax-components.js +4 -4
  131. components/updates-manager/admin/boot.php +1 -1
  132. components/updates-manager/admin/includes/class-abstract-filters.php +1 -1
  133. components/updates-manager/admin/pages/class-page-advanced.php +5 -5
  134. components/updates-manager/admin/pages/class-page-more-features.php +1 -1
  135. components/updates-manager/admin/pages/class-page-plugins.php +5 -5
  136. components/updates-manager/admin/pages/class-page-themes.php +4 -4
  137. components/updates-manager/admin/pages/class-page-updates.php +5 -5
  138. components/updates-manager/includes/class-plugin.php +3 -3
  139. components/updates-manager/includes/classes/class-configurate-updates.php +1 -1
  140. components/updates-manager/migrations/010008.php +1 -1
  141. components/updates-manager/webcraftic-updates-manager.php +7 -7
  142. includes/boot.php +1 -1
  143. includes/class.plugin.php +28 -55
  144. includes/classes/class.configurate-advanced.php +2 -3
  145. includes/classes/class.configurate-google-performance.php +1 -1
  146. includes/classes/class.configurate-performance.php +261 -225
  147. includes/classes/class.configurate-privacy.php +1 -1
  148. includes/classes/class.configurate-security.php +1 -1
  149. includes/classes/class.configurate-seo.php +1 -1
  150. includes/helpers.php +257 -182
  151. libs/factory/adverts/boot.php +12 -12
  152. libs/factory/adverts/includes/class-base.php +6 -6
  153. libs/factory/adverts/includes/class-dashboard-widget.php +4 -4
  154. libs/factory/adverts/includes/class-rest-request.php +4 -4
  155. libs/factory/adverts/langs/{wbcr_factory_adverts_112-ru_RU.mo → wbcr_factory_adverts_114-ru_RU.mo} +0 -0
  156. libs/factory/adverts/langs/{wbcr_factory_adverts_112-ru_RU.po → wbcr_factory_adverts_114-ru_RU.po} +0 -0
  157. libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css +1 -1
  158. libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css +1 -1
  159. libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css +1 -1
  160. libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css +2 -2
  161. libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css +1 -1
  162. libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css +1 -1
  163. libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css +1 -1
  164. libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css +1 -1
  165. libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css +1 -1
  166. libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css +1 -1
  167. libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css +1 -1
  168. libs/factory/bootstrap/assets/css-min/control.checkbox.min.css +1 -1
  169. libs/factory/bootstrap/assets/css-min/control.dropdown.min.css +1 -1
  170. libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css +1 -1
  171. libs/factory/bootstrap/assets/css-min/holder.more-link.min.css +1 -1
  172. libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js +1 -1
  173. libs/factory/bootstrap/assets/js-min/control.checkbox.min.js +1 -1
  174. libs/factory/bootstrap/assets/js-min/control.dropdown.min.js +1 -1
  175. libs/factory/bootstrap/assets/js-min/control.list.min.js +1 -1
  176. libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js +1 -1
  177. libs/factory/bootstrap/boot.php +9 -9
  178. libs/factory/bootstrap/includes/functions.php +10 -10
  179. libs/factory/clearfy/assets/css/clearfy-base.css +24 -24
  180. libs/factory/clearfy/assets/css/components.css +140 -0
  181. libs/factory/clearfy/assets/css/components.css.map +1 -0
  182. libs/factory/clearfy/assets/css/components.less +153 -0
  183. libs/factory/clearfy/assets/css/libs/autocomplete.css +9 -9
  184. libs/factory/clearfy/assets/css/page-setup.css +454 -0
  185. libs/factory/clearfy/assets/css/page-setup.css.map +1 -0
  186. libs/factory/clearfy/assets/css/page-setup.less +515 -0
  187. libs/factory/clearfy/assets/js/clearfy-globals.js +221 -0
  188. libs/factory/clearfy/assets/js/{license-manager.js → clearfy-license-manager.js} +4 -4
  189. libs/factory/clearfy/assets/js/{search-options.js → clearfy-search-options.js} +2 -2
  190. libs/factory/clearfy/assets/js/globals.js +0 -203
  191. libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js +1 -1
  192. libs/factory/clearfy/boot.php +36 -27
  193. libs/factory/clearfy/includes/ajax-handlers.php +8 -8
  194. libs/factory/clearfy/includes/class-configurate.php +3 -3
  195. libs/factory/clearfy/includes/class-helpers.php +1 -1
  196. libs/factory/clearfy/includes/class-search-options.php +1 -1
  197. libs/factory/clearfy/langs/{wbcr_factory_clearfy_224-ru_RU.mo → wbcr_factory_clearfy_225-ru_RU.mo} +0 -0
  198. libs/factory/clearfy/langs/{wbcr_factory_clearfy_224-ru_RU.po → wbcr_factory_clearfy_225-ru_RU.po} +0 -0
  199. libs/factory/clearfy/langs/wbcr_factory_clearfy_226-ru_RU.mo +0 -0
  200. libs/factory/clearfy/langs/wbcr_factory_clearfy_226-ru_RU.po +307 -0
  201. libs/factory/clearfy/langs/wbcr_factory_clearfy_227-ru_RU.mo +0 -0
  202. libs/factory/clearfy/langs/wbcr_factory_clearfy_227-ru_RU.po +307 -0
  203. libs/factory/clearfy/pages/class-page-license.php +26 -26
admin/activation.php CHANGED
@@ -4,7 +4,7 @@
4
  *
5
  * @author Webcraftic <wordpress.webraftic@gmail.com>
6
  * @copyright (c) 09.09.2017, Webcraftic
7
- * @see Factory432_Activator
8
  * @version 1.0
9
  */
10
 
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_Activation extends Wbcr_Factory432_Activator {
17
 
18
  /**
19
  * Runs activation actions.
@@ -60,6 +60,8 @@ class WCL_Activation extends Wbcr_Factory432_Activator {
60
  WCL_Plugin::app()->deactivateComponent( 'cyrlitera' );
61
  }
62
 
 
 
63
  /**
64
  * @since 1.4.1
65
  */
4
  *
5
  * @author Webcraftic <wordpress.webraftic@gmail.com>
6
  * @copyright (c) 09.09.2017, Webcraftic
7
+ * @see Factory436_Activator
8
  * @version 1.0
9
  */
10
 
13
  exit;
14
  }
15
 
16
+ class WCL_Activation extends Wbcr_Factory436_Activator {
17
 
18
  /**
19
  * Runs activation actions.
60
  WCL_Plugin::app()->deactivateComponent( 'cyrlitera' );
61
  }
62
 
63
+ update_option( $this->plugin->getOptionName( 'setup_wizard' ), 1 );
64
+
65
  /**
66
  * @since 1.4.1
67
  */
admin/ajax/configurate.php CHANGED
@@ -57,7 +57,7 @@
57
  }
58
 
59
  if( !$flush_redirect ) {
60
- WbcrFactoryClearfy224_Helpers::flushPageCache();
61
  }
62
 
63
  do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
57
  }
58
 
59
  if( !$flush_redirect ) {
60
+ WbcrFactoryClearfy227_Helpers::flushPageCache();
61
  }
62
 
63
  do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
admin/ajax/google-page-speed.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ajax plugin configuration
4
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
5
+ * @copyright (c) 2017 Webraftic Ltd
6
+ * @version 1.0
7
+ */
8
+
9
+ //AIzaSyD85-8Tmp_Ixc43AgqyeLpNZNlGP150LbA
10
+
11
+ // Exit if accessed directly
12
+ if( !defined('ABSPATH') ) {
13
+ exit;
14
+ }
15
+
16
+ add_action('wp_ajax_wclearfy-fetch-google-pagespeed-audit', function () {
17
+ check_ajax_referer('fetch_google_page_speed_audit');
18
+
19
+ if( !WCL_Plugin::app()->currentUserCan() ) {
20
+ wp_die(-1);
21
+ }
22
+
23
+ $flush_cache = (bool)WCL_Plugin::app()->request->post('flush_cache', false);
24
+
25
+ $results = get_transient(WCL_Plugin::app()->getPrefix() . 'fetch_google_page_speed_audits');
26
+
27
+ if( !empty($results) ) {
28
+ if( $flush_cache ) {
29
+ delete_transient(WCL_Plugin::app()->getPrefix() . 'fetch_google_page_speed_audits');
30
+ } else {
31
+ wp_send_json_success($results);
32
+ }
33
+ }
34
+
35
+ $site_url = get_home_url();
36
+
37
+ // Check if plugin is installed in localhost
38
+ if( substr($_SERVER['REMOTE_ADDR'], 0, 4) == '127.' || $_SERVER['REMOTE_ADDR'] == '::1' ) {
39
+ $site_url = 'https://cm-wp.com/';
40
+ }
41
+
42
+ $results = [];
43
+ $strategy_arr = array(1 => 'desktop', 2 => 'mobile');
44
+
45
+ foreach($strategy_arr as $strategy_id => $strategy_text) {
46
+ $google_page_speed_call = "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=" . $site_url . "&key=AIzaSyD85-8Tmp_Ixc43AgqyeLpNZNlGP150LbA&strategy=" . $strategy_text;
47
+
48
+ //Fetch data from Google PageSpeed API
49
+ $response = wp_remote_get($google_page_speed_call, array('timeout' => 30));
50
+ $response_code = wp_remote_retrieve_response_code($response);
51
+ $google_ps = json_decode($response['body'], true);
52
+
53
+ if( isset($google_ps['error']) ) {
54
+ wp_send_json_error([
55
+ 'error' => $google_ps['error']['message'],
56
+ 'code' => $google_ps['error']['code']
57
+ ]);
58
+ }
59
+
60
+ $response_error = null;
61
+ if( is_wp_error($response) ) {
62
+ $response_error = $response;
63
+ } elseif( 200 !== $response_code ) {
64
+ $response_error = new WP_Error('api-error', /* translators: %d: Numeric HTTP status code, e.g. 400, 403, 500, 504, etc. */ sprintf(__('Invalid API response code (%d).'), $response_code));
65
+ }
66
+
67
+ if( is_wp_error($response_error) ) {
68
+ wp_send_json_error([
69
+ 'error' => $response_error->get_error_message(),
70
+ 'code' => $response_error->get_error_code()
71
+ ]);
72
+ }
73
+
74
+ $results[$strategy_text] = [
75
+ 'performance_score' => ($google_ps['lighthouseResult']['categories']['performance']['score'] * 100),
76
+ 'first_contentful_paint' => $google_ps['lighthouseResult']['audits']['first-contentful-paint']['displayValue'],
77
+ 'speed_index' => $google_ps['lighthouseResult']['audits']['speed-index']['displayValue'],
78
+ 'interactive' => $google_ps['lighthouseResult']['audits']['interactive']['displayValue']
79
+ ];
80
+
81
+ set_transient(WCL_Plugin::app()->getPrefix() . 'fetch_google_page_speed_audits', $results, 201);
82
+ }
83
+ wp_send_json_success($results);
84
+ });
85
+
admin/ajax/import-settings.php CHANGED
@@ -62,7 +62,7 @@
62
  }
63
 
64
  if( is_array($option_value) || is_object($option_value) ) {
65
- $option_value = WbcrFactoryClearfy224_Helpers::recursiveSanitizeArray($option_value, 'wp_kses_post');
66
  $option_value = maybe_serialize($option_value);
67
  } else {
68
  $option_value = wp_kses_post($option_value);
@@ -140,7 +140,7 @@
140
  //$send_data['update_notice'] = $package_plugin->getUpdateNotice();
141
 
142
  // Сбрасываем кеш для кеширующих плагинов
143
- WbcrFactoryClearfy224_Helpers::flushPageCache();
144
 
145
  do_action('wbcr_clearfy_imported_settings');
146
 
62
  }
63
 
64
  if( is_array($option_value) || is_object($option_value) ) {
65
+ $option_value = WbcrFactoryClearfy227_Helpers::recursiveSanitizeArray($option_value, 'wp_kses_post');
66
  $option_value = maybe_serialize($option_value);
67
  } else {
68
  $option_value = wp_kses_post($option_value);
140
  //$send_data['update_notice'] = $package_plugin->getUpdateNotice();
141
 
142
  // Сбрасываем кеш для кеширующих плагинов
143
+ WbcrFactoryClearfy227_Helpers::flushPageCache();
144
 
145
  do_action('wbcr_clearfy_imported_settings');
146
 
admin/assets/css/general.css CHANGED
@@ -33,10 +33,10 @@
33
  //float: right;
34
  }*/
35
  }
36
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-page-header {
37
  height: 80px !important;
38
  }
39
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo span {
40
  display: inline-block !important;
41
  }
42
  #WBCR .row {
@@ -325,6 +325,12 @@
325
  background-color: #fdd599;
326
  color: #a57b3c;
327
  }
 
 
 
 
 
 
328
  #WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode:hover {
329
  background-color: #fddba8;
330
  }
33
  //float: right;
34
  }*/
35
  }
36
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-page-header {
37
  height: 80px !important;
38
  }
39
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo span {
40
  display: inline-block !important;
41
  }
42
  #WBCR .row {
325
  background-color: #fdd599;
326
  color: #a57b3c;
327
  }
328
+ #WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-wizard {
329
+ width: 100px;
330
+ background-color: #8bc34a;
331
+ color: #ffffff;
332
+ margin-top: 10px;
333
+ }
334
  #WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode:hover {
335
  background-color: #fddba8;
336
  }
admin/assets/css/setup/page-setup.css ADDED
@@ -0,0 +1,99 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .wclearfy-setup__color--red > .dashicons {
2
+ color: #ff1c40;
3
+ }
4
+ .wclearfy-setup__color--green > .dashicons {
5
+ color: #1fa21f;
6
+ }
7
+ .wclearfy-setup__install-component-button {
8
+ background-color: #ff1c40 !important;
9
+ border-color: #ff1c40 !important;
10
+ color: white !important;
11
+ text-transform: uppercase !important;
12
+ border-radius: 5px !important;
13
+ padding: 10px 30px !important;
14
+ text-decoration: none !important;
15
+ }
16
+ .wclearfy-setup__install-component-button:link,
17
+ .wclearfy-setup__install-component-button:active {
18
+ text-decoration: none !important;
19
+ }
20
+ .wclearfy-setup__install-component-button:hover {
21
+ color: #f3f4ef;
22
+ }
23
+ .wbcr-clearfy-danger-message {
24
+ position: relative;
25
+ padding: 15px;
26
+ background: #ffe0de;
27
+ color: #9c6e6e;
28
+ border-radius: 3px;
29
+ }
30
+ .wclearfy-gogle-page-speed-audit__preloader {
31
+ display: block;
32
+ width: 100%;
33
+ height: 100px;
34
+ background: url("../../img/setup-preloader-124x124.gif") center no-repeat;
35
+ }
36
+ .wclearfy-gogle-page-speed-audit__errors {
37
+ display: none;
38
+ padding: 15px;
39
+ background: #fddfdf;
40
+ }
41
+ .wclearfy-score {
42
+ padding: 20px;
43
+ text-align: center;
44
+ }
45
+ .wclearfy-desktop-score,
46
+ .wclearfy-mobile-score {
47
+ display: inline-block;
48
+ width: 150px;
49
+ padding-left: 20px;
50
+ padding-right: 20px;
51
+ }
52
+ .wclearfy-score-circle {
53
+ position: relative;
54
+ margin: 0 auto;
55
+ }
56
+ .wclearfy-status-circle-text {
57
+ position: absolute;
58
+ left: 50%;
59
+ top: 50%;
60
+ padding: 0;
61
+ margin: 0;
62
+ transform: translate(-50%, -50%);
63
+ color: #aaa;
64
+ font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
65
+ font-size: 1.3125rem;
66
+ font-weight: 300;
67
+ line-height: 1.5;
68
+ }
69
+ .wclearfy-score-circle .wclearfy-status-overlay-text {
70
+ position: absolute;
71
+ left: 50%;
72
+ top: 50%;
73
+ padding: 0;
74
+ margin: 0;
75
+ width: 200%;
76
+ text-align: center;
77
+ transform: translate(-50%, -50%);
78
+ font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
79
+ font-size: 0.875rem;
80
+ font-weight: normal;
81
+ line-height: 1.3125;
82
+ opacity: 0;
83
+ color: #777;
84
+ }
85
+ .wclearfy-statistic {
86
+ padding: 10px;
87
+ font-family: Roboto, Helvetica, Arial, sans-serif;
88
+ font-size: 14px;
89
+ }
90
+ .wclearfy-statistic .wclearfy-statistic__line {
91
+ border-bottom: 1px solid #ebebeb;
92
+ display: flex;
93
+ justify-content: space-between;
94
+ padding: 8px;
95
+ }
96
+ .wclearfy-statistic .wclearfy-statistic__results {
97
+ padding-right: 5px;
98
+ font-weight: bold;
99
+ }
admin/assets/css/setup/page-setup.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["page-setup.less"],"names":[],"mappings":"AACE,2BAAE;EACA,cAAA;;AAMF,6BAAE;EACA,cAAA;;AAIJ;EACE,yBAAA;EACA,qBAAA;EACA,uBAAA;EACA,oCAAA;EACA,6BAAA;EACA,6BAAA;EACA,gCAAA;;AAEA,yCAAC;AAAO,yCAAC;EACP,gCAAA;;AAGF,yCAAC;EACC,cAAA;;AAIJ;EACE,kBAAA;EACA,aAAA;EACA,mBAAA;EACA,cAAA;EACA,kBAAA;;AAGF;EACE,cAAA;EACA,WAAA;EACA,aAAA;EACA,gBAAgB,yDAAhB;;AAGF;EACE,aAAA;EACA,aAAA;EACA,mBAAA;;AAGF;EACE,aAAA;EACA,kBAAA;;AAGF;AAAyB;EACvB,qBAAA;EACA,YAAA;EACA,kBAAA;EACA,mBAAA;;AAIF;EACE,kBAAA;EACA,cAAA;;AAGF;EACE,kBAAA;EACA,SAAA;EACA,QAAA;EACA,UAAA;EACA,SAAA;EACA,WAAW,qBAAX;EACA,WAAA;EACA,qBAAqB,8CAArB;EACA,oBAAA;EACA,gBAAA;EACA,gBAAA;;AAGF,sBAAuB;EACrB,kBAAA;EACA,SAAA;EACA,QAAA;EACA,UAAA;EACA,SAAA;EACA,WAAA;EACA,kBAAA;EACA,WAAW,qBAAX;EACA,qBAAqB,8CAArB;EACA,mBAAA;EACA,mBAAA;EACA,mBAAA;EACA,UAAA;EACA,WAAA;;AAGF;EACE,aAAA;EACA,iDAAA;EACA,eAAA;;AAHF,mBAKE;EACE,gCAAA;EACA,aAAA;EACA,8BAAA;EACA,YAAA;;AATJ,mBAYE;EACE,kBAAA;EACA,iBAAA","file":"page-setup.css"}
admin/assets/css/setup/page-setup.less ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .wclearfy-setup__color--red {
2
+ & > .dashicons {
3
+ color: #ff1c40;
4
+ }
5
+
6
+ }
7
+
8
+ .wclearfy-setup__color--green {
9
+ & > .dashicons {
10
+ color: #1fa21f;
11
+ }
12
+ }
13
+
14
+ .wclearfy-setup__install-component-button {
15
+ background-color: #ff1c40 !important;
16
+ border-color: #ff1c40 !important;
17
+ color: white !important;
18
+ text-transform: uppercase !important;
19
+ border-radius: 5px !important;
20
+ padding: 10px 30px !important;
21
+ text-decoration: none !important;
22
+
23
+ &:link, &:active {
24
+ text-decoration: none !important;
25
+ }
26
+
27
+ &:hover {
28
+ color: #f3f4ef;
29
+ }
30
+ }
31
+
32
+ .wbcr-clearfy-danger-message {
33
+ position: relative;
34
+ padding: 15px;
35
+ background: #ffe0de;
36
+ color: #9c6e6e;
37
+ border-radius: 3px;
38
+ }
39
+
40
+ .wclearfy-gogle-page-speed-audit__preloader {
41
+ display: block;
42
+ width: 100%;
43
+ height: 100px;
44
+ background: url("../../img/setup-preloader-124x124.gif") center no-repeat;
45
+ }
46
+
47
+ .wclearfy-gogle-page-speed-audit__errors {
48
+ display: none;
49
+ padding: 15px;
50
+ background: #fddfdf;
51
+ }
52
+
53
+ .wclearfy-score {
54
+ padding: 20px;
55
+ text-align: center;
56
+ }
57
+
58
+ .wclearfy-desktop-score, .wclearfy-mobile-score {
59
+ display: inline-block;
60
+ width: 150px;
61
+ padding-left: 20px;
62
+ padding-right: 20px;
63
+ }
64
+
65
+
66
+ .wclearfy-score-circle {
67
+ position: relative;
68
+ margin: 0 auto;
69
+ }
70
+
71
+ .wclearfy-status-circle-text {
72
+ position: absolute;
73
+ left: 50%;
74
+ top: 50%;
75
+ padding: 0;
76
+ margin: 0;
77
+ transform: translate(-50%, -50%);
78
+ color: #aaa;
79
+ font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
80
+ font-size: 1.3125rem;
81
+ font-weight: 300;
82
+ line-height: 1.5;
83
+ }
84
+
85
+ .wclearfy-score-circle .wclearfy-status-overlay-text {
86
+ position: absolute;
87
+ left: 50%;
88
+ top: 50%;
89
+ padding: 0;
90
+ margin: 0;
91
+ width: 200%;
92
+ text-align: center;
93
+ transform: translate(-50%, -50%);
94
+ font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
95
+ font-size: 0.875rem;
96
+ font-weight: normal;
97
+ line-height: 1.3125;
98
+ opacity: 0;
99
+ color: #777;
100
+ }
101
+
102
+ .wclearfy-statistic {
103
+ padding: 10px;
104
+ font-family: Roboto, Helvetica, Arial, sans-serif;
105
+ font-size: 14px;
106
+
107
+ .wclearfy-statistic__line {
108
+ border-bottom: 1px solid #ebebeb;
109
+ display: flex;
110
+ justify-content: space-between;
111
+ padding: 8px;
112
+ }
113
+
114
+ .wclearfy-statistic__results {
115
+ padding-right: 5px;
116
+ font-weight: bold;
117
+ }
118
+ }
119
+
admin/assets/css/setup/step-optimize-images.css ADDED
@@ -0,0 +1,673 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Styles for the Widget to be displayed in the Clearfy plugin
3
+
4
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
5
+ * @copyright Webcraftic 14.06.2019
6
+ */
7
+ .wio-clear {
8
+ clear: both;
9
+ }
10
+ #io_folders_statistic-wbcr_clearfy-tab,
11
+ #io_nextgen_gallery_statistic-wbcr_clearfy-tab {
12
+ display: none !important;
13
+ }
14
+ .wrio-statistic-nav {
15
+ margin: 0;
16
+ background: #efefef;
17
+ }
18
+ .wrio-statistic-nav ul {
19
+ margin: 0;
20
+ }
21
+ .wrio-statistic-nav ul li {
22
+ position: relative;
23
+ display: inline-block;
24
+ margin: 0 0 0 0;
25
+ background: #ffffff;
26
+ box-shadow: 0 -2px 0 #eaeaea;
27
+ }
28
+ .wrio-statistic-nav ul li:hover {
29
+ background: #f7f7f7;
30
+ }
31
+ .wrio-statistic-nav ul li.active {
32
+ background: #f7f7f7;
33
+ border-top: 1px solid #d4d4d4;
34
+ border-left: 1px solid #d4d4d4;
35
+ border-right: 1px solid #d4d4d4;
36
+ border-bottom: 1px solid #f7f7f7;
37
+ margin-bottom: -1px;
38
+ }
39
+ .wrio-statistic-nav ul li.active a {
40
+ color: #222;
41
+ }
42
+ .wrio-statistic-nav ul li.active a .wrio-statistic-tab-percent {
43
+ border: 2px dashed #8bc34a;
44
+ color: #5e8237;
45
+ }
46
+ .wrio-statistic-nav ul li.active .dashicons,
47
+ .wrio-statistic-nav ul li.active .dashicons-before:before {
48
+ color: #ff8b66;
49
+ }
50
+ .wrio-statistic-nav ul li .wrio-statistic-tab {
51
+ display: block;
52
+ padding: 10px 20px 10px 20px;
53
+ text-decoration: none;
54
+ color: #d4d4d4;
55
+ font-size: 22px;
56
+ line-height: 2;
57
+ }
58
+ .wrio-statistic-nav ul li .wrio-statistic-tab:active,
59
+ .wrio-statistic-nav ul li .wrio-statistic-tab:focus {
60
+ background: 0;
61
+ box-shadow: none;
62
+ outline: none;
63
+ }
64
+ .wrio-statistic-nav ul li .wrio-statistic-tab .dashicons,
65
+ .wrio-statistic-nav ul li .wrio-statistic-tab .dashicons-before:before {
66
+ display: inline-block;
67
+ width: 30px;
68
+ height: 30px;
69
+ font-size: 30px;
70
+ line-height: 1.5;
71
+ margin-right: 15px;
72
+ color: #d4d4d4;
73
+ }
74
+ .wrio-statistic-nav ul li .wrio-statistic-tab .wrio-statistic-tab-percent {
75
+ display: inline-block;
76
+ width: 42px;
77
+ height: 42px;
78
+ border-radius: 100px;
79
+ border: 2px dashed #e4e4e4;
80
+ padding: 5px;
81
+ margin-left: 30px;
82
+ font-size: 14px;
83
+ font-weight: 600;
84
+ text-align: center;
85
+ color: #bdbdbd;
86
+ }
87
+ .wrio-statistic-nav ul li .wrio-statistic-tab-premium-label:after {
88
+ display: inline-block;
89
+ position: absolute;
90
+ content: 'PRO';
91
+ background: #ff5722;
92
+ border-radius: 4px;
93
+ color: #fff;
94
+ font-size: 10px;
95
+ line-height: 1;
96
+ font-style: normal;
97
+ padding: 4px 6px;
98
+ margin-left: 4px;
99
+ vertical-align: top;
100
+ top: 10px;
101
+ left: auto;
102
+ right: 10px;
103
+ z-index: 11;
104
+ }
105
+ .wrio-table {
106
+ width: 100%;
107
+ table-layout: fixed;
108
+ box-sizing: border-box;
109
+ border-spacing: 3px;
110
+ background: #fff;
111
+ border-top: 2px dashed #cac9c9;
112
+ }
113
+ .wrio-table th,
114
+ .wrio-table td {
115
+ padding: 16px 10px;
116
+ text-align: center;
117
+ }
118
+ .wrio-table th {
119
+ background: #f3f3f3;
120
+ color: #777777;
121
+ box-shadow: 0 1px 0 #d8d8d8;
122
+ }
123
+ .wrio-table th:nth-child(2n+1) {
124
+ background: #f9f9f9;
125
+ }
126
+ .wrio-table tr.wrio-error {
127
+ background-color: #ffe9e9 !important;
128
+ }
129
+ .wrio-table .wrio-table-spinner {
130
+ background: url("../img/quick-start-loader.gif") center center no-repeat;
131
+ }
132
+ .wrio-table .wrio-table-highlighter {
133
+ display: inline-block;
134
+ padding: 3px 7px;
135
+ background: #f3f3f3;
136
+ }
137
+ .wrio-table .wbcr-rio-server-success {
138
+ color: #8CC152;
139
+ }
140
+ .wrio-table .wbcr-rio-server-error {
141
+ color: #fb5d49;
142
+ }
143
+ .wrio-table .wbcr-rio-server-warning {
144
+ color: #ffb635;
145
+ }
146
+ .wrio-table.wbcr-rio-folders-table td:nth-child(3) {
147
+ text-align: left;
148
+ }
149
+ .wrio-servers {
150
+ padding: 40px 20px;
151
+ }
152
+ .wrio-servers label span {
153
+ display: block;
154
+ font-weight: normal;
155
+ font-size: 12px;
156
+ color: #b7b2b2;
157
+ }
158
+ .wrio-servers #wrio-change-optimization-server {
159
+ position: relative;
160
+ display: inline-block;
161
+ max-width: 400px;
162
+ margin-right: 15px;
163
+ margin-bottom: 0;
164
+ border: 1px solid #d2d0d0;
165
+ background: #efefef;
166
+ }
167
+ .wrio-servers .wrio-servers-info {
168
+ margin: 0 0 0;
169
+ padding: 20px;
170
+ background: #fff;
171
+ }
172
+ .wrio-servers .wrio-server-status-wrap {
173
+ display: inline-block;
174
+ margin-top: 8px;
175
+ }
176
+ .wrio-servers .wrio-server-status-wrap .wrio-server-status {
177
+ background: transparent;
178
+ color: #fff;
179
+ padding: 3px 5px;
180
+ border-radius: 4px;
181
+ }
182
+ .wrio-servers .wrio-server-status-wrap .wrio-server-status.wrio-down {
183
+ background: #ff5722;
184
+ }
185
+ .wrio-servers .wrio-server-status-wrap .wrio-server-status.wrio-stable {
186
+ background: #8bc34a;
187
+ }
188
+ .wrio-servers .wrio-server-status-wrap .wrio-server-status.wrio-server-check-proccess {
189
+ display: inline-block;
190
+ height: 10px;
191
+ width: 30px;
192
+ background: url("../img/quick-start-loader.gif") center no-repeat;
193
+ }
194
+ .wrio-servers .wrio-premium-user-balance-wrap {
195
+ display: inline-block;
196
+ margin-top: 8px;
197
+ margin-left: 10px;
198
+ }
199
+ .wrio-servers .wrio-premium-user-balance-wrap .wrio-premium-user-balance {
200
+ color: #fff;
201
+ padding: 3px 5px;
202
+ border-radius: 4px;
203
+ background: #ffc107;
204
+ }
205
+ .wrio-servers .wrio-premium-user-balance-wrap .wrio-premium-user-balance-check-proccess {
206
+ display: inline-block;
207
+ height: 10px;
208
+ width: 30px;
209
+ background: url("../img/quick-start-loader.gif") center no-repeat;
210
+ }
211
+ .wio-columns {
212
+ overflow: hidden;
213
+ padding: 15px 0;
214
+ counter-reset: cols;
215
+ }
216
+ .wio-columns [class^="col-"] {
217
+ float: left;
218
+ -webkit-box-sizing: border-box;
219
+ -moz-box-sizing: border-box;
220
+ box-sizing: border-box;
221
+ }
222
+ .wio-columns .col-1-3 {
223
+ width: 33.333%;
224
+ padding-left: 28px;
225
+ }
226
+ .wio-columns .col-2-3 {
227
+ width: 66.666%;
228
+ padding-left: 28px;
229
+ }
230
+ .wio-columns .col-1-2 {
231
+ width: 50%;
232
+ padding: 0 20px;
233
+ }
234
+ .wio-columns .col-statistics.col-statistics {
235
+ width: 60%;
236
+ }
237
+ .wio-columns .col-chart.col-chart {
238
+ width: 40%;
239
+ position: relative;
240
+ padding: 20px;
241
+ font-size: 12px;
242
+ text-transform: uppercase;
243
+ background: #f1f1f1b3;
244
+ color: #abacaf;
245
+ font-weight: bold;
246
+ border-radius: 5px;
247
+ margin-top: 10px;
248
+ text-align: left;
249
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
250
+ }
251
+ .wio-col {
252
+ float: left;
253
+ width: 50%;
254
+ box-sizing: border-box;
255
+ -webkit-flex-basis: 50%;
256
+ -ms-flex-preferred-size: 50%;
257
+ flex-basis: 50%;
258
+ }
259
+ .wio-col {
260
+ padding-right: 20px;
261
+ }
262
+ .wio-col + .wio-col {
263
+ padding-right: 0;
264
+ padding-left: 50px;
265
+ }
266
+ .wio-col:target {
267
+ animation: wiohello 1s 3 linear backwards;
268
+ }
269
+ .wio-number-you-optimized {
270
+ margin-bottom: 1.35em;
271
+ overflow: hidden;
272
+ }
273
+ .wio-number-you-optimized #wio-total-optimized-attachments-pct {
274
+ color: #828282;
275
+ }
276
+ .wio-number-you-optimized .wio-number {
277
+ display: table-cell;
278
+ padding-right: 15px;
279
+ font-size: 48px;
280
+ font-weight: bold;
281
+ line-height: 1;
282
+ vertical-align: middle;
283
+ white-space: nowrap;
284
+ color: #828282;
285
+ }
286
+ .wio-number-you-optimized .wio-text {
287
+ display: table-cell;
288
+ vertical-align: middle;
289
+ overflow: hidden;
290
+ font-size: 12px;
291
+ color: #828282;
292
+ }
293
+ .wio-number-you-optimized > p {
294
+ display: table;
295
+ }
296
+ .wio-bars {
297
+ padding-right: 15px;
298
+ }
299
+ .wio-bars p {
300
+ font-size: 12px;
301
+ margin-bottom: 5px;
302
+ }
303
+ .wio-bars + .wio-number-you-optimized {
304
+ border-bottom: 0;
305
+ padding-top: 0.85em;
306
+ }
307
+ .wio-bars + .wio-number-you-optimized p {
308
+ color: #72a53b;
309
+ }
310
+ .wio-bar-negative .wio-progress {
311
+ background: #D2D3D6;
312
+ }
313
+ .wio-bar-negative .wio-barnb {
314
+ color: #9d9fa5;
315
+ }
316
+ .wio-progress {
317
+ height: 8px;
318
+ transition: width 0.3s;
319
+ /*.wio-bar-negative {
320
+ width: 92% !important;
321
+ }*/
322
+ }
323
+ .wio-bar-positive .wio-progress {
324
+ background: #8CC152;
325
+ }
326
+ .wio-bar-positive .wio-barnb {
327
+ color: #72a53b;
328
+ }
329
+ .wio-bar-primary .wio-progress {
330
+ background: #8CC152;
331
+ }
332
+ .wio-bar-primary .wio-barnb {
333
+ color: #72a53b;
334
+ }
335
+ .wio-right-outside-number .wio-barnb {
336
+ display: block;
337
+ margin-right: -5.25em;
338
+ text-align: right;
339
+ font-weight: bold;
340
+ line-height: 0.8;
341
+ }
342
+ /* Doughnut */
343
+ .wio-chart {
344
+ position: relative;
345
+ top: 1px;
346
+ display: inline-block;
347
+ vertical-align: middle;
348
+ }
349
+ .wio-chart-container {
350
+ position: relative;
351
+ display: inline-block;
352
+ margin-right: 5px;
353
+ }
354
+ .wio-chart-container canvas {
355
+ display: block;
356
+ }
357
+ .wio-overview-chart-container {
358
+ float: left;
359
+ margin-right: 20px;
360
+ }
361
+ .wio-chart-percent {
362
+ position: absolute;
363
+ left: 0;
364
+ right: 0;
365
+ top: 50%;
366
+ margin-top: -0.5em;
367
+ line-height: 0.8;
368
+ text-align: center;
369
+ font-size: 54px;
370
+ font-weight: bold;
371
+ color: #afafaf;
372
+ }
373
+ .wio-chart-percent span {
374
+ font-size: 20px;
375
+ vertical-align: super;
376
+ }
377
+ #wio-overview-chart-legend {
378
+ overflow: hidden;
379
+ }
380
+ .wio-doughnut-legend li {
381
+ display: inline-block;
382
+ position: relative;
383
+ margin-bottom: 15px;
384
+ border-radius: 5px;
385
+ padding: 3px 8px 2px 31px;
386
+ font-size: 9px;
387
+ cursor: default;
388
+ -webkit-transition: background-color 200ms ease-in-out;
389
+ -moz-transition: background-color 200ms ease-in-out;
390
+ -o-transition: background-color 200ms ease-in-out;
391
+ transition: background-color 200ms ease-in-out;
392
+ }
393
+ .wio-doughnut-legend li span {
394
+ display: block;
395
+ position: absolute;
396
+ left: 0;
397
+ top: 0;
398
+ width: 25px;
399
+ height: 25px;
400
+ border-radius: 50%;
401
+ }
402
+ .wio-optimize-button {
403
+ min-width: 180px;
404
+ padding: 12px 30px;
405
+ background: #c9deb2;
406
+ color: #586549;
407
+ border: 0;
408
+ box-shadow: none;
409
+ font-size: 14px;
410
+ text-transform: uppercase !important;
411
+ font-weight: bold;
412
+ border-radius: 4px;
413
+ outline: none;
414
+ }
415
+ .wio-optimize-button:active {
416
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
417
+ }
418
+ .wio-optimize-button:disabled {
419
+ background: #e2edd6;
420
+ color: #a5b295;
421
+ }
422
+ .wio-optimize-button.wio-running {
423
+ color: #a57b3c;
424
+ background: #fdd599 url("../img/Spinner-1s-33px.gif") 10px center no-repeat;
425
+ padding-left: 50px;
426
+ }
427
+ .wio-global-optim-phrase {
428
+ width: 180px;
429
+ padding-top: 20px;
430
+ font-size: 14px;
431
+ text-align: center;
432
+ }
433
+ .wio-total-percent {
434
+ color: #587f2e;
435
+ }
436
+ #wio-start-msg-top,
437
+ #wio-start-msg-right,
438
+ #wio-start-msg-complete {
439
+ display: none;
440
+ }
441
+ .wio-text-left {
442
+ text-align: left;
443
+ }
444
+ span.wio-num {
445
+ display: inline !important;
446
+ position: inherit !important;
447
+ }
448
+ .wio-image-optimize-board {
449
+ padding-bottom: 0 !important;
450
+ }
451
+ .wio-page-statistic {
452
+ padding-left: 40px;
453
+ }
454
+ .wio-page-statistic .wio-chart-percent {
455
+ margin-top: -1.1em;
456
+ }
457
+ .wrio-optimization-progress {
458
+ background: none;
459
+ padding: 0;
460
+ /*button {
461
+ padding: 5px 10px;
462
+ border: 0;
463
+ font-size: 11px;
464
+ text-transform: uppercase !important;
465
+ font-weight: bold;
466
+ border-radius: 4px;
467
+ outline: none;
468
+ background: @greyButtonBg;
469
+ color: @greyButtonColor;
470
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
471
+
472
+ &:active {
473
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
474
+ }
475
+
476
+ &.wbcr-rio-loading {
477
+ width: 56px;
478
+ font-size: 0;
479
+ background: @greyButtonBg url("../img/quick-start-loader.gif") center no-repeat;
480
+ }
481
+
482
+ &.wbcr-rio-selected {
483
+ background: #f3efe2;
484
+ color: #d8d8d8;
485
+
486
+ &:active {
487
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
488
+ }
489
+ }
490
+ }*/
491
+ }
492
+ .wrio-optimization-progress h4 {
493
+ font-size: 15px;
494
+ font-weight: 700;
495
+ }
496
+ .wrio-optimization-progress .wbcr-rio-warning-message {
497
+ padding: 20px;
498
+ background: #efefef;
499
+ font-size: 15px;
500
+ color: #b7b7b7;
501
+ font-style: italic;
502
+ }
503
+ .wio-widget {
504
+ padding: 0 !important;
505
+ }
506
+ .wio-widget .wio-chart-percent {
507
+ font-size: 44px;
508
+ line-height: 1;
509
+ }
510
+ .wio-widget .wio-bars {
511
+ width: 60%;
512
+ margin-left: 155px;
513
+ }
514
+ .wio-widget .col-chart.col-chart {
515
+ width: 100%;
516
+ }
517
+ .wio-widget .col-controls {
518
+ width: 45%;
519
+ padding-left: 5px;
520
+ padding-top: 110px;
521
+ }
522
+ .wio-widget .wio-doughnut-legend {
523
+ /*padding-top:30px;*/
524
+ text-align: left;
525
+ }
526
+ .wio-widget .wio-widget-bottom {
527
+ display: table;
528
+ padding-top: 20px !important;
529
+ width: 100%;
530
+ text-align: right;
531
+ }
532
+ .wio-widget .wio-widget-bottom li {
533
+ display: table-cell;
534
+ }
535
+ .wio-widget .wio-widget-bottom li:first-child {
536
+ text-align: left;
537
+ }
538
+ .factory-checkbox.wrio-checkbox-premium-label:after {
539
+ display: inline-block;
540
+ position: relative;
541
+ content: 'PRO';
542
+ background: #ff5722;
543
+ border-radius: 4px;
544
+ color: #fff;
545
+ font-size: 10px;
546
+ line-height: 1;
547
+ font-style: normal;
548
+ padding: 4px 6px;
549
+ margin-left: 4px;
550
+ vertical-align: top;
551
+ top: -8px;
552
+ left: -10px;
553
+ right: auto;
554
+ z-index: 11;
555
+ }
556
+ .factory-checkbox-disabled input,
557
+ .factory-checkbox-disabled button {
558
+ pointer-events: none;
559
+ cursor: not-allowed;
560
+ opacity: 0.65;
561
+ filter: alpha(opacity=65);
562
+ -webkit-box-shadow: none;
563
+ box-shadow: none;
564
+ }
565
+ #wrio-webp-options h3,
566
+ #wrio-error-log-options h3 {
567
+ font-size: 14px;
568
+ margin: 0 0 10px 0;
569
+ font-weight: 600;
570
+ color: #565656;
571
+ }
572
+ #wrio-webp-options .wrio-webp-options-info,
573
+ #wrio-error-log-options .wrio-webp-options-info {
574
+ color: #8a8787;
575
+ font-size: 12px;
576
+ }
577
+ #wrio-webp-options ul,
578
+ #wrio-error-log-options ul {
579
+ padding-left: 0;
580
+ }
581
+ #wrio-webp-options ul li:after,
582
+ #wrio-error-log-options ul li:after {
583
+ content: '';
584
+ display: block;
585
+ clear: both;
586
+ }
587
+ #wrio-webp-options ul li label,
588
+ #wrio-error-log-options ul li label {
589
+ font-weight: 600;
590
+ }
591
+ #wrio-webp-options ul li .wrio-webp-options-radio,
592
+ #wrio-error-log-options ul li .wrio-webp-options-radio,
593
+ #wrio-webp-options ul li .wrio-error-log-options-checkbox,
594
+ #wrio-error-log-options ul li .wrio-error-log-options-checkbox {
595
+ display: block;
596
+ float: left;
597
+ margin-top: 2px;
598
+ margin-right: 8px;
599
+ }
600
+ #wrio-webp-options ul li .wrio-webp-options-radio:focus,
601
+ #wrio-error-log-options ul li .wrio-webp-options-radio:focus,
602
+ #wrio-webp-options ul li .wrio-error-log-options-checkbox:focus,
603
+ #wrio-error-log-options ul li .wrio-error-log-options-checkbox:focus {
604
+ outline: none;
605
+ box-shadow: none;
606
+ }
607
+ #wrio-webp-options ul li .wrio-webp-options-info,
608
+ #wrio-error-log-options ul li .wrio-webp-options-info,
609
+ #wrio-webp-options ul li .wrio-error-log-options-info,
610
+ #wrio-error-log-options ul li .wrio-error-log-options-info {
611
+ padding-left: 25px;
612
+ }
613
+ @media (max-width: 830px) {
614
+ .wio [class^="col-"] {
615
+ float: none;
616
+ margin-bottom: 1.5em;
617
+ }
618
+ .wio .col-1-3,
619
+ .wio .col-1-2 {
620
+ width: auto;
621
+ padding: 0 28px;
622
+ clear: both;
623
+ padding-top: 1em;
624
+ }
625
+ }
626
+ @keyframes wiohello {
627
+ 0%,
628
+ 100% {
629
+ background: #FFF;
630
+ }
631
+ 50% {
632
+ background: #F4F7F9;
633
+ }
634
+ }
635
+ @media (max-width: 1520px) and (min-width: 1381px), (max-width: 1086px) {
636
+ .wio-columns .col-statistics.col-statistics,
637
+ .wio-columns .col-chart.col-chart {
638
+ width: 50%;
639
+ }
640
+ }
641
+ @media (max-width: 808px) {
642
+ .wio-columns .col-statistics.col-statistics,
643
+ .wio-columns .col-chart.col-chart {
644
+ width: auto;
645
+ float: none;
646
+ padding: 0;
647
+ }
648
+ .wio-columns .col-chart.col-chart {
649
+ margin-top: 3em;
650
+ }
651
+ }
652
+ /*@media (max-width: 1380px) and (min-width: 1246px), (max-width: 380px) {
653
+ .wio-overview-chart-container {
654
+ float: none;
655
+ margin-right: 0;
656
+ }
657
+ }
658
+
659
+ @media (max-width: 1380px) and (min-width: 1246px), (max-width: 380px) {
660
+ .wio-overview-chart-container {
661
+ float: none;
662
+ margin-right: 0;
663
+ }
664
+
665
+ .wio-doughnut-legend {
666
+ margin-top: 18px;
667
+ }
668
+
669
+ .wio-global-optim-phrase {
670
+ padding-top: 0;
671
+ width: auto;
672
+ }
673
+ }*/
admin/assets/css/setup/step-optimize-images.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["step-optimize-images.less"],"names":[],"mappings":";;;;;;AA2CA;EACE,WAAA;;AAMF;AAAwC;EACtC,wBAAA;;AAKF;EACE,SAAA;EAEA,mBAAA;;AAHF,mBAKE;EACE,SAAA;;AANJ,mBAKE,GAGE;EACE,kBAAA;EACA,qBAAA;EAEA,eAAA;EACA,mBAAA;EACA,4BAAA;;AAEA,mBAXJ,GAGE,GAQG;EACC,mBAAA;;AAGF,mBAfJ,GAGE,GAYG;EAEC,mBAAA;EACA,6BAAA;EACA,8BAAA;EACA,+BAAA;EACA,gCAAA;EACA,mBAAA;;AAPF,mBAfJ,GAGE,GAYG,OASC;EACE,WAAA;;AAVJ,mBAfJ,GAGE,GAYG,OASC,EAGE;EACE,0BAAA;EACA,cAAA;;AAdN,mBAfJ,GAGE,GAYG,OAkBC;AAlBF,mBAfJ,GAGE,GAYG,OAkBa,kBAAiB;EAC3B,cAAA;;AAvCV,mBAKE,GAGE,GAmCE;EACE,cAAA;EACA,4BAAA;EACA,qBAAA;EACA,cAAA;EACA,eAAA;EACA,cAAA;;AAEA,mBA9CN,GAGE,GAmCE,oBAQG;AAAS,mBA9ChB,GAGE,GAmCE,oBAQa;EACT,aAAA;EACA,gBAAA;EACA,aAAA;;AAtDV,mBAKE,GAGE,GAmCE,oBAcE;AAzDR,mBAKE,GAGE,GAmCE,oBAcc,kBAAiB;EAC3B,qBAAA;EACA,WAAA;EACA,YAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,cAAA;;AAhEV,mBAKE,GAGE,GAmCE,oBAyBE;EACE,qBAAA;EACA,WAAA;EACA,YAAA;EACA,oBAAA;EACA,0BAAA;EACA,YAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,cAAA;;AA/EV,mBAKE,GAGE,GA2EE,kCAAiC;EAlHrC,qBAAA;EACA,kBAAA;EACA,SAAS,KAAT;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,eAAA;EACA,cAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;EACA,WAAA;;AA2GF;EACE,WAAA;EACA,mBAAA;EACA,sBAAA;EACA,mBAAA;EACA,gBAAA;EACA,8BAAA;;AANF,WAQE;AARF,WAQM;EACF,kBAAA;EACA,kBAAA;;AAVJ,WAaE;EACE,mBAAA;EACA,cAAA;EACA,2BAAA;;AAEA,WALF,GAKG,UAAU;EACT,mBAAA;;AAnBN,WAuBE,GAAE;EACA,yBAAA;;AAxBJ,WA2BE;EACE,gBAAgB,wDAAhB;;AA5BJ,WA+BE;EACE,qBAAA;EACA,gBAAA;EACA,mBAAA;;AAlCJ,WAqCE;EACE,cAAA;;AAtCJ,WAyCE;EACE,cAAA;;AA1CJ,WA6CE;EACE,cAAA;;AAGF,WAAC,uBACC,GAAE,UAAU;EACV,gBAAA;;AAKN;EACE,kBAAA;;AADF,aAGE,MACE;EACE,cAAA;EACA,mBAAA;EACA,eAAA;EACA,cAAA;;AARN,aAYE;EACE,kBAAA;EACA,qBAAA;EACA,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,yBAAA;EACA,mBAAA;;AAnBJ,aAsBE;EACE,aAAA;EACA,aAAA;EACA,gBAAA;;AAzBJ,aA4BE;EACE,qBAAA;EACA,eAAA;;AA9BJ,aA4BE,yBAIE;EACE,uBAAA;EACA,WAAA;EACA,gBAAA;EACA,kBAAA;;AAEA,aAVJ,yBAIE,oBAMG;EACC,mBAAA;;AAGF,aAdJ,yBAIE,oBAUG;EACC,mBAAA;;AAGF,aAlBJ,yBAIE,oBAcG;EACC,qBAAA;EACA,YAAA;EACA,WAAA;EACA,gBAAgB,iDAAhB;;AAlDR,aAwDE;EACE,qBAAA;EACA,eAAA;EACA,iBAAA;;AA3DJ,aAwDE,gCAKE;EACE,WAAA;EACA,gBAAA;EACA,kBAAA;EACA,mBAAA;;AAjEN,aAwDE,gCAYE;EACE,qBAAA;EACA,YAAA;EACA,WAAA;EACA,gBAAgB,iDAAhB;;AAKN;EACE,gBAAA;EACA,eAAA;EACA,mBAAA;;AAHF,YAKE;EACE,WAAA;EACA,8BAAA;EACA,2BAAA;EACA,sBAAA;;AATJ,YAYE;EACE,cAAA;EACA,kBAAA;;AAdJ,YAiBE;EACE,cAAA;EACA,kBAAA;;AAnBJ,YAsBE;EACE,UAAA;EACA,eAAA;;AAxBJ,YA2BE,gBAAe;EACb,UAAA;;AA5BJ,YA+BE,WAAU;EACR,UAAA;EACA,kBAAA;EACA,aAAA;EACA,eAAA;EACA,yBAAA;EACA,qBAAA;EACA,cAAA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,wCAAA;;AAIJ;EACE,WAAA;EACA,UAAA;EACA,sBAAA;EACA,uBAAA;EACA,4BAAA;EACA,eAAA;;AAGF;EACE,mBAAA;;AAGF,QAAS;EACP,gBAAA;EACA,kBAAA;;AAGF,QAAQ;EACN,yCAAA;;AAGF;EACE,qBAAA;EACA,gBAAA;;AAFF,yBAIE;EACE,cAAA;;AALJ,yBAQE;EACE,mBAAA;EACA,mBAAA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;EACA,sBAAA;EACA,mBAAA;EACA,cAAA;;AAhBJ,yBAmBE;EACE,mBAAA;EACA,sBAAA;EACA,gBAAA;EACA,eAAA;EACA,cAAA;;AAGF,yBAAE;EACA,cAAA;;AAIJ;EACE,mBAAA;;AAGF,SAAU;EACR,eAAA;EACA,kBAAA;;AAGF,SAAU;EACR,gBAAA;EACA,mBAAA;;AAGF,SAAU,4BAA4B;EACpC,cAAA;;AAGF,iBACE;EACE,mBAAA;;AAFJ,iBAKE;EACE,cAAA;;AAIJ;EACE,WAAA;EACA,sBAAA;;;;;AAOF,iBACE;EACE,mBAAA;;AAFJ,iBAKE;EACE,cAAA;;AAIJ,gBACE;EACE,mBAAA;;AAFJ,gBAKE;EACE,cAAA;;AAIJ,yBAA0B;EACxB,cAAA;EACA,qBAAA;EACA,iBAAA;EACA,iBAAA;EACA,gBAAA;;;AAKF;EACE,kBAAA;EACA,QAAA;EACA,qBAAA;EACA,sBAAA;;AAGF;EACE,kBAAA;EACA,qBAAA;EACA,iBAAA;;AAGF,oBAAqB;EACnB,cAAA;;AAGF;EACE,WAAA;EACA,kBAAA;;AAGF;EACE,kBAAA;EACA,OAAA;EACA,QAAA;EACA,QAAA;EACA,kBAAA;EACA,gBAAA;EACA,kBAAA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;;AAGF,kBAAmB;EACjB,eAAA;EACA,qBAAA;;AAGF;EACE,gBAAA;;AAGF,oBAAqB;EACnB,qBAAA;EACA,kBAAA;EACA,mBAAA;EACA,kBAAA;EACA,yBAAA;EACA,cAAA;EACA,eAAA;EACA,sDAAA;EACA,mDAAA;EACA,iDAAA;EACA,8CAAA;;AAGF,oBAAqB,GAAG;EACtB,cAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;EACA,WAAA;EACA,YAAA;EACA,kBAAA;;AAGF;EACE,gBAAA;EACA,kBAAA;EACA,mBAAA;EACA,cAAA;EACA,SAAA;EACA,gBAAA;EACA,eAAA;EACA,oCAAA;EACA,iBAAA;EACA,kBAAA;EACA,aAAA;;AAEA,oBAAC;EACC,8CAAA;;AAGF,oBAAC;EACC,mBAAA;EACA,cAAA;;AAGF,oBAAC;EACC,cAAA;EACA,wBAAgC,mDAAhC;EACA,kBAAA;;AAIJ;EACE,YAAA;EACA,iBAAA;EACA,eAAA;EACA,kBAAA;;AAGF;EACE,cAAA;;AAGF;AAAoB;AAAsB;EACxC,aAAA;;AAGF;EACE,gBAAA;;AAGF,IAAI;EACF,0BAAA;EACA,4BAAA;;AAMF;EACE,4BAAA;;AAGF;EACE,kBAAA;;AADF,mBAGE;EACE,kBAAA;;AAIJ;EAEE,gBAAA;EACA,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHF,2BAKE;EACE,eAAA;EACA,gBAAA;;AAPJ,2BA0CE;EACE,aAAA;EACA,mBAAA;EACA,eAAA;EACA,cAAA;EACA,kBAAA;;AAIJ;EACE,qBAAA;;AADF,WAGE;EACE,eAAA;EACA,cAAA;;AALJ,WAQE;EACE,UAAA;EACA,kBAAA;;AAVJ,WAaE,WAAU;EACR,WAAA;;AAdJ,WAiBE;EACE,UAAA;EACA,iBAAA;EACA,kBAAA;;AApBJ,WAuBE;;EAEE,gBAAA;;AAzBJ,WA4BE;EACE,cAAA;EACA,4BAAA;EACA,WAAA;EACA,iBAAA;;AAhCJ,WAmCE,mBAAmB;EACjB,mBAAA;;AApCJ,WAuCE,mBAAmB,GAAE;EACnB,gBAAA;;AAOF,iBAAC,4BAA4B;EAjpB7B,qBAAA;EACA,kBAAA;EACA,SAAS,KAAT;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,eAAA;EACA,cAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;EACA,SAAA;EACA,WAAA;EACA,WAAA;EACA,WAAA;;AAuoBF,0BACE;AADF,0BACS;EACL,oBAAA;EACA,mBAAA;EACA,aAAA;EACA,yBAAA;EACA,wBAAA;EACA,gBAAA;;AAIJ,kBACE;AADkB,uBAClB;EACE,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,cAAA;;AALJ,kBAQE;AARkB,uBAQlB;EACE,cAAA;EACA,eAAA;;AAVJ,kBAaE;AAbkB,uBAalB;EACE,eAAA;;AAGE,kBAJJ,GAGE,GACG;AAAD,uBAJJ,GAGE,GACG;EACC,SAAS,EAAT;EACA,cAAA;EACA,WAAA;;AApBR,kBAaE,GAGE,GAOE;AAvBc,uBAalB,GAGE,GAOE;EACE,gBAAA;;AAxBR,kBAaE,GAGE,GAWE;AA3Bc,uBAalB,GAGE,GAWE;AA3BN,kBAaE,GAGE,GAW4B;AA3BZ,uBAalB,GAGE,GAW4B;EACxB,cAAA;EACA,WAAA;EACA,eAAA;EACA,iBAAA;;AAEA,kBApBN,GAGE,GAWE,yBAMG;AAAD,uBApBN,GAGE,GAWE,yBAMG;AAAD,kBApBN,GAGE,GAW4B,iCAMvB;AAAD,uBApBN,GAGE,GAW4B,iCAMvB;EACC,aAAA;EACA,gBAAA;;AAnCV,kBAaE,GAGE,GAuBE;AAvCc,uBAalB,GAGE,GAuBE;AAvCN,kBAaE,GAGE,GAuB2B;AAvCX,uBAalB,GAGE,GAuB2B;EACvB,kBAAA;;AAWR,QAA0B;EACxB,IAAK;IACH,WAAA;IACA,oBAAA;;EAGF,IAAK;EACL,IAAK;IACH,WAAA;IACA,eAAA;IACA,WAAA;IACA,gBAAA;;;AAIJ;EACE;EAAI;IACF,gBAAA;;EAEF;IACE,mBAAA;;;AAIJ,QAA2B,wBAAuB,qBAAsB;EACtE,YACE,gBAAe;EADjB,YACkC,WAAU;IACxC,UAAA;;;AAMN,QAA0B;EACxB,YACE,gBAAe;EADjB,YACkC,WAAU;IACxC,WAAA;IACA,WAAA;IACA,UAAA;;EAJJ,YAOE,WAAU;IACR,eAAA","file":"step-optimize-images.css"}
admin/assets/css/setup/step-optimize-images.less ADDED
@@ -0,0 +1,819 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Styles for the Widget to be displayed in the Clearfy plugin
3
+
4
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
5
+ * @copyright Webcraftic 14.06.2019
6
+ */
7
+
8
+ @positiveColor: #8CC152;
9
+ @negativeColor: #D2D3D6;
10
+ @neutralColor: #828282;
11
+
12
+ @errorColor: #fb5d49;
13
+ @waringColor: #ffb635;
14
+
15
+ @greyButtonBg: #f3f3f3;
16
+ @greyButtonColor: #656565;
17
+
18
+ @greenButtonBg: #c9deb2;
19
+ @greenButtonColor: #586549;
20
+
21
+ @orangeButtonBg: #fdd599;
22
+ @orangeButtonColor: #a57b3c;
23
+
24
+
25
+ .premium-label(@position: relative, @positionTop:-8px, @positionLeft:-10px, @positionRight:auto) {
26
+ display: inline-block;
27
+ position: @position;
28
+ content: 'PRO';
29
+ background: #ff5722;
30
+ border-radius: 4px;
31
+ color: #fff;
32
+ font-size: 10px;
33
+ line-height: 1;
34
+ font-style: normal;
35
+ padding: 4px 6px;
36
+ margin-left: 4px;
37
+ vertical-align: top;
38
+ top: @positionTop;
39
+ left: @positionLeft;
40
+ right: @positionRight;
41
+ z-index: 11;
42
+ }
43
+
44
+ .wio-clear {
45
+ clear: both;
46
+ }
47
+
48
+ // Fix for Clearfy
49
+ // This code hides tabs custom folders and nextgen gallery
50
+ // -----------------------------------------------
51
+ #io_folders_statistic-wbcr_clearfy-tab, #io_nextgen_gallery_statistic-wbcr_clearfy-tab {
52
+ display: none !important;
53
+ }
54
+
55
+ // Styling tabs on statistics pages
56
+ // -----------------------------------------------
57
+ .wrio-statistic-nav {
58
+ margin: 0;
59
+ //box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
60
+ background: #efefef;
61
+
62
+ ul {
63
+ margin: 0;
64
+
65
+ li {
66
+ position: relative;
67
+ display: inline-block;
68
+ //width: 300px;
69
+ margin: 0 0 0 0;
70
+ background: #ffffff;
71
+ box-shadow: 0 -2px 0 #eaeaea;
72
+
73
+ &:hover {
74
+ background: #f7f7f7;
75
+ }
76
+
77
+ &.active {
78
+ //box-shadow: 0 -2px 0 #c9deb2;
79
+ background: #f7f7f7;
80
+ border-top: 1px solid #d4d4d4;
81
+ border-left: 1px solid #d4d4d4;
82
+ border-right: 1px solid #d4d4d4;
83
+ border-bottom: 1px solid #f7f7f7;
84
+ margin-bottom: -1px;
85
+
86
+ a {
87
+ color: #222;
88
+
89
+ .wrio-statistic-tab-percent {
90
+ border: 2px dashed #8bc34a;
91
+ color: #5e8237;
92
+ }
93
+ }
94
+
95
+ .dashicons, .dashicons-before:before {
96
+ color: #ff8b66;
97
+ }
98
+ }
99
+
100
+ .wrio-statistic-tab {
101
+ display: block;
102
+ padding: 10px 20px 10px 20px;
103
+ text-decoration: none;
104
+ color: #d4d4d4;
105
+ font-size: 22px;
106
+ line-height: 2;
107
+
108
+ &:active, &:focus {
109
+ background: 0;
110
+ box-shadow: none;
111
+ outline: none;
112
+ }
113
+
114
+ .dashicons, .dashicons-before:before {
115
+ display: inline-block;
116
+ width: 30px;
117
+ height: 30px;
118
+ font-size: 30px;
119
+ line-height: 1.5;
120
+ margin-right: 15px;
121
+ color: #d4d4d4;
122
+ }
123
+
124
+
125
+ .wrio-statistic-tab-percent {
126
+ display: inline-block;
127
+ width: 42px;
128
+ height: 42px;
129
+ border-radius: 100px;
130
+ border: 2px dashed #e4e4e4;
131
+ padding: 5px;
132
+ margin-left: 30px;
133
+ font-size: 14px;
134
+ font-weight: 600;
135
+ text-align: center;
136
+ color: #bdbdbd;
137
+ }
138
+ }
139
+
140
+ .wrio-statistic-tab-premium-label:after {
141
+ .premium-label(absolute, 10px, auto, 10px);
142
+ }
143
+ }
144
+ }
145
+ }
146
+
147
+ // Table style. The table is used for optimization log
148
+ .wrio-table {
149
+ width: 100%;
150
+ table-layout: fixed;
151
+ box-sizing: border-box;
152
+ border-spacing: 3px;
153
+ background: #fff;
154
+ border-top: 2px dashed #cac9c9;
155
+
156
+ th, td {
157
+ padding: 16px 10px;
158
+ text-align: center;
159
+ }
160
+
161
+ th {
162
+ background: #f3f3f3;
163
+ color: #777777;
164
+ box-shadow: 0 1px 0 rgb(216, 216, 216);
165
+
166
+ &:nth-child(2n+1) {
167
+ background: #f9f9f9
168
+ }
169
+ }
170
+
171
+ tr.wrio-error {
172
+ background-color: #ffe9e9 !important;
173
+ }
174
+
175
+ .wrio-table-spinner {
176
+ background: url("../img/quick-start-loader.gif") center center no-repeat;
177
+ }
178
+
179
+ .wrio-table-highlighter {
180
+ display: inline-block;
181
+ padding: 3px 7px;
182
+ background: @greyButtonBg;
183
+ }
184
+
185
+ .wbcr-rio-server-success {
186
+ color: @positiveColor;
187
+ }
188
+
189
+ .wbcr-rio-server-error {
190
+ color: @errorColor;
191
+ }
192
+
193
+ .wbcr-rio-server-warning {
194
+ color: @waringColor;
195
+ }
196
+
197
+ &.wbcr-rio-folders-table {
198
+ td:nth-child(3) {
199
+ text-align: left;
200
+ }
201
+ }
202
+ }
203
+
204
+ .wrio-servers {
205
+ padding: 40px 20px;
206
+
207
+ label {
208
+ span {
209
+ display: block;
210
+ font-weight: normal;
211
+ font-size: 12px;
212
+ color: #b7b2b2;
213
+ }
214
+ }
215
+
216
+ #wrio-change-optimization-server {
217
+ position: relative;
218
+ display: inline-block;
219
+ max-width: 400px;
220
+ margin-right: 15px;
221
+ margin-bottom: 0;
222
+ border: 1px solid #d2d0d0;
223
+ background: #efefef;
224
+ }
225
+
226
+ .wrio-servers-info {
227
+ margin: 0 0 0;
228
+ padding: 20px;
229
+ background: #fff;
230
+ }
231
+
232
+ .wrio-server-status-wrap {
233
+ display: inline-block;
234
+ margin-top: 8px;
235
+
236
+ .wrio-server-status {
237
+ background: transparent;
238
+ color: #fff;
239
+ padding: 3px 5px;
240
+ border-radius: 4px;
241
+
242
+ &.wrio-down {
243
+ background: #ff5722;
244
+ }
245
+
246
+ &.wrio-stable {
247
+ background: #8bc34a;
248
+ }
249
+
250
+ &.wrio-server-check-proccess {
251
+ display: inline-block;
252
+ height: 10px;
253
+ width: 30px;
254
+ background: url("../img/quick-start-loader.gif") center no-repeat;
255
+ }
256
+ }
257
+ }
258
+
259
+
260
+ .wrio-premium-user-balance-wrap {
261
+ display: inline-block;
262
+ margin-top: 8px;
263
+ margin-left: 10px;
264
+
265
+ .wrio-premium-user-balance {
266
+ color: #fff;
267
+ padding: 3px 5px;
268
+ border-radius: 4px;
269
+ background: #ffc107;
270
+ }
271
+
272
+ .wrio-premium-user-balance-check-proccess {
273
+ display: inline-block;
274
+ height: 10px;
275
+ width: 30px;
276
+ background: url("../img/quick-start-loader.gif") center no-repeat;
277
+ }
278
+ }
279
+ }
280
+
281
+ .wio-columns {
282
+ overflow: hidden;
283
+ padding: 15px 0;
284
+ counter-reset: cols;
285
+
286
+ [class^="col-"] {
287
+ float: left;
288
+ -webkit-box-sizing: border-box;
289
+ -moz-box-sizing: border-box;
290
+ box-sizing: border-box;
291
+ }
292
+
293
+ .col-1-3 {
294
+ width: 33.333%;
295
+ padding-left: 28px;
296
+ }
297
+
298
+ .col-2-3 {
299
+ width: 66.666%;
300
+ padding-left: 28px
301
+ }
302
+
303
+ .col-1-2 {
304
+ width: 50%;
305
+ padding: 0 20px;
306
+ }
307
+
308
+ .col-statistics.col-statistics {
309
+ width: 60%;
310
+ }
311
+
312
+ .col-chart.col-chart {
313
+ width: 40%;
314
+ position: relative;
315
+ padding: 20px;
316
+ font-size: 12px;
317
+ text-transform: uppercase;
318
+ background: #f1f1f1b3;
319
+ color: #abacaf;
320
+ font-weight: bold;
321
+ border-radius: 5px;
322
+ margin-top: 10px;
323
+ text-align: left;
324
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
325
+ }
326
+ }
327
+
328
+ .wio-col {
329
+ float: left;
330
+ width: 50%;
331
+ box-sizing: border-box;
332
+ -webkit-flex-basis: 50%;
333
+ -ms-flex-preferred-size: 50%;
334
+ flex-basis: 50%;
335
+ }
336
+
337
+ .wio-col {
338
+ padding-right: 20px;
339
+ }
340
+
341
+ .wio-col + .wio-col {
342
+ padding-right: 0;
343
+ padding-left: 50px;
344
+ }
345
+
346
+ .wio-col:target {
347
+ animation: wiohello 1s 3 linear backwards;
348
+ }
349
+
350
+ .wio-number-you-optimized {
351
+ margin-bottom: 1.35em;
352
+ overflow: hidden;
353
+
354
+ #wio-total-optimized-attachments-pct {
355
+ color: @neutralColor;
356
+ }
357
+
358
+ .wio-number {
359
+ display: table-cell;
360
+ padding-right: 15px;
361
+ font-size: 48px;
362
+ font-weight: bold;
363
+ line-height: 1;
364
+ vertical-align: middle;
365
+ white-space: nowrap;
366
+ color: @neutralColor;
367
+ }
368
+
369
+ .wio-text {
370
+ display: table-cell;
371
+ vertical-align: middle;
372
+ overflow: hidden;
373
+ font-size: 12px;
374
+ color: @neutralColor;
375
+ }
376
+
377
+ & > p {
378
+ display: table;
379
+ }
380
+ }
381
+
382
+ .wio-bars {
383
+ padding-right: 15px;
384
+ }
385
+
386
+ .wio-bars p {
387
+ font-size: 12px;
388
+ margin-bottom: 5px;
389
+ }
390
+
391
+ .wio-bars + .wio-number-you-optimized {
392
+ border-bottom: 0;
393
+ padding-top: 0.85em;
394
+ }
395
+
396
+ .wio-bars + .wio-number-you-optimized p {
397
+ color: darken(@positiveColor, 10);
398
+ }
399
+
400
+ .wio-bar-negative {
401
+ .wio-progress {
402
+ background: @negativeColor;
403
+ }
404
+
405
+ .wio-barnb {
406
+ color: darken(@negativeColor, 20);
407
+ }
408
+ }
409
+
410
+ .wio-progress {
411
+ height: 8px;
412
+ transition: width .3s;
413
+
414
+ /*.wio-bar-negative {
415
+ width: 92% !important;
416
+ }*/
417
+ }
418
+
419
+ .wio-bar-positive {
420
+ .wio-progress {
421
+ background: @positiveColor;
422
+ }
423
+
424
+ .wio-barnb {
425
+ color: darken(@positiveColor, 10);
426
+ }
427
+ }
428
+
429
+ .wio-bar-primary {
430
+ .wio-progress {
431
+ background: @positiveColor;
432
+ }
433
+
434
+ .wio-barnb {
435
+ color: darken(@positiveColor, 10);
436
+ }
437
+ }
438
+
439
+ .wio-right-outside-number .wio-barnb {
440
+ display: block;
441
+ margin-right: -5.25em;
442
+ text-align: right;
443
+ font-weight: bold;
444
+ line-height: .8;
445
+ }
446
+
447
+ /* Doughnut */
448
+
449
+ .wio-chart {
450
+ position: relative;
451
+ top: 1px;
452
+ display: inline-block;
453
+ vertical-align: middle;
454
+ }
455
+
456
+ .wio-chart-container {
457
+ position: relative;
458
+ display: inline-block;
459
+ margin-right: 5px;
460
+ }
461
+
462
+ .wio-chart-container canvas {
463
+ display: block;
464
+ }
465
+
466
+ .wio-overview-chart-container {
467
+ float: left;
468
+ margin-right: 20px;
469
+ }
470
+
471
+ .wio-chart-percent {
472
+ position: absolute;
473
+ left: 0;
474
+ right: 0;
475
+ top: 50%;
476
+ margin-top: -.5em;
477
+ line-height: 0.8;
478
+ text-align: center;
479
+ font-size: 54px;
480
+ font-weight: bold;
481
+ color: #afafaf;
482
+ }
483
+
484
+ .wio-chart-percent span {
485
+ font-size: 20px;
486
+ vertical-align: super;
487
+ }
488
+
489
+ #wio-overview-chart-legend {
490
+ overflow: hidden;
491
+ }
492
+
493
+ .wio-doughnut-legend li {
494
+ display: inline-block;
495
+ position: relative;
496
+ margin-bottom: 15px;
497
+ border-radius: 5px;
498
+ padding: 3px 8px 2px 31px;
499
+ font-size: 9px;
500
+ cursor: default;
501
+ -webkit-transition: background-color 200ms ease-in-out;
502
+ -moz-transition: background-color 200ms ease-in-out;
503
+ -o-transition: background-color 200ms ease-in-out;
504
+ transition: background-color 200ms ease-in-out;
505
+ }
506
+
507
+ .wio-doughnut-legend li span {
508
+ display: block;
509
+ position: absolute;
510
+ left: 0;
511
+ top: 0;
512
+ width: 25px;
513
+ height: 25px;
514
+ border-radius: 50%;
515
+ }
516
+
517
+ .wio-optimize-button {
518
+ min-width: 180px;
519
+ padding: 12px 30px;
520
+ background: @greenButtonBg;
521
+ color: @greenButtonColor;
522
+ border: 0;
523
+ box-shadow: none;
524
+ font-size: 14px;
525
+ text-transform: uppercase !important;
526
+ font-weight: bold;
527
+ border-radius: 4px;
528
+ outline: none;
529
+
530
+ &:active {
531
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
532
+ }
533
+
534
+ &:disabled {
535
+ background: lighten(@greenButtonBg, 10%);
536
+ color: lighten(@greenButtonColor, 30%);
537
+ }
538
+
539
+ &.wio-running {
540
+ color: @orangeButtonColor;
541
+ background: @orangeButtonBg url("../img/Spinner-1s-33px.gif") 10px center no-repeat;
542
+ padding-left: 50px;
543
+ }
544
+ }
545
+
546
+ .wio-global-optim-phrase {
547
+ width: 180px;
548
+ padding-top: 20px;
549
+ font-size: 14px;
550
+ text-align: center;
551
+ }
552
+
553
+ .wio-total-percent {
554
+ color: darken(@positiveColor, 20);
555
+ }
556
+
557
+ #wio-start-msg-top, #wio-start-msg-right, #wio-start-msg-complete {
558
+ display: none;
559
+ }
560
+
561
+ .wio-text-left {
562
+ text-align: left;
563
+ }
564
+
565
+ span.wio-num {
566
+ display: inline !important;
567
+ position: inherit !important;
568
+ }
569
+
570
+
571
+ // WIDGETS SPACE
572
+ // -----------------------------------------------
573
+ .wio-image-optimize-board {
574
+ padding-bottom: 0 !important;
575
+ }
576
+
577
+ .wio-page-statistic {
578
+ padding-left: 40px;
579
+
580
+ .wio-chart-percent {
581
+ margin-top: -1.1em;
582
+ }
583
+ }
584
+
585
+ .wrio-optimization-progress {
586
+ //margin-top: 30px;
587
+ background: none;
588
+ padding: 0;
589
+
590
+ h4 {
591
+ font-size: 15px;
592
+ font-weight: 700;
593
+ }
594
+
595
+ /*button {
596
+ padding: 5px 10px;
597
+ border: 0;
598
+ font-size: 11px;
599
+ text-transform: uppercase !important;
600
+ font-weight: bold;
601
+ border-radius: 4px;
602
+ outline: none;
603
+ background: @greyButtonBg;
604
+ color: @greyButtonColor;
605
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
606
+
607
+ &:active {
608
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
609
+ }
610
+
611
+ &.wbcr-rio-loading {
612
+ width: 56px;
613
+ font-size: 0;
614
+ background: @greyButtonBg url("../img/quick-start-loader.gif") center no-repeat;
615
+ }
616
+
617
+ &.wbcr-rio-selected {
618
+ background: #f3efe2;
619
+ color: #d8d8d8;
620
+
621
+ &:active {
622
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
623
+ }
624
+ }
625
+ }*/
626
+
627
+ .wbcr-rio-warning-message {
628
+ padding: 20px;
629
+ background: #efefef;
630
+ font-size: 15px;
631
+ color: #b7b7b7;
632
+ font-style: italic;
633
+ }
634
+ }
635
+
636
+ .wio-widget {
637
+ padding: 0 !important;
638
+
639
+ .wio-chart-percent {
640
+ font-size: 44px;
641
+ line-height: 1;
642
+ }
643
+
644
+ .wio-bars {
645
+ width: 60%;
646
+ margin-left: 155px;
647
+ }
648
+
649
+ .col-chart.col-chart {
650
+ width: 100%;
651
+ }
652
+
653
+ .col-controls {
654
+ width: 45%;
655
+ padding-left: 5px;
656
+ padding-top: 110px
657
+ }
658
+
659
+ .wio-doughnut-legend {
660
+ /*padding-top:30px;*/
661
+ text-align: left;
662
+ }
663
+
664
+ .wio-widget-bottom {
665
+ display: table;
666
+ padding-top: 20px !important;
667
+ width: 100%;
668
+ text-align: right;
669
+ }
670
+
671
+ .wio-widget-bottom li {
672
+ display: table-cell;
673
+ }
674
+
675
+ .wio-widget-bottom li:first-child {
676
+ text-align: left;
677
+ }
678
+ }
679
+
680
+ // FORMS SPACE
681
+ // -----------------------------------------------
682
+ .factory-checkbox {
683
+ &.wrio-checkbox-premium-label:after {
684
+ .premium-label();
685
+ }
686
+ }
687
+
688
+ .factory-checkbox-disabled {
689
+ input, button {
690
+ pointer-events: none;
691
+ cursor: not-allowed;
692
+ opacity: .65;
693
+ filter: alpha(opacity=65);
694
+ -webkit-box-shadow: none;
695
+ box-shadow: none;
696
+ }
697
+ }
698
+
699
+ #wrio-webp-options, #wrio-error-log-options {
700
+ h3 {
701
+ font-size: 14px;
702
+ margin: 0 0 10px 0;
703
+ font-weight: 600;
704
+ color: #565656;
705
+ }
706
+
707
+ .wrio-webp-options-info {
708
+ color: #8a8787;
709
+ font-size: 12px;
710
+ }
711
+
712
+ ul {
713
+ padding-left: 0;
714
+
715
+ li {
716
+ &:after {
717
+ content: '';
718
+ display: block;
719
+ clear: both;;
720
+ }
721
+
722
+ label {
723
+ font-weight: 600;
724
+ }
725
+
726
+ .wrio-webp-options-radio, .wrio-error-log-options-checkbox {
727
+ display: block;
728
+ float: left;
729
+ margin-top: 2px;
730
+ margin-right: 8px;
731
+
732
+ &:focus {
733
+ outline: none;
734
+ box-shadow: none;
735
+ }
736
+ }
737
+
738
+ .wrio-webp-options-info, .wrio-error-log-options-info {
739
+ padding-left: 25px;
740
+ }
741
+ }
742
+ }
743
+
744
+
745
+ }
746
+
747
+ // MEDIA SPACE
748
+ // -----------------------------------------------
749
+
750
+ @media (max-width: 830px) {
751
+ .wio [class^="col-"] {
752
+ float: none;
753
+ margin-bottom: 1.5em;
754
+ }
755
+
756
+ .wio .col-1-3,
757
+ .wio .col-1-2 {
758
+ width: auto;
759
+ padding: 0 28px;
760
+ clear: both;
761
+ padding-top: 1em;
762
+ }
763
+ }
764
+
765
+ @keyframes wiohello {
766
+ 0%, 100% {
767
+ background: #FFF;
768
+ }
769
+ 50% {
770
+ background: #F4F7F9;
771
+ }
772
+ }
773
+
774
+ @media (max-width: 1520px) and (min-width: 1381px), (max-width: 1086px) {
775
+ .wio-columns {
776
+ .col-statistics.col-statistics, .col-chart.col-chart {
777
+ width: 50%;
778
+ }
779
+ }
780
+
781
+ }
782
+
783
+ @media (max-width: 808px) {
784
+ .wio-columns {
785
+ .col-statistics.col-statistics, .col-chart.col-chart {
786
+ width: auto;
787
+ float: none;
788
+ padding: 0;
789
+ }
790
+
791
+ .col-chart.col-chart {
792
+ margin-top: 3em;
793
+ }
794
+ }
795
+ }
796
+
797
+ /*@media (max-width: 1380px) and (min-width: 1246px), (max-width: 380px) {
798
+ .wio-overview-chart-container {
799
+ float: none;
800
+ margin-right: 0;
801
+ }
802
+ }
803
+
804
+ @media (max-width: 1380px) and (min-width: 1246px), (max-width: 380px) {
805
+ .wio-overview-chart-container {
806
+ float: none;
807
+ margin-right: 0;
808
+ }
809
+
810
+ .wio-doughnut-legend {
811
+ margin-top: 18px;
812
+ }
813
+
814
+ .wio-global-optim-phrase {
815
+ padding-top: 0;
816
+ width: auto;
817
+ }
818
+ }*/
819
+
admin/assets/img/Spinner-1s-33px.gif ADDED
Binary file
admin/assets/img/clearfylogo-768x300.png ADDED
Binary file
admin/assets/img/setup-preloader-124x124.gif ADDED
Binary file
admin/assets/js/circular-progress.js ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ *
3
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
4
+ * @copyright (c) 04.02.2020, Webcraftic
5
+ * @version 1.0
6
+ */
7
+
8
+ //wfCircularProgress
9
+ jQuery.fn.wfCircularProgress = function (options) {
10
+ jQuery(this).each(function () {
11
+ var creationOptions;
12
+ try {
13
+ creationOptions = JSON.parse(jQuery(this).data('wfCircularProgressOptions'));
14
+ } catch (e) { /* Ignore */
15
+ }
16
+ if (typeof creationOptions !== 'object') {
17
+ creationOptions = {};
18
+ }
19
+ var opts = jQuery.extend({}, jQuery.fn.wfCircularProgress.defaults, creationOptions, options);
20
+
21
+ var center = Math.floor(opts.diameter / 2);
22
+ var insetRadius = center - opts.strokeWidth * 2;
23
+
24
+ var circumference = 2 * insetRadius * Math.PI;
25
+ var finalOffset = -(circumference * (1 - opts.endPercent));
26
+ var initialOffset = -(circumference);
27
+
28
+ var terminatorRadius = Math.floor(opts.strokeWidth * 1.5);
29
+ var terminatorDiameter = 2 * terminatorRadius;
30
+ var finalTerminatorX = center - insetRadius * Math.cos(Math.PI * 2 * (opts.endPercent - 0.25));
31
+ var finalTerminatorY = center + insetRadius * Math.sin(Math.PI * 2 * (opts.endPercent - 0.25));
32
+ var initialTerminatorX = center - insetRadius * Math.cos(Math.PI * 2 * (opts.startPercent - 0.25));
33
+ var initialTerminatorY = center + insetRadius * Math.sin(Math.PI * 2 * (opts.startPercent - 0.25));
34
+
35
+ var terminatorSVG = "m 0,-" + terminatorRadius + " a " + terminatorRadius + "," + terminatorRadius + " 0 1 1 0," + terminatorDiameter + " a " + terminatorRadius + "," + terminatorRadius + " 0 1 1 0,-" + terminatorDiameter;
36
+
37
+ jQuery(this).data('wfCircularProgressOptions', JSON.stringify(opts));
38
+
39
+ jQuery(this).css('width', opts.diameter + 'px');
40
+ jQuery(this).css('height', opts.diameter + 'px');
41
+
42
+ var svg = jQuery(this).find('svg');
43
+ if (svg.length === 0) {
44
+ svg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
45
+ jQuery(this).append(svg);
46
+ }
47
+ var inactivePath = jQuery(this).find('.wclearfy-status-circle-inactive-path');
48
+ if (inactivePath.length === 0) {
49
+ inactivePath = document.createElementNS("http://www.w3.org/2000/svg", "path");
50
+ jQuery(inactivePath).addClass('wclearfy-status-circle-inactive-path');
51
+ jQuery(svg).append(inactivePath);
52
+ }
53
+ var activePath = jQuery(this).find('.wclearfy-status-circle-active-path');
54
+ if (activePath.length === 0) {
55
+ activePath = document.createElementNS("http://www.w3.org/2000/svg", "path");
56
+ jQuery(activePath).addClass('wclearfy-status-circle-active-path');
57
+ jQuery(svg).append(activePath);
58
+ }
59
+ var terminator = jQuery(this).find('.wclearfy-status-circle-terminator');
60
+ if (terminator.length === 0) {
61
+ terminator = document.createElementNS("http://www.w3.org/2000/svg", "path");
62
+ jQuery(terminator).addClass('wclearfy-status-circle-terminator');
63
+ jQuery(svg).append(terminator);
64
+ }
65
+ var text = jQuery(this).find('.wclearfy-status-circle-text');
66
+ if (text.length === 0) {
67
+ text = jQuery('<div class="wclearfy-status-circle-text"></div>');
68
+ jQuery(this).append(text);
69
+ }
70
+ var pendingOverlay = jQuery(this).find('.wf-status-overlay-text');
71
+ if (pendingOverlay.length === 0 && opts.pendingMessage.length !== 0) {
72
+ pendingOverlay = jQuery('<div class="wclearfy-status-overlay-text"></div>');
73
+ jQuery(this).append(pendingOverlay);
74
+ }
75
+
76
+ jQuery(svg).attr('viewBox', '0 0 ' + opts.diameter + ' ' + opts.diameter);
77
+ jQuery(svg).css('display', opts.css_display);
78
+ jQuery(svg).css('width', opts.diameter + 'px');
79
+ jQuery(svg).css('height', opts.diameter + 'px');
80
+ jQuery(inactivePath).attr('d', 'M ' + center + ',' + center + ' m 0,-' + insetRadius + ' a ' + insetRadius + ',' + insetRadius + ' 0 1 1 0,' + (2 * insetRadius) + ' a ' + insetRadius + ',' + insetRadius + ' 0 1 1 0,-' + (2 * insetRadius));
81
+ jQuery(inactivePath).attr('stroke', opts.inactiveColor);
82
+ jQuery(inactivePath).attr('stroke-width', opts.strokeWidth);
83
+ jQuery(inactivePath).attr('fill-opacity', 0);
84
+ jQuery(activePath).attr('d', 'M ' + center + ',' + center + ' m 0,-' + insetRadius + ' a ' + insetRadius + ',' + insetRadius + ' 0 1 1 0,' + (2 * insetRadius) + ' a ' + insetRadius + ',' + insetRadius + ' 0 1 1 0,-' + (2 * insetRadius));
85
+ jQuery(activePath).attr('stroke', opts.color);
86
+ jQuery(activePath).attr('stroke-width', opts.strokeWidth);
87
+ jQuery(activePath).attr('stroke-dasharray', circumference + ',' + circumference);
88
+ jQuery(activePath).attr('stroke-dashoffset', initialOffset);
89
+ jQuery(activePath).attr('fill-opacity', 0);
90
+ jQuery(terminator).attr('d', 'M ' + initialTerminatorX + ',' + initialTerminatorY + ' ' + terminatorSVG);
91
+ jQuery(terminator).attr('stroke', opts.color);
92
+ jQuery(terminator).attr('stroke-width', opts.strokeWidth);
93
+ jQuery(terminator).attr('fill', '#ffffff');
94
+ jQuery(pendingOverlay).html(opts.pendingMessage);
95
+
96
+ jQuery(pendingOverlay).animate({
97
+ opacity: opts.pendingOverlay ? 1.0 : 0.0,
98
+ }, {
99
+ duration: 500,
100
+ step: function (value) {
101
+ var opacity = 1.0 - (value * 0.8);
102
+ jQuery(svg).css('opacity', opacity);
103
+ jQuery(text).css('opacity', opacity);
104
+ },
105
+ complete: function () {
106
+ jQuery(svg).css('opacity', opts.pendingOverlay ? 0.2 : 1.0);
107
+ jQuery(text).css('opacity', opts.pendingOverlay ? 0.2 : 1.0);
108
+ }
109
+ });
110
+
111
+ jQuery(activePath).animate({
112
+ "stroke-dashoffset": finalOffset + 'px'
113
+ }, {
114
+ duration: 500,
115
+ step: function (value) {
116
+ var percentage = 1 + value / circumference;
117
+ var x = center - insetRadius * Math.cos(Math.PI * 2 * (percentage - 0.25));
118
+ var y = center + insetRadius * Math.sin(Math.PI * 2 * (percentage - 0.25));
119
+ jQuery(terminator).attr('d', 'M ' + x + ',' + y + ' ' + terminatorSVG);
120
+ text.html(Math.round(percentage * 100));
121
+ },
122
+ complete: function () {
123
+ text.html(Math.round(opts.endPercent * 100));
124
+ }
125
+ });
126
+ });
127
+ };
128
+
129
+ jQuery.fn.wfCircularProgress.defaults = {
130
+ startPercent: 0,
131
+ endPercent: 1,
132
+ color: '#16bc9b',
133
+ inactiveColor: '#ececec',
134
+ strokeWidth: 3,
135
+ diameter: 100,
136
+ pendingOverlay: false,
137
+ pendingMessage: 'Note: Status will update when changes are saved',
138
+ css_display: 'block',
139
+ };
admin/assets/js/general.js CHANGED
@@ -12,6 +12,34 @@
12
  init: function() {
13
  this.qickStartAssistent();
14
  this.importOptions();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  },
16
  qickStartAssistent: function() {
17
  var self = this;
@@ -87,13 +115,13 @@
87
  * Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
88
  * результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
89
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
90
- * $.wbcr_factory_clearfy_224.hooks.add('wbcr/factory_clearfy_224/updated',
91
  * function(noticeId) {});
92
  * @param {string} modeName - имя режима конфигурации
93
  * @param {object} data
94
  */
95
 
96
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/quick_start/configurated_error', [
97
  modeName,
98
  data
99
  ]);
@@ -110,14 +138,14 @@
110
  * Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
111
  * конфигурации Реализация системы фильтров и хуков в файле
112
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
113
- * $.wbcr_factory_clearfy_224.hooks.add('wbcr/factory_clearfy_224/updated', function(noticeId)
114
  * {});
115
  * @param {string} modeName - имя режима конфигурации
116
  * @param {object} data
117
  */
118
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
119
 
120
- if( modeName != 'reset' ) {
121
  switcher.addClass('wbcr-clearfy-active');
122
  return;
123
  }
@@ -144,7 +172,7 @@
144
  popupElem.data('mode', modeName);
145
  popupElem.fadeIn();
146
 
147
- if( modeName != 'reset' ) {
148
  var printOptTitles = '';
149
 
150
  if( options ) {
@@ -183,12 +211,12 @@
183
  $this = $(this);
184
 
185
  if( !settings ) {
186
- $.wbcr_factory_clearfy_224.app.showNotice('Import options is empty!', 'danger');
187
  return false;
188
  }
189
 
190
- if( void 0 == wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
191
- $.wbcr_factory_clearfy_224.app.showNotice('Unknown Javascript error, most likely the wbcr_clearfy_ajax variable does not exist!', 'danger');
192
  return false;
193
  }
194
 
@@ -203,7 +231,7 @@
203
 
204
  if( response.data.update_notice ) {
205
  if( !$('.wbcr-clr-update-package').length ) {
206
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.update_notice);
207
  }
208
  } else {
209
  if( $('.wbcr-clr-update-package').length ) {
@@ -240,15 +268,15 @@
240
  console.log(data);
241
 
242
  if( data ) {
243
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice(data.error_message, 'danger');
244
  } else {
245
- if( void 0 != wbcr_clearfy_ajax ) {
246
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
247
  }
248
  }
249
 
250
  setTimeout(function() {
251
- $.wbcr_factory_clearfy_224.app.hideNotice(noticeId);
252
  }, 5000);
253
  return;
254
  }
@@ -256,11 +284,11 @@
256
  successCallback && successCallback(data);
257
 
258
  if( !request_data.flush_redirect ) {
259
- if( void 0 != wbcr_clearfy_ajax ) {
260
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
261
 
262
  setTimeout(function() {
263
- $.wbcr_factory_clearfy_224.app.hideNotice(noticeId);
264
  }, 5000);
265
  }
266
  return;
@@ -275,7 +303,7 @@
275
  console.log(xhr.responseText);
276
  console.log(thrownError);
277
 
278
- var noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
279
  }
280
  });
281
  }
12
  init: function() {
13
  this.qickStartAssistent();
14
  this.importOptions();
15
+
16
+ /*$.wfactory_436.hooks.add('core/components/pre_activate', function(button) {
17
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
18
+ if( !$('#WBCR').length ) {
19
+ return false;
20
+ }
21
+
22
+ if( button.closest('.wbcr-clr-new-component').length ) {
23
+ button.closest('.wbcr-clr-new-component').remove();
24
+ }
25
+
26
+ if( button.closest('.wbcr-clearfy-fake-image-optimizer-board').length ) {
27
+ button.remove();
28
+ window.location.reload();
29
+ }
30
+ });*/
31
+
32
+ /*$.wfactory_436.hooks.add('core/components/updated', function(button, data, response) {
33
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
34
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_227) ) {
35
+ return false;
36
+ }
37
+
38
+ if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
39
+ $.wbcr_factory_clearfy_227.app.showNotice(response.data.need_rewrite_rules, 'warning');
40
+ }
41
+
42
+ });*/
43
  },
44
  qickStartAssistent: function() {
45
  var self = this;
115
  * Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
116
  * результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
117
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
118
+ * $.wbcr_factory_clearfy_227.hooks.add('wbcr/factory_clearfy_227/updated',
119
  * function(noticeId) {});
120
  * @param {string} modeName - имя режима конфигурации
121
  * @param {object} data
122
  */
123
 
124
+ $.wbcr_factory_clearfy_227.hooks.run('clearfy/quick_start/configurated_error', [
125
  modeName,
126
  data
127
  ]);
138
  * Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
139
  * конфигурации Реализация системы фильтров и хуков в файле
140
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
141
+ * $.wbcr_factory_clearfy_227.hooks.add('wbcr/factory_clearfy_227/updated', function(noticeId)
142
  * {});
143
  * @param {string} modeName - имя режима конфигурации
144
  * @param {object} data
145
  */
146
+ $.wbcr_factory_clearfy_227.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
147
 
148
+ if( modeName !== 'reset' ) {
149
  switcher.addClass('wbcr-clearfy-active');
150
  return;
151
  }
172
  popupElem.data('mode', modeName);
173
  popupElem.fadeIn();
174
 
175
+ if( modeName !== 'reset' ) {
176
  var printOptTitles = '';
177
 
178
  if( options ) {
211
  $this = $(this);
212
 
213
  if( !settings ) {
214
+ $.wbcr_factory_clearfy_227.app.showNotice('Import options is empty!', 'danger');
215
  return false;
216
  }
217
 
218
+ if( void 0 === wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
219
+ $.wbcr_factory_clearfy_227.app.showNotice('Unknown Javascript error, most likely the wbcr_clearfy_ajax variable does not exist!', 'danger');
220
  return false;
221
  }
222
 
231
 
232
  if( response.data.update_notice ) {
233
  if( !$('.wbcr-clr-update-package').length ) {
234
+ $.wbcr_factory_clearfy_227.app.showNotice(response.data.update_notice);
235
  }
236
  } else {
237
  if( $('.wbcr-clr-update-package').length ) {
268
  console.log(data);
269
 
270
  if( data ) {
271
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice(data.error_message, 'danger');
272
  } else {
273
+ if( void 0 !== wbcr_clearfy_ajax ) {
274
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
275
  }
276
  }
277
 
278
  setTimeout(function() {
279
+ $.wbcr_factory_clearfy_227.app.hideNotice(noticeId);
280
  }, 5000);
281
  return;
282
  }
284
  successCallback && successCallback(data);
285
 
286
  if( !request_data.flush_redirect ) {
287
+ if( void 0 !== wbcr_clearfy_ajax ) {
288
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
289
 
290
  setTimeout(function() {
291
+ $.wbcr_factory_clearfy_227.app.hideNotice(noticeId);
292
  }, 5000);
293
  }
294
  return;
303
  console.log(xhr.responseText);
304
  console.log(thrownError);
305
 
306
+ var noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
307
  }
308
  });
309
  }
admin/assets/js/install-addons.js DELETED
@@ -1,358 +0,0 @@
1
- /**
2
- * This code provides tools for downloading, installing external add-ons for the Clearfy plugin
3
- *
4
- * @author Webcraftic <wordpress.webraftic@gmail.com>
5
- * @copyright (c) 10.09.2017, Webcraftic
6
- * @version 1.0
7
- */
8
-
9
- (function($) {
10
- 'use strict';
11
-
12
- var externalAddon = {
13
- init: function() {
14
- this.events();
15
- },
16
- events: function() {
17
- var self = this;
18
-
19
- /**
20
- * This event is intended for installation, removal, activation, deactivation of external add-ons
21
- */
22
-
23
- $(document).on('click', '.wbcr-clr-update-component-button', function() {
24
- var $this = $(this),
25
- button_i18n = $(this).data('i18n'),
26
- plugin_slug = $(this).data('slug'),
27
- plugin_action = $(this).data('plugin-action'),
28
- plugin = $(this).data('plugin'),
29
- storage = $(this).data('storage'),
30
- wpnonce = $(this).data('wpnonce');
31
-
32
- var action = ('creativemotion' === storage) ? 'creativemotion-install-plugin' : 'install-plugin';
33
-
34
- if( storage == 'freemius' || ((storage == 'wordpress' || storage == 'creativemotion' || storage == 'internal') && (plugin_action == 'activate' || plugin_action == 'deactivate')) ) {
35
- action = 'wbcr-clearfy-update-component';
36
- } else if( storage == 'wordpress' && plugin_action == 'delete' ) {
37
- action = 'delete-plugin';
38
- }
39
-
40
- var data = {
41
- action: action,
42
- slug: plugin_slug,
43
- storage: storage,
44
- plugin: plugin,
45
- plugin_action: plugin_action,
46
- _wpnonce: wpnonce
47
- };
48
-
49
- if( plugin_action == 'install' ) {
50
- $this.addClass('updating-message');
51
- }
52
-
53
- $this.addClass('disabled').text(button_i18n.loading);
54
-
55
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/pre_update', [$this, data]);
56
-
57
- self.sendRequest(data, function(response) {
58
- if( !response || !response.success ) {
59
-
60
- if( response.data && response.data.error_message ) {
61
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.error_message, 'danger');
62
- }
63
-
64
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/update_error', [
65
- $this,
66
- data,
67
- response.data.error_message,
68
- response
69
- ]);
70
-
71
- return;
72
- }
73
-
74
- if( response.success ) {
75
- $this.removeClass('disabled').removeClass('updating-message');
76
-
77
- if( storage == 'freemius' ) {
78
- if( response.data.update_notice ) {
79
- if( !$('.wbcr-clr-update-package').length ) {
80
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.update_notice);
81
- }
82
- } else {
83
- if( $('.wbcr-clr-update-package').length ) {
84
- $('.wbcr-clr-update-package').closest('.wbcr-factory-warning-notice').remove();
85
- }
86
- }
87
- }
88
-
89
- if( plugin_action == 'install' ) {
90
-
91
- plugin_action = 'activate';
92
- $this.data('plugin-action', 'activate');
93
- $this.attr('data-plugin-action', 'activate');
94
-
95
- if( $this.hasClass('button') ) {
96
- $this.removeClass('button-default').addClass('button-primary');
97
- }
98
-
99
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/installed', [
100
- $this,
101
- data,
102
- response
103
- ]);
104
-
105
- } else if( plugin_action == 'activate' ) {
106
-
107
- plugin_action = 'deactivate';
108
- $this.data('plugin-action', 'deactivate');
109
- $this.attr('data-plugin-action', 'deactivate');
110
-
111
- if( $this.hasClass('button') ) {
112
- $this.removeClass('button-primary').addClass('button-default');
113
- }
114
-
115
- // todo: вынести в отдельный файл
116
- // If the button is installed inside the notification,
117
- // then delete the button container after activating the component
118
-
119
- if( $this.closest('.wbcr-clr-new-component').length ) {
120
- $this.closest('.wbcr-clr-new-component').remove();
121
- }
122
-
123
- // todo: вынести в отдельный файл
124
- // If the button is installed inside the notification (inside),
125
- // then delete the button container after activating the component
126
-
127
- if( $this.closest('.alert').length ) {
128
- $this.closest('.alert').remove();
129
- }
130
-
131
- // todo: вынести в отдельный файл
132
- // If the button is installed inside the notification (inside),
133
- // then delete the button container after activating the component
134
-
135
- if( $this.closest('.wbcr-clearfy-fake-image-optimizer-board').length ) {
136
- $this.remove();
137
- window.location.reload();
138
- }
139
-
140
- // todo: вынести в отдельный файл
141
- // If the button is installed on the components page,
142
- // the active and inactive components are highlighted
143
-
144
- if( $this.closest('.plugin-card').length ) {
145
- self.setComponentActivate($this);
146
- $this.closest('.plugin-card').find('.delete-now').remove();
147
- }
148
-
149
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/pre_activate', [
150
- $this,
151
- data,
152
- response
153
- ]);
154
-
155
- /**
156
- * Send an additional request for activation of the component, during activation
157
- * perform the action wbcr/clearfy/activated_component.
158
- *
159
- * Basically, this is necessary to prepare the plugin to work, write the necessary rows and
160
- * tables in the database, rewriting permalinks, checking conflicts, etc.
161
- */
162
- if( storage == 'freemius' || storage == 'internal' ) {
163
- self.sendRequestToComponentActivationPrepare($this, data, button_i18n);
164
- return;
165
- }
166
-
167
- } else if( plugin_action == 'deactivate' ) {
168
-
169
- plugin_action = 'activate';
170
- $this.data('plugin-action', 'activate');
171
- $this.attr('data-plugin-action', 'activate');
172
-
173
- if( $this.hasClass('button') ) {
174
- $this.removeClass('button-default').addClass('button-primary');
175
- }
176
-
177
- // todo: вынести в отдельный файл
178
- // If the button is installed on the components page,
179
- // the active and inactive components are highlighted
180
-
181
- if( $this.closest('.plugin-card').length ) {
182
- self.setComponentDeactivate($this);
183
-
184
- if( response.data['delete_button'] && response.data['delete_button'] != '' ) {
185
- $this.before($(response.data['delete_button']).addClass('delete-now'));
186
- }
187
- }
188
-
189
- // todo: вынести в отдельный файл
190
- // If the button is installed on the components page,
191
- // the active and inactive components are highlighted
192
- if( $this.closest('.wbcr-hide-after-action').length ) {
193
- $this.closest('.wbcr-hide-after-action').remove();
194
- }
195
-
196
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/deactivated', [
197
- $this,
198
- data,
199
- response
200
- ]);
201
-
202
- } else if( plugin_action == 'delete' ) {
203
-
204
- plugin_action = 'install';
205
- $this.closest('.plugin-card').find('.install-now').data('plugin-action', 'install');
206
- $this.closest('.plugin-card').find('.install-now').attr('data-plugin-action', 'install');
207
- $this.closest('.plugin-card').find('.install-now').removeClass('button-primary').addClass('button-default');
208
- $this.closest('.plugin-card').find('.install-now').text(button_i18n.install);
209
-
210
- // todo: вынести в отдельный файл
211
- // If the button is installed on the components page,
212
- // the active and inactive components are highlighted
213
-
214
- if( $this.closest('.plugin-card').length ) {
215
- self.setComponentDeactivate($this);
216
- $this.remove();
217
- }
218
-
219
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/deleted', [$this, data, response]);
220
- }
221
- } else {
222
- if( plugin_action == 'install' ) {
223
- $this.removeClass('updating-message');
224
- }
225
- }
226
-
227
- $this.text(button_i18n[plugin_action]);
228
-
229
- if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
230
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.need_rewrite_rules, 'warning');
231
- }
232
-
233
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/updated', [$this, data, response]);
234
- });
235
-
236
- return false;
237
- });
238
-
239
- $(document).on('click', '.wbcr-clr-plugin-update-link', function() {
240
- var $this = $(this),
241
- loading = $(this).data('loading'),
242
- success_msg = $(this).data('ok'),
243
- wpnonce = $(this).data('wpnonce'),
244
- container = $this.closest('p');
245
-
246
- var data = {
247
- action: 'wbcr-clearfy-update-package',
248
- _wpnonce: wpnonce
249
- };
250
-
251
- container.text(loading);
252
-
253
- self.sendRequest(data, function(response) {
254
- if( !response || !response.success ) {
255
- if( response.data && response.data.error_message ) {
256
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.error_message, 'danger');
257
- }
258
- return;
259
- }
260
-
261
- if( response.success ) {
262
- container.closest('div').removeClass('notice-warning').addClass('notice-success');
263
- container.text(success_msg);
264
- } else {
265
- container.text(response.data.msg);
266
- }
267
- });
268
-
269
- return false;
270
- });
271
- },
272
-
273
- /**
274
- * Устанавливает стиль компонента
275
- *
276
- * @param {object} componentButton
277
- */
278
- setComponentDeactivate: function(componentButton) {
279
- componentButton.closest('.plugin-card').addClass('plugin-status-deactive');
280
- },
281
-
282
- /**
283
- * Устанавливает стиль компонента
284
- *
285
- * @param {object} componentButton
286
- */
287
- setComponentActivate: function(componentButton) {
288
- componentButton.closest('.plugin-card').removeClass('plugin-status-deactive');
289
- },
290
-
291
- /**
292
- * Отправляет дополнительный запрос на активацию компонента, во время активации
293
- * выполняет хук wbcr/clearfy/activated_component.
294
- *
295
- * В принципе, это необходимо для подготовки плагина к работе, записи необходимых строк и таблиц в
296
- * базу данных, перепись постоянных ссылок, проверка конфликтов и т.д.
297
- *
298
- * @param {object} componentButton
299
- * @param {object} sendData
300
- * @param {object} button_i18n
301
- */
302
- sendRequestToComponentActivationPrepare: function(componentButton, sendData, button_i18n) {
303
- var self = this;
304
-
305
- componentButton.addClass('button-primary')
306
- .addClass('disabled')
307
- .text(button_i18n.preparation);
308
-
309
- sendData.action = 'wbcr-clearfy-prepare-component';
310
-
311
- this.sendRequest(sendData, function(response) {
312
- componentButton.removeClass('disabled');
313
-
314
- if( !response || !response.success ) {
315
- componentButton.text(button_i18n['activate']);
316
- self.setComponentDeactivate(componentButton);
317
-
318
- if( response.data && response.data.error_message ) {
319
- $.wbcr_factory_clearfy_224.app.showNotice(response.data.error_message, 'danger');
320
- }
321
-
322
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/activated_error', [sendData.plugin]);
323
- return;
324
- }
325
-
326
- componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
327
- self.setComponentActivate(componentButton);
328
-
329
- $.wbcr_factory_clearfy_224.hooks.run('clearfy/components/activated', [sendData.plugin]);
330
- });
331
- },
332
-
333
- sendRequest: function(data, callback) {
334
- var self = this;
335
-
336
- $.ajax(ajaxurl, {
337
- type: 'post',
338
- dataType: 'json',
339
- data: data,
340
- success: function(data, textStatus, jqXHR) {
341
- callback && callback(data);
342
- },
343
- error: function(xhr, ajaxOptions, thrownError) {
344
- console.log(xhr.status);
345
- console.log(xhr.responseText);
346
- console.log(thrownError);
347
-
348
- $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
349
- }
350
- });
351
- }
352
- };
353
-
354
- $(document).ready(function() {
355
- externalAddon.init();
356
- });
357
-
358
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/assets/js/license-manager.js CHANGED
@@ -20,7 +20,7 @@ jQuery(function($) {
20
  // Глобальные уведомления не трогаем
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
- $.wbcr_factory_clearfy_224.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
@@ -55,7 +55,7 @@ jQuery(function($) {
55
 
56
  if( response.data ) {
57
  console.log(response.data.error_message);
58
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
59
  allNotices.push(noticeId);
60
  } else {
61
  console.log(response);
@@ -65,7 +65,7 @@ jQuery(function($) {
65
  }
66
 
67
  if( response.data && response.data.message ) {
68
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice(response.data.message, 'success');
69
  allNotices.push(noticeId);
70
 
71
  // todo: доработать генерацию формы, вместо перезагрузки страницы
@@ -82,7 +82,7 @@ jQuery(function($) {
82
  console.log(xhr.responseText);
83
  console.log(thrownError);
84
 
85
- var noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
86
 
87
  allNotices.push(noticeId);
88
  }
20
  // Глобальные уведомления не трогаем
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
+ $.wbcr_factory_clearfy_227.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
55
 
56
  if( response.data ) {
57
  console.log(response.data.error_message);
58
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
59
  allNotices.push(noticeId);
60
  } else {
61
  console.log(response);
65
  }
66
 
67
  if( response.data && response.data.message ) {
68
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice(response.data.message, 'success');
69
  allNotices.push(noticeId);
70
 
71
  // todo: доработать генерацию формы, вместо перезагрузки страницы
82
  console.log(xhr.responseText);
83
  console.log(thrownError);
84
 
85
+ var noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
86
 
87
  allNotices.push(noticeId);
88
  }
admin/assets/js/setup.js ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Setup master
3
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
4
+ * @copyright (c) 12.08.2020, Webcraftic
5
+ * @version 1.0
6
+ */
7
+
8
+ (function($) {
9
+ 'use strict';
10
+
11
+ window.wclearfy_fetch_google_pagespeed_audit = function(nonce, flush_cache) {
12
+
13
+ let data = {
14
+ action: 'wclearfy-fetch-google-pagespeed-audit',
15
+ flush_cache: flush_cache,
16
+ _wpnonce: nonce,
17
+ };
18
+
19
+ $.ajax(ajaxurl, {
20
+ type: 'post',
21
+ dataType: 'json',
22
+ data: data,
23
+ success: function(response) {
24
+ console.log(response);
25
+
26
+ $('.wclearfy-gogle-page-speed-audit__preloader').hide();
27
+
28
+ if( !response || !response.success ) {
29
+ if( response.data ) {
30
+ console.log(response.data.error);
31
+ $('.wclearfy-gogle-page-speed-audit__errors').text(response.data.error).show();
32
+ } else {
33
+ console.log(response);
34
+ }
35
+ return;
36
+ }
37
+
38
+ $('.wclearfy-gogle-page-speed-audit').show();
39
+
40
+ if( response.data && response.data.desktop ) {
41
+ $('#wclearfy-desktop-score__circle').wfCircularProgress({
42
+ endPercent: (response.data.desktop.performance_score / 100),
43
+ color: get_color(response.data.desktop.performance_score),
44
+ inactiveColor: '#ececec',
45
+ strokeWidth: 5,
46
+ diameter: 150,
47
+ });
48
+
49
+ $('#wclearfy-statistic__desktop-first-contentful-paint').text(response.data.desktop.performance_score);
50
+ $('#wclearfy-statistic__desktop-speed-index').text(response.data.desktop.speed_index);
51
+ $('#wclearfy-statistic__desktop-interactive').text(response.data.desktop.interactive);
52
+ }
53
+
54
+ if( response.data && response.data.mobile ) {
55
+ $('#wclearfy-mobile-score__circle').wfCircularProgress({
56
+ endPercent: (response.data.mobile.performance_score / 100),
57
+ color: get_color(response.data.mobile.performance_score),
58
+ inactiveColor: '#ececec',
59
+ strokeWidth: 5,
60
+ diameter: 150,
61
+ });
62
+
63
+ $('#wclearfy-statistic__mobile-first-contentful-paint').text(response.data.desktop.performance_score);
64
+ $('#wclearfy-statistic__mobile-speed-index').text(response.data.desktop.speed_index);
65
+ $('#wclearfy-statistic__mobile-interactive').text(response.data.desktop.interactive);
66
+ }
67
+
68
+ },
69
+ error: function(xhr, ajaxOptions, thrownError) {
70
+
71
+ $('.wclearfy-gogle-page-speed-audit__preloader').hide();
72
+
73
+ console.log(xhr.status);
74
+ console.log(xhr.responseText);
75
+ console.log(thrownError);
76
+
77
+ $('.wclearfy-gogle-page-speed-audit__errors').text('Status: ' + xhr.status + 'Error:' + xhr.responseText).show();
78
+ }
79
+ });
80
+
81
+ function get_color(score) {
82
+ let desktopColor;
83
+
84
+ if( score > 70 ) {
85
+ desktopColor = '#a8d207';
86
+ } else if( score > 40 ) {
87
+ desktopColor = '#f18727';
88
+ } else {
89
+ desktopColor = '#cd2727';
90
+ }
91
+
92
+ return desktopColor;
93
+ }
94
+ }
95
+ })(jQuery);
admin/boot.php CHANGED
@@ -17,6 +17,40 @@ if( !defined('ABSPATH') ) {
17
  exit;
18
  }
19
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  /**
21
  * Выводит кнопку настроек Clearfy в шапке интерфейса плагина
22
  */
@@ -33,8 +67,8 @@ add_action('wbcr/factory/pages/impressive/header', function ($plugin_name) {
33
 
34
  /**
35
  * @param $form
36
- * @param Wbcr_Factory432_Plugin $plugin
37
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $obj
38
  */
39
  function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
40
  {
@@ -72,20 +106,20 @@ add_action('wbcr/factory/pages/impressive/plugin_title', 'wbcr_clearfy_branding'
72
  * Подключаем скрипты для установки компонентов Clearfy
73
  * на все страницы админпанели
74
  */
75
- add_action('admin_enqueue_scripts', function () {
76
  wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
77
  wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
78
  'jquery',
79
- 'wbcr-factory-clearfy-224-global'
80
  ], WCL_Plugin::app()->getPluginVersion());
81
- });
82
 
83
  /**
84
  * Выводит уведомление, что нужно сбросить постоянные ссылки.
85
  * Уведомление будет показано на всех страницах Clearfy и его компонентах.
86
  *
87
  * @param WCL_Plugin $plugin
88
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $obj
89
  */
90
  function wbcr_clearfy_print_notice_rewrite_rules($plugin, $obj)
91
  {
@@ -110,7 +144,7 @@ add_action('flush_rewrite_rules_hard', 'wbcr_clearfy_flush_rewrite_rules');
110
  * Обновить постоынные ссылки, после выполнения быстрых настроек
111
  *
112
  * @param WHM_Plugin $plugin
113
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $obj
114
  */
115
  function wbcr_clearfy_after_form_save($plugin, $obj)
116
  {
@@ -133,7 +167,7 @@ add_action('wbcr/factory/pages/impressive/after_form_save', 'wbcr_clearfy_after_
133
  *
134
  * @param array $widgets
135
  * @param string $position
136
- * @param Wbcr_Factory432_Plugin $plugin
137
  */
138
 
139
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
17
  exit;
18
  }
19
 
20
+ /**
21
+ * Этот хук реализует условную логику перенаправления на страницу мастера настроек,
22
+ * сразу после активации плагина.
23
+ */
24
+ add_action('admin_init', function () {
25
+
26
+ $plugin = WCL_Plugin::app();
27
+
28
+ // If the user has updated the plugin or activated it for the first time,
29
+ // you need to show the page "What's new?"
30
+ if( !WCL_Plugin::app()->isNetworkAdmin() ) {
31
+ $setup_page_viewed = WCL_Plugin::app()->request->get('wclearfy_setup_page_viewed', null);
32
+ if( is_null($setup_page_viewed) ) {
33
+ if( WCL_Helper::is_need_show_setup_page() ) {
34
+ try {
35
+ $redirect_url = '';
36
+ if( class_exists('Wbcr_FactoryPages435') ) {
37
+ $redirect_url = WCL_Plugin::app()->getPluginPageUrl('setup', ['wclearfy_setup_page_viewed' => 1]);
38
+ }
39
+ if( $redirect_url ) {
40
+ wp_safe_redirect($redirect_url);
41
+ die();
42
+ }
43
+ } catch( Exception $e ) {
44
+ }
45
+ }
46
+ } else {
47
+ if( WCL_Helper::is_need_show_setup_page() ) {
48
+ delete_option($plugin->getOptionName('setup_wizard'));
49
+ }
50
+ }
51
+ }
52
+ });
53
+
54
  /**
55
  * Выводит кнопку настроек Clearfy в шапке интерфейса плагина
56
  */
67
 
68
  /**
69
  * @param $form
70
+ * @param Wbcr_Factory436_Plugin $plugin
71
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
72
  */
73
  function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
74
  {
106
  * Подключаем скрипты для установки компонентов Clearfy
107
  * на все страницы админпанели
108
  */
109
+ /*add_action('admin_enqueue_scripts', function () {
110
  wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
111
  wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
112
  'jquery',
113
+ 'wbcr-factory-clearfy-227-global'
114
  ], WCL_Plugin::app()->getPluginVersion());
115
+ });*/
116
 
117
  /**
118
  * Выводит уведомление, что нужно сбросить постоянные ссылки.
119
  * Уведомление будет показано на всех страницах Clearfy и его компонентах.
120
  *
121
  * @param WCL_Plugin $plugin
122
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
123
  */
124
  function wbcr_clearfy_print_notice_rewrite_rules($plugin, $obj)
125
  {
144
  * Обновить постоынные ссылки, после выполнения быстрых настроек
145
  *
146
  * @param WHM_Plugin $plugin
147
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
148
  */
149
  function wbcr_clearfy_after_form_save($plugin, $obj)
150
  {
167
  *
168
  * @param array $widgets
169
  * @param string $position
170
+ * @param Wbcr_Factory436_Plugin $plugin
171
  */
172
 
173
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
admin/includes/compatibility.php CHANGED
@@ -22,8 +22,8 @@ add_action( 'plugins_loaded', function () {
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
- * @param Wbcr_Factory432_Plugin $plugin
26
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
@@ -52,8 +52,8 @@ add_action( 'plugins_loaded', function () {
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
- * @param Wbcr_Factory432_Plugin $plugin
56
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
+ * @param Wbcr_Factory436_Plugin $plugin
26
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
+ * @param Wbcr_Factory436_Plugin $plugin
56
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
admin/pages/class-page.php CHANGED
@@ -7,7 +7,7 @@
7
  * @version 1.0
8
  */
9
 
10
- class WCL_Page extends Wbcr_FactoryClearfy224_PageBase {
11
 
12
  /**
13
  * Действие выполняется для всех страниц Clearfy и его компонентах.
@@ -20,15 +20,15 @@ class WCL_Page extends Wbcr_FactoryClearfy224_PageBase {
20
  $license_page_url = $this->getBaseUrl('clearfy_license');
21
  $upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
22
 
23
- $html = '<div class="wbcr-factory-clearfy-224-multisite-suggetion">';
24
  $html .= '<div class="wbcr-factory-inner-contanier">';
25
- $html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_224') . '</h3>';
26
- $html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_clearfy_224') . '</p>';
27
- $html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_clearfy_224') . '</p>';
28
- $html .= '<p>' . __('You can activate the plugin on each website and use it with zero limitations. But you can’t save the plugin’s settings under the Super Administrator role!', 'wbcr_factory_clearfy_224') . '</p>';
29
  $html .= '<p style="margin-top:20px">';
30
- $html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', 'wbcr_factory_clearfy_224') . '</a> ';
31
- $html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_224') . '</a>';
32
  $html .= '</p>';
33
  $html .= '</div>';
34
  $html .= '</div>';
7
  * @version 1.0
8
  */
9
 
10
+ class WCL_Page extends Wbcr_FactoryClearfy227_PageBase {
11
 
12
  /**
13
  * Действие выполняется для всех страниц Clearfy и его компонентах.
20
  $license_page_url = $this->getBaseUrl('clearfy_license');
21
  $upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
22
 
23
+ $html = '<div class="wbcr-factory-clearfy-227-multisite-suggetion">';
24
  $html .= '<div class="wbcr-factory-inner-contanier">';
25
+ $html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_227') . '</h3>';
26
+ $html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_clearfy_227') . '</p>';
27
+ $html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_clearfy_227') . '</p>';
28
+ $html .= '<p>' . __('You can activate the plugin on each website and use it with zero limitations. But you can’t save the plugin’s settings under the Super Administrator role!', 'wbcr_factory_clearfy_227') . '</p>';
29
  $html .= '<p style="margin-top:20px">';
30
+ $html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', 'wbcr_factory_clearfy_227') . '</a> ';
31
+ $html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_227') . '</a>';
32
  $html .= '</p>';
33
  $html .= '</div>';
34
  $html .= '</div>';
admin/pages/class-pages-advanced.php CHANGED
@@ -17,7 +17,7 @@ class WCL_AdvancedPage extends WCL_Page {
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
- * @see FactoryPages432_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages435_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
admin/pages/class-pages-clearfy-settings.php CHANGED
@@ -19,7 +19,7 @@ class WCL_ClearfySettingsPage extends WCL_Page {
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
- * @see FactoryPages432_AdminPage
23
  *
24
  * @var string
25
  */
@@ -59,7 +59,7 @@ class WCL_ClearfySettingsPage extends WCL_Page {
59
  *
60
  * @return void
61
  * @since 1.0.0
62
- * @see FactoryPages432_AdminPage
63
  *
64
  */
65
  public function assets($scripts, $styles)
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages435_AdminPage
23
  *
24
  * @var string
25
  */
59
  *
60
  * @return void
61
  * @since 1.0.0
62
+ * @see FactoryPages435_AdminPage
63
  *
64
  */
65
  public function assets($scripts, $styles)
admin/pages/class-pages-components-license.php CHANGED
@@ -1,186 +1,189 @@
1
  <?php
2
- // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
- exit;
5
- }
6
-
 
 
 
 
 
 
 
 
 
 
 
7
  /**
8
- * Страница лицензирования плагина.
9
  *
10
- * Поддерживает режим работы с мультисаймами. Вы можете увидеть эту страницу в панели настройки сети.
 
 
 
 
 
 
 
11
  *
12
- * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
 
 
 
 
 
13
  *
14
- * @copyright (c) 2018 Webraftic Ltd
 
 
15
  */
16
- class WCL_ComponentsLicensePage extends WCL_Page {
17
-
18
- /**
19
- * {@inheritdoc}
20
- *
21
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
22
- * @since 1.6.0
23
- * @var string
24
- */
25
- public $id = 'clearfy_components_license';
26
-
27
- /**
28
- * {@inheritdoc}
29
- *
30
- * @var string
31
- */
32
- public $type = 'page';
33
-
34
- /**
35
- * {@inheritdoc}
36
- *
37
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
38
- * @since 1.6.0
39
- * @var string
40
- */
41
- public $page_parent_page;
42
-
43
- /**
44
- * @var int
45
- */
46
- public $page_menu_position = 0;
47
-
48
- /**
49
- * {@inheritdoc}
50
- *
51
- * @var bool
52
- */
53
- public $show_right_sidebar_in_options = false;
54
-
55
- /**
56
- * WCL_LicensePage constructor.
57
- *
58
- * @param \Wbcr_Factory432_Plugin $plugin
59
- *
60
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
- *
62
- */
63
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
64
- $this->menu_title = __( 'License', 'robin-image-optimizer' );
65
- $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
66
- $this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
67
-
68
- parent::__construct( $plugin );
69
- }
70
-
71
  /**
72
- * Requests assets (js and css) for the page.
 
73
  *
74
- * @return void
75
- * @since 1.0.0
76
- * @see FactoryPages432_AdminPage
77
  *
78
  */
79
- public function assets( $scripts, $styles ) {
80
- parent::assets( $scripts, $styles );
81
-
82
- $this->styles->add( WCL_PLUGIN_URL . '/admin/assets/css/components.css' );
83
-
84
- /**
85
- * @param Wbcr_Factory432_StyleList $styles
86
- * @param Wbcr_Factory432_ScriptList $scripts
87
- *
88
- * @since 1.4.0
89
- *
90
- */
91
- do_action( 'wbcr/clearfy/components/page_assets', $scripts, $styles );
92
- }
93
-
94
  /**
95
- * This method simply show contents of the component page.
96
  *
97
- * @throws Exception
98
  */
99
- public function showPageContent() {
100
-
 
 
 
 
 
 
 
 
101
  /**
102
- * @since 1.4.0
103
  *
 
104
  */
105
- $components = apply_filters( 'wbcr/clearfy/license/list_components', [] );
106
-
107
  ?>
108
- <div class="wbcr-factory-page-group-header"><?php _e( '<strong>Products activation</strong>.', 'clearfy' ) ?>
109
- <p>
110
- <?php _e( 'These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'clearfy' ) ?>
111
- </p>
112
- </div>
113
- <div class="wbcr-clearfy-components">
114
- <?php
115
- /**
116
- * @param array $components
117
- *
118
- * @since 1.6.2
119
- */
120
- do_action( 'wbcr/clearfy/license/custom_plugins_card', $components );
121
- ?>
122
-
123
- <?php foreach ( (array) $components as $component ): ?>
124
- <div class="plugin-card">
125
- <div class="plugin-card-top">
126
- <div class="name column-name">
127
- <h3>
128
- <a href="<?php echo esc_url( $component['url'] ) ?>"
129
- class="thickbox open-plugin-details-modal">
130
- You use <?php echo esc_html( $component['title'] ) ?>
131
- <img src="<?php echo esc_attr( $component['icon'] ) ?>" class="plugin-icon"
132
- alt="<?php echo esc_attr( $component['title'] ) ?>">
133
- </a>
134
- </h3>
135
- </div>
136
- <div class="desc column-description">
137
- <?php if ( 'premium' === $component['build'] ): ?>
138
- <ul>
139
- <?php if ( ! empty( $component['key'] ) ): ?>
140
- <li>
141
- <strong><?php _e( 'License key', 'clearfy' ) ?>:
142
- </strong> <?php echo esc_html( $component['key'] ) ?>
143
- </li>
144
- <?php endif; ?>
145
- <?php if ( ! empty( $component['plan'] ) ): ?>
146
- <li>
147
- <strong><?php _e( 'Plan', 'clearfy' ) ?>:</strong>
148
- <?php echo esc_html( $component['plan'] ) ?>
149
- </li>
150
- <?php endif; ?>
151
- <?php if ( ! empty( $component['subscription'] ) ): ?>
152
- <li>
153
- <strong><?php _e( 'Type', 'clearfy' ) ?>:</strong>
154
- <?php echo esc_html( $component['subscription'] ) ?>
155
- </li>
156
- <?php endif; ?>
157
- <?php if ( ! empty( $component['plan'] ) ): ?>
158
- <li>
159
- <strong><?php _e( 'Expired', 'clearfy' ) ?>:
160
- </strong> <?php echo esc_html( $component['expiration_days'] ) ?> <?php _e( 'days remained', 'clearfy' ) ?>
161
- </li>
162
- <?php endif; ?>
163
- </ul>
164
- <?php else: ?>
165
- <p><?php echo esc_html( $component['description'] ); ?></p>
166
- <?php endif; ?>
167
- </div>
168
- </div>
169
- <div class="plugin-card-bottom">
170
- <a href="<?php echo $this->getBaseUrl( $component['license_page_id'] ); ?>"
171
- class="button">
172
- <?php if ( 'premium' === $component['build'] ): ?>
173
- <?php _e( 'License details' ) ?>
174
- <?php else: ?>
175
- <?php _e( 'Activate Premium License' ) ?>
176
- <?php endif; ?>
177
- </a>
178
- </div>
179
- </div>
180
- <?php endforeach; ?>
181
- <div class="clearfix"></div>
182
- </div>
183
- <?php
184
- }
185
-
186
- }
1
  <?php
2
+ // Exit if accessed directly
3
+ if( !defined('ABSPATH') ) {
4
+ exit;
5
+ }
6
+
7
+ /**
8
+ * Страница лицензирования плагина.
9
+ *
10
+ * Поддерживает режим работы с мультисаймами. Вы можете увидеть эту страницу в панели настройки сети.
11
+ *
12
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
13
+ *
14
+ * @copyright (c) 2018 Webraftic Ltd
15
+ */
16
+ class WCL_ComponentsLicensePage extends WCL_Page {
17
+
18
  /**
19
+ * {@inheritdoc}
20
  *
21
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
22
+ * @since 1.6.0
23
+ * @var string
24
+ */
25
+ public $id = 'clearfy_components_license';
26
+
27
+ /**
28
+ * {@inheritdoc}
29
  *
30
+ * @var string
31
+ */
32
+ public $type = 'page';
33
+
34
+ /**
35
+ * {@inheritdoc}
36
  *
37
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
38
+ * @since 1.6.0
39
+ * @var string
40
  */
41
+ public $page_parent_page;
42
+
43
+ /**
44
+ * @var int
45
+ */
46
+ public $page_menu_position = 0;
47
+
48
+ /**
49
+ * {@inheritdoc}
50
+ *
51
+ * @var bool
52
+ */
53
+ public $show_right_sidebar_in_options = false;
54
+
55
+ /**
56
+ * WCL_LicensePage constructor.
57
+ *
58
+ * @param \Wbcr_Factory436_Plugin $plugin
59
+ *
60
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
+ *
62
+ */
63
+ public function __construct(Wbcr_Factory436_Plugin $plugin)
64
+ {
65
+ $this->menu_title = __('License', 'robin-image-optimizer');
66
+ $this->page_menu_short_description = __('Product activation', 'robin-image-optimizer');
67
+ $this->plan_name = __('Clearfy Business', 'robin-image-optimizer');
68
+
69
+ parent::__construct($plugin);
70
+ }
71
+
72
+ /**
73
+ * Requests assets (js and css) for the page.
74
+ *
75
+ * @return void
76
+ * @since 1.0.0
77
+ * @see FactoryPages435_AdminPage
78
+ *
79
+ */
80
+ public function assets($scripts, $styles)
81
+ {
82
+ parent::assets($scripts, $styles);
83
+
84
+ $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
85
+
 
 
 
 
 
 
 
 
 
 
86
  /**
87
+ * @param Wbcr_Factory436_StyleList $styles
88
+ * @param Wbcr_Factory436_ScriptList $scripts
89
  *
90
+ * @since 1.4.0
 
 
91
  *
92
  */
93
+ do_action('wbcr/clearfy/components/page_assets', $scripts, $styles);
94
+ }
95
+
96
+ /**
97
+ * This method simply show contents of the component page.
98
+ *
99
+ * @throws Exception
100
+ */
101
+ public function showPageContent()
102
+ {
103
+
 
 
 
 
104
  /**
105
+ * @since 1.4.0
106
  *
 
107
  */
108
+ $components = apply_filters('wbcr/clearfy/license/list_components', []);
109
+
110
+ ?>
111
+ <div class="wbcr-factory-page-group-header"><?php _e('<strong>Products activation</strong>.', 'clearfy') ?>
112
+ <p>
113
+ <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'clearfy') ?>
114
+ </p>
115
+ </div>
116
+ <div class="wbcr-clearfy-components">
117
+ <?php
118
  /**
119
+ * @param array $components
120
  *
121
+ * @since 1.6.2
122
  */
123
+ do_action('wbcr/clearfy/license/custom_plugins_card', $components);
 
124
  ?>
125
+
126
+ <?php foreach((array)$components as $component): ?>
127
+ <div class="plugin-card">
128
+ <div class="plugin-card-top">
129
+ <div class="name column-name">
130
+ <h3>
131
+ <a href="<?php echo esc_url($component['url']) ?>"
132
+ class="thickbox open-plugin-details-modal">
133
+ You use <?php echo esc_html($component['title']) ?>
134
+ <img src="<?php echo esc_attr($component['icon']) ?>" class="plugin-icon"
135
+ alt="<?php echo esc_attr($component['title']) ?>">
136
+ </a>
137
+ </h3>
138
+ </div>
139
+ <div class="desc column-description">
140
+ <?php if( 'premium' === $component['build'] ): ?>
141
+ <ul>
142
+ <?php if( !empty($component['key']) ): ?>
143
+ <li>
144
+ <strong><?php _e('License key', 'clearfy') ?>:
145
+ </strong> <?php echo esc_html($component['key']) ?>
146
+ </li>
147
+ <?php endif; ?>
148
+ <?php if( !empty($component['plan']) ): ?>
149
+ <li>
150
+ <strong><?php _e('Plan', 'clearfy') ?>:</strong>
151
+ <?php echo esc_html($component['plan']) ?>
152
+ </li>
153
+ <?php endif; ?>
154
+ <?php if( !empty($component['subscription']) ): ?>
155
+ <li>
156
+ <strong><?php _e('Type', 'clearfy') ?>:</strong>
157
+ <?php echo esc_html($component['subscription']) ?>
158
+ </li>
159
+ <?php endif; ?>
160
+ <?php if( !empty($component['plan']) ): ?>
161
+ <li>
162
+ <strong><?php _e('Expired', 'clearfy') ?>:
163
+ </strong> <?php echo esc_html($component['expiration_days']) ?> <?php _e('days remained', 'clearfy') ?>
164
+ </li>
165
+ <?php endif; ?>
166
+ </ul>
167
+ <?php else: ?>
168
+ <p><?php echo esc_html($component['description']); ?></p>
169
+ <?php endif; ?>
170
+ </div>
171
+ </div>
172
+ <div class="plugin-card-bottom">
173
+ <a href="<?php echo $this->getBaseUrl($component['license_page_id']); ?>"
174
+ class="button">
175
+ <?php if( 'premium' === $component['build'] ): ?>
176
+ <?php _e('License details') ?>
177
+ <?php else: ?>
178
+ <?php _e('Activate Premium License') ?>
179
+ <?php endif; ?>
180
+ </a>
181
+ </div>
182
+ </div>
183
+ <?php endforeach; ?>
184
+ <div class="clearfix"></div>
185
+ </div>
186
+ <?php
187
+ }
188
+
189
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/pages/class-pages-components.php CHANGED
@@ -13,152 +13,14 @@ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
- class WCL_ComponentsPage extends WCL_Page {
17
 
18
- /**
19
- * The id of the page in the admin menu.
20
- *
21
- * Mainly used to navigate between pages.
22
- *
23
- * @since 1.0.0
24
- * @see FactoryPages432_AdminPage
25
- *
26
- * @var string
27
- */
28
- public $id = "components";
29
-
30
- public $page_menu_position = 0;
31
-
32
- public $page_menu_dashicon = 'dashicons-admin-plugins';
33
-
34
- public $type = 'page';
35
-
36
- public $show_right_sidebar_in_options = false;
37
-
38
- public $available_for_multisite = true;
39
-
40
- /**
41
- * @param WCL_Plugin $plugin
42
- */
43
- public function __construct(WCL_Plugin $plugin)
44
- {
45
- $this->menu_title = __('Components', 'clearfy');
46
- $this->page_menu_short_description = __('More features for plugin', 'clearfy');
47
-
48
- parent::__construct($plugin);
49
-
50
- $this->plugin = $plugin;
51
- }
52
-
53
- /**
54
- * Requests assets (js and css) for the page.
55
- *
56
- * @return void
57
- * @since 1.0.0
58
- * @see FactoryPages432_AdminPage
59
- *
60
- */
61
- public function assets($scripts, $styles)
62
- {
63
- parent::assets($scripts, $styles);
64
-
65
- $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
66
-
67
- /**
68
- * @param Wbcr_Factory432_StyleList $styles
69
- * @param Wbcr_Factory432_ScriptList $scripts
70
- * @since 1.4.0
71
- *
72
- */
73
- do_action('wbcr/clearfy/components/page_assets', $scripts, $styles);
74
- }
75
-
76
- /**
77
- * We register notifications for some actions
78
- *
79
- * @param $notices
80
- * @param Wbcr_Factory432_Plugin $plugin
81
- *
82
- * @return array
83
- * @see libs\factory\pages\themplates\FactoryPages432_ImpressiveThemplate
84
- */
85
- public function getActionNotices($notices)
86
- {
87
- $notices[] = [
88
- 'conditions' => [
89
- 'wbcr-force-update-components-success' => 1
90
- ],
91
- 'type' => 'success',
92
- 'message' => __('Components have been successfully updated to the latest version.', 'clearfy')
93
- ];
94
-
95
- $notices[] = [
96
- 'conditions' => [
97
- 'wbcr-force-update-components-error' => 'inactive_licence'
98
- ],
99
- 'type' => 'danger',
100
- 'message' => __('To use premium components, you need activate a license!', 'clearfy') . '<a href="admin.php?page=license-wbcr_clearfy" class="btn btn-gold">' . __('Activate license', 'clearfy') . '</a>'
101
- ];
102
-
103
- $notices[] = [
104
- 'conditions' => [
105
- 'wbcr-force-update-components-error' => 'unknown_error'
106
- ],
107
- 'type' => 'danger',
108
- 'message' => __('An unknown error occurred while updating plugin components. Please contact the plugin support team to resolve this issue.', 'hide_my_wp')
109
- ];
110
-
111
- return $notices;
112
- }
113
-
114
- /**
115
- * This method simply sorts the list of components.
116
- *
117
- * @param $components
118
- *
119
- * @return array
120
- */
121
- public function order($components)
122
- {
123
- $deactivate_components = WCL_Plugin::app()->getPopulateOption('deactive_preinstall_components', []);
124
-
125
- $ordered_components = [
126
- 'premium_active' => [],
127
- 'premium_deactive' => [],
128
- 'other' => []
129
- ];
130
-
131
- foreach((array)$components as $component) {
132
-
133
- if( ('premium' === $component['build'] || 'freemium' === $component['build']) && 'internal' === $component['type'] ) {
134
- if( in_array($component['name'], $deactivate_components) ) {
135
- // free component is deactivated
136
- $order_key = 'premium_deactive';
137
- } else {
138
- // free component activated
139
- $order_key = 'premium_active';
140
- }
141
- } else {
142
- $order_key = 'other';
143
- }
144
-
145
- $ordered_components[$order_key][] = $component;
146
- }
147
-
148
- return array_merge($ordered_components['premium_active'], $ordered_components['premium_deactive'], $ordered_components['other']);
149
- }
150
-
151
- /**
152
- * This method simply show contents of the component page.
153
- *
154
- * @throws Exception
155
- */
156
- public function showPageContent()
157
  {
158
  $default_image = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNjAiIGhlaWdodD0iMzYwIiB2aWV3Ym94PSIwIDAgMzYwIDM2MCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0icmdiKDcwLCA4MSwgOTMpIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjE1IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wNTQ2NjY2NjY2NjY2NjciIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4wNDYiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDIiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDU0NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyNDAsIDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjAyODY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4xMDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgNjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA5OCIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMTUzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIwLCA2MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDYzMzMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxODAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0MCwgNjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjE0MTMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsIDEyMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDg5MzMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wODkzMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4wODA2NjY2NjY2NjY2NjciIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMzI2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAxMjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjE1IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDEyMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDk4IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA2MzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDE4MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDIiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMTgwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMTgwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMTUzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA2MzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjA1NDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgMjQwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4xMDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDI0MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDcyIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAsIDI0MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMTE1MzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMjQwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMzI2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAyNDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA4MDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAyNDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjEzMjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAzMDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjAzNzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMTI0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDI4NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxODAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDcyIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyNDAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDI4NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDMwMCkiIC8+PC9zdmc+';
159
- $response = [];
160
 
161
- $response = array_merge($response, [
 
162
  [
163
  'name' => 'hide_my_wp',
164
  'title' => __('Hide my wp', 'clearfy'),
@@ -300,7 +162,7 @@ class WCL_ComponentsPage extends WCL_Page {
300
  ]);
301
 
302
  if( !is_plugin_active('gonzales/gonzales.php') ) {
303
- array_unshift($response, [
304
  'name' => 'assets_manager',
305
  'title' => __('Asset manager', 'clearfy'),
306
  'url' => '#',
@@ -310,7 +172,7 @@ class WCL_ComponentsPage extends WCL_Page {
310
  'description' => __('Selectively disable unused scripts and styles on the pages of your website.', 'clearfy')
311
  ]);
312
  } else {
313
- array_unshift($response, [
314
  'name' => 'gonzales',
315
  'title' => __('Asset manager', 'clearfy'),
316
  'url' => 'https://wordpress.org/plugins/robin-image-optimizer/',
@@ -322,7 +184,7 @@ class WCL_ComponentsPage extends WCL_Page {
322
  ]);
323
  }
324
 
325
- $response[] = [
326
  'name' => 'cyrlitera',
327
  'title' => __('Transliteration of Cyrillic alphabet', 'clearfy'),
328
  'type' => 'internal',
@@ -332,82 +194,6 @@ class WCL_ComponentsPage extends WCL_Page {
332
  'description' => __('Converts Cyrillic permalinks of post, pages, taxonomies and media files to the Latin alphabet. Supports Russian, Ukrainian, Georgian, Bulgarian languages.', 'clearfy')
333
  ];
334
 
335
- $components = $this->order($response);
336
-
337
- /**
338
- * @param array $components
339
- * @since 1.4.0
340
- *
341
- */
342
- $components = apply_filters('wbcr/clearfy/components/items_list', $components);
343
-
344
- ?>
345
- <div class="wbcr-factory-page-group-header"><?php _e('<strong>Plugin Components</strong>.', 'clearfy') ?>
346
- <p>
347
- <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'clearfy') ?>
348
- </p>
349
- </div>
350
- <div class="wbcr-clearfy-components">
351
- <?php
352
- /**
353
- * @since 1.4.0
354
- */
355
- do_action('wbcr/clearfy/components/custom_plugins_card', $components);
356
- ?>
357
-
358
- <?php foreach((array)$components as $component): ?>
359
- <?php
360
-
361
- $slug = $component['name'];
362
-
363
- if( $component['type'] == 'wordpress' || $component['type'] == 'creativemotion' ) {
364
- $slug = $component['base_path'];
365
- }
366
-
367
- $install_button = WCL_Plugin::app()->getInstallComponentsButton($component['type'], $slug);
368
-
369
- $status_class = '';
370
- if( !$install_button->isPluginActivate() ) {
371
- $status_class = ' plugin-status-deactive';
372
- }
373
-
374
- $install_button->addClass('install-now');
375
-
376
- // Delete button
377
- $delete_button = WCL_Plugin::app()->getDeleteComponentsButton($component['type'], $slug);
378
- $delete_button->addClass('delete-now');
379
-
380
- ?>
381
- <div class="plugin-card<?php echo esc_attr($status_class) ?>">
382
- <?php if( isset($component['build']) ): ?>
383
- <div class="plugin-card-<?php echo esc_attr($component['build']) ?>-ribbon"><?php echo ucfirst(esc_html($component['build'])) ?></div>
384
- <?php endif; ?>
385
- <div class="plugin-card-top">
386
- <div class="name column-name">
387
- <h3>
388
- <a href="<?php echo esc_url($component['url']) ?>" class="thickbox open-plugin-details-modal">
389
- <?php echo esc_html($component['title']) ?>
390
- <img src="<?php echo esc_attr($component['icon']) ?>" class="plugin-icon" alt="<?php echo esc_attr($component['title']) ?>">
391
- </a>
392
- </h3>
393
- </div>
394
- <div class="desc column-description">
395
- <p><?php echo esc_html($component['description']); ?></p>
396
- </div>
397
- </div>
398
- <div class="plugin-card-bottom">
399
- <?php if( 'premium' === $component['build'] && !(WCL_plugin::app()->premium->is_activate() && WCL_plugin::app()->premium->is_install_package()) ): ?>
400
- <a target="_blank" href="<?php echo esc_url($component['url']) ?>" class="button button-default install-now"><?php _e('Read more', 'clearfy'); ?></a>
401
- <?php else: ?>
402
- <?php $delete_button->renderButton(); ?><?php $install_button->renderButton(); ?>
403
- <?php endif; ?>
404
- </div>
405
- </div>
406
- <?php endforeach; ?>
407
- <div class="clearfix"></div>
408
- </div>
409
- <?php
410
  }
411
  }
412
-
413
-
13
  exit;
14
  }
15
 
16
+ class WCL_ComponentsPage extends \WBCR\FactoryClearfy227\Pages\Components {
17
 
18
+ public function get_components()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  {
20
  $default_image = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNjAiIGhlaWdodD0iMzYwIiB2aWV3Ym94PSIwIDAgMzYwIDM2MCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0icmdiKDcwLCA4MSwgOTMpIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjE1IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wNTQ2NjY2NjY2NjY2NjciIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4wNDYiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDIiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDU0NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyNDAsIDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjAyODY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4xMDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgNjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA5OCIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMTUzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTIwLCA2MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDYzMzMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxODAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0MCwgNjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjE0MTMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDYwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsIDEyMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDg5MzMzMzMzMzMzMzMzIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wODkzMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4wODA2NjY2NjY2NjY2NjciIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMTIwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMzI2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAxMjApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjE1IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDEyMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDk4IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA2MzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDE4MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDIiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEyMCwgMTgwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4wMzczMzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMTgwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMTUzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA2MzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAxODApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjA1NDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgMjQwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiNkZGQiIGZpbGwtb3BhY2l0eT0iMC4xMDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDI0MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDcyIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAsIDI0MCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMTE1MzMzMzMzMzMzMzMiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE4MCwgMjQwKSIgLz48cG9seWxpbmUgcG9pbnRzPSIxOS44LDAsNDAuMiwwLDYwLDE5LjgsNjAsNDAuMiw0MC4yLDYwLDE5LjgsNjAsMCw0MC4yLDAsMTkuOCwxOS44LDAiIGZpbGw9IiMyMjIiIGZpbGwtb3BhY2l0eT0iMC4xMzI2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjQwLCAyNDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjA4MDY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzAwLCAyNDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iIzIyMiIgZmlsbC1vcGFjaXR5PSIwLjEzMjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAzMDApIiAvPjxwb2x5bGluZSBwb2ludHM9IjE5LjgsMCw0MC4yLDAsNjAsMTkuOCw2MCw0MC4yLDQwLjIsNjAsMTkuOCw2MCwwLDQwLjIsMCwxOS44LDE5LjgsMCIgZmlsbD0iI2RkZCIgZmlsbC1vcGFjaXR5PSIwLjAzNzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utb3BhY2l0eT0iMC4wMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMTI0IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDI4NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxODAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjZGRkIiBmaWxsLW9wYWNpdHk9IjAuMDcyIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyNDAsIDMwMCkiIC8+PHBvbHlsaW5lIHBvaW50cz0iMTkuOCwwLDQwLjIsMCw2MCwxOS44LDYwLDQwLjIsNDAuMiw2MCwxOS44LDYwLDAsNDAuMiwwLDE5LjgsMTkuOCwwIiBmaWxsPSIjMjIyIiBmaWxsLW9wYWNpdHk9IjAuMDI4NjY2NjY2NjY2NjY3IiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIwLjAyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDAsIDMwMCkiIC8+PC9zdmc+';
 
21
 
22
+ $components = [];
23
+ $components = array_merge($components, [
24
  [
25
  'name' => 'hide_my_wp',
26
  'title' => __('Hide my wp', 'clearfy'),
162
  ]);
163
 
164
  if( !is_plugin_active('gonzales/gonzales.php') ) {
165
+ array_unshift($components, [
166
  'name' => 'assets_manager',
167
  'title' => __('Asset manager', 'clearfy'),
168
  'url' => '#',
172
  'description' => __('Selectively disable unused scripts and styles on the pages of your website.', 'clearfy')
173
  ]);
174
  } else {
175
+ array_unshift($components, [
176
  'name' => 'gonzales',
177
  'title' => __('Asset manager', 'clearfy'),
178
  'url' => 'https://wordpress.org/plugins/robin-image-optimizer/',
184
  ]);
185
  }
186
 
187
+ $components[] = [
188
  'name' => 'cyrlitera',
189
  'title' => __('Transliteration of Cyrillic alphabet', 'clearfy'),
190
  'type' => 'internal',
194
  'description' => __('Converts Cyrillic permalinks of post, pages, taxonomies and media files to the Latin alphabet. Supports Russian, Ukrainian, Georgian, Bulgarian languages.', 'clearfy')
195
  ];
196
 
197
+ return $components;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
198
  }
199
  }
 
 
admin/pages/class-pages-defence-titan.php CHANGED
@@ -19,7 +19,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
- * @see FactoryPages432_AdminPage
23
  *
24
  * @var string
25
  */
@@ -78,25 +78,25 @@ class WCL_TitanSecurityPage extends WCL_Page {
78
  public function showPageContent()
79
  {
80
  require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
81
- $install_button = new WCL_InstallPluginsButton('creativemotion', 'anti-spam/anti-spam.php');
82
- $install_button->addClass('wbcr-factory-purchase-premium');
83
  ?>
84
  <script>
85
  jQuery(document).ready(function($) {
86
- $.wbcr_factory_clearfy_224.hooks.add('clearfy/components/updated', function(button, component_name) {
87
- if( component_name.plugin_action == 'install' ) {
88
  button.removeClass('wbcr-factory-purchase-premium');
89
  button.addClass('wbcr-factory-activate-premium');
90
  }
91
 
92
- if( component_name.plugin_action == 'activate' ) {
93
  button.remove();
94
  window.location.href = '<?= admin_url('admin.php?page=dashboard-titan_security'); ?>';
95
  }
96
  });
97
  });
98
  </script>
99
- <div class="wbcr-factory-clearfy-224-multisite-suggetion">
100
  <div class="wbcr-factory-inner-contanier">
101
  <h3>
102
  <a href="https://wordpress.org/plugins/anti-spam" target="_blank"><?php _e('Install Firewall and Malware scanner (Titan sucurity) component', 'clearfy') ?></a>
@@ -110,7 +110,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
110
 
111
  <p style="color:#ff4d00"><?php _e('Installing the component will not take you long, just click the install button, then activate.', 'clearfy') ?></p>
112
  <p style="margin-top:20px">
113
- <?php $install_button->renderLink(); ?>
114
  </p>
115
  </div>
116
  </div>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages435_AdminPage
23
  *
24
  * @var string
25
  */
78
  public function showPageContent()
79
  {
80
  require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
81
+ $install_button = $this->plugin->get_install_component_button('creativemotion', 'anti-spam/anti-spam.php');
82
+ $install_button->add_class('wbcr-factory-purchase-premium');
83
  ?>
84
  <script>
85
  jQuery(document).ready(function($) {
86
+ $.wfactory_436.hooks.add('core/components/updated', function(button, component_name) {
87
+ if( component_name.plugin_action === 'install' ) {
88
  button.removeClass('wbcr-factory-purchase-premium');
89
  button.addClass('wbcr-factory-activate-premium');
90
  }
91
 
92
+ if( component_name.plugin_action === 'activate' ) {
93
  button.remove();
94
  window.location.href = '<?= admin_url('admin.php?page=dashboard-titan_security'); ?>';
95
  }
96
  });
97
  });
98
  </script>
99
+ <div class="wbcr-factory-clearfy-227-multisite-suggetion">
100
  <div class="wbcr-factory-inner-contanier">
101
  <h3>
102
  <a href="https://wordpress.org/plugins/anti-spam" target="_blank"><?php _e('Install Firewall and Malware scanner (Titan sucurity) component', 'clearfy') ?></a>
110
 
111
  <p style="color:#ff4d00"><?php _e('Installing the component will not take you long, just click the install button, then activate.', 'clearfy') ?></p>
112
  <p style="margin-top:20px">
113
+ <?php $install_button->render_link(); ?>
114
  </p>
115
  </div>
116
  </div>
admin/pages/class-pages-defence.php CHANGED
@@ -17,7 +17,7 @@ class WCL_DefencePage extends WCL_Page {
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
- * @see FactoryPages432_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
@@ -132,7 +132,7 @@ class WCL_DefencePage extends WCL_Page {
132
  //'cssClass' => 'postbox'
133
  );
134
 
135
- return wbcr_factory_432_apply_filters_deprecated( 'wbcr_clr_defence_form_options', array(
136
  $form_options,
137
  $this
138
  ), '1.3.1', 'wbcr_clearfy_defence_form_options' );
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages435_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
132
  //'cssClass' => 'postbox'
133
  );
134
 
135
+ return wbcr_factory_436_apply_filters_deprecated( 'wbcr_clr_defence_form_options', array(
136
  $form_options,
137
  $this
138
  ), '1.3.1', 'wbcr_clearfy_defence_form_options' );
admin/pages/class-pages-hide-login-page.php CHANGED
@@ -1,109 +1,109 @@
1
  <?php
2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  /**
4
- * The page Settings.
 
 
 
5
  *
6
  * @since 1.0.0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  */
 
8
 
9
- // Exit if accessed directly
10
- if( !defined('ABSPATH') ) {
11
- exit;
 
 
 
 
 
 
12
  }
13
-
14
- class WCL_HideLoginPage extends WCL_Page {
15
-
16
- /**
17
- * The id of the page in the admin menu.
18
- *
19
- * Mainly used to navigate between pages.
20
- * @see FactoryPages432_AdminPage
21
- *
22
- * @since 1.0.0
23
- * @var string
24
- */
25
- public $id = "clrf_hide_login";
26
-
27
- /**
28
- * @var string
29
- */
30
- public $page_parent_page = 'defence';
31
-
32
- /**
33
- * Тип страницы
34
- * options - предназначена для создании страниц с набором опций и настроек.
35
- * page - произвольный контент, любой html код
36
- *
37
- * @var string
38
- */
39
- public $type = 'page';
40
-
41
- /**
42
- * Позиция закладки в меню плагина.
43
- * 0 - в самом конце, 100 - в самом начале
44
- *
45
- * @var int
46
- */
47
- public $page_menu_position = 30;
48
-
49
- /**
50
- * @var string
51
- */
52
- public $page_menu_dashicon = 'dashicons-images-alt2';
53
-
54
- /**
55
- * @var bool
56
- */
57
- public $available_for_multisite = true;
58
-
59
- /**
60
- * @param WCL_Plugin $plugin
61
- */
62
- public function __construct(WCL_Plugin $plugin)
63
- {
64
- $this->menu_title = __('Hide login page', 'clearfy');
65
- parent::__construct($plugin);
66
-
67
- $this->plugin = $plugin;
68
- }
69
-
70
- /**
71
- * Содержание страницы
72
- */
73
- public function showPageContent()
74
- {
75
- require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
76
- $install_button = new WCL_InstallPluginsButton('wordpress', 'hide-login-page/hide-login-page.php');
77
- $install_button->addClass('wbcr-factory-purchase-premium');
78
- ?>
79
- <script>
80
- jQuery(document).ready(function($) {
81
- $.wbcr_factory_clearfy_224.hooks.add('clearfy/components/updated', function(button, component_name) {
82
- if( component_name.plugin_action == 'install' ) {
83
- button.removeClass('wbcr-factory-purchase-premium');
84
- button.addClass('wbcr-factory-activate-premium');
85
- }
86
-
87
- if( component_name.plugin_action == 'activate' ) {
88
- button.remove();
89
- window.location.href = '<?= $this->getBaseUrl('hlp_hide_login'); ?>';
90
- }
91
- });
92
  });
93
- </script>
94
- <div class="wbcr-factory-clearfy-224-multisite-suggetion">
95
- <div class="wbcr-factory-inner-contanier">
96
- <h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
 
97
 
98
- <p><?php _e('To start protect login page, you need to install the additional component Hide login page!', 'clearfy') ?></p>
99
 
100
- <p><?php _e('Installing the component will not take you long, just click the install button, then activate.', 'clearfy') ?></p>
101
 
102
- <p style="margin-top:20px">
103
- <?php $install_button->renderLink(); ?>
104
- </p>
105
- </div>
106
  </div>
 
107
  <?php
108
- }
109
  }
 
1
  <?php
2
 
3
+ /**
4
+ * The page Settings.
5
+ *
6
+ * @since 1.0.0
7
+ */
8
+
9
+ // Exit if accessed directly
10
+ if( !defined('ABSPATH') ) {
11
+ exit;
12
+ }
13
+
14
+ class WCL_HideLoginPage extends WCL_Page {
15
+
16
  /**
17
+ * The id of the page in the admin menu.
18
+ *
19
+ * Mainly used to navigate between pages.
20
+ * @see FactoryPages435_AdminPage
21
  *
22
  * @since 1.0.0
23
+ * @var string
24
+ */
25
+ public $id = "clrf_hide_login";
26
+
27
+ /**
28
+ * @var string
29
+ */
30
+ public $page_parent_page = 'defence';
31
+
32
+ /**
33
+ * Тип страницы
34
+ * options - предназначена для создании страниц с набором опций и настроек.
35
+ * page - произвольный контент, любой html код
36
+ *
37
+ * @var string
38
+ */
39
+ public $type = 'page';
40
+
41
+ /**
42
+ * Позиция закладки в меню плагина.
43
+ * 0 - в самом конце, 100 - в самом начале
44
+ *
45
+ * @var int
46
+ */
47
+ public $page_menu_position = 30;
48
+
49
+ /**
50
+ * @var string
51
+ */
52
+ public $page_menu_dashicon = 'dashicons-images-alt2';
53
+
54
+ /**
55
+ * @var bool
56
  */
57
+ public $available_for_multisite = true;
58
 
59
+ /**
60
+ * @param WCL_Plugin $plugin
61
+ */
62
+ public function __construct(WCL_Plugin $plugin)
63
+ {
64
+ $this->menu_title = __('Hide login page', 'clearfy');
65
+ parent::__construct($plugin);
66
+
67
+ $this->plugin = $plugin;
68
  }
69
+
70
+ /**
71
+ * Содержание страницы
72
+ */
73
+ public function showPageContent()
74
+ {
75
+ require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
76
+ $install_button = $this->plugin->get_install_component_button('wordpress', 'hide-login-page/hide-login-page.php');
77
+ $install_button->add_class('wbcr-factory-purchase-premium');
78
+ ?>
79
+ <script>
80
+ jQuery(document).ready(function($) {
81
+ $.wfactory_436.hooks.add('core/components/updated', function(button, component_name) {
82
+ if( component_name.plugin_action === 'install' ) {
83
+ button.removeClass('wbcr-factory-purchase-premium');
84
+ button.addClass('wbcr-factory-activate-premium');
85
+ }
86
+
87
+ if( component_name.plugin_action === 'activate' ) {
88
+ button.remove();
89
+ window.location.href = '<?= $this->getBaseUrl('hlp_hide_login'); ?>';
90
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  });
92
+ });
93
+ </script>
94
+ <div class="wbcr-factory-clearfy-227-multisite-suggetion">
95
+ <div class="wbcr-factory-inner-contanier">
96
+ <h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
97
 
98
+ <p><?php _e('To start protect login page, you need to install the additional component Hide login page!', 'clearfy') ?></p>
99
 
100
+ <p><?php _e('Installing the component will not take you long, just click the install button, then activate.', 'clearfy') ?></p>
101
 
102
+ <p style="margin-top:20px">
103
+ <?php $install_button->render_link(); ?>
104
+ </p>
 
105
  </div>
106
+ </div>
107
  <?php
 
108
  }
109
+ }
admin/pages/class-pages-image-optimization.php CHANGED
@@ -19,7 +19,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
- * @see FactoryPages432_AdminPage
23
  *
24
  * @var string
25
  */
@@ -74,31 +74,31 @@ class WCL_ImageOptimizationPage extends WCL_Page {
74
  */
75
  public function showPageContent() {
76
  require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
77
- $install_button = new WCL_InstallPluginsButton( 'wordpress', 'robin-image-optimizer/robin-image-optimizer.php' );
78
- $install_button->addClass( 'wbcr-factory-purchase-premium' );
79
  ?>
80
  <script>
81
  jQuery(document).ready(function($) {
82
- $.wbcr_factory_clearfy_224.hooks.add('clearfy/components/updated', function(button, component_name) {
83
- if( component_name.plugin_action == 'install' ) {
84
  button.removeClass('wbcr-factory-purchase-premium');
85
  button.addClass('wbcr-factory-activate-premium');
86
  }
87
 
88
- if( component_name.plugin_action == 'activate' ) {
89
  button.remove();
90
  window.location.href = '<?= $this->getBaseUrl( 'rio_general' ); ?>';
91
  }
92
  });
93
  });
94
  </script>
95
- <div class="wbcr-factory-clearfy-224-multisite-suggetion">
96
  <div class="wbcr-factory-inner-contanier">
97
  <h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
98
  <p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
99
  <p><?php _e( 'Installing the component will not take you long, just click the install button, then activate.', 'clearfy' ) ?></p>
100
  <p style="margin-top:20px">
101
- <?php $install_button->renderLink(); ?>
102
  </p>
103
  </div>
104
  </div>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages435_AdminPage
23
  *
24
  * @var string
25
  */
74
  */
75
  public function showPageContent() {
76
  require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
77
+ $install_button = $this->plugin->get_install_component_button( 'wordpress', 'robin-image-optimizer/robin-image-optimizer.php' );
78
+ $install_button->add_class( 'wbcr-factory-purchase-premium' );
79
  ?>
80
  <script>
81
  jQuery(document).ready(function($) {
82
+ $.wfactory_436.hooks.add('core/components/updated', function(button, component_name) {
83
+ if( component_name.plugin_action === 'install' ) {
84
  button.removeClass('wbcr-factory-purchase-premium');
85
  button.addClass('wbcr-factory-activate-premium');
86
  }
87
 
88
+ if( component_name.plugin_action === 'activate' ) {
89
  button.remove();
90
  window.location.href = '<?= $this->getBaseUrl( 'rio_general' ); ?>';
91
  }
92
  });
93
  });
94
  </script>
95
+ <div class="wbcr-factory-clearfy-227-multisite-suggetion">
96
  <div class="wbcr-factory-inner-contanier">
97
  <h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
98
  <p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
99
  <p><?php _e( 'Installing the component will not take you long, just click the install button, then activate.', 'clearfy' ) ?></p>
100
  <p style="margin-top:20px">
101
+ <?php $install_button->render_link(); ?>
102
  </p>
103
  </div>
104
  </div>
admin/pages/class-pages-license.php CHANGED
@@ -13,7 +13,7 @@
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
- class WCL_LicensePage extends Wbcr_FactoryClearfy224_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
- * @param \Wbcr_Factory432_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WCL_LicensePage extends Wbcr_FactoryClearfy227_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory436_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
admin/pages/class-pages-performance-google.php CHANGED
@@ -16,7 +16,7 @@
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
- * @see FactoryPages432_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages435_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/class-pages-quick-start.php CHANGED
@@ -17,7 +17,7 @@ class WCL_QuickStartPage extends WCL_Page {
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
- * @see FactoryPages432_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
@@ -81,7 +81,7 @@ class WCL_QuickStartPage extends WCL_Page {
81
  *
82
  * @return void
83
  * @since 1.0.0
84
- * @see FactoryPages432_AdminPage
85
  *
86
  */
87
  public function assets($scripts, $styles)
@@ -107,7 +107,6 @@ class WCL_QuickStartPage extends WCL_Page {
107
  )
108
  );
109
  $this->scripts->localize('wbcr_clearfy_ajax', $params);
110
-
111
  }
112
 
113
  /**
@@ -220,12 +219,23 @@ class WCL_QuickStartPage extends WCL_Page {
220
  <?php endif; ?>
221
  </button>
222
  </div>
223
- </div>
224
  </li>
225
  <?php endforeach; ?>
 
 
 
 
 
 
 
 
 
226
  </ul>
227
  </div>
 
228
  </div>
 
229
  <?php
230
  }
231
  }
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages435_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
81
  *
82
  * @return void
83
  * @since 1.0.0
84
+ * @see FactoryPages435_AdminPage
85
  *
86
  */
87
  public function assets($scripts, $styles)
107
  )
108
  );
109
  $this->scripts->localize('wbcr_clearfy_ajax', $params);
 
110
  }
111
 
112
  /**
219
  <?php endif; ?>
220
  </button>
221
  </div>
222
+
223
  </li>
224
  <?php endforeach; ?>
225
+ <li>
226
+ <div class="wbcr-clearfy-switch">
227
+ <i class="dashicons dashicons-admin-settings"></i>
228
+ <span><?php _e('Configuration wizard', 'clearfy'); ?></span>
229
+ <div class="wbcr-clearfy-switch-confirmation">
230
+ <a href="<?php echo WCL_Plugin::app()->getPluginPageUrl('setup'); ?>" class="btn wbcr-clearfy-button-activate-wizard"><?php _e('Start', 'clearfy'); ?></a>
231
+ </div>
232
+ </div>
233
+ </li>
234
  </ul>
235
  </div>
236
+
237
  </div>
238
+
239
  <?php
240
  }
241
  }
admin/pages/class-pages-seo-double-pages.php CHANGED
@@ -16,7 +16,7 @@
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
- * @see FactoryPages432_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages435_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/class-pages-seo.php CHANGED
@@ -16,7 +16,7 @@
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
- * @see FactoryPages432_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages435_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/class-pages-widgets.php CHANGED
@@ -16,7 +16,7 @@ class WCL_WidgetsPage extends WCL_Page {
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
- * @see FactoryPages432_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages435_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/setup/class-pages-setup.php ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The page Settings.
5
+ *
6
+ * @since 1.0.0
7
+ */
8
+
9
+ // Exit if accessed directly
10
+ if( !defined('ABSPATH') ) {
11
+ exit;
12
+ }
13
+
14
+ class WCL_Setup extends WBCR\FactoryClearfy227\Pages\Setup {
15
+
16
+ /**
17
+ * @param \Wbcr_Factory436_Plugin $plugin
18
+ */
19
+ public function __construct(\Wbcr_Factory436_Plugin $plugin)
20
+ {
21
+ parent::__construct($plugin);
22
+
23
+ $path = WCL_PLUGIN_DIR . '/admin/pages/setup/steps';
24
+
25
+ #Step 1
26
+ $this->register_step($path . '/class-step-default.php', '\WBCR\Clearfy\Pages\Step_Default');
27
+ #Step 2
28
+ $this->register_step($path . '/class-step-google-page-speed-before.php', '\WBCR\Clearfy\Pages\Step_Google_Page_Speed_Before');
29
+ #Step 3
30
+ $this->register_step($path . '/class-step-plugins.php', '\WBCR\Clearfy\Pages\Step_Plugins');
31
+ #Step 4
32
+ $this->register_step($path . '/class-step-setting-speed-optimize.php', '\WBCR\Clearfy\Pages\Step_Setting_Speed_Optimize');
33
+ #Step 5
34
+ $this->register_step($path . '/class-step-setting-seo-optimize.php', '\WBCR\Clearfy\Pages\Step_Setting_Seo');
35
+ #Step 6
36
+ $this->register_step($path . '/class-step-optimize-images.php', '\WBCR\Clearfy\Pages\Step_Optimize_Images');
37
+ #Step 7
38
+ $this->register_step($path . '/class-step-google-page-speed-after.php', '\WBCR\Clearfy\Pages\Step_Google_Page_Speed_After');
39
+ #Step 8
40
+ $this->register_step($path . '/class-step-congratulation.php', '\WBCR\Clearfy\Pages\Step_Congratulation');
41
+ }
42
+
43
+
44
+ /**
45
+ * Requests assets (js and css) for the page.
46
+ *
47
+ * @return void
48
+ * @since 1.0.0
49
+ * @see FactoryPages435_AdminPage
50
+ *
51
+ */
52
+ public function assets($scripts, $styles)
53
+ {
54
+ parent::assets($scripts, $styles);
55
+
56
+ $this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/circular-progress.js');
57
+ $this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/setup.js');
58
+
59
+ $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/setup/page-setup.css');
60
+ }
61
+
62
+ }
admin/pages/setup/steps/class-step-congratulation.php ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Congratulation extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $prev_id = 'step6';
14
+ protected $id = 'step7';
15
+
16
+ //protected $next_id = 'step2';
17
+
18
+ public function get_title()
19
+ {
20
+ return __("Finish", "clearfy");
21
+ }
22
+
23
+ public function html()
24
+ {
25
+ $pricing_page_url = $this->plugin->get_support()->get_pricing_url(true, 'setup_wizard');
26
+ ?>
27
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
28
+ <h3><?php echo __("Congratulations, the plugin configuration is complete!", "clearfy"); ?></h3>
29
+ <p style="text-align: left;">
30
+ <?php _e('You have successfully completed the basic plugin setup! You can go to the general plugin settings to enable other options that we did not offer you.', 'clearfy'); ?>
31
+ </p>
32
+ <hr>
33
+ <div>
34
+ <p style="text-align: left;">
35
+ <?php _e("However, you can still improve your site's Google Page Speed score by simply purchasing the Pro version of our plugin.", "clearfy") ?>
36
+ </p>
37
+ <table style="width: 100%">
38
+ <thead>
39
+ <tr>
40
+ <th></th>
41
+ <th>Free</th>
42
+ <th>PRO</th>
43
+ </tr>
44
+ </thead>
45
+ <tbody>
46
+ <tr>
47
+ <td><a href="https://wordpress.org/plugins/cyrlitera/" target="_blank">
48
+ Transliteration of links and file names</a></td>
49
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
50
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
51
+ </tr>
52
+ <tr>
53
+ <td>Optimize Yoast Seo</td>
54
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
55
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
56
+ </tr>
57
+ <tr>
58
+ <td>Post tools</td>
59
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
60
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
61
+ </tr>
62
+ <tr>
63
+ <td>Admin bar managers</td>
64
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
65
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
66
+ </tr>
67
+ <tr>
68
+ <td><a href="https://wordpress.org/plugins/disable-admin-notices/" target="_blank">Disable admin
69
+ notices</a></td>
70
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
71
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
72
+ </tr>
73
+ <tr>
74
+ <td>Disable widgets</td>
75
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
76
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
77
+ </tr>
78
+ <tr>
79
+ <td>
80
+ <a href="https://wordpress.org/plugins/comments-plus/" target="_blank">Disable comments</a>
81
+ </td>
82
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
83
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
84
+ </tr>
85
+ <tr>
86
+ <td><a href="https://wordpress.org/plugins/gonzales/" target="_blank">Assets Manager</a></td>
87
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
88
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
89
+ </tr>
90
+ <tr>
91
+ <td>Minify and combine (JS, CSS)</td>
92
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
93
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
94
+ </tr>
95
+ <tr>
96
+ <td>Html minify</td>
97
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
98
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
99
+ </tr>
100
+ <tr>
101
+ <td><a href="https://robinoptimizer.com/" target="_blank">Image optimizer</a></td>
102
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
103
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
104
+ </tr>
105
+ <tr>
106
+ <td>Hide login page</td>
107
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
108
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
109
+ </tr>
110
+ <tr>
111
+ <td><a href="https://clearfy.pro/hide-my-wp/" target="_blank">Hide My Wp PRO</a></td>
112
+ <td class="wclearfy-setup__color--red"><span class="dashicons dashicons-minus"></span></td>
113
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
114
+ </tr>
115
+ <tr>
116
+ <td><a href="https://clearfy.pro/assets-manager/" target="_blank">Assets Manager PRO</a></td>
117
+ <td class="wclearfy-setup__color--red"><span class="dashicons dashicons-minus"></span></td>
118
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
119
+ </tr>
120
+ <tr>
121
+ <td>Multisite control</td>
122
+ <td class="wclearfy-setup__color--red"><span class="dashicons dashicons-minus"></span></td>
123
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
124
+ </tr>
125
+ <tr>
126
+ <td>Update manager PRO</td>
127
+ <td class="wclearfy-setup__color--red"><span class="dashicons dashicons-minus"></span></td>
128
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
129
+ </tr>
130
+ <tr>
131
+ <td>SEO friendly images PRO</td>
132
+ <td class="wclearfy-setup__color--red"><span class="dashicons dashicons-minus"></span></td>
133
+ <td class="wclearfy-setup__color--green"><span class="dashicons dashicons-yes"></span></td>
134
+ </tr>
135
+ </tbody>
136
+ </table>
137
+ <p>
138
+ <a href="<?php echo esc_url($pricing_page_url); ?>" class="wclearfy-setup__install-component-button" target="_blank"><?php _e('Go Pro', 'clearfy') ?></a>
139
+ </p>
140
+ </div>
141
+ </div>
142
+ <?php $this->render_button();
143
+ ?>
144
+ <?php
145
+ }
146
+
147
+ protected function continue_step($skip = false)
148
+ {
149
+ $next_id = $this->get_next_id();
150
+ if( !$next_id ) {
151
+ wp_safe_redirect($this->plugin->getPluginPageUrl('quick_start'));
152
+ die();
153
+ }
154
+ wp_safe_redirect($this->page->getActionUrl($next_id));
155
+ die();
156
+ }
157
+ }
admin/pages/setup/steps/class-step-default.php ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Default extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $id = 'step0';
14
+ protected $next_id = 'step1';
15
+
16
+ public function get_title()
17
+ {
18
+ return __("Welcome", 'clearfy');
19
+ }
20
+
21
+ public function html()
22
+ {
23
+ ?>
24
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
25
+ <div class="w-factory-clearfy-227-setup-step__new_onboarding-wrapper">
26
+ <p class="w-factory-clearfy-227-setup-step__new_onboarding-welcome">Welcome to</p>
27
+ <h1 class="w-factory-clearfy-227-logo">
28
+ <img src="<?php echo WCL_PLUGIN_URL ?>/admin/assets/img/clearfylogo-768x300.png" alt="Clearfy">
29
+ </h1>
30
+ <p><?php _e('Optimize your site even faster using the setup wizard!', 'clearfy') ?></p>
31
+ </div>
32
+
33
+ </div>
34
+ <?php $this->render_button(true, false, __('Yes, I want to try the wizard'), 'center'); ?>
35
+ <?php
36
+ }
37
+ }
admin/pages/setup/steps/class-step-google-page-speed-after.php ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Google_Page_Speed_After extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $prev_id = 'step5';
14
+ protected $id = 'step6';
15
+ protected $next_id = 'step7';
16
+
17
+ public function get_title()
18
+ {
19
+ return "Site test #2";
20
+ }
21
+
22
+ public function html()
23
+ {
24
+ $site_url = get_home_url();
25
+ ?>
26
+ <script>
27
+ jQuery(document).ready(function($) {
28
+ wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>", true);
29
+ });
30
+ </script>
31
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
32
+ <h3>Google Page Speed</h3>
33
+ <p style="text-align: left;">
34
+ We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
35
+ is to
36
+ improve the score of your site on Google Page Speed. Memorize the results to make a comparison after
37
+ optimization by the Clearfy plugin.
38
+ </p>
39
+ <div class="wclearfy-gogle-page-speed-audit__errors">Memorize the results to make a comparison after
40
+ optimization by the Clearfy plugin.
41
+ </div>
42
+ <div class="wclearfy-gogle-page-speed-audit__preloader"></div>
43
+ <div class="wclearfy-gogle-page-speed-audit" style="display: none;">
44
+ <div class="wclearfy-score">
45
+ <!-- Desktop -->
46
+ <div class="wclearfy-desktop-score">
47
+ <h3><?php _e('Desktop score', 'clearfy'); ?></h3>
48
+ <div class="wclearfy-desktop-score__circle-wrap">
49
+ <div id="wclearfy-desktop-score__circle" class="wclearfy-score-circle"></div>
50
+ </div>
51
+ </div>
52
+
53
+ <!-- Mobile -->
54
+ <div class="wclearfy-mobile-score">
55
+ <h3><?php _e('Mobile score', 'clearfy'); ?></h3>
56
+ <div class="wclearfy-mobile-score__circle-wrap">
57
+ <div id="wclearfy-mobile-score__circle" class="wclearfy-score-circle"></div>
58
+ </div>
59
+ </div>
60
+ </div>
61
+
62
+
63
+ <!-- Statistics -->
64
+ <div class="wclearfy-statistic">
65
+ <div class="wclearfy-statistic__line">
66
+ <span><?php _e('First Contentful Paint', 'clearfy'); ?></span>
67
+ <div class="wclearfy-statistic__results">
68
+ <span id="wclearfy-statistic__desktop-first-contentful-paint">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-first-contentful-paint">??&nbsp;s</span>
69
+ </div>
70
+ </div>
71
+ <div class="wclearfy-statistic__line">
72
+ <span><?php _e('Speed Index', 'clearfy'); ?></span>
73
+ <div class="wclearfy-statistic__results">
74
+ <span id="wclearfy-statistic__desktop-speed-index">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-speed-index">??&nbsp;s</span>
75
+ </div>
76
+ </div>
77
+ <div class="wclearfy-statistic__line">
78
+ <span><?php _e('Time to Interactive', 'clearfy'); ?></span>
79
+ <div class="wclearfy-statistic__results">
80
+ <span id="wclearfy-statistic__desktop-interactive">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-interactive">??&nbsp;s</span>
81
+ </div>
82
+ </div>
83
+
84
+ <?php
85
+ $site_url = get_home_url();
86
+ $google_page_speed_call = "https://developers.google.com/speed/pagespeed/insights/?url=" . $site_url;
87
+ ?>
88
+
89
+ <div style="margin-top: 5px;font-size:12px;">
90
+ <a href="<?php echo $google_page_speed_call; ?>" target="_blank" style="outline: 0;text-decoration: none;"><?php _e('View complete results', 'clearfy'); ?></a> <?php _e('on Google PageSpeed Insights.', 'clearfy'); ?>
91
+ </div>
92
+ </div>
93
+ </div>
94
+ </div>
95
+ <?php $this->render_button(); ?>
96
+ <?php
97
+ }
98
+ }
admin/pages/setup/steps/class-step-google-page-speed-before.php ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Google_Page_Speed_Before extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $prev_id = 'step0';
14
+ protected $id = 'step1';
15
+ protected $next_id = 'step2';
16
+
17
+ public function get_title()
18
+ {
19
+ return "Site test #1";
20
+ }
21
+
22
+ public function html()
23
+ {
24
+ ?>
25
+ <script>
26
+ jQuery(document).ready(function($) {
27
+ wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>");
28
+ });
29
+ </script>
30
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
31
+ <h3><?php _e('Google Page Speed', 'clearfy') ?></h3>
32
+ <p style="text-align: left;">
33
+ <?php _e('We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
34
+ is to improve the score of your site on Google Page Speed. Memorize the results to make a comparison after
35
+ optimization by the Clearfy plugin.', 'clearfy') ?>
36
+ </p>
37
+ <div class="wclearfy-gogle-page-speed-audit__errors"><?php _e('Memorize the results to make a comparison after
38
+ optimization by the Clearfy plugin.', 'clearfy') ?>
39
+ </div>
40
+ <div class="wclearfy-gogle-page-speed-audit__preloader"></div>
41
+ <div class="wclearfy-gogle-page-speed-audit" style="display: none;">
42
+ <div class="wclearfy-score">
43
+ <!-- Desktop -->
44
+ <div class="wclearfy-desktop-score">
45
+ <h3><?php _e('Desktop score', 'clearfy'); ?></h3>
46
+ <div class="wclearfy-desktop-score__circle-wrap">
47
+ <div id="wclearfy-desktop-score__circle" class="wclearfy-score-circle"></div>
48
+ </div>
49
+ </div>
50
+
51
+ <!-- Mobile -->
52
+ <div class="wclearfy-mobile-score">
53
+ <h3><?php _e('Mobile score', 'clearfy'); ?></h3>
54
+ <div class="wclearfy-mobile-score__circle-wrap">
55
+ <div id="wclearfy-mobile-score__circle" class="wclearfy-score-circle"></div>
56
+ </div>
57
+ </div>
58
+ </div>
59
+
60
+
61
+ <!-- Statistics -->
62
+ <div class="wclearfy-statistic">
63
+ <div class="wclearfy-statistic__line">
64
+ <span><?php _e('First Contentful Paint', 'clearfy'); ?></span>
65
+ <div class="wclearfy-statistic__results">
66
+ <span id="wclearfy-statistic__desktop-first-contentful-paint">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-first-contentful-paint">??&nbsp;s</span>
67
+ </div>
68
+ </div>
69
+ <div class="wclearfy-statistic__line">
70
+ <span><?php _e('Speed Index', 'clearfy'); ?></span>
71
+ <div class="wclearfy-statistic__results">
72
+ <span id="wclearfy-statistic__desktop-speed-index">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-speed-index">??&nbsp;s</span>
73
+ </div>
74
+ </div>
75
+ <div class="wclearfy-statistic__line">
76
+ <span><?php _e('Time to Interactive', 'clearfy'); ?></span>
77
+ <div class="wclearfy-statistic__results">
78
+ <span id="wclearfy-statistic__desktop-interactive">??&nbsp;s</span>&nbsp;/&nbsp;<span id="wclearfy-statistic__mobile-interactive">??&nbsp;s</span>
79
+ </div>
80
+ </div>
81
+
82
+ <?php
83
+ $site_url = get_home_url();
84
+ $google_page_speed_call = "https://developers.google.com/speed/pagespeed/insights/?url=" . $site_url;
85
+ ?>
86
+
87
+ <div style="margin-top: 5px;font-size:12px;">
88
+ <a href="<?php echo $google_page_speed_call; ?>" target="_blank" style="outline: 0;text-decoration: none;"><?php _e('View complete results', 'clearfy'); ?></a> <?php _e('on Google PageSpeed Insights.', 'clearfy'); ?>
89
+ </div>
90
+ </div>
91
+ </div>
92
+ </div>
93
+ <?php $this->render_button(); ?>
94
+ <?php
95
+ }
96
+ }
admin/pages/setup/steps/class-step-optimize-images.php ADDED
@@ -0,0 +1,179 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Optimize_Images extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $prev_id = 'step4';
14
+ protected $id = 'step5';
15
+ protected $next_id = 'step6';
16
+
17
+ public function __construct(\WBCR\FactoryClearfy227\Pages\Setup $page)
18
+ {
19
+ parent::__construct($page);
20
+ }
21
+
22
+
23
+ public function get_title()
24
+ {
25
+ return "Optimize images";
26
+ }
27
+
28
+ /**
29
+ * {@inheritdoc}
30
+ */
31
+ public function assets($scripts, $styles)
32
+ {
33
+ parent::assets($scripts, $styles);
34
+
35
+ $styles->add(WCL_PLUGIN_URL . '/admin/assets/css/setup/step-optimize-images.css');
36
+
37
+ if( defined('WRIO_PLUGIN_ACTIVE') ) {
38
+ $scripts->add(WRIO_PLUGIN_URL . '/admin/assets/js/Chart.min.js', ['jquery'], 'wrio-charts');
39
+ $scripts->add(WRIO_PLUGIN_URL . '/admin/assets/js/statistic.js', ['jquery', 'wrio-charts']);
40
+ }
41
+ }
42
+
43
+ public function html()
44
+ {
45
+ if( !defined('WRIO_PLUGIN_ACTIVE') ) {
46
+ $this->alternate_html();
47
+
48
+ return;
49
+ }
50
+
51
+ $is_premium = wrio_is_license_activate();
52
+ $statistics = \WRIO_Image_Statistic::get_instance();
53
+
54
+ $data = [
55
+ 'is_premium' => $is_premium,
56
+ 'scope' => 'media-library',
57
+ 'stats' => $statistics->get()
58
+ ];
59
+ ?>
60
+
61
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
62
+ <h3><?php _e("Optimize images", "clearfy") ?></h3>
63
+ <p style="text-align: left;">
64
+ <?php _e("We found unoptimized images in your media library. You can run background image optimization with the Robin image optimizer component of the Clearfy plugin. Background optimization is a long process, your images will be optimized after some time, so you won't be able to immediately see the improvement in Google Page Speed, but when the images are fully optimized you will see a score increase in Google Page Speed.", "clearfy"); ?>
65
+ </p>
66
+ <div class="wio-columns wio-page-statistic">
67
+ <div>
68
+ <div class="wio-chart-container wio-overview-chart-container">
69
+ <canvas id="wio-main-chart" width="180" height="180"
70
+ data-unoptimized="<?php echo esc_attr($data['stats']['unoptimized']); ?>"
71
+ data-optimized="<?php echo esc_attr($data['stats']['optimized']); ?>"
72
+ data-errors="<?php echo esc_attr($data['stats']['error']); ?>"
73
+ style="display: block;">
74
+ </canvas>
75
+ <div id="wio-overview-chart-percent"
76
+ class="wio-chart-percent"><?php echo esc_attr($data['stats']['optimized_percent']); ?>
77
+ <span>%</span>
78
+ </div>
79
+ <p class="wio-global-optim-phrase wio-clear">
80
+ <?php _e('You optimized', 'robin-image-optimizer'); ?>
81
+ <span class="wio-total-percent">
82
+ <?php echo esc_attr($data['stats']['optimized_percent']); ?>%
83
+ </span>
84
+ <?php _e("of your website's images", 'robin-image-optimizer'); ?>
85
+ </p>
86
+ </div>
87
+ <div style="margin-left:200px;">
88
+ <div id="wio-overview-chart-legend">
89
+ <ul class="wio-doughnut-legend">
90
+ <li>
91
+ <span style="background-color:#d6d6d6"></span>
92
+ <?php _e('Unoptimized', 'robin-image-optimizer'); ?>-
93
+ <span class="wio-num" id="wio-unoptimized-num">
94
+ <?php echo esc_attr($data['stats']['unoptimized']); ?>
95
+ </span>
96
+ </li>
97
+ <li>
98
+ <span style="background-color:#8bc34a"></span>
99
+ <?php _e('Optimized', 'robin-image-optimizer'); ?>-
100
+ <span class="wio-num" id="wio-optimized-num">
101
+ <?php echo esc_attr($data['stats']['optimized']); ?>
102
+ </span>
103
+ </li>
104
+ <li>
105
+ <span style="background-color:#f1b1b6"></span>
106
+ <?php _e('Error', 'robin-image-optimizer'); ?>-
107
+ <span class="wio-num" id="wio-error-num">
108
+ <?php echo esc_attr($data['stats']['error']); ?>
109
+ </span>
110
+ </li>
111
+ </ul>
112
+ </div>
113
+ <h3 class="screen-reader-text"><?php _e('Statistics', 'robin-image-optimizer'); ?></h3>
114
+ <div class="wio-bars" style="width: 90%">
115
+ <p><?php _e('Original size', 'robin-image-optimizer'); ?></p>
116
+ <div class="wio-bar-negative base-transparent wio-right-outside-number">
117
+ <div id="wio-original-bar" class="wio-progress" style="width: 100%">
118
+ <span class="wio-barnb" id="wio-original-size">
119
+ <?php echo esc_attr(wrio_convert_bytes($data['stats']['original_size'])); ?>
120
+ </span>
121
+ </div>
122
+ </div>
123
+ <p><?php _e('Optimized size', 'robin-image-optimizer'); ?></p>
124
+ <div class="wio-bar-primary base-transparent wio-right-outside-number">
125
+ <div id="wio-optimized-bar" class="wio-progress"
126
+ style="width: <?php echo ($data['stats']['percent_line']) ? esc_attr($data['stats']['percent_line']) : 100; ?>%">
127
+ <span class="wio-barnb" id="wio-optimized-size">
128
+ <?php echo esc_attr(wrio_convert_bytes($data['stats']['optimized_size'])); ?>
129
+ </span>
130
+ </div>
131
+ </div>
132
+ </div>
133
+ <div class="wio-number-you-optimized">
134
+ <p>
135
+ <span id="wio-total-optimized-attachments-pct" class="wio-number">
136
+ <?php echo esc_attr($data['stats']['save_size_percent']); ?>%
137
+ </span>
138
+ <span class="wio-text">
139
+ <?php _e("that's the size you saved <br>by using Image Optimizer", 'robin-image-optimizer'); ?>
140
+ </span>
141
+ </p>
142
+ </div>
143
+ </div>
144
+ </div>
145
+ </div>
146
+
147
+ </div>
148
+ <?php $this->render_button(true, true, __('Shedule optimization and Continue', 'clearfy')); ?>
149
+ <?php
150
+ }
151
+
152
+ protected function continue_step($skip = false)
153
+ {
154
+ if( defined('WRIO_PLUGIN_ACTIVE') ) {
155
+ \WRIO_Plugin::app()->updatePopulateOption('cron_running', 'media-library');
156
+ \WRIO_Cron::start();
157
+ }
158
+ parent::continue_step($skip);
159
+ }
160
+
161
+
162
+ private function alternate_html()
163
+ {
164
+ $install_robin_plugin_btn = $this->plugin->get_install_component_button('wordpress', 'robin-image-optimizer/robin-image-optimizer.php');
165
+ $install_robin_plugin_btn->add_class('wclearfy-setup__install-component-button');
166
+
167
+ ?>
168
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
169
+ <h3><?php _e("Optimize images", "clearfy") ?></h3>
170
+ <p style="text-align: left;">
171
+ <?php _e("Robin Image optimizer plugin isn't installed or activated, you need to install or activate it to optimize your images.", "clearfy"); ?>
172
+ </p>
173
+
174
+ <p style="text-align: center"><?php $install_robin_plugin_btn->render_button(); ?></p>
175
+ </div>
176
+ <?php $this->render_button(false, true); ?>
177
+ <?php
178
+ }
179
+ }
admin/pages/setup/steps/class-step-plugins.php ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Plugins extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
12
+
13
+ protected $prev_id = 'step1';
14
+ protected $id = 'step2';
15
+ protected $next_id = 'step3';
16
+
17
+ public function get_title()
18
+ {
19
+ return "Setup Plugins";
20
+ }
21
+
22
+ public function html()
23
+ {
24
+ $install_robin_plugin_btn = $this->plugin->get_install_component_button('wordpress', 'robin-image-optimizer/robin-image-optimizer.php');
25
+ $install_wp_super_cache_btn = $this->plugin->get_install_component_button('wordpress', 'wp-super-cache/wp-cache.php');
26
+ $install_assets_manager_component_btn = $this->plugin->get_install_component_button('internal', 'assets_manager');
27
+ $install_minify_and_combine_component_btn = $this->plugin->get_install_component_button('internal', 'minify_and_combine');
28
+ ?>
29
+ <div class="w-factory-clearfy-227-setup__inner-wrap">
30
+ <h3><?php _e('Installing plugins', 'clearfy') ?></h3>
31
+ <p style="text-align: left;"><?php _e('We analyzed your site and decided that in order to get the maximum result in
32
+ optimizing your site, you will need to install additional plugins.', 'clearfy') ?></p>
33
+ <table class="form-table">
34
+ <thead>
35
+ <tr>
36
+ <th><?php _e('Plugin', 'clearfy') ?></th>
37
+ <th style="width:50px"><?php _e('Score', 'clearfy') ?></th>
38
+ <th style="width:200px"><?php _e('Score with PRO', 'clearfy') ?></th>
39
+ <th></th>
40
+ </tr>
41
+ </thead>
42
+ <tr>
43
+ <td>Robin image optimizer</td>
44
+ <td style="color:grey">+10</td>
45
+ <td style="color:green">+15</td>
46
+ <td>
47
+ <?php $install_robin_plugin_btn->render_link(); ?>
48
+ </td>
49
+ </tr>
50
+ <tr>
51
+ <td>Assets manager component</td>
52
+ <td style="color:grey">+5</td>
53
+ <td style="color:green">+10</td>
54
+ <td><?php $install_assets_manager_component_btn->render_link(); ?></td>
55
+ </tr>
56
+ <!--<tr>
57
+ <td>WP Super Cache</td>
58
+ <td style="color:grey">+8</td>
59
+ <td></td>
60
+ <td><?php /*$install_wp_super_cache_btn->renderLink(); */ ?></td>
61
+ </tr>-->
62
+ <tr>
63
+ <td>Minify and Combine component</td>
64
+ <td style="color:grey">+10</td>
65
+ <td style="color:green">+15</td>
66
+ <td><?php $install_minify_and_combine_component_btn->render_link(); ?></td>
67
+ </tr>
68
+ </table>
69
+ </div>
70
+ <?php $this->render_button(); ?>
71
+ <?php
72
+ }
73
+ }
admin/pages/setup/steps/class-step-setting-seo-optimize.php ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Setting_Seo extends \WBCR\FactoryClearfy227\Pages\Step_Form {
12
+
13
+ protected $prev_id = 'step3';
14
+ protected $id = 'step4';
15
+ protected $next_id = 'step5';
16
+
17
+ public function get_title()
18
+ {
19
+ return "Optimize SEO";
20
+ }
21
+
22
+ public function get_form_description()
23
+ {
24
+ return __('Recommended settings that can complement your SEO plugin.', 'clearfy');
25
+ }
26
+
27
+ public function get_form_options()
28
+ {
29
+ $options[] = array(
30
+ 'type' => 'checkbox',
31
+ 'way' => 'buttons',
32
+ 'name' => 'content_image_auto_alt',
33
+ 'title' => __('Automatically set the alt attribute', 'clearfy'),
34
+ 'layout' => array('hint-type' => 'icon'),
35
+ 'hint' => __('The alt attribute is mandatory, so most SEO experts say. If you missed or did not fill it at all, it will be automatically assigned and will be equal to the title of the article.', 'clearfy') . '<br><br><b>Clearfy: </b>' . sprintf(__('Replaces the %s, on attribute with an article name %s', 'clearfy'), '<code>img scr="" alt=""</code>', '<code>img scr="" alt="Hello world"</code>'),
36
+ 'default' => true
37
+ );
38
+
39
+ $options[] = array(
40
+ 'type' => 'checkbox',
41
+ 'way' => 'buttons',
42
+ 'name' => 'set_last_modified_headers',
43
+ 'title' => __('Automatically insert the Last Modified header', 'clearfy'),
44
+ 'default' => false,
45
+ 'layout' => array('hint-type' => 'icon'),
46
+ 'hint' => __('Automatically insert the Last Modified header', 'clearfy') . '<br><b>Clearfy: </b>' . __('Removes attachment pages and puts a redirect.', 'clearfy'),
47
+ 'eventsOn' => array(
48
+ 'show' => '.factory-control-disable_frontpage_last_modified_headers'
49
+ ),
50
+ 'eventsOff' => array(
51
+ 'hide' => '.factory-control-disable_frontpage_last_modified_headers'
52
+ )
53
+ );
54
+
55
+ $options[] = array(
56
+ 'type' => 'checkbox',
57
+ 'way' => 'buttons',
58
+ 'name' => 'if_modified_since_headers',
59
+ 'title' => __('Return an If-Modified-Since responce', 'clearfy'),
60
+ 'layout' => array('hint-type' => 'icon'),
61
+ 'hint' => __('Return an If-Modified-Since responce.', 'clearfy') . '<br><b>Clearfy: </b>' . __('Removes attachment pages and puts a redirect.', 'clearfy'),
62
+
63
+ 'default' => false
64
+ );
65
+
66
+ if( $this->plugin->isActivateComponent('yoast_seo') ) {
67
+ $options[] = array(
68
+ 'type' => 'checkbox',
69
+ 'way' => 'buttons',
70
+ 'name' => 'remove_last_item_breadcrumb_yoast',
71
+ 'title' => __('Remove duplicate names in breadcrumbs WP SEO by Yoast', 'clearfy'),
72
+ 'layout' => array('hint-type' => 'icon'),
73
+ 'hint' => __('The last element in the breadcrumbs in the Yoast SEO plugin duplicates the title of the article. Some SEO-specialists consider this duplication to be superfluous.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes duplication of the name in the breadcrumbs of the WP SEO plugin from Yoast.', 'clearfy'),
74
+ 'default' => true
75
+ );
76
+
77
+ $options[] = array(
78
+ 'type' => 'checkbox',
79
+ 'way' => 'buttons',
80
+ 'name' => 'yoast_remove_image_from_xml_sitemap',
81
+ 'title' => sprintf(__('Remove the tag %s from XML site map', 'clearfy'), 'image:image'),
82
+ 'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'green'),
83
+ 'hint' => __('Yandex.Webmaster swears on a standard XML card from the plugin Yoast, tk. it has a specific tag', 'clearfy') . 'image:image<br><br><b>Clearfy: </b>' . sprintf(__('Remove the tag %s from XML site map of the plugin Yoast SEO.', 'clearfy'), 'image:image') . '<br>--<br><span class="wbcr-factory-light-orange-color">' . __('Attention! After activation, turn off the site map and enable it back to regenerate it.', 'clearfy') . '</span>' . '<br><span class="wbcr-factory-light-orange-color">' . __('In older versions of Yoast SEO may not work - update the plugin Yoast', 'clearfy') . '</span>',
84
+ 'default' => true,
85
+ 'eventsOn' => array()
86
+ );
87
+
88
+ $options[] = array(
89
+ 'type' => 'checkbox',
90
+ 'way' => 'buttons',
91
+ 'name' => 'yoast_remove_json_ld_search',
92
+ 'title' => __('Disable JSON-LD sitelinks searchbox', 'clearfy') . '</span>',
93
+ 'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
94
+ 'hint' => __('If you’re not familiar with Search Action it’s the mark-up that helps search engines add a shiny Sitelinks Search Box below your search engine results. For the majority of webmasters the extra search box is an absolutely fantastic feature but for many it’s not required or wanted, especially if a site only has a few pages or if the site uses a customised search platform that only searches blog posts and not pages.', 'clearfy') . ' <br><b>Clearfy: </b>' . __('Disable JSON-LD sitelinks searchbox using WordPress in plugin Yoast SEO.', 'clearfy'),
95
+ 'default' => false
96
+ );
97
+
98
+ $options[] = array(
99
+ 'type' => 'checkbox',
100
+ 'way' => 'buttons',
101
+ 'name' => 'yoast_remove_json_ld_output',
102
+ 'title' => __('Disable Yoast Structured Data', 'clearfy') . ' <span class="wbcr-clearfy-recomended-text"></span>',
103
+ 'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
104
+ 'hint' => __('Prevents output of the script tag of type application/ld+json containing
105
+ schema.org data from the popular Yoast SEO and Yoast SEO Premium plugins.
106
+ There is currently no UI to do so.', 'clearfy') . ' <br><b>Clearfy: </b>' . __('Disable Structured Data in plugin Yoast SEO.', 'clearfy'),
107
+ 'default' => false
108
+ );
109
+
110
+ $options[] = array(
111
+ 'type' => 'checkbox',
112
+ 'way' => 'buttons',
113
+ 'name' => 'yoast_remove_head_comment',
114
+ 'title' => sprintf(__('Remove comment from %s section', 'clearfy'), 'head'),
115
+ 'layout' => array('hint-type' => 'icon'),
116
+ 'hint' => sprintf(__('The Yoast SEO plugin displays a comment of the form %s in %s section', 'clearfy'), '!-- This site is optimized with the Yoast SEO plugin v3.1.1 - https://yoast.com/wordpress/plugins/seo/ --', 'head') . '<br><br><b>Clearfy: </b>' . sprintf(__('Removes the Yoast SEO plugin comment of their section %s', 'clearfy'), 'head'),
117
+ 'default' => true
118
+ );
119
+ }
120
+
121
+ $options[] = array(
122
+ 'type' => 'checkbox',
123
+ 'way' => 'buttons',
124
+ 'name' => 'redirect_archives_date',
125
+ 'title' => __('Remove archives date', 'clearfy'),
126
+ 'layout' => array('hint-type' => 'icon'),
127
+ 'hint' => sprintf(__('Many duplicates in date archives. Imagine, in addition, that your article will be displayed in the main and in the category, you will still receive at least 3 duplicates: in archives by year, month and date, for example %s.', 'clearfy'), '/2016/2016/02 / /2016/02/15') . '<br><b>Clearfy: </b>' . __('Removes all pages with the date archives and puts a redirect.', 'clearfy'),
128
+ 'default' => true
129
+ );
130
+
131
+ $options[] = array(
132
+ 'type' => 'checkbox',
133
+ 'way' => 'buttons',
134
+ 'name' => 'redirect_archives_author',
135
+ 'title' => __('Remove author archives ', 'clearfy'),
136
+ 'layout' => array('hint-type' => 'icon'),
137
+ 'hint' => sprintf(__('If the site is only filled by you - a mandatory item. Allows you to get rid of duplicates on user archives, for example %s.', 'clearfy'), '/author/admin/') . '<br><b>Clearfy: </b>' . __('Removes all pages with the author archives and puts a redirect.', 'clearfy'),
138
+ 'default' => true
139
+ );
140
+
141
+ $options[] = array(
142
+ 'type' => 'checkbox',
143
+ 'way' => 'buttons',
144
+ 'name' => 'attachment_pages_redirect',
145
+ 'title' => __('Remove attachment pages', 'clearfy'),
146
+ 'layout' => array('hint-type' => 'icon'),
147
+ 'hint' => __('Every of the pictures has its own page on the site. Such pages are successfully indexed and create duplicates. The site can have thousands of same-type attachment pages.', 'clearfy') . '<br><b>Clearfy: </b>' . __('Removes attachment pages and puts a redirect.', 'clearfy'),
148
+ 'default' => true
149
+ );
150
+
151
+ $options[] = array(
152
+ 'type' => 'checkbox',
153
+ 'way' => 'buttons',
154
+ 'name' => 'remove_replytocom',
155
+ 'title' => __('Remove ?replytocom', 'clearfy'),
156
+ 'layout' => array('hint-type' => 'icon'),
157
+ 'hint' => sprintf(__('WordPress adds %s to the link "Reply" in the comments, if you use hierarchical comments.', 'clearfy'), '?replytocom') . '<br><b>Clearfy: </b>' . __('?relpytocom remove and and puts a redirect.', 'clearfy'),
158
+ 'default' => true
159
+ );
160
+
161
+ return $options;
162
+ }
163
+ }
admin/pages/setup/steps/class-step-setting-speed-optimize.php ADDED
@@ -0,0 +1,243 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Clearfy\Pages;
4
+
5
+ /**
6
+ * Step
7
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
8
+ * @copyright (c) 23.07.2020, Webcraftic
9
+ * @version 1.0
10
+ */
11
+ class Step_Setting_Speed_Optimize extends \WBCR\FactoryClearfy227\Pages\Step_Form {
12
+
13
+ protected $prev_id = 'step2';
14
+ protected $id = 'step3';
15
+ protected $next_id = 'step4';
16
+
17
+ public function get_title()
18
+ {
19
+ return "Optimize speed";
20
+ }
21
+
22
+ public function get_form_description()
23
+ {
24
+ return 'Caching allows your WordPress site to skip a lot of steps. Instead of going through the whole page generation process every time, your caching plugin makes a copy of the page
25
+ after the first load, and then serves that cached version to every subsequent user.';
26
+ }
27
+
28
+ public function get_form_options()
29
+ {
30
+ /*$options[] = [
31
+ 'type' => 'checkbox',
32
+ 'way' => 'buttons',
33
+ 'name' => 'enable_cache_plugin',
34
+ 'title' => __('Enable Caching', 'clearfy') . ' <span class="wbcr-clearfy-recomended-text">(' . __('Recommended', 'clearfy') . ')</span>',
35
+ 'layout' => ['hint-type' => 'icon'],
36
+ 'hint' => __('Enable simple caching. If you require expert caching, go to the advanced settings of the wp super cache plugin.', 'clearfy'),
37
+ 'default' => true
38
+ ];
39
+
40
+ $options[] = [
41
+ 'type' => 'checkbox',
42
+ 'way' => 'buttons',
43
+ 'name' => 'disable_caching_for_logged_visitors',
44
+ 'title' => __('Disable caching for logged in visitors', 'clearfy') . ' <span class="wbcr-clearfy-recomended-text">(' . __('Recommended', 'clearfy') . ')</span>',
45
+ 'layout' => ['hint-type' => 'icon'],
46
+ 'hint' => __('Caching won\'t work for authenticated users.', 'clearfy'),
47
+ 'default' => true
48
+ ];*/
49
+
50
+ $options[] = [
51
+ 'type' => 'checkbox',
52
+ 'way' => 'buttons',
53
+ 'name' => 'js_optimize',
54
+ 'title' => __('Optimize JavaScript Code?', 'minify-and-combine'),
55
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
56
+ //'hint' => __('Optimize JavaScript Code.', 'minify-and-combine'),
57
+ 'default' => true,
58
+ 'eventsOn' => [
59
+ 'show' => '#wbcr-mac-optimize-js-fields,#wbcr-mac-optimization-danger-message-1'
60
+ ],
61
+ 'eventsOff' => [
62
+ 'hide' => '#wbcr-mac-optimize-js-fields,#wbcr-mac-optimization-danger-message-1'
63
+ ]
64
+ ];
65
+
66
+ /*$options[] = array(
67
+ 'type' => 'html',
68
+ 'html' => array( $this, 'optimizationDangerMessage1' )
69
+ );*/
70
+
71
+ $js_options[] = [
72
+ 'type' => 'checkbox',
73
+ 'way' => 'buttons',
74
+ 'name' => 'js_aggregate',
75
+ 'title' => __('Aggregate JS-files?', 'minify-and-combine'),
76
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
77
+ 'hint' => __('Aggregate all linked JS-files to have them loaded non-render blocking? If this option is off, the individual JS-files will remain in place but will be minified.', 'minify-and-combine'),
78
+ 'default' => false,
79
+ 'eventsOn' => [
80
+ 'show' => '#wbcr-mac-optimization-danger-message-2'
81
+ ],
82
+ 'eventsOff' => [
83
+ 'hide' => '#wbcr-mac-optimization-danger-message-2'
84
+ ]
85
+ ];
86
+
87
+ $js_options[] = [
88
+ 'type' => 'html',
89
+ 'html' => [$this, 'optimizationDangerMessage2']
90
+ ];
91
+
92
+ $options[] = [
93
+ 'type' => 'div',
94
+ 'id' => 'wbcr-mac-optimize-js-fields',
95
+ 'items' => $js_options
96
+ ];
97
+
98
+ $options[] = [
99
+ 'type' => 'checkbox',
100
+ 'way' => 'buttons',
101
+ 'name' => 'css_optimize',
102
+ 'title' => __('Optimize CSS Code?', 'minify-and-combine'),
103
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
104
+ 'hint' => __('If your scripts break because of a JS-error, you might want to try this.', 'minify-and-combine'),
105
+ 'default' => true,
106
+ 'eventsOn' => [
107
+ 'show' => '#wbcr-clr-optimize-css-fields'
108
+ ],
109
+ 'eventsOff' => [
110
+ 'hide' => '#wbcr-clr-optimize-css-fields'
111
+ ]
112
+ ];
113
+
114
+ $css_options[] = [
115
+ 'type' => 'checkbox',
116
+ 'way' => 'buttons',
117
+ 'name' => 'css_aggregate',
118
+ 'title' => __('Aggregate CSS-files?', 'minify-and-combine'),
119
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
120
+ 'hint' => __('Aggregate all linked CSS-files? If this option is off, the individual CSS-files will remain in place but will be minified.', 'minify-and-combine'),
121
+ 'default' => false,
122
+ 'eventsOn' => [
123
+ 'show' => '#wbcr-mac-optimization-danger-message-4'
124
+ ],
125
+ 'eventsOff' => [
126
+ 'hide' => '#wbcr-mac-optimization-danger-message-4'
127
+ ]
128
+ ];
129
+
130
+ $css_options[] = [
131
+ 'type' => 'html',
132
+ 'html' => [$this, 'optimizationDangerMessage4']
133
+ ];
134
+
135
+ $options[] = [
136
+ 'type' => 'div',
137
+ 'id' => 'wbcr-clr-optimize-css-fields',
138
+ 'items' => $css_options
139
+ ];
140
+
141
+ $options[] = [
142
+ 'type' => 'checkbox',
143
+ 'way' => 'buttons',
144
+ 'name' => 'disable_emoji',
145
+ 'title' => __('Disable Emojis', 'clearfy'),
146
+ 'layout' => ['hint-type' => 'icon'],
147
+ 'hint' => __('Emojis are fun and all, but if you are aren’t using them they actually load a JavaScript file (wp-emoji-release.min.js) on every page of your website. For a lot of businesses, this is not needed and simply adds load time to your site. So we recommend disabling this.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes WordPress Emojis JavaScript file (wp-emoji-release.min.js).', 'clearfy'),
148
+ 'default' => true
149
+ ];
150
+
151
+ $options[] = [
152
+ 'type' => 'checkbox',
153
+ 'way' => 'buttons',
154
+ 'name' => 'remove_rsd_link',
155
+ 'title' => __('Remove RSD Link', 'clearfy'),
156
+ 'layout' => ['hint-type' => 'icon'],
157
+ 'hint' => __('The above link is used by blog clients. If you edit your site from your browser then you don’t need this. It is also used by some 3rd party applications that utilize XML-RPC requests. In most cases, this is just unnecessary code.', 'clearfy') . '<br><code>link rel="EditURI" type="application/rsd+xml" title="RSD"</code><br><br><b>Clearfy: </b>' . __('Remove RSD (Real Simple Discovery) link tag.', 'clearfy'),
158
+ 'default' => true
159
+ ];
160
+
161
+ $options[] = [
162
+ 'type' => 'checkbox',
163
+ 'way' => 'buttons',
164
+ 'name' => 'remove_wlw_link',
165
+ 'title' => __('Remove wlwmanifest Link', 'clearfy'),
166
+ 'layout' => ['hint-type' => 'icon'],
167
+ 'hint' => '<code>link rel="wlwmanifest" type="application/wlwmanifest+xml"</code><br>' . __('This link is actually used by Windows Live Writer. If you don’t know use Windows Live Writer, which we are guessing you don’t, this is just unnecessary code.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Remove wlwmanifest (Windows Live Writer) link tag.', 'clearfy'),
168
+ 'default' => true
169
+ ];
170
+
171
+ $options[] = [
172
+ 'type' => 'checkbox',
173
+ 'way' => 'buttons',
174
+ 'name' => 'remove_shortlink_link',
175
+ 'title' => __('Remove Shortlink', 'clearfy'),
176
+ 'layout' => ['hint-type' => 'icon'],
177
+ 'hint' => sprintf(__('By default, the following tag shows up in every WordPress install. %s This is used for a shortlink to your pages and posts. However, if you are already using pretty permalinks, such as domain.com/post, then there is no reason to keep this, it is just unnecessary code.', 'clearfy'), '<br><code>link rel="shortlink" href="https://domain.com?p=712"</code><br>') . '<br><br><b>Clearfy: </b>' . __('Remove Shortlink link tag.', 'clearfy'),
178
+ 'default' => true
179
+ ];
180
+
181
+ $options[] = [
182
+ 'type' => 'checkbox',
183
+ 'way' => 'buttons',
184
+ 'name' => 'remove_adjacent_posts_link',
185
+ 'title' => __('Remove links to previous, next post', 'clearfy'),
186
+ 'layout' => ['hint-type' => 'icon'],
187
+ 'hint' => __('If you use Wordpress as a CMS, then you can delete these links, they can only come in handy for a blog.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Remove the previous and next post links within the wp_head of your wordpress theme.', 'clearfy'),
188
+ 'default' => true
189
+ ];
190
+
191
+ $options[] = [
192
+ 'type' => 'checkbox',
193
+ 'way' => 'buttons',
194
+ 'name' => 'remove_recent_comments_style',
195
+ 'title' => __('Remove .recentcomments styles', 'clearfy'),
196
+ 'layout' => ['hint-type' => 'icon'],
197
+ 'hint' => __('WP by default for the widget "recent comments" prescribes in the code styles that are almost impossible to change, because to them apply! important.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes .recentcomments styles from head section.', 'clearfy'),
198
+ 'default' => true
199
+ ];
200
+
201
+ return $options;
202
+ }
203
+
204
+ /**
205
+ * Adds an html warning notification html markup.
206
+ *
207
+ * @param int $selector_id
208
+ */
209
+ public function optimizationDangerMessage($selector_id = 1)
210
+ {
211
+ ?>
212
+ <div class="form-group">
213
+ <label class="col-sm-4 control-label"></label>
214
+ <div class="control-group col-sm-8">
215
+ <div id="wbcr-mac-optimization-danger-message-<?= $selector_id ?>" class="wbcr-clearfy-danger-message">
216
+ <?php _e('<b>This could break things!</b><br>If you notice any errors on your website after having activated this setting, just deactivate it again, and your site will be back to normal.', 'clearfy') ?>
217
+ </div>
218
+ </div>
219
+ </div>
220
+ <?php
221
+ }
222
+
223
+ public function optimizationDangerMessage1()
224
+ {
225
+ $this->optimizationDangerMessage(1);
226
+ }
227
+
228
+ public function optimizationDangerMessage2()
229
+ {
230
+ $this->optimizationDangerMessage(2);
231
+ }
232
+
233
+ public function optimizationDangerMessage3()
234
+ {
235
+ $this->optimizationDangerMessage(3);
236
+ }
237
+
238
+ public function optimizationDangerMessage4()
239
+ {
240
+ $this->optimizationDangerMessage(4);
241
+ }
242
+
243
+ }
clearfy.php CHANGED
@@ -3,12 +3,12 @@
3
  * Plugin Name: Webcraftic Clearfy – WordPress optimization plugin
4
  * Plugin URI: https://wordpress.org/plugins/clearfy/
5
  * Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
6
- * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.7.0
8
  * Text Domain: clearfy
9
  * Domain Path: /languages/
10
  * Author URI: http://clearfy.pro
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -71,12 +71,12 @@ $plugin_info = array(
71
  ),
72
  // FRAMEWORK MODULES
73
  'load_factory_modules' => array(
74
- array('libs/factory/bootstrap', 'factory_bootstrap_433', 'admin'),
75
- array('libs/factory/forms', 'factory_forms_430', 'admin'),
76
- array('libs/factory/pages', 'factory_pages_432', 'admin'),
77
- array('libs/factory/clearfy', 'factory_clearfy_224', 'all'),
78
- array('libs/factory/freemius', 'factory_freemius_120', 'all'),
79
- array('libs/factory/adverts', 'factory_adverts_112', 'admin')
80
  ),
81
  'load_plugin_components' => array(
82
  'disable_notices' => array(
@@ -116,10 +116,10 @@ $plugin_info = array(
116
 
117
 
118
 
119
- $clearfy_compatibility = new Wbcr_Factory432_Requirements(__FILE__, array_merge($plugin_info, array(
120
  'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
121
- 'required_php_version' => '5.4',
122
- 'required_wp_version' => '4.2.0',
123
  'required_clearfy_check_component' => false
124
  )));
125
 
@@ -147,7 +147,7 @@ define('WBCR_CLEARFY_PLUGIN_ACTIVE', true);
147
 
148
  // Plugin version
149
  define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
150
- define('WCL_FRAMEWORK_VER', 'FACTORY_432_VERSION');
151
 
152
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
153
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
3
  * Plugin Name: Webcraftic Clearfy – WordPress optimization plugin
4
  * Plugin URI: https://wordpress.org/plugins/clearfy/
5
  * Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
6
+ * Author: Creative Motion
7
+ * Version: 1.7.4
8
  * Text Domain: clearfy
9
  * Domain Path: /languages/
10
  * Author URI: http://clearfy.pro
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  // Exit if accessed directly
71
  ),
72
  // FRAMEWORK MODULES
73
  'load_factory_modules' => array(
74
+ array('libs/factory/bootstrap', 'factory_bootstrap_436', 'admin'),
75
+ array('libs/factory/forms', 'factory_forms_433', 'admin'),
76
+ array('libs/factory/pages', 'factory_pages_435', 'admin'),
77
+ array('libs/factory/clearfy', 'factory_clearfy_227', 'all'),
78
+ array('libs/factory/freemius', 'factory_freemius_123', 'all'),
79
+ array('libs/factory/adverts', 'factory_adverts_114', 'admin')
80
  ),
81
  'load_plugin_components' => array(
82
  'disable_notices' => array(
116
 
117
 
118
 
119
+ $clearfy_compatibility = new Wbcr_Factory436_Requirements(__FILE__, array_merge($plugin_info, array(
120
  'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
121
+ 'required_php_version' => '5.6',
122
+ 'required_wp_version' => '4.9.0',
123
  'required_clearfy_check_component' => false
124
  )));
125
 
147
 
148
  // Plugin version
149
  define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
150
+ define('WCL_FRAMEWORK_VER', 'FACTORY_436_VERSION');
151
 
152
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
153
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
components/assets-manager/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
- * @see Wbcr_Factory432_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGNZ_Activation extends Wbcr_Factory432_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
+ * @see Wbcr_Factory436_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGNZ_Activation extends Wbcr_Factory436_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/assets-manager/admin/ajax/save-settings.php CHANGED
@@ -203,7 +203,7 @@ function wam_save_settings_action() {
203
  wbcr_gnz_deploy_mu_plugin();
204
 
205
  // Flush cache for all cache plugins
206
- WbcrFactoryClearfy224_Helpers::flushPageCache();
207
  }
208
 
209
  wp_send_json_success( [
203
  wbcr_gnz_deploy_mu_plugin();
204
 
205
  // Flush cache for all cache plugins
206
+ WbcrFactoryClearfy227_Helpers::flushPageCache();
207
  }
208
 
209
  wp_send_json_success( [
components/assets-manager/admin/boot.php CHANGED
@@ -167,7 +167,7 @@ if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
167
  *
168
  * @param array $widgets
169
  * @param string $position
170
- * @param Wbcr_Factory432_Plugin $plugin
171
  */
172
  add_filter( 'wbcr/factory/pages/impressive/widgets', function ( $widgets, $position, $plugin ) {
173
  if ( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
@@ -225,5 +225,5 @@ if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
225
  return $page_url;
226
  }
227
 
228
- add_filter( 'wbcr_factory_pages_432_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2 );
229
  }
167
  *
168
  * @param array $widgets
169
  * @param string $position
170
+ * @param Wbcr_Factory436_Plugin $plugin
171
  */
172
  add_filter( 'wbcr/factory/pages/impressive/widgets', function ( $widgets, $position, $plugin ) {
173
  if ( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
225
  return $page_url;
226
  }
227
 
228
+ add_filter( 'wbcr_factory_pages_435_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2 );
229
  }
components/assets-manager/admin/pages/class-pages-more-features.php CHANGED
@@ -17,6 +17,6 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  *
18
  * @copyright (c) 2018 Webraftic Ltd
19
  */
20
- class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy224_MoreFeaturesPage {
21
 
22
  }
17
  *
18
  * @copyright (c) 2018 Webraftic Ltd
19
  */
20
+ class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy227_MoreFeaturesPage {
21
 
22
  }
components/assets-manager/admin/pages/class-pages-settings.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
@@ -24,7 +24,7 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy224_PageBase {
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
- * @see FactoryPages432_AdminPage
28
  *
29
  * @var string
30
  */
@@ -48,9 +48,9 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy224_PageBase {
48
  public $available_for_multisite = true;
49
 
50
  /**
51
- * @param Wbcr_Factory432_Plugin $plugin
52
  */
53
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
54
  $this->menu_title = __( 'Assets manager', 'gonzales' );
55
 
56
  if ( ! defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
+ * @see FactoryPages435_AdminPage
28
  *
29
  * @var string
30
  */
48
  public $available_for_multisite = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory436_Plugin $plugin
52
  */
53
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
54
  $this->menu_title = __( 'Assets manager', 'gonzales' );
55
 
56
  if ( ! defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
components/assets-manager/assets/css/assets-conditions.css CHANGED
@@ -1,175 +1,174 @@
1
- /* ==*/
2
- #WBCR-AM .wam-cleditor {
3
- box-sizing: border-box;
4
- /* Conditions */
5
- /* Buttons */
6
- }
7
- #WBCR-AM .wam-cleditor input {
8
- float: none;
9
- position: relative;
10
- top: 0;
11
- padding: 4px;
12
- }
13
- #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-taxonomy"],
14
- #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-post-type"],
15
- #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-some-page"] {
16
- display: none;
17
- }
18
- #WBCR-AM .wam-cleditor .wam-cleditor__text {
19
- width: 300px;
20
- }
21
- #WBCR-AM .wam-cleditor .wam-cleditor__box {
22
- padding: 25px 15px 15px 15px;
23
- border-left: 1px solid #ddd;
24
- background-color: #f9f9f9;
25
- }
26
- #WBCR-AM .wam-cleditor .wam-cleditor__when-empty {
27
- display: none;
28
- }
29
- #WBCR-AM .wam-cleditor .wam-cleditor__empty .wam-cleditor__when-empty {
30
- display: block;
31
- }
32
- #WBCR-AM .wam-cleditor .wam-cleditor__head {
33
- display: flex;
34
- overflow: auto;
35
- background-color: #fff;
36
- border-bottom: 1px solid #ddd;
37
- border-left: 1px solid #ddd;
38
- padding: 10px 15px;
39
- }
40
- #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-left,
41
- #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-right {
42
- display: inline-block;
43
- }
44
- #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-left {
45
- text-align: left;
46
- flex: 2 0 0;
47
- }
48
- #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-right {
49
- text-align: right;
50
- flex: 1 0 0;
51
- }
52
- #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__first-group-title {
53
- text-transform: uppercase;
54
- margin: 0;
55
- font-weight: 600;
56
- font-size: 14px;
57
- line-height: 2.3;
58
- }
59
- #WBCR-AM .wam-cleditor .wam-cleditor__wrap .wam-cleditor__groups {
60
- padding-left: 20px;
61
- border-left: 1px solid #ddd;
62
- }
63
- #WBCR-AM .wam-cleditor .wam-cleditor__groups .wam-cleditor__point {
64
- background-color: #fff;
65
- border: 1px solid #0073aa;
66
- border-radius: 100%;
67
- width: 11px;
68
- height: 11px;
69
- display: block;
70
- position: absolute;
71
- margin-left: -26px;
72
- margin-top: 19px;
73
- }
74
- #WBCR-AM .wam-cleditor .wam-cleditor__groups .wam-cleditor__point:after {
75
- position: absolute;
76
- content: " ";
77
- display: block;
78
- width: 15px;
79
- border-top: 1px solid #ddd;
80
- margin-left: 10px;
81
- margin-top: 4px;
82
- }
83
- #WBCR-AM .wam-cleditor .wam-cleditor__group {
84
- /*@{prefix}__group + @{prefix}__group {
85
- margin-top: 20px;
86
- }*/
87
- }
88
- #WBCR-AM .wam-cleditor .wam-cleditor__group .wam-cleditor__group-type {
89
- display: none;
90
- text-transform: uppercase;
91
- margin: 0;
92
- line-height: 2.3;
93
- font-size: 12px;
94
- font-weight: bold;
95
- font-style: normal;
96
- color: #222;
97
- background: #f3f3f3;
98
- text-align: center;
99
- border-radius: 3px;
100
- padding: 5px 10px 5px 10px;
101
- }
102
- #WBCR-AM .wam-cleditor .wam-cleditor__empty .wam-cleditor__conditions {
103
- display: none;
104
- }
105
- #WBCR-AM .wam-cleditor .wam-cleditor__condition {
106
- position: relative;
107
- }
108
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint,
109
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint-content {
110
- display: none;
111
- }
112
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint {
113
- position: relative;
114
- display: inline-block;
115
- padding: 0 6px 0 3px;
116
- }
117
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint-icon {
118
- background: url('../img/help.png') no-repeat 0 0 transparent;
119
- position: relative;
120
- height: 14px;
121
- width: 13px;
122
- display: inline-block;
123
- cursor: help;
124
- vertical-align: middle;
125
- top: -1px;
126
- opacity: 0.55;
127
- }
128
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint:hover .wam-cleditor__hint-content {
129
- display: block;
130
- position: absolute;
131
- width: 280px;
132
- background-color: rgba(0, 0, 0, 0.8);
133
- white-space: normal;
134
- padding: 10px 12px 12px 12px;
135
- font-weight: normal;
136
- line-height: 150%;
137
- border-radius: 4px;
138
- color: #fff;
139
- font-size: 13px;
140
- z-index: 999;
141
- }
142
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint .wam-cleditor__hint-content,
143
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint .wam-cleditor__hint-content a {
144
- color: #fff;
145
- }
146
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__operator-and {
147
- display: block;
148
- color: rgba(0, 0, 0, 0.7);
149
- font-weight: bold;
150
- border-top: 1px solid #ddd;
151
- margin: 18px 0;
152
- position: relative;
153
- }
154
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__operator-and span {
155
- position: absolute;
156
- top: -10px;
157
- background-color: #f9f9f9;
158
- padding-right: 7px;
159
- text-transform: uppercase;
160
- }
161
- #WBCR-AM .wam-cleditor .wam-cleditor__condition:first-child .wam-cleditor__operator-and {
162
- display: none;
163
- }
164
- #WBCR-AM .wam-cleditor .wam-cleditor__condition > span {
165
- display: inline-block;
166
- vertical-align: top;
167
- }
168
- #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__condition-actions {
169
- position: absolute;
170
- right: 0;
171
- }
172
- #WBCR-AM .wam-cleditor .wam-cleditor__buttons-group {
173
- margin-top: 20px;
174
- }
175
- /*# sourceMappingURL=assets-conditions.css.map */
1
+ /* ==*/
2
+ #WBCR-AM .wam-cleditor {
3
+ box-sizing: border-box;
4
+ /* Conditions */
5
+ /* Buttons */
6
+ }
7
+ #WBCR-AM .wam-cleditor input {
8
+ float: none;
9
+ position: relative;
10
+ top: 0;
11
+ padding: 4px;
12
+ }
13
+ #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-taxonomy"],
14
+ #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-post-type"],
15
+ #WBCR-AM .wam-cleditor.wam-cleditor__disable-plugin-mode .wam-cleditor__param-select option[value="location-some-page"] {
16
+ display: none;
17
+ }
18
+ #WBCR-AM .wam-cleditor .wam-cleditor__text {
19
+ width: 300px;
20
+ }
21
+ #WBCR-AM .wam-cleditor .wam-cleditor__box {
22
+ padding: 25px 15px 15px 15px;
23
+ border-left: 1px solid #ddd;
24
+ background-color: #f9f9f9;
25
+ }
26
+ #WBCR-AM .wam-cleditor .wam-cleditor__when-empty {
27
+ display: none;
28
+ }
29
+ #WBCR-AM .wam-cleditor .wam-cleditor__empty .wam-cleditor__when-empty {
30
+ display: block;
31
+ }
32
+ #WBCR-AM .wam-cleditor .wam-cleditor__head {
33
+ display: flex;
34
+ overflow: auto;
35
+ background-color: #fff;
36
+ border-bottom: 1px solid #ddd;
37
+ border-left: 1px solid #ddd;
38
+ padding: 10px 15px;
39
+ }
40
+ #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-left,
41
+ #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-right {
42
+ display: inline-block;
43
+ }
44
+ #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-left {
45
+ text-align: left;
46
+ flex: 2 0 0;
47
+ }
48
+ #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__head-right {
49
+ text-align: right;
50
+ flex: 1 0 0;
51
+ }
52
+ #WBCR-AM .wam-cleditor .wam-cleditor__head .wam-cleditor__first-group-title {
53
+ text-transform: uppercase;
54
+ margin: 0;
55
+ font-weight: 600;
56
+ font-size: 14px;
57
+ line-height: 2.3;
58
+ }
59
+ #WBCR-AM .wam-cleditor .wam-cleditor__wrap .wam-cleditor__groups {
60
+ padding-left: 20px;
61
+ border-left: 1px solid #ddd;
62
+ }
63
+ #WBCR-AM .wam-cleditor .wam-cleditor__groups .wam-cleditor__point {
64
+ background-color: #fff;
65
+ border: 1px solid #0073aa;
66
+ border-radius: 100%;
67
+ width: 11px;
68
+ height: 11px;
69
+ display: block;
70
+ position: absolute;
71
+ margin-left: -26px;
72
+ margin-top: 19px;
73
+ }
74
+ #WBCR-AM .wam-cleditor .wam-cleditor__groups .wam-cleditor__point:after {
75
+ position: absolute;
76
+ content: " ";
77
+ display: block;
78
+ width: 15px;
79
+ border-top: 1px solid #ddd;
80
+ margin-left: 10px;
81
+ margin-top: 4px;
82
+ }
83
+ #WBCR-AM .wam-cleditor .wam-cleditor__group {
84
+ /*@{prefix}__group + @{prefix}__group {
85
+ margin-top: 20px;
86
+ }*/
87
+ }
88
+ #WBCR-AM .wam-cleditor .wam-cleditor__group .wam-cleditor__group-type {
89
+ display: none;
90
+ text-transform: uppercase;
91
+ margin: 0;
92
+ line-height: 2.3;
93
+ font-size: 12px;
94
+ font-weight: bold;
95
+ font-style: normal;
96
+ color: #222;
97
+ background: #f3f3f3;
98
+ text-align: center;
99
+ border-radius: 3px;
100
+ padding: 5px 10px 5px 10px;
101
+ }
102
+ #WBCR-AM .wam-cleditor .wam-cleditor__empty .wam-cleditor__conditions {
103
+ display: none;
104
+ }
105
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition {
106
+ position: relative;
107
+ }
108
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint,
109
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint-content {
110
+ display: none;
111
+ }
112
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint {
113
+ position: relative;
114
+ display: inline-block;
115
+ padding: 0 6px 0 3px;
116
+ }
117
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint-icon {
118
+ background: url('../img/help.png') no-repeat 0 0 transparent;
119
+ position: relative;
120
+ height: 14px;
121
+ width: 13px;
122
+ display: inline-block;
123
+ cursor: help;
124
+ vertical-align: middle;
125
+ top: -1px;
126
+ opacity: 0.55;
127
+ }
128
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint:hover .wam-cleditor__hint-content {
129
+ display: block;
130
+ position: absolute;
131
+ width: 280px;
132
+ background-color: rgba(0, 0, 0, 0.8);
133
+ white-space: normal;
134
+ padding: 10px 12px 12px 12px;
135
+ font-weight: normal;
136
+ line-height: 150%;
137
+ border-radius: 4px;
138
+ color: #fff;
139
+ font-size: 13px;
140
+ z-index: 999;
141
+ }
142
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint .wam-cleditor__hint-content,
143
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__hint .wam-cleditor__hint-content a {
144
+ color: #fff;
145
+ }
146
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__operator-and {
147
+ display: block;
148
+ color: rgba(0, 0, 0, 0.7);
149
+ font-weight: bold;
150
+ border-top: 1px solid #ddd;
151
+ margin: 18px 0;
152
+ position: relative;
153
+ }
154
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__operator-and span {
155
+ position: absolute;
156
+ top: -10px;
157
+ background-color: #f9f9f9;
158
+ padding-right: 7px;
159
+ text-transform: uppercase;
160
+ }
161
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition:first-child .wam-cleditor__operator-and {
162
+ display: none;
163
+ }
164
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition > span {
165
+ display: inline-block;
166
+ vertical-align: top;
167
+ }
168
+ #WBCR-AM .wam-cleditor .wam-cleditor__condition .wam-cleditor__condition-actions {
169
+ position: absolute;
170
+ right: 0;
171
+ }
172
+ #WBCR-AM .wam-cleditor .wam-cleditor__buttons-group {
173
+ margin-top: 20px;
174
+ }
 
components/assets-manager/assets/css/assets-manager.css CHANGED
@@ -1,1209 +1,1208 @@
1
- /**
2
- * Assets manager styles
3
- * @author Webcraftic <wordpress.webraftic@gmail.com>
4
- * @copyright Webcraftic 05.09.2019
5
- */
6
- html,
7
- body {
8
- overflow: hidden !important;
9
- }
10
- html {
11
- line-height: 1.15 !important;
12
- -webkit-text-size-adjust: 100% !important;
13
- box-sizing: border-box !important;
14
- }
15
- body {
16
- margin: 0 !important;
17
- padding: 0 !important;
18
- background: #FFF !important;
19
- }
20
- body,
21
- body p {
22
- font-family: Arial, "Helvetica Neue", sans-serif;
23
- }
24
- #WBCR-AM {
25
- /**
26
- * Reset styles
27
- * @author Webcraftic <wordpress.webraftic@gmail.com>
28
- * @copyright Webcraftic 15.10.2018
29
- */
30
- /**
31
- * Placeholderss
32
- */
33
- /**
34
- * Tabless
35
-
36
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
37
- * @copyright Webcraftic 26.08.2019
38
- */
39
- /**
40
- * Tooltips
41
-
42
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
43
- * @copyright Webcraftic 26.08.2019
44
- */
45
- /**
46
- * Float panel
47
-
48
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
49
- * @copyright Webcraftic 26.08.2019
50
- */
51
- /**
52
- * Tabs
53
-
54
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
55
- * @copyright Webcraftic 26.08.2019
56
- */
57
- /** ---------------- PLUGINS TABS------------------------- */
58
- /** ---------------- /PLUGINS TABS------------------------ */
59
- /*.wam-help-hint {
60
- //display: inline-block;
61
- //width: 16px;
62
- //height: 16px;
63
- //line-height: 0 !important;
64
- //padding: 0;
65
- font-size: 11px;
66
- font-style: normal;
67
- text-align: left;
68
- color: #fff;
69
- background: #b4b5b5;
70
- border-radius: 2px;
71
-
72
- img {
73
- display: inline-block;
74
- margin: 3px 0 0 4px;
75
- }
76
- }*/
77
- }
78
- #WBCR-AM *,
79
- #WBCR-AM *:before,
80
- #WBCR-AM *:after {
81
- -webkit-box-sizing: border-box;
82
- -moz-box-sizing: border-box;
83
- box-sizing: border-box;
84
- }
85
- #WBCR-AM,
86
- #WBCR-AM h2,
87
- #WBCR-AM h3,
88
- #WBCR-AM h4,
89
- #WBCR-AM h5,
90
- #WBCR-AM h6,
91
- #WBCR-AM p,
92
- #WBCR-AM strong,
93
- #WBCR-AM b,
94
- #WBCR-AM span,
95
- #WBCR-AM em,
96
- #WBCR-AM i,
97
- #WBCR-AM a,
98
- #WBCR-AM div,
99
- #WBCR-AM main,
100
- #WBCR-AM section,
101
- #WBCR-AM li,
102
- #WBCR-AM button,
103
- #WBCR-AM input[type="submit"],
104
- #WBCR-AM input[type="reset"],
105
- #WBCR-AM .wbcr-gnz-switch-premium {
106
- font-family: Arial, "Helvetica Neue", sans-serif;
107
- font-size: 14px;
108
- font-style: normal;
109
- font-weight: normal;
110
- text-transform: none;
111
- text-shadow: none;
112
- }
113
- #WBCR-AM h1 {
114
- font-size: 2em;
115
- margin: 0.67em 0;
116
- }
117
- #WBCR-AM hr {
118
- box-sizing: content-box;
119
- height: 0;
120
- overflow: visible;
121
- }
122
- #WBCR-AM pre {
123
- font-family: monospace, monospace;
124
- font-size: 1em;
125
- }
126
- #WBCR-AM a {
127
- background-color: transparent;
128
- }
129
- #WBCR-AM abbr[title] {
130
- border-bottom: none;
131
- text-decoration: underline dotted;
132
- }
133
- #WBCR-AM b,
134
- #WBCR-AM strong {
135
- font-weight: bolder;
136
- }
137
- #WBCR-AM code,
138
- #WBCR-AM kbd,
139
- #WBCR-AM samp {
140
- font-family: monospace, monospace;
141
- font-size: 1em;
142
- }
143
- #WBCR-AM small {
144
- font-size: 80%;
145
- }
146
- #WBCR-AM sub,
147
- #WBCR-AM sup {
148
- font-size: 75%;
149
- line-height: 0;
150
- position: relative;
151
- vertical-align: baseline;
152
- }
153
- #WBCR-AM sub {
154
- bottom: -0.25em;
155
- }
156
- #WBCR-AM sup {
157
- top: -0.5em;
158
- }
159
- #WBCR-AM img {
160
- border-style: none;
161
- }
162
- #WBCR-AM button,
163
- #WBCR-AM input,
164
- #WBCR-AM optgroup,
165
- #WBCR-AM select,
166
- #WBCR-AM textarea {
167
- font-family: inherit;
168
- font-size: 100%;
169
- line-height: 1.15;
170
- margin: 0;
171
- height: auto;
172
- width: auto;
173
- }
174
- #WBCR-AM button,
175
- #WBCR-AM input,
176
- #WBCR-AM optgroup,
177
- #WBCR-AM select,
178
- #WBCR-AM textarea,
179
- #WBCR-AM button:hover,
180
- #WBCR-AM input:hover,
181
- #WBCR-AM optgroup:hover,
182
- #WBCR-AM select:hover,
183
- #WBCR-AM textarea:hover,
184
- #WBCR-AM button:focus,
185
- #WBCR-AM input:focus,
186
- #WBCR-AM optgroup:focus,
187
- #WBCR-AM select:focus,
188
- #WBCR-AM textarea:focus {
189
- -moz-box-shadow: none;
190
- -ms-box-shadow: none;
191
- -webkit-box-shadow: none;
192
- -o-box-shadow: none;
193
- }
194
- #WBCR-AM button,
195
- #WBCR-AM input {
196
- overflow: visible;
197
- }
198
- #WBCR-AM button,
199
- #WBCR-AM select {
200
- text-transform: none;
201
- }
202
- #WBCR-AM button,
203
- #WBCR-AM [type="button"],
204
- #WBCR-AM [type="reset"],
205
- #WBCR-AM [type="submit"] {
206
- -webkit-appearance: button;
207
- }
208
- #WBCR-AM button::-moz-focus-inner,
209
- #WBCR-AM [type="button"]::-moz-focus-inner,
210
- #WBCR-AM [type="reset"]::-moz-focus-inner,
211
- #WBCR-AM [type="submit"]::-moz-focus-inner {
212
- border-style: none;
213
- padding: 0;
214
- }
215
- #WBCR-AM button:-moz-focusring,
216
- #WBCR-AM [type="button"]:-moz-focusring,
217
- #WBCR-AM [type="reset"]:-moz-focusring,
218
- #WBCR-AM [type="submit"]:-moz-focusring {
219
- outline: 1px dotted ButtonText;
220
- }
221
- #WBCR-AM fieldset {
222
- padding: 0.35em 0.75em 0.625em;
223
- }
224
- #WBCR-AM legend {
225
- box-sizing: border-box;
226
- color: inherit;
227
- display: table;
228
- max-width: 100%;
229
- padding: 0;
230
- white-space: normal;
231
- }
232
- #WBCR-AM textarea {
233
- overflow: auto;
234
- }
235
- #WBCR-AM [type="checkbox"],
236
- #WBCR-AM [type="radio"] {
237
- box-sizing: border-box;
238
- padding: 0;
239
- }
240
- #WBCR-AM [type="number"]::-webkit-inner-spin-button,
241
- #WBCR-AM [type="number"]::-webkit-outer-spin-button {
242
- height: auto;
243
- }
244
- #WBCR-AM [type="search"] {
245
- -webkit-appearance: textfield;
246
- outline-offset: -2px;
247
- }
248
- #WBCR-AM [type="search"]::-webkit-search-decoration {
249
- -webkit-appearance: none;
250
- }
251
- #WBCR-AM ::-webkit-file-upload-button {
252
- -webkit-appearance: button;
253
- font: inherit;
254
- }
255
- #WBCR-AM fieldset {
256
- padding: 0.35em 0.75em 0.625em;
257
- }
258
- #WBCR-AM legend {
259
- box-sizing: border-box;
260
- color: inherit;
261
- display: table;
262
- max-width: 100%;
263
- padding: 0;
264
- white-space: normal;
265
- }
266
- #WBCR-AM progress {
267
- vertical-align: baseline;
268
- }
269
- #WBCR-AM textarea {
270
- overflow: auto;
271
- }
272
- #WBCR-AM [type=checkbox],
273
- #WBCR-AM [type=radio] {
274
- box-sizing: border-box;
275
- padding: 0;
276
- }
277
- #WBCR-AM [type=number]::-webkit-inner-spin-button,
278
- #WBCR-AM [type=number]::-webkit-outer-spin-button {
279
- height: auto;
280
- }
281
- #WBCR-AM [type=search] {
282
- -webkit-appearance: textfield;
283
- outline-offset: -2px;
284
- }
285
- #WBCR-AM [type=search]::-webkit-search-decoration {
286
- -webkit-appearance: none;
287
- }
288
- #WBCR-AM ::-webkit-file-upload-button {
289
- -webkit-appearance: button;
290
- font: inherit;
291
- }
292
- #WBCR-AM details {
293
- display: block;
294
- }
295
- #WBCR-AM summary {
296
- display: list-item;
297
- }
298
- #WBCR-AM template {
299
- display: none;
300
- }
301
- #WBCR-AM [hidden] {
302
- display: none;
303
- }
304
- #WBCR-AM table,
305
- #WBCR-AM caption,
306
- #WBCR-AM tbody,
307
- #WBCR-AM tfoot,
308
- #WBCR-AM thead,
309
- #WBCR-AM tr,
310
- #WBCR-AM th,
311
- #WBCR-AM td {
312
- margin: 0;
313
- padding: 0;
314
- border: 0;
315
- font-size: 100%;
316
- font: inherit;
317
- vertical-align: middle;
318
- line-height: 1.2;
319
- }
320
- #WBCR-AM table {
321
- table-layout: auto;
322
- border-collapse: collapse;
323
- border-spacing: 0;
324
- }
325
- #WBCR-AM span {
326
- display: inline;
327
- margin: 0;
328
- }
329
- #WBCR-AM input[type="text"]::-moz-placeholder {
330
- color: #cccccc;
331
- }
332
- #WBCR-AM input[type="text"]::-webkit-input-placeholder,
333
- #WBCR-AM textarea::-webkit-input-placeholder {
334
- color: #cccccc;
335
- }
336
- #WBCR-AM input[type="text"]:-ms-input-placeholder,
337
- #WBCR-AM textarea:-ms-input-placeholder {
338
- color: #cccccc;
339
- }
340
- #WBCR-AM input[type="text"]::-ms-input-placeholder,
341
- #WBCR-AM textarea::-ms-input-placeholder {
342
- color: #cccccc;
343
- }
344
- #WBCR-AM input[type="text"]::placeholder,
345
- #WBCR-AM textarea::placeholder {
346
- color: #cccccc;
347
- }
348
- #WBCR-AM a {
349
- text-decoration: none;
350
- color: #007acc;
351
- border: none;
352
- background: none;
353
- }
354
- #WBCR-AM a:hover {
355
- text-decoration: underline;
356
- border: inherit;
357
- background: inherit;
358
- }
359
- #WBCR-AM button,
360
- #WBCR-AM [type=submit] {
361
- color: black;
362
- font-weight: 400;
363
- padding: 0;
364
- line-height: 1.5;
365
- }
366
- #WBCR-AM label {
367
- color: white;
368
- margin: 0;
369
- font-weight: 400;
370
- }
371
- #WBCR-AM select,
372
- #WBCR-AM [type=text] {
373
- height: 32px;
374
- }
375
- #WBCR-AM .visually-hidden {
376
- position: absolute;
377
- overflow: hidden;
378
- clip: rect(0 0 0 0);
379
- -webkit-clip-path: inset(100%);
380
- clip-path: inset(100%);
381
- width: 1px;
382
- height: 1px;
383
- margin: -1px;
384
- padding: 0;
385
- white-space: nowrap;
386
- border: 0;
387
- }
388
- #WBCR-AM .wam-table {
389
- width: 100%;
390
- box-sizing: border-box;
391
- table-layout: fixed;
392
- border-collapse: collapse;
393
- }
394
- #WBCR-AM .wam-table__handle-deps {
395
- margin-top: 15px;
396
- }
397
- #WBCR-AM .wam-table__handle-deps span,
398
- #WBCR-AM .wam-table__handle-deps a {
399
- font-size: 11px !important;
400
- }
401
- #WBCR-AM .wam-table__handle-deps a {
402
- color: red;
403
- text-decoration: underline;
404
- }
405
- #WBCR-AM .wam-table tr:nth-child(2n) > td {
406
- background: #f9f9f9;
407
- }
408
- #WBCR-AM .wam-table th {
409
- padding: 12px 10px;
410
- text-align: left;
411
- color: #333;
412
- background: #ECEDED;
413
- box-shadow: none;
414
- }
415
- #WBCR-AM .wam-table th:not(:last-child) {
416
- border-right: 2px solid #FFF;
417
- }
418
- #WBCR-AM .wam-table__th-actions {
419
- width: 200px;
420
- }
421
- #WBCR-AM .wam-table__th-type {
422
- width: 100px;
423
- }
424
- #WBCR-AM .wam-table__th-version {
425
- width: 100px;
426
- }
427
- #WBCR-AM .wam-table__th-size {
428
- width: 100px;
429
- }
430
- #WBCR-AM .wam-table__th-plugins-list,
431
- #WBCR-AM .wam-table__td-plugins-list {
432
- width: 350px;
433
- }
434
- #WBCR-AM .wam-table td {
435
- padding: 17px 10px;
436
- vertical-align: top;
437
- text-align: left;
438
- box-shadow: none;
439
- }
440
- #WBCR-AM .wam-table__td-handle {
441
- word-break: break-word;
442
- }
443
- #WBCR-AM .wam-table__td-plugins-list {
444
- padding: 0 !important;
445
- }
446
- #WBCR-AM .wam-table__th-plugins-settings,
447
- #WBCR-AM .wam-table__td-plugins-settings {
448
- width: 80%;
449
- padding: 15px;
450
- text-align: left;
451
- }
452
- #WBCR-AM .wam-table .js-wam-table__tr--disabled-section {
453
- background: #fbf5f4;
454
- opacity: 0.7;
455
- }
456
- #WBCR-AM .wam-table__asset-settings-conditions {
457
- display: none;
458
- background: #f3f3f3;
459
- color: #7b7b7b;
460
- font-size: 13px;
461
- box-shadow: 0 2px 0 #d4d4d4;
462
- }
463
- #WBCR-AM .wam-table__asset-settings-conditions > td {
464
- padding: 0 25px 15px 25px;
465
- }
466
- #WBCR-AM .wam-tooltip {
467
- position: relative;
468
- }
469
- #WBCR-AM .wam-tooltip::before {
470
- content: "";
471
- position: absolute;
472
- z-index: 60;
473
- left: 5px;
474
- display: none;
475
- width: 20px;
476
- height: 20px;
477
- }
478
- #WBCR-AM .wam-tooltip::after {
479
- content: attr(data-tooltip);
480
- position: absolute;
481
- z-index: 60;
482
- left: 5px;
483
- display: none;
484
- min-width: 200px;
485
- padding: 8px 15px;
486
- color: #6d5506;
487
- background: #FFCB1E;
488
- font-size: 13px;
489
- font-weight: normal;
490
- line-height: 1.2;
491
- }
492
- #WBCR-AM .wam-tooltip-top::before {
493
- bottom: 100%;
494
- background: linear-gradient(135deg, #FFCB1E, #FFCB1E 50%, transparent 50%, transparent) no-repeat;
495
- }
496
- #WBCR-AM .wam-tooltip-top::after {
497
- bottom: 100%;
498
- margin: 0 0 10px;
499
- border-radius: 6px 6px 6px 0;
500
- }
501
- #WBCR-AM .wam-tooltip--bottom::before {
502
- top: 100%;
503
- background: linear-gradient(45deg, #FFCB1E, #FFCB1E 50%, transparent 50%, transparent) no-repeat;
504
- }
505
- #WBCR-AM .wam-tooltip--bottom::after {
506
- top: 100%;
507
- margin: 15px 0 0;
508
- border-radius: 0 6px 6px 6px;
509
- }
510
- #WBCR-AM .wam-tooltip:hover::before,
511
- #WBCR-AM .wam-tooltip:hover::after {
512
- display: block;
513
- }
514
- #WBCR-AM .wam-float-panel {
515
- position: fixed;
516
- z-index: 50;
517
- top: 0;
518
- right: 0;
519
- left: 0;
520
- width: 100%;
521
- display: -webkit-flex;
522
- display: -ms-flexbox;
523
- display: flex;
524
- -ms-flex-pack: justify;
525
- -webkit-justify-content: space-between;
526
- justify-content: space-between;
527
- height: 62px;
528
- padding: 0 20px;
529
- margin: 0;
530
- color: #FFF;
531
- background: #23282d;
532
- font-size: 16px;
533
- border-top: 2px solid #ffcb1e;
534
- }
535
- #WBCR-AM .wam-float-panel__premium {
536
- position: relative;
537
- display: block;
538
- width: 20px;
539
- height: 40px;
540
- background: #ffcb1e;
541
- margin-left: -30px;
542
- }
543
- #WBCR-AM .wam-float-panel__premium:hover {
544
- cursor: pointer;
545
- }
546
- #WBCR-AM .wam-float-panel__premium .wam-tooltip {
547
- position: relative;
548
- right: -30px;
549
- top: 8px;
550
- font-size: 12px;
551
- font-weight: bold;
552
- font-style: normal;
553
- color: #ffffff;
554
- background: #f22714;
555
- width: 45px;
556
- text-align: center;
557
- border-radius: 3px;
558
- padding: 5px 0 5px 0;
559
- line-height: 1.2;
560
- }
561
- #WBCR-AM .wam-float-panel__premium:after {
562
- display: block;
563
- content: '';
564
- position: absolute;
565
- top: 1px;
566
- left: 0;
567
- width: 19px;
568
- height: 38px;
569
- background: #23282d;
570
- }
571
- #WBCR-AM .wam-float-panel__left,
572
- #WBCR-AM .wam-float-panel__right {
573
- display: -webkit-flex;
574
- display: -ms-flexbox;
575
- display: flex;
576
- -webkit-align-items: center;
577
- align-items: center;
578
- -ms-flex-align: center;
579
- }
580
- #WBCR-AM .wam-float-panel__left {
581
- min-width: 800px;
582
- margin: 0 44px 0 0;
583
- }
584
- #WBCR-AM .wam-float-panel__logo {
585
- width: 38px;
586
- height: 32px;
587
- margin: 0 44px 0 0;
588
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAgCAMAAABJuvqBAAAC+lBMVEUAAAD7bBgLxt8LyOP/oRqTVqOWV6T/gALpHxCKT5oMy+bwCgX/dhn/oxeXV6XxJxP/igzxIQztFAP/iQAIwNfoIBP/jgkPz+wOzun/igf/fgD/iggOze3hHxDuDAF0P4KWV6UP0OzyKxX/lw3iHxD/hAaXV6XyGgsPzu3/ggaJTpn/iw6JTZiUVqOUVqTlFQsve3T2Qy1lazvqIhOBHyvvlxW7FRCTaR3xGQX/kBIP0eyGTJbjIBKASJAAXn3uFQMPzewJxNo1JFOLUZuHTZb/xCEAkqmXV6X/ggB5QogNyOD/WSaWV6VjNnBHFTsLUVnrEgMQ0en/ggADtsz/mRTvJRT/igfpDwLgHw//ixD/igYQ0un/xiXlIBP/rhnnIRSXV6X/lgT/ig36OBz/ZzbkJBj/fAAMyeD/iQoFtMkPzeyNUZziHxHgHw/mCwIBobT/yy3kBQNIIVp2dz4PzewAc4L/ckKXV6V6JDr/oRb0DAD9egD/jAcOze2XV6XeHw7jAwPnIRSXV6X/vSoPz+j/fgB+DjKXV6X/ziAPzuzlIBP/iw7/yx7yJxT/YCLpIRQP0uwLxt2TV6T/YSD/nBTuJBT/jhCQVKCNUp2DSpL/xRf8PRf4LhTsIhT/kREQ0egOzOQMyuEJwtiKT5qGTZaASI9xPn//XSH/tRr/Uhf/oBb3KRPjHxAHv9UGvNEDsMUCqLwAjp98RItdMWg3Hkr/VyD/xh//wR7/Xx7/XBv/rxn6NBf/rBb/lxP/lBP+RRP9NQ3/igv/iQv+Kwv3Iwf/pQUOzuYGt813QoZqOnYAYHRULmJBJVQwFz3+Tx//1R3/uxz8Rhz/Shv/pxj/phb/vhL/sgr/mAIPzucEuc4BoLMBnK4AmKoAg5MAf5IAd4cAbYEAbHxkNnAAT2kIVGQASF5KJ1kARlcVU1U+ZEYsGEVfdTtIHDltKzJ6fS2OOCyniinWsCL/YyD3YCDkSyCrNCDvyR+8KR/50Bj/uRH/tQ7/qwnxGwX/kQIQ63s7AAAAh3RSTlMAAyIQCsuvaz8wKx4Y/vn58PDp5+Xk5NbAu6+rqJuVgH15d3dpXE1HRTAoIyAYFhQNCv7+/fz7+vn39vX19PLy8O/u6urk397c29ra19TU087JyMfGxMO6squjoJ+fnpyZmZiUk5GRkI+Oi4uJiINybGZhYV1dWldPTk1LQzo6OCopJSMYEw7x8GTCAAACaUlEQVQ4y2LABzgi6hkIgsZYmzUqhBQZKol2da3JJaBKPXRuP1CZLF5FPMn8vVON+/ErYyzznj2ndyrIuBw8rkrZsfzinN5ekDI8XlBaObnv3O7VYOM4MGSZmZiYmIE0t+D+HX1bIbaK6qMq0VCMlvASEQnOByoTOrCzb/klkHH98YwwFVwaJYoy4lYTbiycuPbmho2lDAxyR4C2go0TRNgp0wkCE+YvmLho3fqNp/wNGNQtZu/oA3lidSrCvloHsKpjQMPW33n43LyaQT/gMMQT/BWMCHVZMMOO37r/9N3RNAaGvCP7QbYeNnHyldeCO18CpGrhonUb7j5+/eOaBw9Dgz3YE9+3nF621CVbD6qOSXwCyEqgw15+O3/1ryoDQzjQE5++vDlzctPMxdNZOWGeBSgQZOXtBy8+nu+YdVSKgaHwz/7Jn99u2Xxi5pIZ0yf5NEHVtaQ7rttw78mHWT0dPdeEecBB9/4V0Moli6dPam9n1YWHXqabndGeFds6Oq5eZwcG3eGvZ5+BrJwxqR0IEhAeNig2vbJrew/IVkaGKrOzZx6dWAq0EqyMTw2hLnHKqj0XgLb+EtZkaPPbsnnZUrBhYMAGV1VjuXfKZZCts0C2Fm1etgnsfj53NoXyOh14Uoyctm8KL8jWnt9BLAwM8p621s6sbApqeihpRFtg2ry9YFs7foq1AgV0ODm1dBnRUxtgqt3d8/ZNuQK2VRl3ks3o7p42b8oqkK0xLLiVSR/qBtl6eYVrAR5VDJKHurtBnohrxpszw0DK5oVUEsjlkgcPdospszAQAFEHBZK0GQgCdmlNfNIAQzEmYu+mR3cAAAAASUVORK5CYII=");
589
- }
590
- #WBCR-AM .wam-float-panel__data {
591
- display: -webkit-flex;
592
- display: -ms-flexbox;
593
- display: flex;
594
- -webkit-align-items: center;
595
- align-items: center;
596
- -ms-flex-align: center;
597
- margin: 0 -22px;
598
- padding: 0;
599
- list-style: none;
600
- }
601
- #WBCR-AM .wam-float-panel__data:not(:last-child) {
602
- margin-right: 22px;
603
- }
604
- #WBCR-AM .wam-float-panel__data-item {
605
- margin: 0 22px;
606
- color: #909090;
607
- text-align: center;
608
- vertical-align: top;
609
- padding: 8px 0 8px;
610
- }
611
- #WBCR-AM .wam-float-panel__data-hidden {
612
- display: none;
613
- margin: 0 44px 0 0;
614
- }
615
- #WBCR-AM .wam-float-panel__data-hidden img {
616
- vertical-align: middle;
617
- }
618
- #WBCR-AM .wam-float-panel__item_value {
619
- font-size: 15px;
620
- color: #d0d0d0;
621
- background: #4c4c4c;
622
- border-radius: 2px;
623
- padding: 2px 5px;
624
- }
625
- #WBCR-AM .wam-float-panel__reset,
626
- #WBCR-AM .wam-float-panel__save,
627
- #WBCR-AM .wam-float-panel__reset.input[type="submit"],
628
- #WBCR-AM .wam-float-panel__save.input[type="submit"] {
629
- display: inline-block;
630
- padding: 8px 15px 7px;
631
- cursor: pointer;
632
- transition: 0.1s;
633
- vertical-align: middle;
634
- text-transform: uppercase !important;
635
- border: none;
636
- border-radius: 2px;
637
- font-size: 14px;
638
- line-height: 1.5;
639
- color: #222 !important;
640
- }
641
- #WBCR-AM .wam-float-panel__reset:hover,
642
- #WBCR-AM .wam-float-panel__save:hover,
643
- #WBCR-AM .wam-float-panel__reset:focus,
644
- #WBCR-AM .wam-float-panel__save:focus {
645
- outline: none;
646
- text-decoration: none;
647
- }
648
- #WBCR-AM .wam-float-panel__reset:active,
649
- #WBCR-AM .wam-float-panel__save:active {
650
- -webkit-transform: translateY(2px);
651
- transform: translateY(2px);
652
- }
653
- #WBCR-AM .wam-float-panel__reset,
654
- #WBCR-AM .wam-float-panel__reset.input[type="submit"] {
655
- margin: 0 10px 0 0;
656
- padding-right: 30px;
657
- padding-left: 30px;
658
- background: #E1E5E9;
659
- box-shadow: 0 4px #A8AEB3 !important;
660
- }
661
- #WBCR-AM .wam-float-panel__reset:hover,
662
- #WBCR-AM .wam-float-panel__reset:focus {
663
- background: #E7EAED !important;
664
- }
665
- #WBCR-AM .wam-float-panel__reset:active {
666
- box-shadow: 0 2px #A8AEB3 !important;
667
- }
668
- #WBCR-AM .wam-float-panel__save,
669
- #WBCR-AM .wam-float-panel__save.input[type="submit"] {
670
- margin: 0 10px 0 0;
671
- padding-right: 30px;
672
- padding-left: 30px;
673
- color: #222 !important;
674
- background: #FFCB1E !important;
675
- box-shadow: 0 4px #BF9A17 !important;
676
- }
677
- #WBCR-AM .wam-float-panel__save:hover,
678
- #WBCR-AM .wam-float-panel__save:focus {
679
- background: #FFD340 !important;
680
- box-shadow: 0 4px #BF9A17 !important;
681
- }
682
- #WBCR-AM .wam-float-panel__save:active {
683
- background: #FFD340 !important;
684
- box-shadow: 0 2px #BF9A17 !important;
685
- }
686
- #WBCR-AM .wam-float-panel__save + div {
687
- margin: 0;
688
- }
689
- #WBCR-AM .wam-float-panel__checkbox {
690
- cursor: pointer;
691
- font-size: 15px;
692
- transform: none;
693
- }
694
- #WBCR-AM .wam-float-panel__checkbox-text,
695
- #WBCR-AM .wam-float-panel__checkbox-text-premium {
696
- position: relative;
697
- padding: 0 0 0 26px;
698
- }
699
- #WBCR-AM .wam-float-panel__checkbox-text::before,
700
- #WBCR-AM .wam-float-panel__checkbox-text-premium::before {
701
- content: "";
702
- position: absolute;
703
- top: -1px;
704
- left: 0;
705
- width: 20px;
706
- height: 20px;
707
- border-radius: 2px;
708
- background: #ffcb1e;
709
- }
710
- #WBCR-AM .wam-float-panel__checkbox-input:checked + .wam-float-panel__checkbox-text::after,
711
- #WBCR-AM .wam-float-panel__checkbox-input:checked + .wam-float-panel__checkbox-text-premium::after {
712
- content: "";
713
- position: absolute;
714
- top: 5px;
715
- left: 6px;
716
- width: 8px;
717
- height: 5px;
718
- -webkit-transform: rotate(-45deg);
719
- transform: rotate(-45deg);
720
- border: solid #444;
721
- border-width: 0 0 2px 2px;
722
- }
723
- #WBCR-AM .wam-float-panel__checkbox-text-premium {
724
- display: inline;
725
- color: rgba(245, 245, 245, 0.3);
726
- }
727
- #WBCR-AM .wam-float-panel__checkbox-text-premium b {
728
- display: inline-block;
729
- font-size: 9px;
730
- font-weight: 700;
731
- color: #fff;
732
- background: #f22714;
733
- width: 25px;
734
- padding: 3px 0;
735
- text-align: center;
736
- vertical-align: top;
737
- border-radius: 3px;
738
- line-height: 1.5;
739
- }
740
- #WBCR-AM .wam-float-panel__checkbox-text-premium::before {
741
- background: rgba(245, 245, 245, 0.3);
742
- }
743
- #WBCR-AM .wam-float-panel__close,
744
- #WBCR-AM .wam-float-panel__close:hover {
745
- width: 36px;
746
- height: 36px;
747
- margin: 0 20px 0 20px;
748
- cursor: pointer;
749
- transition: 0.2s;
750
- border: 4px solid #FFF;
751
- border-radius: 50%;
752
- background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath fill='%23FFF' d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'/%3E%3C/svg%3E") no-repeat 50% 0px;
753
- }
754
- #WBCR-AM .wam-float-panel__close:focus,
755
- #WBCR-AM .wam-float-panel__close:hover:focus {
756
- opacity: 0.5;
757
- outline: none;
758
- }
759
- #WBCR-AM .wam-assets-type-tabs {
760
- position: fixed;
761
- top: 62px;
762
- bottom: 0;
763
- left: 0;
764
- width: 75px;
765
- margin: 0;
766
- padding: 0;
767
- list-style: none;
768
- background: #F4F4F4;
769
- box-shadow: 2px 0 5px rgba(0, 0, 0, 0.2);
770
- }
771
- #WBCR-AM .wam-assets-type-tabs li {
772
- margin: 0;
773
- padding: 0;
774
- }
775
- #WBCR-AM .wam-assets-type-tabs__button {
776
- position: relative;
777
- display: block;
778
- width: 100%;
779
- height: 130px;
780
- cursor: pointer;
781
- border: none;
782
- background: #ECEDED;
783
- border-radius: 0;
784
- box-shadow: none;
785
- -moz-box-shadow: none;
786
- -ms-box-shadow: none;
787
- -webkit-box-shadow: none;
788
- -o-box-shadow: none;
789
- }
790
- #WBCR-AM .wam-assets-type-tabs__button:hover,
791
- #WBCR-AM .wam-assets-type-tabs__button:focus,
792
- #WBCR-AM .wam-assets-type-tabs__button:after,
793
- #WBCR-AM .wam-assets-type-tabs__button:before,
794
- #WBCR-AM .wam-assets-type-tabs__button:after:hover,
795
- #WBCR-AM .wam-assets-type-tabs__button:before:hover {
796
- -moz-box-shadow: none;
797
- -ms-box-shadow: none;
798
- -webkit-box-shadow: none;
799
- -o-box-shadow: none;
800
- }
801
- #WBCR-AM .wam-assets-type-tabs__button::after {
802
- content: "";
803
- position: absolute;
804
- top: 0;
805
- right: 0;
806
- bottom: 0;
807
- left: 0;
808
- opacity: 0.55;
809
- }
810
- #WBCR-AM .wam-assets-type-tabs__button--misc::after {
811
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAtCAYAAAAgJgIUAAAIhUlEQVRYhe2YXawdVRXHf2vtOXPOvbxUEgUJhdaIQemlbSgkkEZaiiSg4EVBEWKkYIg+qDQoiRFj8QElQT4SjSEitNGAYtKCRjFa21tTUhVbKrcxGFAqfTDBALVpe8587LV8mJlz59wvkBifXMmcMzNrz6z/+q+111575Iu33cZCkqYpSRI4caJPr9fTLM/PU9WLLcY1wFkOpwI9YAC8IsKLguwT1d0i8gxQqgqCoEFRVQQZsfG1zZtJFkQAiIDDScCNWZ5vdPfzYlnOKEflNDdf5fg1uCPwJ1H9gUp4COVfi9nRxZRltCuzLNsLfNvNzhsanwuA2Tp3X2kx3lMUxe9itGveCogUkXtjWf7Uok3MMew+c8y+bu7Vz7j72WVR/CTL8gfd/CTmwT9fOMYQeRSYnOOxO4gcCCHsctgvIi8Dx919XISl7r7Kzde7swZ8hBmL8Zb+YLB8rNe7RoMexRcG0R0CmGVcRH6WdtP786LYnSQhltFQFdwdEFQV3B8lIG5+kZndalaHoWHF7AP9wWDb2FhvUlWPNUBGwyHyzREAFbVHEbkZuEpD2AnEhnG8PuqxTXBE9elOJ7k26STXI/JqO0RutiEbZA+4O80T2uv16I31SDrJ5cCtI96rvtztppcCDw+Nvilx3CFJksd6ve4lIvKXNpAY4015XnzMrQahqqjISWZ273AgICLHer3uR4KGZ9r3R5mbMboAFjpJ8lyv150UkVdbL6csinvKsjwZQE/0+5w40f+URTt7mIgVtZ8fDLJ9/X5/XuPujkVDRBBRRGRmZtToRAVzR0PyfKfTuQV3G+JzXxrNPgMgX73jjmSQZX90s5UNCIFfAB9ssYKoknYSRIQYjSzLAOikHUDodBLcHFHBzcjzgjRNK3C1DLLsMYvxupadF9M0ndAsz1a5+7ktFjztpnePjY8xNj5Gt9utvRXcIYRQz4i5kQlJIKgCggMxRsyMGCPRIiGEuxEpWmy8O1q8UFV1Pe4zcEWm87zY0+8P6PcHDLJsmMV1mBcWn6WXCjR4xRIcEJE/tHPM3TdoLOOadlEKQXd0045107SZ+1AvO/NX6wVKeK0REUJIQKpzVflVy2HMfE0CvKeuhI03+2K0IY012slo9l4x+XmA51p21sYY368ivwf5TWPI3c92t8kY5aWk44+HoB5NajZk36wl4MzE3d/RnhWielhVazyOm9/iZg86kJvdLnChmT0PrEVkp8XYMUBUrwiqT7n7GXmRT7n5KaWVkHF6kiTfGsapKvURCHUElygiY216qNYCRIQkJCByw1DnvqQoy0tUlZAkl+HeaRwoy/LKaEYZywvc/JTmfow2aWbtZD4O5K28SBX3QTuO7j7u7nVSKSGE7UOWRPrdtLsnSQKq+tvmPiIkSfLroEqSJPtF5Ehz391/mecFZYxVXsA41SrdmCwSRP4JvHNoCE4XFVSUJEnQEB5wt9fNfKLX7W4LSXgOoBvCDvAryjJuSELY0+umT3jF79/MfEOM8RNu9oK7P4wIImDmuNnSJhR18h5JROQFNzu3WenMfbU4P4oekSioBlcNWyFW061VFIPqU6b+lEhVF6op6qiwX0LYX7jVK7oQQkCA0mV1m3lEDqtIK1vdcbdLRRAVwcxajQsj9aK+Na8MF1cHUaWTJFWZN8divKzdDAnsU1Xd1UKFOytxLpC6KY0WR80JC5cGaSrKjIQQ0KAEDajqOcCFbXsadKeqyD6BP7fQhTLG24UqjgJV0Wo6JDNiWc6hQajKdIyxAlK/rywKBv0Bg8GALMtu89Gk/LuI7FFRKTSE77fRWYxXlzF+PIQEDdV6EFTJ84I8zymKkizPafoBxxlkOWVZkuc5CBRlSSftMD4+zvj4OGmaXg58ciZmjopsveuub5xQFaWTJA+JyF9bQKQoiu/GWJ4jVWmtXG01JmaG1SuzO1iMdTykTgqvwCcBhHcVZfkwTTtZTfd/9MZ63wFQEVDVo51O50sjzYv72waDbFtRFO9bIPyjv/MuLILFeNagP9jmZqcOx1T/X+73B69QhTugqqRpuj0k4Xsj/aD7e7Isn4oxXtuy+aalLMsPnegPpqzVq9QO/tjdt7pVTM40ugLdbneTqu4Y2Tu4v70oisfLovyhm58/4/nciVJve3D3lcBDRVE86WanzWJpLyKfbW8HZlp+B1U93hvrfbRf0bdhZN9gdoO5XyewV1R3COx34WXwYzjj7rY0mq+O0TZYtLWIdOZQ47632+teFUJ4feF9RwXk6NhYbzIbZPfHGG8eMlKBCe6+1mNcW/tuCBmQ4h6asT7SGgzPHwU+p6KvBdWRGT53G1gBOZam6aeTJLleRF6ab3tXFxEFxoAwslVstwYih4GbcL8BeG1Yd1t7lkU3xCHoYyEJ52sIXxGR5+fsN+c4MKJ7UVW/3ut1LwAeWczOop8GqhVdXg1B7yLovWZ2Ec56M1sDnOFwMpACucDriBwWkf2iukvgaXM/LrqonxWIZcuXv+GgWgbAzvr4r8obw/wfyP9BNDJvYh6cnt4FrAM2r5iYuPPg9PQ6oOk7pHW+vh73CLAMOAJsATbV+mXAfcx8btgCbFoxMXGkbW8xJg7VBgAurq/nk+21bj1wJ9XnhRuBJTXYZcDVwMYazPbZL1hsih5oebAOmKpfPp8sqY8t9XOH6meXActbDhyZ8+SbALHu4PT0KmAV8OQC49ZTedd4OEXl+Zn1dQOAFRMTT8z3gjdKzCngwy1Q88kRYDWVxxtrwPe19Euak4PT08veCojdVCGYWkC/CngJ+AKVx1vq/2XMMHdja/z2g9PTz/6nIKbqF+5eQH+gNrwZeLYGtAp4oNbdT8XKbN2ILJQTW4FDKyYmDhycnt4MNLHc3NI3spHK65X19ZPMhG5TPbYJ6dYVExOHZhv7N8fmQDQfwhMYAAAAAElFTkSuQmCC") no-repeat 50%;
812
- }
813
- #WBCR-AM .wam-assets-type-tabs__button--theme::after {
814
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAvCAYAAACVDljoAAAGA0lEQVRYhe3Zf6ifVR0H8Nf1TnNb1lYUUS6jX0hhm2lB5XS3WWCQzkqLhmzTiAqsjSjoHrAtOtEvdEERkbWGki1JyyBY2HaNxFbN3RmFkdDVEZHLvK3N1ly7/fF5nu6zs+f53ue7DfrHNzx8v+c5n8857+fz+ZxzPueckfHxcaeAM3ARLsPFeBVehLNxGI/jEezGffg1jjYbyDn36mjeSRJciLVYVxHtwouxDO+pyntxG27FP4bp8IyhKfJOPICvGkyyDUvxZfzSLPleGIboWbgZ9+CCYTppwfm4E99IKS3so9CX6Hxsw4aO+kncguvMxuulWI0v4Tcdeh/E3Sml58xFYKTHYHoWvodVLXU/xmYxUP4zqB+8Geu1u/xnWJVzPtjVQB+Lfr6F5AHcgCuxYw6SMIP7cQ3ejyeK+pX4yqAG5iJ6hbBCE/txOb49h24X7sBb8afi/fUppWu7lAa5fqGIrfMb7w5iBV4vrDNfuLUvZoT1J0Q4/QLPb9Tvw7Kc899LxUHz6JqCJHy0IvsFLMZf8a8hyI7iXLwFD4nBdKdZzy7Bh/C5UrHL9fOqRpr4CbbgHDFV7RKx9UYxyt9Q/XY9F4kB9YOq/XNwF75f9LMupXR2G6E2LMPrGuUZYUU4Vn3gY/gdNlbyhzvaqvs5VMnuwdVVO6p2340zq/Ir8Sbs7EN0zPHu/K2Ipzbdd+m/ANxevsg5T6aUfiXCocbKvkQvLsr3mrVAjdoCN4nYerqon8Gzqz7+LWJ5jxiMJX5aEC377yT66qK8u4VEHd/7RbbUJDpStX0P/ibi84iYf0db+ivbP68v0RcW5X1FeaRB7LParUTMwX8W2dIBXIWnWuQeE9NW/RGL+hKdX5QPdcgx99S0AM8VM8VZHTKHhMXrfk+Q65qeyhG8YACRMnabmGnUHx0gu6AgV8Z7J9H9RfncAWRK6zdxpll31oNvpkVuieNjd7oU6HL9Hx0/j14olrwm6oZvFJl8c4sxUtXvESvZpcK1D4k5s8SFRbkcE51EdxcNXl51XlvjqFiRbsKjFYnSO8fwtur9oUr/Aryjqm9a9u0t/fciurMoL62I7arKR8TMsKlDfy4cUQ3ClNJrxUrUxI5SoStGd+P3jfIoPtnQGSZjakMdGvBxxw+kR524CnYSfRrfKt5djffin6fG8X/9PiXy3euKuq055xPm2kFp3q34CF5RlUfwdSwXicS1YiS3jeJBGBUW24OfFxz+gq+1KQ0iegCfEKlYjcXYLoL/i9qXwz54OX4oDiua+FTO+fE2hbm2Infjm8W7l4gM/Rqx7A37XFHpv6Zod1vOeWsXkT6buw0ie2riBSLhvV0kzH2wVITTj8S828QD+PAg5T5HOofEnHqXyBObWI33VR3diwdFgnFQLItLxGS+EpeYXZ1KklfmnJ88VaJEvK4Se/gbirrRisQlVfmYyD/PMncMfxc3tm3mSgxzpHMQHxD78nKrW7Y532CS+3A9VvchWTc6LO4QcZnw8JC6j+AzYpXbMoziyR47PiG2tDeLneWY2D68FM8Tbj+CJ4X1HhTL8v0G57annWiNw2JdPmFtPt04Gdf/X/AM0dONZ4ieboyMj4/v1L4vH8OnG/9Vcjsb5XInQKSDdZsbxS5gRUN2pGp3Y6E3kXMeSymtr+oXYQqbcs7fmSeSjkXimHFtg8TkwE+cxYYO2amK4CZxrj+FlxUyY43/0ymlZeIuYLNIXtZgS0ppYl6jk8vqL+tJsMZkh86k2SP1FZXM2kJmonkhVhFl9oM2YCum+0z4KwzO4pvun3C8R1aII8llwkIlZlJK9f+NOedNKaV1wqr1R27OOU/0ITpp9tqmdk0TTdeXBwcT4ryJ9vBoun6qlss5L66sexU2ppT29iE6bXA4dLmeuNb52ID60vXrcUtKaSznPJFSmhKD7rxTXesJCzct2bw0m6jqu65mdjZcT+x011TvJ4QHp7F1dPny5bXQiDD/fQ3FEXHR2nTbdCUzXT0PV3r1s0tcyO4Vd57Erd90Q3ek0JnCVM55+44dO7bhD5XsdmzIOU/9FxZhkSePNaNRAAAAAElFTkSuQmCC") no-repeat 50%;
815
- }
816
- #WBCR-AM .wam-assets-type-tabs__button--plugins::after {
817
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAKSUlEQVRYhe2Yf4xU1RXHv+feeW8GdpBlQViGqouCmJgKRGpTawsEa2JSKVSspkZl1fqrsYXIaOtSFxQ2wFB+pMXaaiumqVWJYG2iiVGBRkNbi2BrWxOxrFBlV9idnZndmXk/7j394923+3bYWXY21v7Tk7y89+6959zPPe/cc++7tHPnTgwl77777pDlAGDbNmJSolgqIZFICNd1LhUk5iut5wGYCeZGAAkAZQCfENEREB0URPuJ6C0AvhACIMK6deuq9lNNYjVrACACAK4DsNx1nGZmvtSHCupOb57SzHPAvIwD5XcE0a9J0BMClBtN/2I0SspX1ziOewDATzXzpSHsEMCorGPm2UrrzZ7n/1EptWw0/dcKbROwxVfqRaX15ytBOXJVvodloQ4zX+T5/q4fPPDAz1sfeqjuvwU9hoBnAawcChbAYSnFVinETTEp50sp50khvhqT8kYpRIaI/jIUvNL6jrLj7GltfeiskYLQCCdinIBnACyJFjIAIvq9bVvbPNfbb9mWUr4CCQEwg5mDZ9OSmS/XWq/QWi8LwUM7QojXxiTiS9asfbj3TNAj8jQBG6LAxlt5Am4DsFgK+ToAxTygw1EDwQsLojctK3adFYt9m4CuqNe11ovKjrt9RDzVPH3kyPsgEHzfv9r3/Zei/QshjtmWtWxqKvVWfzkzwAylgixSLpehtQYJAcdx7rNisVlTU6nvEuAxgH998MElZcd5jplnRT1uW9b169vanhsOuqqnhRAgojqt9Zao14ioNxG3vxkFBgBBBNfzvua47lVBSAAkBDzPu7u3t3dzdzb7nRMnTjzqeZ7lOg6apk//ayIeX0JEXf22AXi+v7mlpaVhVNClYgnFUukWpfVFUU+A+XtTpjQehPEsmEFEKDvO4k86O/ecOnnyeadcXiClhOe6d+Xz+R3MDAJgW9ZRIaX2fR++7+OCGTPes6zYHQzosF9mPkcrddeooBNjEjEhxB3RMiJ6acbMmU/GLAsxy4Jl7lIIaK1n+UrVaeZkV1fXb/r6+jbnC4VHmZkIwNSpU1dOOvvsNs/zVF+xCGm+xvr1bbulEM9F41tp3bx6dUuiZmjXceew1pdEvMxx294opUT0EkKgVC7HJzY0bJna2JgGAF+pVKG39z5mJiGEk0qlVjRMnLjNdRzkcjk4jrPy1KlTj4FZAoCUciMBXsTbM7TSX6oZWgixkCPpmIC/uZ73RjQszKREb6Hws48++ujpiZMmbW5sbLw/amf8WWf9oi6Z3F4qFtGTy8H3vDsLhcLmU11dd3788cePAcD6trbDRPTn6Nxh5kXV2KruPXyl5kUXECnlqzErpolMqbnnc7nrcrlcMwMgIYrTpk1rBkAdHR0bAaBQKFxj2fbziURiv+e6d+bz+R1aa0FEcFz3aMRJr2ilvmwcBB1svmqDBnAhI7oA8EGlFEJoIoKv1ISTJ09uCD2UzWaXE4DUAPgGX6mm7q6up8eNG7crl8/fo7WWRIRkMrkqJuWP+3sjHKxYZc+rGZqZJw9asUgcF0IMWoZ7stlbXc87P6rXnc0uB8CpadNuBcAdHR0bfaVS2Z6e7wOAIHLG1tU9aMViW7TuTxog0DEACoA0APU1QxMwJvIMAH3MjL7eYJUVQsRz+fzNQ+l2Z7PNAMh4nDs6OjaFdclk8vEJEyZs0VoPXjWBPgAuB3scALBrhmagPOhzMY8FA77vA0TwHWeW67oXVtM3Hg9DBSF4sVRaXJdM7kokEn/giKdBGItgFxmKhyoynKdPAphqBgAQPico+NsgIiilpmitq+bSIcCpo6Njo+/753Z2dr44ZfLkb8UTiVfCtlrrcxCGBgAQ9dQOLeh9rfmS/v2v5rlM/IwOJyOzQ0DlJx4J+AYTegkeHNNzB/UPHK8dGnSQwNfCgDHzlUREHAgs2z5s2fZR13Wnn4Eb3dnscmYem0qlbgYzMfMHtm2/GB2w0vqqMFuZLe/BmqGFEHvD2W3+NGYz+DIp5Z9czwP7/myt1Ij+OIgI5XKZy45jj6+v31AsFqHNngUAVq9uuRhA/wpIAKQQr1dlq9qREAdB9I/Ir5NUvrqfAfie95WeXG63r9TkMwHHpDw2ob7+9uS4cTew1gWtVLCNjYjjuPeBOToJPwTRGzVDCyJPCvHL/kEAUFov7evray0UCruVUpP62wrRG4vF/h3R9S3L+uf48ePXNDQ0fFFIGdihaD4KpKXlwasB3BS+m5X1qba2tmI1tuEmImJW7Aml9T1gvsCAU6lY/JHSun+WSyEKyWTyeinlYQAXM/NYx3VPJOvq/h6zrKLyfbDWQ/6pd506db7v+78KOUwsnxiTiO+oxjU8NAgkKG9ZsbTrersjRwADwFLm6+rqbiAhXmZmxBOJE2CG63nQzODTF5B+6e7umlkql3dpzY2hbXP/4Zq1D38yHHT18JACQgjYtr0nJuXjYecxy0Is2JaqRDz+E0H0MkyMstanxetQ0tnZ+fVSsbRPaz27Yr/x7KZNm546k/6ITpji8fhKXS5P11pf6ZTLYQeyr1hsEUI0CUHbCfQWgvwNEOA4ZRARWDOEFNBKI5fPz3Zd914AzQBERcgcIODukfCMCJoE9Y1JxK8tlZ3dWutF0XMPrfWNrHEDiA4IoldBeJuYjgHoZfDY4PdJz1VKLVJaX0GAVWmfgQOJeHzxI+vWZT816ABc5Mck4kvKjrtNKXUbMOi4SzLzFYr5inAsBDgAbDZLs8n1g846zPPTAO59ZN267pGy1HQAKYTstW3rds/Da0rp9cw8vQK+vynMLjFaPgiY6DiYWzdlMk/WwhAaH7GwyQVSyt/GpPyCFKKFiN6rPK87XW9Q3REhxMOJePwyADUDA6M86uXg23ZJKdsEsIW1vpzBC7XmeQDOBXMDgv2wC6IsAceJ6G1BtBeEN1lzn6ichp8GdFPTGfdBoZQBvG6uz0RGdT79v5b/Q39WQqtWrWqtKHsKQDuABQDmA1g7hF4rgP0A9pn3yrb1CI6GzwOQA/CCsVnZNnz+XSaTOQwA6XR6OYD2TCazL51O1wNYDmA8gA8BvJDJZHoEgDWmYoG5HwXQZIytqTLYNaY+lGjbegB7AWw1NlsBHAIwZ4i24fPWiK1bAMw3wIeM/gLTZi8wEB47ASwEMDeiOFrZasCnG5thGvpGlfbtABak0+kFFeVzEDivOZPJLASwFEBPOp2eU5nymsw9h+CTjEaWIHBC+DfdA2DCMO3bEYRZKwbCDQAOm2tPOp3eZ+qaM5lMe+jpNQgWrUOm4c5RAgOBl0PgVgwsiHuH0VmLCm9nMpkeBF9qpbG3AsChdDrdVBkeYYhUPXMYgRxGEINAMKkXmrKqkslk2g1Df1IwA3gSwM5MJrMUQZjVA7glDI92DP40UVkQee4xAPsQjPwdU748ArYWwB4MZJgwNocFN3pHTR8hyxIzgO0YmPgfjiRP741c4SxfaSD2mKsdwcYeCNLbUjOQvQb+hUj9kBLxdr1532d05hg7KwBsy2QyO/8DenfAKWku08QAAAAASUVORK5CYII=") no-repeat 50%;
818
- }
819
- #WBCR-AM .wam-assets-type-tabs__button:hover,
820
- #WBCR-AM .wam-assets-type-tabs__button:focus {
821
- outline: none;
822
- background: #E6E7E7;
823
- }
824
- #WBCR-AM .wam-assets-type-tabs__button:hover::after,
825
- #WBCR-AM .wam-assets-type-tabs__button:focus::after {
826
- opacity: 1;
827
- }
828
- #WBCR-AM .wam-assets-type-tabs__button.wam-assets-type-tab__active {
829
- background: #CACDCF;
830
- }
831
- #WBCR-AM .wam-assets-type-tabs__button.wam-assets-type-tab__active::after {
832
- opacity: 1;
833
- }
834
- #WBCR-AM .wam-assets-type-tab-content {
835
- display: none;
836
- padding: 20px 30px;
837
- }
838
- #WBCR-AM .wam-assets-type-tab-content.wam-assets-type-tab-content__active {
839
- display: block !important;
840
- }
841
- #WBCR-AM .wam-nav-plugins {
842
- padding: 0;
843
- margin: 0;
844
- list-style: none;
845
- }
846
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab {
847
- position: relative;
848
- text-align: left;
849
- margin-bottom: 3px;
850
- }
851
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a {
852
- display: block;
853
- padding: 10px 20px;
854
- background: #f5f5f5;
855
- color: #222;
856
- }
857
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a strong,
858
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a span {
859
- display: block;
860
- }
861
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a span {
862
- font-size: 12px;
863
- color: #2f2f2f;
864
- }
865
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab:hover a {
866
- background: #efefef;
867
- text-decoration: none;
868
- }
869
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab.wam-nav-plugins__tab--active a {
870
- background: #e8e8e8;
871
- }
872
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--enable::after,
873
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-plugin::after,
874
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-assets::after {
875
- display: block;
876
- content: '';
877
- position: absolute;
878
- bottom: 10px;
879
- right: 10px;
880
- width: 10px;
881
- height: 10px;
882
- background: #8bc34a;
883
- text-align: center;
884
- font-size: 11px;
885
- font-weight: 600;
886
- border-radius: 4px;
887
- }
888
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-assets::after,
889
- #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-plugin::after {
890
- background: #d47b7b;
891
- }
892
- #WBCR-AM .wam-nav-plugins__tab-content {
893
- display: none;
894
- }
895
- #WBCR-AM .wam-nav-plugins__tab-content.js-wam-nav-plugins__tab-content--active {
896
- display: block !important;
897
- }
898
- #WBCR-AM .wam-help-hint {
899
- display: inline-block;
900
- position: relative;
901
- background: url(../img/help.png) no-repeat 0 0 transparent;
902
- height: 14px;
903
- width: 13px;
904
- cursor: help;
905
- vertical-align: middle;
906
- top: -1px;
907
- }
908
- #WBCR-AM .wam-asset-type {
909
- display: inline-block;
910
- padding: 5px 10px;
911
- font-size: 13px;
912
- text-transform: uppercase;
913
- text-align: center;
914
- border-radius: 3px;
915
- vertical-align: middle;
916
- margin-right: 15px;
917
- }
918
- #WBCR-AM .wam-asset-type--js {
919
- background: #ffcb1e;
920
- color: #403102;
921
- }
922
- #WBCR-AM .wam-asset-type--css {
923
- background: #9757a5;
924
- color: #ffffff;
925
- }
926
- #WBCR-AM .wam-colors--red {
927
- color: red;
928
- }
929
- #WBCR-AM .wam-colors--grey {
930
- color: grey;
931
- }
932
- #WBCR-AM .wam-button {
933
- display: inline-block;
934
- vertical-align: bottom;
935
- padding: 5px 10px;
936
- text-decoration: none;
937
- box-shadow: none;
938
- font-weight: 600;
939
- border-radius: 3px;
940
- }
941
- #WBCR-AM .wam-button--small {
942
- padding: 2px 8px;
943
- font-size: 13px;
944
- }
945
- #WBCR-AM .wam-button.js-wam-button--hidden {
946
- display: none;
947
- }
948
- #WBCR-AM .wam-button:hover {
949
- cursor: pointer;
950
- text-decoration: none;
951
- box-shadow: none;
952
- }
953
- #WBCR-AM .wam-button:focus {
954
- outline: none;
955
- box-shadow: none;
956
- }
957
- #WBCR-AM .wam-button__icon {
958
- height: 28px;
959
- width: 28px;
960
- padding: 5px;
961
- line-height: 0;
962
- }
963
- #WBCR-AM .wam-button.js-wam-button__icon--cogs {
964
- background: url('../img/cogs.png') center no-repeat;
965
- }
966
- #WBCR-AM .wam-button.js-wam-button__icon--close {
967
- background: url('../img/close.png') center no-repeat;
968
- }
969
- #WBCR-AM .wam-button--default {
970
- background-color: #eceded;
971
- color: #222;
972
- border: 1px solid #c3c3c3;
973
- }
974
- #WBCR-AM .wam-button--default:hover {
975
- cursor: pointer;
976
- background-color: #fff;
977
- border: 1px solid #c3c3c3;
978
- }
979
- #WBCR-AM .wam-button--danger {
980
- background-color: #fff;
981
- color: #ff7063;
982
- border: 1px solid #ff7063;
983
- }
984
- #WBCR-AM .wam-button--danger:hover {
985
- background-color: #fff;
986
- color: #222;
987
- border: 1px solid #c3c3c3;
988
- }
989
- #WBCR-AM .wam-button--yellow {
990
- background-color: #fff;
991
- color: #a5820e;
992
- border: 1px solid #ffcb1e;
993
- }
994
- #WBCR-AM .wam-button--yellow:hover {
995
- background-color: #fff;
996
- color: #222;
997
- border: 1px solid #c3c3c3;
998
- }
999
- #WBCR-AM .wam-select {
1000
- display: inline-block;
1001
- vertical-align: bottom;
1002
- height: auto;
1003
- padding: 4px 10px;
1004
- }
1005
- #WBCR-AM .wam-select.js-wam-select--enable {
1006
- background: #efffde;
1007
- color: #4e6f28;
1008
- border: 1px solid #8bc34a;
1009
- }
1010
- #WBCR-AM .wam-select.js-wam-select--disable {
1011
- background: #ffdada;
1012
- border: 1px solid #efc3c3;
1013
- color: #774a4a;
1014
- }
1015
- #WBCR-AM .wam-select:focus {
1016
- outline: none;
1017
- box-shadow: none;
1018
- }
1019
- #WBCR-AM.wam-wrapper {
1020
- min-width: 1365px;
1021
- position: fixed;
1022
- z-index: 99999999;
1023
- top: 0;
1024
- bottom: 0;
1025
- left: 0;
1026
- right: 0;
1027
- background: #FFF;
1028
- overflow-y: auto;
1029
- }
1030
- #WBCR-AM .wam-content {
1031
- display: block;
1032
- width: 100%;
1033
- margin: 0;
1034
- padding: 62px 0 0 75px;
1035
- }
1036
- #WBCR-AM .wam-info-section {
1037
- display: table;
1038
- padding: 0 30px 30px;
1039
- color: #5C5C5C;
1040
- font-size: 15px;
1041
- line-height: 21px;
1042
- }
1043
- #WBCR-AM .wam-info-section p {
1044
- font-size: 15px;
1045
- margin: 0;
1046
- }
1047
- #WBCR-AM .wam-info-section p:not(:last-child) {
1048
- margin-bottom: 25px;
1049
- }
1050
- #WBCR-AM .wam-info-section .wam-info-section__warning,
1051
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium {
1052
- display: table-cell;
1053
- width: 49%;
1054
- text-align: left;
1055
- vertical-align: top;
1056
- padding: 20px;
1057
- background: #f9f9f9;
1058
- border-right: 2px solid #fff;
1059
- }
1060
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium {
1061
- background: #f9f9f9;
1062
- border-left: 2px solid #fff;
1063
- margin-left: 10px;
1064
- }
1065
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium h3 {
1066
- position: relative;
1067
- margin: 0 0 20px;
1068
- padding: 10px 0;
1069
- text-align: left;
1070
- border-bottom: 2px solid #e2e2e2;
1071
- vertical-align: bottom;
1072
- }
1073
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium h3 span {
1074
- display: block;
1075
- font-size: 17px;
1076
- font-weight: 600;
1077
- color: #e47558;
1078
- text-transform: uppercase;
1079
- }
1080
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul {
1081
- list-style: none;
1082
- margin-left: 5px;
1083
- margin-bottom: 20px;
1084
- padding: 0;
1085
- }
1086
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul li {
1087
- margin-bottom: 5px;
1088
- font-weight: 600;
1089
- font-size: 15px;
1090
- color: #7d8871;
1091
- padding: 0;
1092
- }
1093
- #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul li:before {
1094
- content: " ";
1095
- display: inline-block;
1096
- width: 0.4em;
1097
- height: 0.7em;
1098
- border: solid #8bc34a;
1099
- border-width: 0 0.2em 0.2em 0;
1100
- left: 0;
1101
- margin-right: 10px;
1102
- -webkit-transform: rotate(45deg);
1103
- -moz-transform: rotate(45deg);
1104
- -o-transform: rotate(45deg);
1105
- transform: rotate(45deg);
1106
- }
1107
- #WBCR-AM .wam-plugin-settings {
1108
- padding-bottom: 10px;
1109
- }
1110
- #WBCR-AM .wam-plugin-settings__controls {
1111
- vertical-align: top;
1112
- }
1113
- #WBCR-AM .wam-plugin-settings .js-wam-plugin-settings__conditions {
1114
- display: none;
1115
- padding: 20px;
1116
- }
1117
- @media screen and (max-width: 1367px) {
1118
- #WBCR p {
1119
- font-size: 13px;
1120
- }
1121
- #WBCR .wam-content {
1122
- padding: 32px 0 0 75px;
1123
- }
1124
- #WBCR .wam-float-panel__left .wam-float-panel__item_value {
1125
- display: block;
1126
- }
1127
- #WBCR .wam-float-panel__right .wam-table__checkbox-text {
1128
- font-size: 13px;
1129
- }
1130
- #WBCR .wam-float-panel__right .wam-float-panel__reset,
1131
- #WBCR .wam-float-panel__right .wam-float-panel__save {
1132
- font-size: 12px;
1133
- }
1134
- #WBCR .wam-float-panel__right .wam-float-panel__checkbox-text {
1135
- font-size: 12px;
1136
- display: block;
1137
- line-height: 1.5;
1138
- }
1139
- #WBCR .wam-float-panel__right .wam-float-panel__close {
1140
- width: 30px;
1141
- height: 30px;
1142
- margin: 0 10px 0 15px;
1143
- border: 3px solid #FFF;
1144
- }
1145
- #WBCR .wam-info-section {
1146
- padding: 0;
1147
- }
1148
- #WBCR .wam-info-section,
1149
- #WBCR .wam-info-section p {
1150
- font-size: 13px;
1151
- }
1152
- #WBCR .wam-info-section .wam-info-section__warning {
1153
- padding: 20px 20px 30px;
1154
- }
1155
- #WBCR .wbcr-gnz-button__pro {
1156
- font-size: 12px;
1157
- }
1158
- #WBCR .wam-table {
1159
- margin: 0;
1160
- }
1161
- #WBCR .wam-table th {
1162
- font-size: 13px;
1163
- }
1164
- #WBCR .wam-table .wam-table__item .wam-table__item-name {
1165
- font-size: 14px;
1166
- }
1167
- #WBCR .wam-table .wam-table__item .wam-table__item-author,
1168
- #WBCR .wam-table .wam-table__item .wam-table__item-version,
1169
- #WBCR .wam-table .wam-table__item .wbcr-use-by-comment,
1170
- #WBCR .wam-table .wam-table__item .wam-table__item-author a,
1171
- #WBCR .wam-table .wam-table__item .wam-table__item-version a,
1172
- #WBCR .wam-table .wam-table__item .wbcr-use-by-comment a {
1173
- font-size: 12px;
1174
- }
1175
- #WBCR .wam-table .wam-table__script-name {
1176
- font-size: 14px;
1177
- }
1178
- #WBCR .wam-table .wam-table__script-name b {
1179
- font-size: 11px;
1180
- font-weight: lighter;
1181
- padding: 3px 7px;
1182
- margin-right: 8px;
1183
- }
1184
- #WBCR .wam-table .wam-table__script-path a {
1185
- font-size: 11px;
1186
- }
1187
- #WBCR .wam-table .wam-table__column_switch {
1188
- width: 10%;
1189
- }
1190
- #WBCR .wam-table .wam-table__column_switch .wam-table__th-external-plugin,
1191
- #WBCR .wam-table .wam-table__column_switch em {
1192
- font-size: 10px;
1193
- }
1194
- #WBCR .wam-table .wam-table__column_switch b {
1195
- font-size: 12px;
1196
- }
1197
- #WBCR .wam-table .wam-table__column_condition {
1198
- width: 35%;
1199
- }
1200
- }
1201
- @media screen and (max-width: 1600px) {
1202
- #WBCR .wam-float-panel__data-main {
1203
- display: none;
1204
- }
1205
- #WBCR .wam-float-panel__data-hidden {
1206
- display: block;
1207
- }
1208
- }
1209
- /*# sourceMappingURL=assets-manager.css.map */
1
+ /**
2
+ * Assets manager styles
3
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
4
+ * @copyright Webcraftic 05.09.2019
5
+ */
6
+ html,
7
+ body {
8
+ overflow: hidden !important;
9
+ }
10
+ html {
11
+ line-height: 1.15 !important;
12
+ -webkit-text-size-adjust: 100% !important;
13
+ box-sizing: border-box !important;
14
+ }
15
+ body {
16
+ margin: 0 !important;
17
+ padding: 0 !important;
18
+ background: #FFF !important;
19
+ }
20
+ body,
21
+ body p {
22
+ font-family: Arial, "Helvetica Neue", sans-serif;
23
+ }
24
+ #WBCR-AM {
25
+ /**
26
+ * Reset styles
27
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
28
+ * @copyright Webcraftic 15.10.2018
29
+ */
30
+ /**
31
+ * Placeholderss
32
+ */
33
+ /**
34
+ * Tabless
35
+
36
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
37
+ * @copyright Webcraftic 26.08.2019
38
+ */
39
+ /**
40
+ * Tooltips
41
+
42
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
43
+ * @copyright Webcraftic 26.08.2019
44
+ */
45
+ /**
46
+ * Float panel
47
+
48
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
49
+ * @copyright Webcraftic 26.08.2019
50
+ */
51
+ /**
52
+ * Tabs
53
+
54
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
55
+ * @copyright Webcraftic 26.08.2019
56
+ */
57
+ /** ---------------- PLUGINS TABS------------------------- */
58
+ /** ---------------- /PLUGINS TABS------------------------ */
59
+ /*.wam-help-hint {
60
+ //display: inline-block;
61
+ //width: 16px;
62
+ //height: 16px;
63
+ //line-height: 0 !important;
64
+ //padding: 0;
65
+ font-size: 11px;
66
+ font-style: normal;
67
+ text-align: left;
68
+ color: #fff;
69
+ background: #b4b5b5;
70
+ border-radius: 2px;
71
+
72
+ img {
73
+ display: inline-block;
74
+ margin: 3px 0 0 4px;
75
+ }
76
+ }*/
77
+ }
78
+ #WBCR-AM *,
79
+ #WBCR-AM *:before,
80
+ #WBCR-AM *:after {
81
+ -webkit-box-sizing: border-box;
82
+ -moz-box-sizing: border-box;
83
+ box-sizing: border-box;
84
+ }
85
+ #WBCR-AM,
86
+ #WBCR-AM h2,
87
+ #WBCR-AM h3,
88
+ #WBCR-AM h4,
89
+ #WBCR-AM h5,
90
+ #WBCR-AM h6,
91
+ #WBCR-AM p,
92
+ #WBCR-AM strong,
93
+ #WBCR-AM b,
94
+ #WBCR-AM span,
95
+ #WBCR-AM em,
96
+ #WBCR-AM i,
97
+ #WBCR-AM a,
98
+ #WBCR-AM div,
99
+ #WBCR-AM main,
100
+ #WBCR-AM section,
101
+ #WBCR-AM li,
102
+ #WBCR-AM button,
103
+ #WBCR-AM input[type="submit"],
104
+ #WBCR-AM input[type="reset"],
105
+ #WBCR-AM .wbcr-gnz-switch-premium {
106
+ font-family: Arial, "Helvetica Neue", sans-serif;
107
+ font-size: 14px;
108
+ font-style: normal;
109
+ font-weight: normal;
110
+ text-transform: none;
111
+ text-shadow: none;
112
+ }
113
+ #WBCR-AM h1 {
114
+ font-size: 2em;
115
+ margin: 0.67em 0;
116
+ }
117
+ #WBCR-AM hr {
118
+ box-sizing: content-box;
119
+ height: 0;
120
+ overflow: visible;
121
+ }
122
+ #WBCR-AM pre {
123
+ font-family: monospace, monospace;
124
+ font-size: 1em;
125
+ }
126
+ #WBCR-AM a {
127
+ background-color: transparent;
128
+ }
129
+ #WBCR-AM abbr[title] {
130
+ border-bottom: none;
131
+ text-decoration: underline dotted;
132
+ }
133
+ #WBCR-AM b,
134
+ #WBCR-AM strong {
135
+ font-weight: bolder;
136
+ }
137
+ #WBCR-AM code,
138
+ #WBCR-AM kbd,
139
+ #WBCR-AM samp {
140
+ font-family: monospace, monospace;
141
+ font-size: 1em;
142
+ }
143
+ #WBCR-AM small {
144
+ font-size: 80%;
145
+ }
146
+ #WBCR-AM sub,
147
+ #WBCR-AM sup {
148
+ font-size: 75%;
149
+ line-height: 0;
150
+ position: relative;
151
+ vertical-align: baseline;
152
+ }
153
+ #WBCR-AM sub {
154
+ bottom: -0.25em;
155
+ }
156
+ #WBCR-AM sup {
157
+ top: -0.5em;
158
+ }
159
+ #WBCR-AM img {
160
+ border-style: none;
161
+ }
162
+ #WBCR-AM button,
163
+ #WBCR-AM input,
164
+ #WBCR-AM optgroup,
165
+ #WBCR-AM select,
166
+ #WBCR-AM textarea {
167
+ font-family: inherit;
168
+ font-size: 100%;
169
+ line-height: 1.15;
170
+ margin: 0;
171
+ height: auto;
172
+ width: auto;
173
+ }
174
+ #WBCR-AM button,
175
+ #WBCR-AM input,
176
+ #WBCR-AM optgroup,
177
+ #WBCR-AM select,
178
+ #WBCR-AM textarea,
179
+ #WBCR-AM button:hover,
180
+ #WBCR-AM input:hover,
181
+ #WBCR-AM optgroup:hover,
182
+ #WBCR-AM select:hover,
183
+ #WBCR-AM textarea:hover,
184
+ #WBCR-AM button:focus,
185
+ #WBCR-AM input:focus,
186
+ #WBCR-AM optgroup:focus,
187
+ #WBCR-AM select:focus,
188
+ #WBCR-AM textarea:focus {
189
+ -moz-box-shadow: none;
190
+ -ms-box-shadow: none;
191
+ -webkit-box-shadow: none;
192
+ -o-box-shadow: none;
193
+ }
194
+ #WBCR-AM button,
195
+ #WBCR-AM input {
196
+ overflow: visible;
197
+ }
198
+ #WBCR-AM button,
199
+ #WBCR-AM select {
200
+ text-transform: none;
201
+ }
202
+ #WBCR-AM button,
203
+ #WBCR-AM [type="button"],
204
+ #WBCR-AM [type="reset"],
205
+ #WBCR-AM [type="submit"] {
206
+ -webkit-appearance: button;
207
+ }
208
+ #WBCR-AM button::-moz-focus-inner,
209
+ #WBCR-AM [type="button"]::-moz-focus-inner,
210
+ #WBCR-AM [type="reset"]::-moz-focus-inner,
211
+ #WBCR-AM [type="submit"]::-moz-focus-inner {
212
+ border-style: none;
213
+ padding: 0;
214
+ }
215
+ #WBCR-AM button:-moz-focusring,
216
+ #WBCR-AM [type="button"]:-moz-focusring,
217
+ #WBCR-AM [type="reset"]:-moz-focusring,
218
+ #WBCR-AM [type="submit"]:-moz-focusring {
219
+ outline: 1px dotted ButtonText;
220
+ }
221
+ #WBCR-AM fieldset {
222
+ padding: 0.35em 0.75em 0.625em;
223
+ }
224
+ #WBCR-AM legend {
225
+ box-sizing: border-box;
226
+ color: inherit;
227
+ display: table;
228
+ max-width: 100%;
229
+ padding: 0;
230
+ white-space: normal;
231
+ }
232
+ #WBCR-AM textarea {
233
+ overflow: auto;
234
+ }
235
+ #WBCR-AM [type="checkbox"],
236
+ #WBCR-AM [type="radio"] {
237
+ box-sizing: border-box;
238
+ padding: 0;
239
+ }
240
+ #WBCR-AM [type="number"]::-webkit-inner-spin-button,
241
+ #WBCR-AM [type="number"]::-webkit-outer-spin-button {
242
+ height: auto;
243
+ }
244
+ #WBCR-AM [type="search"] {
245
+ -webkit-appearance: textfield;
246
+ outline-offset: -2px;
247
+ }
248
+ #WBCR-AM [type="search"]::-webkit-search-decoration {
249
+ -webkit-appearance: none;
250
+ }
251
+ #WBCR-AM ::-webkit-file-upload-button {
252
+ -webkit-appearance: button;
253
+ font: inherit;
254
+ }
255
+ #WBCR-AM fieldset {
256
+ padding: 0.35em 0.75em 0.625em;
257
+ }
258
+ #WBCR-AM legend {
259
+ box-sizing: border-box;
260
+ color: inherit;
261
+ display: table;
262
+ max-width: 100%;
263
+ padding: 0;
264
+ white-space: normal;
265
+ }
266
+ #WBCR-AM progress {
267
+ vertical-align: baseline;
268
+ }
269
+ #WBCR-AM textarea {
270
+ overflow: auto;
271
+ }
272
+ #WBCR-AM [type=checkbox],
273
+ #WBCR-AM [type=radio] {
274
+ box-sizing: border-box;
275
+ padding: 0;
276
+ }
277
+ #WBCR-AM [type=number]::-webkit-inner-spin-button,
278
+ #WBCR-AM [type=number]::-webkit-outer-spin-button {
279
+ height: auto;
280
+ }
281
+ #WBCR-AM [type=search] {
282
+ -webkit-appearance: textfield;
283
+ outline-offset: -2px;
284
+ }
285
+ #WBCR-AM [type=search]::-webkit-search-decoration {
286
+ -webkit-appearance: none;
287
+ }
288
+ #WBCR-AM ::-webkit-file-upload-button {
289
+ -webkit-appearance: button;
290
+ font: inherit;
291
+ }
292
+ #WBCR-AM details {
293
+ display: block;
294
+ }
295
+ #WBCR-AM summary {
296
+ display: list-item;
297
+ }
298
+ #WBCR-AM template {
299
+ display: none;
300
+ }
301
+ #WBCR-AM [hidden] {
302
+ display: none;
303
+ }
304
+ #WBCR-AM table,
305
+ #WBCR-AM caption,
306
+ #WBCR-AM tbody,
307
+ #WBCR-AM tfoot,
308
+ #WBCR-AM thead,
309
+ #WBCR-AM tr,
310
+ #WBCR-AM th,
311
+ #WBCR-AM td {
312
+ margin: 0;
313
+ padding: 0;
314
+ border: 0;
315
+ font-size: 100%;
316
+ font: inherit;
317
+ vertical-align: middle;
318
+ line-height: 1.2;
319
+ }
320
+ #WBCR-AM table {
321
+ table-layout: auto;
322
+ border-collapse: collapse;
323
+ border-spacing: 0;
324
+ }
325
+ #WBCR-AM span {
326
+ display: inline;
327
+ margin: 0;
328
+ }
329
+ #WBCR-AM input[type="text"]::-moz-placeholder {
330
+ color: #cccccc;
331
+ }
332
+ #WBCR-AM input[type="text"]::-webkit-input-placeholder,
333
+ #WBCR-AM textarea::-webkit-input-placeholder {
334
+ color: #cccccc;
335
+ }
336
+ #WBCR-AM input[type="text"]:-ms-input-placeholder,
337
+ #WBCR-AM textarea:-ms-input-placeholder {
338
+ color: #cccccc;
339
+ }
340
+ #WBCR-AM input[type="text"]::-ms-input-placeholder,
341
+ #WBCR-AM textarea::-ms-input-placeholder {
342
+ color: #cccccc;
343
+ }
344
+ #WBCR-AM input[type="text"]::placeholder,
345
+ #WBCR-AM textarea::placeholder {
346
+ color: #cccccc;
347
+ }
348
+ #WBCR-AM a {
349
+ text-decoration: none;
350
+ color: #007acc;
351
+ border: none;
352
+ background: none;
353
+ }
354
+ #WBCR-AM a:hover {
355
+ text-decoration: underline;
356
+ border: inherit;
357
+ background: inherit;
358
+ }
359
+ #WBCR-AM button,
360
+ #WBCR-AM [type=submit] {
361
+ color: black;
362
+ font-weight: 400;
363
+ padding: 0;
364
+ line-height: 1.5;
365
+ }
366
+ #WBCR-AM label {
367
+ color: white;
368
+ margin: 0;
369
+ font-weight: 400;
370
+ }
371
+ #WBCR-AM select,
372
+ #WBCR-AM [type=text] {
373
+ height: 32px;
374
+ }
375
+ #WBCR-AM .visually-hidden {
376
+ position: absolute;
377
+ overflow: hidden;
378
+ clip: rect(0 0 0 0);
379
+ -webkit-clip-path: inset(100%);
380
+ clip-path: inset(100%);
381
+ width: 1px;
382
+ height: 1px;
383
+ margin: -1px;
384
+ padding: 0;
385
+ white-space: nowrap;
386
+ border: 0;
387
+ }
388
+ #WBCR-AM .wam-table {
389
+ width: 100%;
390
+ box-sizing: border-box;
391
+ table-layout: fixed;
392
+ border-collapse: collapse;
393
+ }
394
+ #WBCR-AM .wam-table__handle-deps {
395
+ margin-top: 15px;
396
+ }
397
+ #WBCR-AM .wam-table__handle-deps span,
398
+ #WBCR-AM .wam-table__handle-deps a {
399
+ font-size: 11px !important;
400
+ }
401
+ #WBCR-AM .wam-table__handle-deps a {
402
+ color: red;
403
+ text-decoration: underline;
404
+ }
405
+ #WBCR-AM .wam-table tr:nth-child(2n) > td {
406
+ background: #f9f9f9;
407
+ }
408
+ #WBCR-AM .wam-table th {
409
+ padding: 12px 10px;
410
+ text-align: left;
411
+ color: #333;
412
+ background: #ECEDED;
413
+ box-shadow: none;
414
+ }
415
+ #WBCR-AM .wam-table th:not(:last-child) {
416
+ border-right: 2px solid #FFF;
417
+ }
418
+ #WBCR-AM .wam-table__th-actions {
419
+ width: 200px;
420
+ }
421
+ #WBCR-AM .wam-table__th-type {
422
+ width: 100px;
423
+ }
424
+ #WBCR-AM .wam-table__th-version {
425
+ width: 100px;
426
+ }
427
+ #WBCR-AM .wam-table__th-size {
428
+ width: 100px;
429
+ }
430
+ #WBCR-AM .wam-table__th-plugins-list,
431
+ #WBCR-AM .wam-table__td-plugins-list {
432
+ width: 350px;
433
+ }
434
+ #WBCR-AM .wam-table td {
435
+ padding: 17px 10px;
436
+ vertical-align: top;
437
+ text-align: left;
438
+ box-shadow: none;
439
+ }
440
+ #WBCR-AM .wam-table__td-handle {
441
+ word-break: break-word;
442
+ }
443
+ #WBCR-AM .wam-table__td-plugins-list {
444
+ padding: 0 !important;
445
+ }
446
+ #WBCR-AM .wam-table__th-plugins-settings,
447
+ #WBCR-AM .wam-table__td-plugins-settings {
448
+ width: 80%;
449
+ padding: 15px;
450
+ text-align: left;
451
+ }
452
+ #WBCR-AM .wam-table .js-wam-table__tr--disabled-section {
453
+ background: #fbf5f4;
454
+ opacity: 0.7;
455
+ }
456
+ #WBCR-AM .wam-table__asset-settings-conditions {
457
+ display: none;
458
+ background: #f3f3f3;
459
+ color: #7b7b7b;
460
+ font-size: 13px;
461
+ box-shadow: 0 2px 0 #d4d4d4;
462
+ }
463
+ #WBCR-AM .wam-table__asset-settings-conditions > td {
464
+ padding: 0 25px 15px 25px;
465
+ }
466
+ #WBCR-AM .wam-tooltip {
467
+ position: relative;
468
+ }
469
+ #WBCR-AM .wam-tooltip::before {
470
+ content: "";
471
+ position: absolute;
472
+ z-index: 60;
473
+ left: 5px;
474
+ display: none;
475
+ width: 20px;
476
+ height: 20px;
477
+ }
478
+ #WBCR-AM .wam-tooltip::after {
479
+ content: attr(data-tooltip);
480
+ position: absolute;
481
+ z-index: 60;
482
+ left: 5px;
483
+ display: none;
484
+ min-width: 200px;
485
+ padding: 8px 15px;
486
+ color: #6d5506;
487
+ background: #FFCB1E;
488
+ font-size: 13px;
489
+ font-weight: normal;
490
+ line-height: 1.2;
491
+ }
492
+ #WBCR-AM .wam-tooltip-top::before {
493
+ bottom: 100%;
494
+ background: linear-gradient(135deg, #FFCB1E, #FFCB1E 50%, transparent 50%, transparent) no-repeat;
495
+ }
496
+ #WBCR-AM .wam-tooltip-top::after {
497
+ bottom: 100%;
498
+ margin: 0 0 10px;
499
+ border-radius: 6px 6px 6px 0;
500
+ }
501
+ #WBCR-AM .wam-tooltip--bottom::before {
502
+ top: 100%;
503
+ background: linear-gradient(45deg, #FFCB1E, #FFCB1E 50%, transparent 50%, transparent) no-repeat;
504
+ }
505
+ #WBCR-AM .wam-tooltip--bottom::after {
506
+ top: 100%;
507
+ margin: 15px 0 0;
508
+ border-radius: 0 6px 6px 6px;
509
+ }
510
+ #WBCR-AM .wam-tooltip:hover::before,
511
+ #WBCR-AM .wam-tooltip:hover::after {
512
+ display: block;
513
+ }
514
+ #WBCR-AM .wam-float-panel {
515
+ position: fixed;
516
+ z-index: 50;
517
+ top: 0;
518
+ right: 0;
519
+ left: 0;
520
+ width: 100%;
521
+ display: -webkit-flex;
522
+ display: -ms-flexbox;
523
+ display: flex;
524
+ -ms-flex-pack: justify;
525
+ -webkit-justify-content: space-between;
526
+ justify-content: space-between;
527
+ height: 62px;
528
+ padding: 0 20px;
529
+ margin: 0;
530
+ color: #FFF;
531
+ background: #23282d;
532
+ font-size: 16px;
533
+ border-top: 2px solid #ffcb1e;
534
+ }
535
+ #WBCR-AM .wam-float-panel__premium {
536
+ position: relative;
537
+ display: block;
538
+ width: 20px;
539
+ height: 40px;
540
+ background: #ffcb1e;
541
+ margin-left: -30px;
542
+ }
543
+ #WBCR-AM .wam-float-panel__premium:hover {
544
+ cursor: pointer;
545
+ }
546
+ #WBCR-AM .wam-float-panel__premium .wam-tooltip {
547
+ position: relative;
548
+ right: -30px;
549
+ top: 8px;
550
+ font-size: 12px;
551
+ font-weight: bold;
552
+ font-style: normal;
553
+ color: #ffffff;
554
+ background: #f22714;
555
+ width: 45px;
556
+ text-align: center;
557
+ border-radius: 3px;
558
+ padding: 5px 0 5px 0;
559
+ line-height: 1.2;
560
+ }
561
+ #WBCR-AM .wam-float-panel__premium:after {
562
+ display: block;
563
+ content: '';
564
+ position: absolute;
565
+ top: 1px;
566
+ left: 0;
567
+ width: 19px;
568
+ height: 38px;
569
+ background: #23282d;
570
+ }
571
+ #WBCR-AM .wam-float-panel__left,
572
+ #WBCR-AM .wam-float-panel__right {
573
+ display: -webkit-flex;
574
+ display: -ms-flexbox;
575
+ display: flex;
576
+ -webkit-align-items: center;
577
+ align-items: center;
578
+ -ms-flex-align: center;
579
+ }
580
+ #WBCR-AM .wam-float-panel__left {
581
+ min-width: 800px;
582
+ margin: 0 44px 0 0;
583
+ }
584
+ #WBCR-AM .wam-float-panel__logo {
585
+ width: 38px;
586
+ height: 32px;
587
+ margin: 0 44px 0 0;
588
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAgCAMAAABJuvqBAAAC+lBMVEUAAAD7bBgLxt8LyOP/oRqTVqOWV6T/gALpHxCKT5oMy+bwCgX/dhn/oxeXV6XxJxP/igzxIQztFAP/iQAIwNfoIBP/jgkPz+wOzun/igf/fgD/iggOze3hHxDuDAF0P4KWV6UP0OzyKxX/lw3iHxD/hAaXV6XyGgsPzu3/ggaJTpn/iw6JTZiUVqOUVqTlFQsve3T2Qy1lazvqIhOBHyvvlxW7FRCTaR3xGQX/kBIP0eyGTJbjIBKASJAAXn3uFQMPzewJxNo1JFOLUZuHTZb/xCEAkqmXV6X/ggB5QogNyOD/WSaWV6VjNnBHFTsLUVnrEgMQ0en/ggADtsz/mRTvJRT/igfpDwLgHw//ixD/igYQ0un/xiXlIBP/rhnnIRSXV6X/lgT/ig36OBz/ZzbkJBj/fAAMyeD/iQoFtMkPzeyNUZziHxHgHw/mCwIBobT/yy3kBQNIIVp2dz4PzewAc4L/ckKXV6V6JDr/oRb0DAD9egD/jAcOze2XV6XeHw7jAwPnIRSXV6X/vSoPz+j/fgB+DjKXV6X/ziAPzuzlIBP/iw7/yx7yJxT/YCLpIRQP0uwLxt2TV6T/YSD/nBTuJBT/jhCQVKCNUp2DSpL/xRf8PRf4LhTsIhT/kREQ0egOzOQMyuEJwtiKT5qGTZaASI9xPn//XSH/tRr/Uhf/oBb3KRPjHxAHv9UGvNEDsMUCqLwAjp98RItdMWg3Hkr/VyD/xh//wR7/Xx7/XBv/rxn6NBf/rBb/lxP/lBP+RRP9NQ3/igv/iQv+Kwv3Iwf/pQUOzuYGt813QoZqOnYAYHRULmJBJVQwFz3+Tx//1R3/uxz8Rhz/Shv/pxj/phb/vhL/sgr/mAIPzucEuc4BoLMBnK4AmKoAg5MAf5IAd4cAbYEAbHxkNnAAT2kIVGQASF5KJ1kARlcVU1U+ZEYsGEVfdTtIHDltKzJ6fS2OOCyniinWsCL/YyD3YCDkSyCrNCDvyR+8KR/50Bj/uRH/tQ7/qwnxGwX/kQIQ63s7AAAAh3RSTlMAAyIQCsuvaz8wKx4Y/vn58PDp5+Xk5NbAu6+rqJuVgH15d3dpXE1HRTAoIyAYFhQNCv7+/fz7+vn39vX19PLy8O/u6urk397c29ra19TU087JyMfGxMO6squjoJ+fnpyZmZiUk5GRkI+Oi4uJiINybGZhYV1dWldPTk1LQzo6OCopJSMYEw7x8GTCAAACaUlEQVQ4y2LABzgi6hkIgsZYmzUqhBQZKol2da3JJaBKPXRuP1CZLF5FPMn8vVON+/ErYyzznj2ndyrIuBw8rkrZsfzinN5ekDI8XlBaObnv3O7VYOM4MGSZmZiYmIE0t+D+HX1bIbaK6qMq0VCMlvASEQnOByoTOrCzb/klkHH98YwwFVwaJYoy4lYTbiycuPbmho2lDAxyR4C2go0TRNgp0wkCE+YvmLho3fqNp/wNGNQtZu/oA3lidSrCvloHsKpjQMPW33n43LyaQT/gMMQT/BWMCHVZMMOO37r/9N3RNAaGvCP7QbYeNnHyldeCO18CpGrhonUb7j5+/eOaBw9Dgz3YE9+3nF621CVbD6qOSXwCyEqgw15+O3/1ryoDQzjQE5++vDlzctPMxdNZOWGeBSgQZOXtBy8+nu+YdVSKgaHwz/7Jn99u2Xxi5pIZ0yf5NEHVtaQ7rttw78mHWT0dPdeEecBB9/4V0Moli6dPam9n1YWHXqabndGeFds6Oq5eZwcG3eGvZ5+BrJwxqR0IEhAeNig2vbJrew/IVkaGKrOzZx6dWAq0EqyMTw2hLnHKqj0XgLb+EtZkaPPbsnnZUrBhYMAGV1VjuXfKZZCts0C2Fm1etgnsfj53NoXyOh14Uoyctm8KL8jWnt9BLAwM8p621s6sbApqeihpRFtg2ry9YFs7foq1AgV0ODm1dBnRUxtgqt3d8/ZNuQK2VRl3ks3o7p42b8oqkK0xLLiVSR/qBtl6eYVrAR5VDJKHurtBnohrxpszw0DK5oVUEsjlkgcPdospszAQAFEHBZK0GQgCdmlNfNIAQzEmYu+mR3cAAAAASUVORK5CYII=");
589
+ }
590
+ #WBCR-AM .wam-float-panel__data {
591
+ display: -webkit-flex;
592
+ display: -ms-flexbox;
593
+ display: flex;
594
+ -webkit-align-items: center;
595
+ align-items: center;
596
+ -ms-flex-align: center;
597
+ margin: 0 -22px;
598
+ padding: 0;
599
+ list-style: none;
600
+ }
601
+ #WBCR-AM .wam-float-panel__data:not(:last-child) {
602
+ margin-right: 22px;
603
+ }
604
+ #WBCR-AM .wam-float-panel__data-item {
605
+ margin: 0 22px;
606
+ color: #909090;
607
+ text-align: center;
608
+ vertical-align: top;
609
+ padding: 8px 0 8px;
610
+ }
611
+ #WBCR-AM .wam-float-panel__data-hidden {
612
+ display: none;
613
+ margin: 0 44px 0 0;
614
+ }
615
+ #WBCR-AM .wam-float-panel__data-hidden img {
616
+ vertical-align: middle;
617
+ }
618
+ #WBCR-AM .wam-float-panel__item_value {
619
+ font-size: 15px;
620
+ color: #d0d0d0;
621
+ background: #4c4c4c;
622
+ border-radius: 2px;
623
+ padding: 2px 5px;
624
+ }
625
+ #WBCR-AM .wam-float-panel__reset,
626
+ #WBCR-AM .wam-float-panel__save,
627
+ #WBCR-AM .wam-float-panel__reset.input[type="submit"],
628
+ #WBCR-AM .wam-float-panel__save.input[type="submit"] {
629
+ display: inline-block;
630
+ padding: 8px 15px 7px;
631
+ cursor: pointer;
632
+ transition: 0.1s;
633
+ vertical-align: middle;
634
+ text-transform: uppercase !important;
635
+ border: none;
636
+ border-radius: 2px;
637
+ font-size: 14px;
638
+ line-height: 1.5;
639
+ color: #222 !important;
640
+ }
641
+ #WBCR-AM .wam-float-panel__reset:hover,
642
+ #WBCR-AM .wam-float-panel__save:hover,
643
+ #WBCR-AM .wam-float-panel__reset:focus,
644
+ #WBCR-AM .wam-float-panel__save:focus {
645
+ outline: none;
646
+ text-decoration: none;
647
+ }
648
+ #WBCR-AM .wam-float-panel__reset:active,
649
+ #WBCR-AM .wam-float-panel__save:active {
650
+ -webkit-transform: translateY(2px);
651
+ transform: translateY(2px);
652
+ }
653
+ #WBCR-AM .wam-float-panel__reset,
654
+ #WBCR-AM .wam-float-panel__reset.input[type="submit"] {
655
+ margin: 0 10px 0 0;
656
+ padding-right: 30px;
657
+ padding-left: 30px;
658
+ background: #E1E5E9;
659
+ box-shadow: 0 4px #A8AEB3 !important;
660
+ }
661
+ #WBCR-AM .wam-float-panel__reset:hover,
662
+ #WBCR-AM .wam-float-panel__reset:focus {
663
+ background: #E7EAED !important;
664
+ }
665
+ #WBCR-AM .wam-float-panel__reset:active {
666
+ box-shadow: 0 2px #A8AEB3 !important;
667
+ }
668
+ #WBCR-AM .wam-float-panel__save,
669
+ #WBCR-AM .wam-float-panel__save.input[type="submit"] {
670
+ margin: 0 10px 0 0;
671
+ padding-right: 30px;
672
+ padding-left: 30px;
673
+ color: #222 !important;
674
+ background: #FFCB1E !important;
675
+ box-shadow: 0 4px #BF9A17 !important;
676
+ }
677
+ #WBCR-AM .wam-float-panel__save:hover,
678
+ #WBCR-AM .wam-float-panel__save:focus {
679
+ background: #FFD340 !important;
680
+ box-shadow: 0 4px #BF9A17 !important;
681
+ }
682
+ #WBCR-AM .wam-float-panel__save:active {
683
+ background: #FFD340 !important;
684
+ box-shadow: 0 2px #BF9A17 !important;
685
+ }
686
+ #WBCR-AM .wam-float-panel__save + div {
687
+ margin: 0;
688
+ }
689
+ #WBCR-AM .wam-float-panel__checkbox {
690
+ cursor: pointer;
691
+ font-size: 15px;
692
+ transform: none;
693
+ }
694
+ #WBCR-AM .wam-float-panel__checkbox-text,
695
+ #WBCR-AM .wam-float-panel__checkbox-text-premium {
696
+ position: relative;
697
+ padding: 0 0 0 26px;
698
+ }
699
+ #WBCR-AM .wam-float-panel__checkbox-text::before,
700
+ #WBCR-AM .wam-float-panel__checkbox-text-premium::before {
701
+ content: "";
702
+ position: absolute;
703
+ top: -1px;
704
+ left: 0;
705
+ width: 20px;
706
+ height: 20px;
707
+ border-radius: 2px;
708
+ background: #ffcb1e;
709
+ }
710
+ #WBCR-AM .wam-float-panel__checkbox-input:checked + .wam-float-panel__checkbox-text::after,
711
+ #WBCR-AM .wam-float-panel__checkbox-input:checked + .wam-float-panel__checkbox-text-premium::after {
712
+ content: "";
713
+ position: absolute;
714
+ top: 5px;
715
+ left: 6px;
716
+ width: 8px;
717
+ height: 5px;
718
+ -webkit-transform: rotate(-45deg);
719
+ transform: rotate(-45deg);
720
+ border: solid #444;
721
+ border-width: 0 0 2px 2px;
722
+ }
723
+ #WBCR-AM .wam-float-panel__checkbox-text-premium {
724
+ display: inline;
725
+ color: rgba(245, 245, 245, 0.3);
726
+ }
727
+ #WBCR-AM .wam-float-panel__checkbox-text-premium b {
728
+ display: inline-block;
729
+ font-size: 9px;
730
+ font-weight: 700;
731
+ color: #fff;
732
+ background: #f22714;
733
+ width: 25px;
734
+ padding: 3px 0;
735
+ text-align: center;
736
+ vertical-align: top;
737
+ border-radius: 3px;
738
+ line-height: 1.5;
739
+ }
740
+ #WBCR-AM .wam-float-panel__checkbox-text-premium::before {
741
+ background: rgba(245, 245, 245, 0.3);
742
+ }
743
+ #WBCR-AM .wam-float-panel__close,
744
+ #WBCR-AM .wam-float-panel__close:hover {
745
+ width: 36px;
746
+ height: 36px;
747
+ margin: 0 20px 0 20px;
748
+ cursor: pointer;
749
+ transition: 0.2s;
750
+ border: 4px solid #FFF;
751
+ border-radius: 50%;
752
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath fill='%23FFF' d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'/%3E%3C/svg%3E") no-repeat 50% 0px;
753
+ }
754
+ #WBCR-AM .wam-float-panel__close:focus,
755
+ #WBCR-AM .wam-float-panel__close:hover:focus {
756
+ opacity: 0.5;
757
+ outline: none;
758
+ }
759
+ #WBCR-AM .wam-assets-type-tabs {
760
+ position: fixed;
761
+ top: 62px;
762
+ bottom: 0;
763
+ left: 0;
764
+ width: 75px;
765
+ margin: 0;
766
+ padding: 0;
767
+ list-style: none;
768
+ background: #F4F4F4;
769
+ box-shadow: 2px 0 5px rgba(0, 0, 0, 0.2);
770
+ }
771
+ #WBCR-AM .wam-assets-type-tabs li {
772
+ margin: 0;
773
+ padding: 0;
774
+ }
775
+ #WBCR-AM .wam-assets-type-tabs__button {
776
+ position: relative;
777
+ display: block;
778
+ width: 100%;
779
+ height: 130px;
780
+ cursor: pointer;
781
+ border: none;
782
+ background: #ECEDED;
783
+ border-radius: 0;
784
+ box-shadow: none;
785
+ -moz-box-shadow: none;
786
+ -ms-box-shadow: none;
787
+ -webkit-box-shadow: none;
788
+ -o-box-shadow: none;
789
+ }
790
+ #WBCR-AM .wam-assets-type-tabs__button:hover,
791
+ #WBCR-AM .wam-assets-type-tabs__button:focus,
792
+ #WBCR-AM .wam-assets-type-tabs__button:after,
793
+ #WBCR-AM .wam-assets-type-tabs__button:before,
794
+ #WBCR-AM .wam-assets-type-tabs__button:after:hover,
795
+ #WBCR-AM .wam-assets-type-tabs__button:before:hover {
796
+ -moz-box-shadow: none;
797
+ -ms-box-shadow: none;
798
+ -webkit-box-shadow: none;
799
+ -o-box-shadow: none;
800
+ }
801
+ #WBCR-AM .wam-assets-type-tabs__button::after {
802
+ content: "";
803
+ position: absolute;
804
+ top: 0;
805
+ right: 0;
806
+ bottom: 0;
807
+ left: 0;
808
+ opacity: 0.55;
809
+ }
810
+ #WBCR-AM .wam-assets-type-tabs__button--misc::after {
811
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAtCAYAAAAgJgIUAAAIhUlEQVRYhe2YXawdVRXHf2vtOXPOvbxUEgUJhdaIQemlbSgkkEZaiiSg4EVBEWKkYIg+qDQoiRFj8QElQT4SjSEitNGAYtKCRjFa21tTUhVbKrcxGFAqfTDBALVpe8587LV8mJlz59wvkBifXMmcMzNrz6z/+q+111575Iu33cZCkqYpSRI4caJPr9fTLM/PU9WLLcY1wFkOpwI9YAC8IsKLguwT1d0i8gxQqgqCoEFRVQQZsfG1zZtJFkQAiIDDScCNWZ5vdPfzYlnOKEflNDdf5fg1uCPwJ1H9gUp4COVfi9nRxZRltCuzLNsLfNvNzhsanwuA2Tp3X2kx3lMUxe9itGveCogUkXtjWf7Uok3MMew+c8y+bu7Vz7j72WVR/CTL8gfd/CTmwT9fOMYQeRSYnOOxO4gcCCHsctgvIi8Dx919XISl7r7Kzde7swZ8hBmL8Zb+YLB8rNe7RoMexRcG0R0CmGVcRH6WdtP786LYnSQhltFQFdwdEFQV3B8lIG5+kZndalaHoWHF7AP9wWDb2FhvUlWPNUBGwyHyzREAFbVHEbkZuEpD2AnEhnG8PuqxTXBE9elOJ7k26STXI/JqO0RutiEbZA+4O80T2uv16I31SDrJ5cCtI96rvtztppcCDw+Nvilx3CFJksd6ve4lIvKXNpAY4015XnzMrQahqqjISWZ273AgICLHer3uR4KGZ9r3R5mbMboAFjpJ8lyv150UkVdbL6csinvKsjwZQE/0+5w40f+URTt7mIgVtZ8fDLJ9/X5/XuPujkVDRBBRRGRmZtToRAVzR0PyfKfTuQV3G+JzXxrNPgMgX73jjmSQZX90s5UNCIFfAB9ssYKoknYSRIQYjSzLAOikHUDodBLcHFHBzcjzgjRNK3C1DLLsMYvxupadF9M0ndAsz1a5+7ktFjztpnePjY8xNj5Gt9utvRXcIYRQz4i5kQlJIKgCggMxRsyMGCPRIiGEuxEpWmy8O1q8UFV1Pe4zcEWm87zY0+8P6PcHDLJsmMV1mBcWn6WXCjR4xRIcEJE/tHPM3TdoLOOadlEKQXd0045107SZ+1AvO/NX6wVKeK0REUJIQKpzVflVy2HMfE0CvKeuhI03+2K0IY012slo9l4x+XmA51p21sYY368ivwf5TWPI3c92t8kY5aWk44+HoB5NajZk36wl4MzE3d/RnhWielhVazyOm9/iZg86kJvdLnChmT0PrEVkp8XYMUBUrwiqT7n7GXmRT7n5KaWVkHF6kiTfGsapKvURCHUElygiY216qNYCRIQkJCByw1DnvqQoy0tUlZAkl+HeaRwoy/LKaEYZywvc/JTmfow2aWbtZD4O5K28SBX3QTuO7j7u7nVSKSGE7UOWRPrdtLsnSQKq+tvmPiIkSfLroEqSJPtF5Ehz391/mecFZYxVXsA41SrdmCwSRP4JvHNoCE4XFVSUJEnQEB5wt9fNfKLX7W4LSXgOoBvCDvAryjJuSELY0+umT3jF79/MfEOM8RNu9oK7P4wIImDmuNnSJhR18h5JROQFNzu3WenMfbU4P4oekSioBlcNWyFW061VFIPqU6b+lEhVF6op6qiwX0LYX7jVK7oQQkCA0mV1m3lEDqtIK1vdcbdLRRAVwcxajQsj9aK+Na8MF1cHUaWTJFWZN8divKzdDAnsU1Xd1UKFOytxLpC6KY0WR80JC5cGaSrKjIQQ0KAEDajqOcCFbXsadKeqyD6BP7fQhTLG24UqjgJV0Wo6JDNiWc6hQajKdIyxAlK/rywKBv0Bg8GALMtu89Gk/LuI7FFRKTSE77fRWYxXlzF+PIQEDdV6EFTJ84I8zymKkizPafoBxxlkOWVZkuc5CBRlSSftMD4+zvj4OGmaXg58ciZmjopsveuub5xQFaWTJA+JyF9bQKQoiu/GWJ4jVWmtXG01JmaG1SuzO1iMdTykTgqvwCcBhHcVZfkwTTtZTfd/9MZ63wFQEVDVo51O50sjzYv72waDbFtRFO9bIPyjv/MuLILFeNagP9jmZqcOx1T/X+73B69QhTugqqRpuj0k4Xsj/aD7e7Isn4oxXtuy+aalLMsPnegPpqzVq9QO/tjdt7pVTM40ugLdbneTqu4Y2Tu4v70oisfLovyhm58/4/nciVJve3D3lcBDRVE86WanzWJpLyKfbW8HZlp+B1U93hvrfbRf0bdhZN9gdoO5XyewV1R3COx34WXwYzjj7rY0mq+O0TZYtLWIdOZQ47632+teFUJ4feF9RwXk6NhYbzIbZPfHGG8eMlKBCe6+1mNcW/tuCBmQ4h6asT7SGgzPHwU+p6KvBdWRGT53G1gBOZam6aeTJLleRF6ab3tXFxEFxoAwslVstwYih4GbcL8BeG1Yd1t7lkU3xCHoYyEJ52sIXxGR5+fsN+c4MKJ7UVW/3ut1LwAeWczOop8GqhVdXg1B7yLovWZ2Ec56M1sDnOFwMpACucDriBwWkf2iukvgaXM/LrqonxWIZcuXv+GgWgbAzvr4r8obw/wfyP9BNDJvYh6cnt4FrAM2r5iYuPPg9PQ6oOk7pHW+vh73CLAMOAJsATbV+mXAfcx8btgCbFoxMXGkbW8xJg7VBgAurq/nk+21bj1wJ9XnhRuBJTXYZcDVwMYazPbZL1hsih5oebAOmKpfPp8sqY8t9XOH6meXActbDhyZ8+SbALHu4PT0KmAV8OQC49ZTedd4OEXl+Zn1dQOAFRMTT8z3gjdKzCngwy1Q88kRYDWVxxtrwPe19Euak4PT08veCojdVCGYWkC/CngJ+AKVx1vq/2XMMHdja/z2g9PTz/6nIKbqF+5eQH+gNrwZeLYGtAp4oNbdT8XKbN2ILJQTW4FDKyYmDhycnt4MNLHc3NI3spHK65X19ZPMhG5TPbYJ6dYVExOHZhv7N8fmQDQfwhMYAAAAAElFTkSuQmCC") no-repeat 50%;
812
+ }
813
+ #WBCR-AM .wam-assets-type-tabs__button--theme::after {
814
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAvCAYAAACVDljoAAAGA0lEQVRYhe3Zf6ifVR0H8Nf1TnNb1lYUUS6jX0hhm2lB5XS3WWCQzkqLhmzTiAqsjSjoHrAtOtEvdEERkbWGki1JyyBY2HaNxFbN3RmFkdDVEZHLvK3N1ly7/fF5nu6zs+f53ue7DfrHNzx8v+c5n8857+fz+ZxzPueckfHxcaeAM3ARLsPFeBVehLNxGI/jEezGffg1jjYbyDn36mjeSRJciLVYVxHtwouxDO+pyntxG27FP4bp8IyhKfJOPICvGkyyDUvxZfzSLPleGIboWbgZ9+CCYTppwfm4E99IKS3so9CX6Hxsw4aO+kncguvMxuulWI0v4Tcdeh/E3Sml58xFYKTHYHoWvodVLXU/xmYxUP4zqB+8Geu1u/xnWJVzPtjVQB+Lfr6F5AHcgCuxYw6SMIP7cQ3ejyeK+pX4yqAG5iJ6hbBCE/txOb49h24X7sBb8afi/fUppWu7lAa5fqGIrfMb7w5iBV4vrDNfuLUvZoT1J0Q4/QLPb9Tvw7Kc899LxUHz6JqCJHy0IvsFLMZf8a8hyI7iXLwFD4nBdKdZzy7Bh/C5UrHL9fOqRpr4CbbgHDFV7RKx9UYxyt9Q/XY9F4kB9YOq/XNwF75f9LMupXR2G6E2LMPrGuUZYUU4Vn3gY/gdNlbyhzvaqvs5VMnuwdVVO6p2340zq/Ir8Sbs7EN0zPHu/K2Ipzbdd+m/ANxevsg5T6aUfiXCocbKvkQvLsr3mrVAjdoCN4nYerqon8Gzqz7+LWJ5jxiMJX5aEC377yT66qK8u4VEHd/7RbbUJDpStX0P/ibi84iYf0db+ivbP68v0RcW5X1FeaRB7LParUTMwX8W2dIBXIWnWuQeE9NW/RGL+hKdX5QPdcgx99S0AM8VM8VZHTKHhMXrfk+Q65qeyhG8YACRMnabmGnUHx0gu6AgV8Z7J9H9RfncAWRK6zdxpll31oNvpkVuieNjd7oU6HL9Hx0/j14olrwm6oZvFJl8c4sxUtXvESvZpcK1D4k5s8SFRbkcE51EdxcNXl51XlvjqFiRbsKjFYnSO8fwtur9oUr/Aryjqm9a9u0t/fciurMoL62I7arKR8TMsKlDfy4cUQ3ClNJrxUrUxI5SoStGd+P3jfIoPtnQGSZjakMdGvBxxw+kR524CnYSfRrfKt5djffin6fG8X/9PiXy3euKuq055xPm2kFp3q34CF5RlUfwdSwXicS1YiS3jeJBGBUW24OfFxz+gq+1KQ0iegCfEKlYjcXYLoL/i9qXwz54OX4oDiua+FTO+fE2hbm2Infjm8W7l4gM/Rqx7A37XFHpv6Zod1vOeWsXkT6buw0ie2riBSLhvV0kzH2wVITTj8S828QD+PAg5T5HOofEnHqXyBObWI33VR3diwdFgnFQLItLxGS+EpeYXZ1KklfmnJ88VaJEvK4Se/gbirrRisQlVfmYyD/PMncMfxc3tm3mSgxzpHMQHxD78nKrW7Y532CS+3A9VvchWTc6LO4QcZnw8JC6j+AzYpXbMoziyR47PiG2tDeLneWY2D68FM8Tbj+CJ4X1HhTL8v0G57annWiNw2JdPmFtPt04Gdf/X/AM0dONZ4ieboyMj4/v1L4vH8OnG/9Vcjsb5XInQKSDdZsbxS5gRUN2pGp3Y6E3kXMeSymtr+oXYQqbcs7fmSeSjkXimHFtg8TkwE+cxYYO2amK4CZxrj+FlxUyY43/0ymlZeIuYLNIXtZgS0ppYl6jk8vqL+tJsMZkh86k2SP1FZXM2kJmonkhVhFl9oM2YCum+0z4KwzO4pvun3C8R1aII8llwkIlZlJK9f+NOedNKaV1wqr1R27OOU/0ITpp9tqmdk0TTdeXBwcT4ryJ9vBoun6qlss5L66sexU2ppT29iE6bXA4dLmeuNb52ID60vXrcUtKaSznPJFSmhKD7rxTXesJCzct2bw0m6jqu65mdjZcT+x011TvJ4QHp7F1dPny5bXQiDD/fQ3FEXHR2nTbdCUzXT0PV3r1s0tcyO4Vd57Erd90Q3ek0JnCVM55+44dO7bhD5XsdmzIOU/9FxZhkSePNaNRAAAAAElFTkSuQmCC") no-repeat 50%;
815
+ }
816
+ #WBCR-AM .wam-assets-type-tabs__button--plugins::after {
817
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAKSUlEQVRYhe2Yf4xU1RXHv+feeW8GdpBlQViGqouCmJgKRGpTawsEa2JSKVSspkZl1fqrsYXIaOtSFxQ2wFB+pMXaaiumqVWJYG2iiVGBRkNbi2BrWxOxrFBlV9idnZndmXk/7j394923+3bYWXY21v7Tk7y89+6959zPPe/cc++7tHPnTgwl77777pDlAGDbNmJSolgqIZFICNd1LhUk5iut5wGYCeZGAAkAZQCfENEREB0URPuJ6C0AvhACIMK6deuq9lNNYjVrACACAK4DsNx1nGZmvtSHCupOb57SzHPAvIwD5XcE0a9J0BMClBtN/2I0SspX1ziOewDATzXzpSHsEMCorGPm2UrrzZ7n/1EptWw0/dcKbROwxVfqRaX15ytBOXJVvodloQ4zX+T5/q4fPPDAz1sfeqjuvwU9hoBnAawcChbAYSnFVinETTEp50sp50khvhqT8kYpRIaI/jIUvNL6jrLj7GltfeiskYLQCCdinIBnACyJFjIAIvq9bVvbPNfbb9mWUr4CCQEwg5mDZ9OSmS/XWq/QWi8LwUM7QojXxiTiS9asfbj3TNAj8jQBG6LAxlt5Am4DsFgK+ToAxTygw1EDwQsLojctK3adFYt9m4CuqNe11ovKjrt9RDzVPH3kyPsgEHzfv9r3/Zei/QshjtmWtWxqKvVWfzkzwAylgixSLpehtQYJAcdx7rNisVlTU6nvEuAxgH998MElZcd5jplnRT1uW9b169vanhsOuqqnhRAgojqt9Zao14ioNxG3vxkFBgBBBNfzvua47lVBSAAkBDzPu7u3t3dzdzb7nRMnTjzqeZ7lOg6apk//ayIeX0JEXf22AXi+v7mlpaVhVNClYgnFUukWpfVFUU+A+XtTpjQehPEsmEFEKDvO4k86O/ecOnnyeadcXiClhOe6d+Xz+R3MDAJgW9ZRIaX2fR++7+OCGTPes6zYHQzosF9mPkcrddeooBNjEjEhxB3RMiJ6acbMmU/GLAsxy4Jl7lIIaK1n+UrVaeZkV1fXb/r6+jbnC4VHmZkIwNSpU1dOOvvsNs/zVF+xCGm+xvr1bbulEM9F41tp3bx6dUuiZmjXceew1pdEvMxx294opUT0EkKgVC7HJzY0bJna2JgGAF+pVKG39z5mJiGEk0qlVjRMnLjNdRzkcjk4jrPy1KlTj4FZAoCUciMBXsTbM7TSX6oZWgixkCPpmIC/uZ73RjQszKREb6Hws48++ujpiZMmbW5sbLw/amf8WWf9oi6Z3F4qFtGTy8H3vDsLhcLmU11dd3788cePAcD6trbDRPTn6Nxh5kXV2KruPXyl5kUXECnlqzErpolMqbnnc7nrcrlcMwMgIYrTpk1rBkAdHR0bAaBQKFxj2fbziURiv+e6d+bz+R1aa0FEcFz3aMRJr2ilvmwcBB1svmqDBnAhI7oA8EGlFEJoIoKv1ISTJ09uCD2UzWaXE4DUAPgGX6mm7q6up8eNG7crl8/fo7WWRIRkMrkqJuWP+3sjHKxYZc+rGZqZJw9asUgcF0IMWoZ7stlbXc87P6rXnc0uB8CpadNuBcAdHR0bfaVS2Z6e7wOAIHLG1tU9aMViW7TuTxog0DEACoA0APU1QxMwJvIMAH3MjL7eYJUVQsRz+fzNQ+l2Z7PNAMh4nDs6OjaFdclk8vEJEyZs0VoPXjWBPgAuB3scALBrhmagPOhzMY8FA77vA0TwHWeW67oXVtM3Hg9DBSF4sVRaXJdM7kokEn/giKdBGItgFxmKhyoynKdPAphqBgAQPico+NsgIiilpmitq+bSIcCpo6Njo+/753Z2dr44ZfLkb8UTiVfCtlrrcxCGBgAQ9dQOLeh9rfmS/v2v5rlM/IwOJyOzQ0DlJx4J+AYTegkeHNNzB/UPHK8dGnSQwNfCgDHzlUREHAgs2z5s2fZR13Wnn4Eb3dnscmYem0qlbgYzMfMHtm2/GB2w0vqqMFuZLe/BmqGFEHvD2W3+NGYz+DIp5Z9czwP7/myt1Ij+OIgI5XKZy45jj6+v31AsFqHNngUAVq9uuRhA/wpIAKQQr1dlq9qREAdB9I/Ir5NUvrqfAfie95WeXG63r9TkMwHHpDw2ob7+9uS4cTew1gWtVLCNjYjjuPeBOToJPwTRGzVDCyJPCvHL/kEAUFov7evray0UCruVUpP62wrRG4vF/h3R9S3L+uf48ePXNDQ0fFFIGdihaD4KpKXlwasB3BS+m5X1qba2tmI1tuEmImJW7Aml9T1gvsCAU6lY/JHSun+WSyEKyWTyeinlYQAXM/NYx3VPJOvq/h6zrKLyfbDWQ/6pd506db7v+78KOUwsnxiTiO+oxjU8NAgkKG9ZsbTrersjRwADwFLm6+rqbiAhXmZmxBOJE2CG63nQzODTF5B+6e7umlkql3dpzY2hbXP/4Zq1D38yHHT18JACQgjYtr0nJuXjYecxy0Is2JaqRDz+E0H0MkyMstanxetQ0tnZ+fVSsbRPaz27Yr/x7KZNm546k/6ITpji8fhKXS5P11pf6ZTLYQeyr1hsEUI0CUHbCfQWgvwNEOA4ZRARWDOEFNBKI5fPz3Zd914AzQBERcgcIODukfCMCJoE9Y1JxK8tlZ3dWutF0XMPrfWNrHEDiA4IoldBeJuYjgHoZfDY4PdJz1VKLVJaX0GAVWmfgQOJeHzxI+vWZT816ABc5Mck4kvKjrtNKXUbMOi4SzLzFYr5inAsBDgAbDZLs8n1g846zPPTAO59ZN267pGy1HQAKYTstW3rds/Da0rp9cw8vQK+vynMLjFaPgiY6DiYWzdlMk/WwhAaH7GwyQVSyt/GpPyCFKKFiN6rPK87XW9Q3REhxMOJePwyADUDA6M86uXg23ZJKdsEsIW1vpzBC7XmeQDOBXMDgv2wC6IsAceJ6G1BtBeEN1lzn6ichp8GdFPTGfdBoZQBvG6uz0RGdT79v5b/Q39WQqtWrWqtKHsKQDuABQDmA1g7hF4rgP0A9pn3yrb1CI6GzwOQA/CCsVnZNnz+XSaTOQwA6XR6OYD2TCazL51O1wNYDmA8gA8BvJDJZHoEgDWmYoG5HwXQZIytqTLYNaY+lGjbegB7AWw1NlsBHAIwZ4i24fPWiK1bAMw3wIeM/gLTZi8wEB47ASwEMDeiOFrZasCnG5thGvpGlfbtABak0+kFFeVzEDivOZPJLASwFEBPOp2eU5nymsw9h+CTjEaWIHBC+DfdA2DCMO3bEYRZKwbCDQAOm2tPOp3eZ+qaM5lMe+jpNQgWrUOm4c5RAgOBl0PgVgwsiHuH0VmLCm9nMpkeBF9qpbG3AsChdDrdVBkeYYhUPXMYgRxGEINAMKkXmrKqkslk2g1Df1IwA3gSwM5MJrMUQZjVA7glDI92DP40UVkQee4xAPsQjPwdU748ArYWwB4MZJgwNocFN3pHTR8hyxIzgO0YmPgfjiRP741c4SxfaSD2mKsdwcYeCNLbUjOQvQb+hUj9kBLxdr1532d05hg7KwBsy2QyO/8DenfAKWku08QAAAAASUVORK5CYII=") no-repeat 50%;
818
+ }
819
+ #WBCR-AM .wam-assets-type-tabs__button:hover,
820
+ #WBCR-AM .wam-assets-type-tabs__button:focus {
821
+ outline: none;
822
+ background: #E6E7E7;
823
+ }
824
+ #WBCR-AM .wam-assets-type-tabs__button:hover::after,
825
+ #WBCR-AM .wam-assets-type-tabs__button:focus::after {
826
+ opacity: 1;
827
+ }
828
+ #WBCR-AM .wam-assets-type-tabs__button.wam-assets-type-tab__active {
829
+ background: #CACDCF;
830
+ }
831
+ #WBCR-AM .wam-assets-type-tabs__button.wam-assets-type-tab__active::after {
832
+ opacity: 1;
833
+ }
834
+ #WBCR-AM .wam-assets-type-tab-content {
835
+ display: none;
836
+ padding: 20px 30px;
837
+ }
838
+ #WBCR-AM .wam-assets-type-tab-content.wam-assets-type-tab-content__active {
839
+ display: block !important;
840
+ }
841
+ #WBCR-AM .wam-nav-plugins {
842
+ padding: 0;
843
+ margin: 0;
844
+ list-style: none;
845
+ }
846
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab {
847
+ position: relative;
848
+ text-align: left;
849
+ margin-bottom: 3px;
850
+ }
851
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a {
852
+ display: block;
853
+ padding: 10px 20px;
854
+ background: #f5f5f5;
855
+ color: #222;
856
+ }
857
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a strong,
858
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a span {
859
+ display: block;
860
+ }
861
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab a span {
862
+ font-size: 12px;
863
+ color: #2f2f2f;
864
+ }
865
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab:hover a {
866
+ background: #efefef;
867
+ text-decoration: none;
868
+ }
869
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab.wam-nav-plugins__tab--active a {
870
+ background: #e8e8e8;
871
+ }
872
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--enable::after,
873
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-plugin::after,
874
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-assets::after {
875
+ display: block;
876
+ content: '';
877
+ position: absolute;
878
+ bottom: 10px;
879
+ right: 10px;
880
+ width: 10px;
881
+ height: 10px;
882
+ background: #8bc34a;
883
+ text-align: center;
884
+ font-size: 11px;
885
+ font-weight: 600;
886
+ border-radius: 4px;
887
+ }
888
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-assets::after,
889
+ #WBCR-AM .wam-nav-plugins .wam-nav-plugins__tab-load-mode--disable-plugin::after {
890
+ background: #d47b7b;
891
+ }
892
+ #WBCR-AM .wam-nav-plugins__tab-content {
893
+ display: none;
894
+ }
895
+ #WBCR-AM .wam-nav-plugins__tab-content.js-wam-nav-plugins__tab-content--active {
896
+ display: block !important;
897
+ }
898
+ #WBCR-AM .wam-help-hint {
899
+ display: inline-block;
900
+ position: relative;
901
+ background: url(../img/help.png) no-repeat 0 0 transparent;
902
+ height: 14px;
903
+ width: 13px;
904
+ cursor: help;
905
+ vertical-align: middle;
906
+ top: -1px;
907
+ }
908
+ #WBCR-AM .wam-asset-type {
909
+ display: inline-block;
910
+ padding: 5px 10px;
911
+ font-size: 13px;
912
+ text-transform: uppercase;
913
+ text-align: center;
914
+ border-radius: 3px;
915
+ vertical-align: middle;
916
+ margin-right: 15px;
917
+ }
918
+ #WBCR-AM .wam-asset-type--js {
919
+ background: #ffcb1e;
920
+ color: #403102;
921
+ }
922
+ #WBCR-AM .wam-asset-type--css {
923
+ background: #9757a5;
924
+ color: #ffffff;
925
+ }
926
+ #WBCR-AM .wam-colors--red {
927
+ color: red;
928
+ }
929
+ #WBCR-AM .wam-colors--grey {
930
+ color: grey;
931
+ }
932
+ #WBCR-AM .wam-button {
933
+ display: inline-block;
934
+ vertical-align: bottom;
935
+ padding: 5px 10px;
936
+ text-decoration: none;
937
+ box-shadow: none;
938
+ font-weight: 600;
939
+ border-radius: 3px;
940
+ }
941
+ #WBCR-AM .wam-button--small {
942
+ padding: 2px 8px;
943
+ font-size: 13px;
944
+ }
945
+ #WBCR-AM .wam-button.js-wam-button--hidden {
946
+ display: none;
947
+ }
948
+ #WBCR-AM .wam-button:hover {
949
+ cursor: pointer;
950
+ text-decoration: none;
951
+ box-shadow: none;
952
+ }
953
+ #WBCR-AM .wam-button:focus {
954
+ outline: none;
955
+ box-shadow: none;
956
+ }
957
+ #WBCR-AM .wam-button__icon {
958
+ height: 28px;
959
+ width: 28px;
960
+ padding: 5px;
961
+ line-height: 0;
962
+ }
963
+ #WBCR-AM .wam-button.js-wam-button__icon--cogs {
964
+ background: url('../img/cogs.png') center no-repeat;
965
+ }
966
+ #WBCR-AM .wam-button.js-wam-button__icon--close {
967
+ background: url('../img/close.png') center no-repeat;
968
+ }
969
+ #WBCR-AM .wam-button--default {
970
+ background-color: #eceded;
971
+ color: #222;
972
+ border: 1px solid #c3c3c3;
973
+ }
974
+ #WBCR-AM .wam-button--default:hover {
975
+ cursor: pointer;
976
+ background-color: #fff;
977
+ border: 1px solid #c3c3c3;
978
+ }
979
+ #WBCR-AM .wam-button--danger {
980
+ background-color: #fff;
981
+ color: #ff7063;
982
+ border: 1px solid #ff7063;
983
+ }
984
+ #WBCR-AM .wam-button--danger:hover {
985
+ background-color: #fff;
986
+ color: #222;
987
+ border: 1px solid #c3c3c3;
988
+ }
989
+ #WBCR-AM .wam-button--yellow {
990
+ background-color: #fff;
991
+ color: #a5820e;
992
+ border: 1px solid #ffcb1e;
993
+ }
994
+ #WBCR-AM .wam-button--yellow:hover {
995
+ background-color: #fff;
996
+ color: #222;
997
+ border: 1px solid #c3c3c3;
998
+ }
999
+ #WBCR-AM .wam-select {
1000
+ display: inline-block;
1001
+ vertical-align: bottom;
1002
+ height: auto;
1003
+ padding: 4px 10px;
1004
+ }
1005
+ #WBCR-AM .wam-select.js-wam-select--enable {
1006
+ background: #efffde;
1007
+ color: #4e6f28;
1008
+ border: 1px solid #8bc34a;
1009
+ }
1010
+ #WBCR-AM .wam-select.js-wam-select--disable {
1011
+ background: #ffdada;
1012
+ border: 1px solid #efc3c3;
1013
+ color: #774a4a;
1014
+ }
1015
+ #WBCR-AM .wam-select:focus {
1016
+ outline: none;
1017
+ box-shadow: none;
1018
+ }
1019
+ #WBCR-AM.wam-wrapper {
1020
+ min-width: 1365px;
1021
+ position: fixed;
1022
+ z-index: 99999999;
1023
+ top: 0;
1024
+ bottom: 0;
1025
+ left: 0;
1026
+ right: 0;
1027
+ background: #FFF;
1028
+ overflow-y: auto;
1029
+ }
1030
+ #WBCR-AM .wam-content {
1031
+ display: block;
1032
+ width: 100%;
1033
+ margin: 0;
1034
+ padding: 62px 0 0 75px;
1035
+ }
1036
+ #WBCR-AM .wam-info-section {
1037
+ display: table;
1038
+ padding: 0 30px 30px;
1039
+ color: #5C5C5C;
1040
+ font-size: 15px;
1041
+ line-height: 21px;
1042
+ }
1043
+ #WBCR-AM .wam-info-section p {
1044
+ font-size: 15px;
1045
+ margin: 0;
1046
+ }
1047
+ #WBCR-AM .wam-info-section p:not(:last-child) {
1048
+ margin-bottom: 25px;
1049
+ }
1050
+ #WBCR-AM .wam-info-section .wam-info-section__warning,
1051
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium {
1052
+ display: table-cell;
1053
+ width: 49%;
1054
+ text-align: left;
1055
+ vertical-align: top;
1056
+ padding: 20px;
1057
+ background: #f9f9f9;
1058
+ border-right: 2px solid #fff;
1059
+ }
1060
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium {
1061
+ background: #f9f9f9;
1062
+ border-left: 2px solid #fff;
1063
+ margin-left: 10px;
1064
+ }
1065
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium h3 {
1066
+ position: relative;
1067
+ margin: 0 0 20px;
1068
+ padding: 10px 0;
1069
+ text-align: left;
1070
+ border-bottom: 2px solid #e2e2e2;
1071
+ vertical-align: bottom;
1072
+ }
1073
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium h3 span {
1074
+ display: block;
1075
+ font-size: 17px;
1076
+ font-weight: 600;
1077
+ color: #e47558;
1078
+ text-transform: uppercase;
1079
+ }
1080
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul {
1081
+ list-style: none;
1082
+ margin-left: 5px;
1083
+ margin-bottom: 20px;
1084
+ padding: 0;
1085
+ }
1086
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul li {
1087
+ margin-bottom: 5px;
1088
+ font-weight: 600;
1089
+ font-size: 15px;
1090
+ color: #7d8871;
1091
+ padding: 0;
1092
+ }
1093
+ #WBCR-AM .wam-info-section .wam-info-section__go-to-premium ul li:before {
1094
+ content: " ";
1095
+ display: inline-block;
1096
+ width: 0.4em;
1097
+ height: 0.7em;
1098
+ border: solid #8bc34a;
1099
+ border-width: 0 0.2em 0.2em 0;
1100
+ left: 0;
1101
+ margin-right: 10px;
1102
+ -webkit-transform: rotate(45deg);
1103
+ -moz-transform: rotate(45deg);
1104
+ -o-transform: rotate(45deg);
1105
+ transform: rotate(45deg);
1106
+ }
1107
+ #WBCR-AM .wam-plugin-settings {
1108
+ padding-bottom: 10px;
1109
+ }
1110
+ #WBCR-AM .wam-plugin-settings__controls {
1111
+ vertical-align: top;
1112
+ }
1113
+ #WBCR-AM .wam-plugin-settings .js-wam-plugin-settings__conditions {
1114
+ display: none;
1115
+ padding: 20px;
1116
+ }
1117
+ @media screen and (max-width: 1367px) {
1118
+ #WBCR p {
1119
+ font-size: 13px;
1120
+ }
1121
+ #WBCR .wam-content {
1122
+ padding: 32px 0 0 75px;
1123
+ }
1124
+ #WBCR .wam-float-panel__left .wam-float-panel__item_value {
1125
+ display: block;
1126
+ }
1127
+ #WBCR .wam-float-panel__right .wam-table__checkbox-text {
1128
+ font-size: 13px;
1129
+ }
1130
+ #WBCR .wam-float-panel__right .wam-float-panel__reset,
1131
+ #WBCR .wam-float-panel__right .wam-float-panel__save {
1132
+ font-size: 12px;
1133
+ }
1134
+ #WBCR .wam-float-panel__right .wam-float-panel__checkbox-text {
1135
+ font-size: 12px;
1136
+ display: block;
1137
+ line-height: 1.5;
1138
+ }
1139
+ #WBCR .wam-float-panel__right .wam-float-panel__close {
1140
+ width: 30px;
1141
+ height: 30px;
1142
+ margin: 0 10px 0 15px;
1143
+ border: 3px solid #FFF;
1144
+ }
1145
+ #WBCR .wam-info-section {
1146
+ padding: 0;
1147
+ }
1148
+ #WBCR .wam-info-section,
1149
+ #WBCR .wam-info-section p {
1150
+ font-size: 13px;
1151
+ }
1152
+ #WBCR .wam-info-section .wam-info-section__warning {
1153
+ padding: 20px 20px 30px;
1154
+ }
1155
+ #WBCR .wbcr-gnz-button__pro {
1156
+ font-size: 12px;
1157
+ }
1158
+ #WBCR .wam-table {
1159
+ margin: 0;
1160
+ }
1161
+ #WBCR .wam-table th {
1162
+ font-size: 13px;
1163
+ }
1164
+ #WBCR .wam-table .wam-table__item .wam-table__item-name {
1165
+ font-size: 14px;
1166
+ }
1167
+ #WBCR .wam-table .wam-table__item .wam-table__item-author,
1168
+ #WBCR .wam-table .wam-table__item .wam-table__item-version,
1169
+ #WBCR .wam-table .wam-table__item .wbcr-use-by-comment,
1170
+ #WBCR .wam-table .wam-table__item .wam-table__item-author a,
1171
+ #WBCR .wam-table .wam-table__item .wam-table__item-version a,
1172
+ #WBCR .wam-table .wam-table__item .wbcr-use-by-comment a {
1173
+ font-size: 12px;
1174
+ }
1175
+ #WBCR .wam-table .wam-table__script-name {
1176
+ font-size: 14px;
1177
+ }
1178
+ #WBCR .wam-table .wam-table__script-name b {
1179
+ font-size: 11px;
1180
+ font-weight: lighter;
1181
+ padding: 3px 7px;
1182
+ margin-right: 8px;
1183
+ }
1184
+ #WBCR .wam-table .wam-table__script-path a {
1185
+ font-size: 11px;
1186
+ }
1187
+ #WBCR .wam-table .wam-table__column_switch {
1188
+ width: 10%;
1189
+ }
1190
+ #WBCR .wam-table .wam-table__column_switch .wam-table__th-external-plugin,
1191
+ #WBCR .wam-table .wam-table__column_switch em {
1192
+ font-size: 10px;
1193
+ }
1194
+ #WBCR .wam-table .wam-table__column_switch b {
1195
+ font-size: 12px;
1196
+ }
1197
+ #WBCR .wam-table .wam-table__column_condition {
1198
+ width: 35%;
1199
+ }
1200
+ }
1201
+ @media screen and (max-width: 1600px) {
1202
+ #WBCR .wam-float-panel__data-main {
1203
+ display: none;
1204
+ }
1205
+ #WBCR .wam-float-panel__data-hidden {
1206
+ display: block;
1207
+ }
1208
+ }
 
components/assets-manager/gonzales.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: gonzales
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -64,15 +64,15 @@ $wgnz_plugin_info = array(
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
68
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
69
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
70
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
71
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
72
  )
73
  );
74
 
75
- $wgnz_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wgnz_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WGZ_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
8
  * Text Domain: gonzales
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  // Exit if accessed directly
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
68
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
69
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
70
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
71
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
72
  )
73
  );
74
 
75
+ $wgnz_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wgnz_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WGZ_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
components/assets-manager/includes/class-plugin.php CHANGED
@@ -11,11 +11,11 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  * @version 1.0
13
  */
14
- class WGZ_Plugin extends Wbcr_Factory432_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
- * @var Wbcr_Factory432_Plugin
19
  */
20
  private static $app;
21
 
@@ -53,7 +53,7 @@ class WGZ_Plugin extends Wbcr_Factory432_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory432_Plugin|\WGZ_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  * @version 1.0
13
  */
14
+ class WGZ_Plugin extends Wbcr_Factory436_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
+ * @var Wbcr_Factory436_Plugin
19
  */
20
  private static $app;
21
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory436_Plugin|\WGZ_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
components/assets-manager/includes/classes/class-assets-manager-global.php CHANGED
@@ -21,9 +21,9 @@ class WGZ_Assets_Manager_Public {
21
  public $collection = [];
22
 
23
  /**
24
- * @param Wbcr_Factory432_Plugin $plugin
25
  */
26
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
27
  $this->plugin = $plugin;
28
 
29
  $this->register_hooks();
21
  public $collection = [];
22
 
23
  /**
24
+ * @param Wbcr_Factory436_Plugin $plugin
25
  */
26
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
27
  $this->plugin = $plugin;
28
 
29
  $this->register_hooks();
components/assets-manager/includes/classes/class-views.php CHANGED
@@ -63,11 +63,11 @@ class WGZ_Views {
63
  *
64
  * @param string $template The template name.
65
  * @param mixed $data Some data to pass to the template.
66
- * @param Wbcr_FactoryClearfy224_PageBase $page
67
  *
68
  * @return bool|string The page contents. False if the template doesn't exist.
69
  */
70
- public function get_template( $template, $data = [], Wbcr_FactoryClearfy224_PageBase $page = null ) {
71
  $template = str_replace( '_', '-', $template );
72
  $path = $this->plugin_dir . '/views/' . $template . '.php';
73
 
@@ -92,9 +92,9 @@ class WGZ_Views {
92
  *
93
  * @param string $template The template name.
94
  * @param mixed $data Some data to pass to the template.
95
- * @param Wbcr_FactoryClearfy224_PageBase $page
96
  */
97
- public function print_template( $template, $data = [], Wbcr_FactoryClearfy224_PageBase $page = null ) {
98
  echo $this->get_template( $template, $data, $page );
99
  }
100
  }
63
  *
64
  * @param string $template The template name.
65
  * @param mixed $data Some data to pass to the template.
66
+ * @param Wbcr_FactoryClearfy227_PageBase $page
67
  *
68
  * @return bool|string The page contents. False if the template doesn't exist.
69
  */
70
+ public function get_template( $template, $data = [], Wbcr_FactoryClearfy227_PageBase $page = null ) {
71
  $template = str_replace( '_', '-', $template );
72
  $path = $this->plugin_dir . '/views/' . $template . '.php';
73
 
92
  *
93
  * @param string $template The template name.
94
  * @param mixed $data Some data to pass to the template.
95
+ * @param Wbcr_FactoryClearfy227_PageBase $page
96
  */
97
+ public function print_template( $template, $data = [], Wbcr_FactoryClearfy227_PageBase $page = null ) {
98
  echo $this->get_template( $template, $data, $page );
99
  }
100
  }
components/assets-manager/migrations/010100.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate010100 extends Wbcr_Factory432_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate010100 extends Wbcr_Factory436_Update {
8
 
9
  public function install()
10
  {
components/assets-manager/migrations/010108.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate010108 extends Wbcr_Factory432_Update {
8
 
9
  /**
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate010108 extends Wbcr_Factory436_Update {
8
 
9
  /**
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
components/assets-manager/migrations/020005.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate020005 extends Wbcr_Factory432_Update {
8
 
9
  public function install() {
10
  $settings = get_option( $this->plugin->getPrefix() . 'assets_states', [] );
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate020005 extends Wbcr_Factory436_Update {
8
 
9
  public function install() {
10
  $settings = get_option( $this->plugin->getPrefix() . 'assets_states', [] );
components/assets-manager/mu-plugins/assets-manager.php CHANGED
@@ -3,7 +3,7 @@
3
  * Webcraftic AM plugin load filter
4
  * Dynamically activated only plugins that you have selected in each page. [Note] Webcraftic AM has been automatically installed/deleted by Activate/Deactivate of "load filter plugin".
5
  * Version: 1.0.9
6
- * Framework Version: FACTORY_432_VERSION
7
  */
8
 
9
  // todo: проверить, как работает кеширование
3
  * Webcraftic AM plugin load filter
4
  * Dynamically activated only plugins that you have selected in each page. [Note] Webcraftic AM has been automatically installed/deleted by Activate/Deactivate of "load filter plugin".
5
  * Version: 1.0.9
6
+ * Framework Version: FACTORY_436_VERSION
7
  */
8
 
9
  // todo: проверить, как работает кеширование
components/comments-plus/admin/boot.php CHANGED
@@ -101,7 +101,7 @@ if ( ! defined( 'LOADING_COMMENTS_PLUS_AS_ADDON' ) ) {
101
  return $page_url;
102
  }
103
 
104
- add_filter( 'wbcr_factory_pages_432_imppage_rating_widget_url', 'wbcr_cmp_rating_widget_url', 10, 2 );
105
 
106
  /**
107
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
101
  return $page_url;
102
  }
103
 
104
+ add_filter( 'wbcr_factory_pages_435_imppage_rating_widget_url', 'wbcr_cmp_rating_widget_url', 10, 2 );
105
 
106
  /**
107
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/comments-plus/admin/pages/class-page-comments.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy224_PageBase {
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
- * @param \Wbcr_Factory432_Plugin $plugin
56
  */
57
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
58
  $this->menu_title = __( 'Disable comments', 'comments-plus' );
59
  $this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
60
 
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory436_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
58
  $this->menu_title = __( 'Disable comments', 'comments-plus' );
59
  $this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
60
 
components/comments-plus/admin/pages/class-page-delete-comments.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy224_PageBase {
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
- * @param \Wbcr_Factory432_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
72
  $this->menu_title = __( 'Comments cleaner', 'comments-plus' );
73
 
74
  parent::__construct( $plugin );
@@ -78,10 +78,10 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy224_PageBase {
78
  * {@inheritDoc}
79
  *
80
  * @param $notices
81
- * @param Wbcr_Factory432_Plugin $plugin
82
  *
83
  * @return array
84
- * @see libs\factory\pages\themplates\FactoryPages432_ImpressiveThemplate
85
  */
86
  public function getActionNotices( $notices ) {
87
 
@@ -200,7 +200,7 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy224_PageBase {
200
  /**
201
  * Prints the content of the page
202
  *
203
- * @see libs\factory\pages\themplates\FactoryPages432_ImpressiveThemplate
204
  */
205
  public function showPageContent() {
206
  $stats = $this->getStats();
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory436_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
72
  $this->menu_title = __( 'Comments cleaner', 'comments-plus' );
73
 
74
  parent::__construct( $plugin );
78
  * {@inheritDoc}
79
  *
80
  * @param $notices
81
+ * @param Wbcr_Factory436_Plugin $plugin
82
  *
83
  * @return array
84
+ * @see libs\factory\pages\themplates\FactoryPages435_ImpressiveThemplate
85
  */
86
  public function getActionNotices( $notices ) {
87
 
200
  /**
201
  * Prints the content of the page
202
  *
203
+ * @see libs\factory\pages\themplates\FactoryPages435_ImpressiveThemplate
204
  */
205
  public function showPageContent() {
206
  $stats = $this->getStats();
components/comments-plus/admin/pages/class-page-more-features.php CHANGED
@@ -19,6 +19,6 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @copyright (c) 2018 Webraftic Ltd
21
  */
22
- class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy224_MoreFeaturesPage {
23
 
24
  }
19
  *
20
  * @copyright (c) 2018 Webraftic Ltd
21
  */
22
+ class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy227_MoreFeaturesPage {
23
 
24
  }
components/comments-plus/comments-plus.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: comments-plus
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -64,15 +64,15 @@ $wcm_plugin_info = array(
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
68
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
69
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
70
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
71
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
72
  )
73
  );
74
 
75
- $wcm_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wcm_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WCM_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
8
  * Text Domain: comments-plus
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  // Exit if accessed directly
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
68
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
69
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
70
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
71
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
72
  )
73
  );
74
 
75
+ $wcm_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wcm_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WCM_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
components/comments-plus/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WCM_Plugin extends Wbcr_Factory432_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory432_Plugin
18
  */
19
  private static $app;
20
 
@@ -59,7 +59,7 @@ class WCM_Plugin extends Wbcr_Factory432_Plugin {
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
- * @return \Wbcr_Factory432_Plugin|\WCM_Plugin
63
  */
64
  public static function app() {
65
  return self::$app;
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WCM_Plugin extends Wbcr_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
+ * @return \Wbcr_Factory436_Plugin|\WCM_Plugin
63
  */
64
  public static function app() {
65
  return self::$app;
components/comments-plus/includes/classes/class-configurate-comments.php CHANGED
@@ -12,14 +12,14 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  *
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
- class WbcrCmp_ConfigComments extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
  private $modified_types = [];
18
 
19
  /**
20
- * @param Wbcr_Factory432_Plugin $plugin
21
  */
22
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
23
  parent::__construct( $plugin );
24
  $this->plugin = $plugin;
25
  }
12
  *
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
+ class WbcrCmp_ConfigComments extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  private $modified_types = [];
18
 
19
  /**
20
+ * @param Wbcr_Factory436_Plugin $plugin
21
  */
22
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
23
  parent::__construct( $plugin );
24
  $this->plugin = $plugin;
25
  }
components/cyrlitera/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
- * @see Wbcr_Factory432_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WCTR_Activation extends Wbcr_Factory432_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
+ * @see Wbcr_Factory436_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WCTR_Activation extends Wbcr_Factory436_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/cyrlitera/admin/boot.php CHANGED
@@ -135,7 +135,7 @@ if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
135
  return $page_url;
136
  }
137
 
138
- add_filter( 'wbcr_factory_pages_432_imppage_rating_widget_url', 'wbcr_cyrlitera_rating_widget_url', 10, 2 );
139
 
140
  /**
141
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
135
  return $page_url;
136
  }
137
 
138
+ add_filter( 'wbcr_factory_pages_435_imppage_rating_widget_url', 'wbcr_cyrlitera_rating_widget_url', 10, 2 );
139
 
140
  /**
141
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/cyrlitera/admin/pages/class-page-cyrlitera.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
- class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -59,9 +59,9 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy224_PageBase {
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
- * @param \Wbcr_Factory432_Plugin $plugin
63
  */
64
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
65
  $this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
66
 
67
  if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
@@ -202,7 +202,7 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy224_PageBase {
202
  }
203
 
204
  /**
205
- * @param $html_builder Wbcr_FactoryForms430_Html
206
  */
207
  public function rollbackButton( $html_builder ) {
208
  $form_name = $html_builder->getFormName();
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
+ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
+ * @param \Wbcr_Factory436_Plugin $plugin
63
  */
64
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
65
  $this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
66
 
67
  if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
202
  }
203
 
204
  /**
205
+ * @param $html_builder Wbcr_FactoryForms433_Html
206
  */
207
  public function rollbackButton( $html_builder ) {
208
  $form_name = $html_builder->getFormName();
components/cyrlitera/admin/pages/class-page-more-features.php CHANGED
@@ -18,6 +18,6 @@ if ( ! defined( 'ABSPATH' ) ) {
18
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @copyright (c) 2018 Webraftic Ltd
20
  */
21
- class WCTR_MoreFeaturesPage extends Wbcr_FactoryClearfy224_MoreFeaturesPage {
22
 
23
  }
18
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @copyright (c) 2018 Webraftic Ltd
20
  */
21
+ class WCTR_MoreFeaturesPage extends Wbcr_FactoryClearfy227_MoreFeaturesPage {
22
 
23
  }
components/cyrlitera/cyrlitera.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: cyrlitera
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -64,15 +64,15 @@ $wctr_plugin_info = array(
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
68
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
69
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
70
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
71
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
72
  )
73
  );
74
 
75
- $wctr_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wctr_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WCTR_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
8
  * Text Domain: cyrlitera
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  // Exit if accessed directly
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
68
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
69
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
70
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
71
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
72
  )
73
  );
74
 
75
+ $wctr_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wctr_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WCTR_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
components/cyrlitera/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WCTR_Plugin extends Wbcr_Factory432_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory432_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WCTR_Plugin extends Wbcr_Factory432_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory432_Plugin|\WCTR_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WCTR_Plugin extends Wbcr_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory436_Plugin|\WCTR_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
components/cyrlitera/includes/classes/class-configurate-cyrlitera.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
@@ -235,7 +235,7 @@ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy224_Configurate {
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
- if ( ! WbcrFactoryClearfy224_Helpers::isPermalink() ) {
239
  return;
240
  }
241
  $is404 = is_404();
12
  exit;
13
  }
14
 
15
+ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
+ if ( ! WbcrFactoryClearfy227_Helpers::isPermalink() ) {
239
  return;
240
  }
241
  $is404 = is_404();
components/cyrlitera/migrations/010004.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WCTR_Update010004 extends Wbcr_Factory432_Update {
8
 
9
  public function install() {
10
  WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WCTR_Update010004 extends Wbcr_Factory436_Update {
8
 
9
  public function install() {
10
  WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
components/disable-admin-notices/.idea/workspace.xml DELETED
@@ -1,47 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="ChangeListManager">
4
- <list default="true" id="c2f3cf75-48e3-470f-b859-eaa6a39beea0" name="Default Changelist" comment="">
5
- <change beforePath="$PROJECT_DIR$/admin/options.php" beforeDir="false" afterPath="$PROJECT_DIR$/admin/options.php" afterDir="false" />
6
- </list>
7
- <option name="SHOW_DIALOG" value="false" />
8
- <option name="HIGHLIGHT_CONFLICTS" value="true" />
9
- <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
10
- <option name="LAST_RESOLUTION" value="IGNORE" />
11
- </component>
12
- <component name="ComposerSettings">
13
- <execution />
14
- </component>
15
- <component name="Git.Settings">
16
- <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
17
- </component>
18
- <component name="ProjectId" id="1ef76GRohW5a7ArjgiD197XFPCN" />
19
- <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
20
- <component name="ProjectViewState">
21
- <option name="hideEmptyMiddlePackages" value="true" />
22
- <option name="showLibraryContents" value="true" />
23
- </component>
24
- <component name="PropertiesComponent">
25
- <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
26
- <property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
27
- <property name="WebServerToolWindowFactoryState" value="true" />
28
- <property name="last_opened_file_path" value="$PROJECT_DIR$" />
29
- </component>
30
- <component name="SvnConfiguration">
31
- <configuration />
32
- </component>
33
- <component name="TaskManager">
34
- <task active="true" id="Default" summary="Default task">
35
- <changelist id="c2f3cf75-48e3-470f-b859-eaa6a39beea0" name="Default Changelist" comment="" />
36
- <created>1594700616455</created>
37
- <option name="number" value="Default" />
38
- <option name="presentableId" value="Default" />
39
- <updated>1594700616455</updated>
40
- <workItem from="1594700617867" duration="26000" />
41
- </task>
42
- <servers />
43
- </component>
44
- <component name="TypeScriptGeneratedFilesManager">
45
- <option name="version" value="2" />
46
- </component>
47
- </project>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
components/disable-admin-notices/admin/ajax/hide-notice.php CHANGED
@@ -20,22 +20,39 @@ function wbcr_dan_ajax_hide_notices() {
20
  if ( current_user_can( 'manage_options' ) || current_user_can( 'manage_network' ) ) {
21
  $notice_id = WDN_Plugin::app()->request->post( 'notice_id', null, true );
22
  $notice_html = WDN_Plugin::app()->request->post( 'notice_html', null );
23
- $notice_html = wp_kses( $notice_html, [] );
 
24
 
25
  if ( empty( $notice_id ) ) {
26
  wp_send_json_error( [ 'error_message' => __( 'Undefinded notice id.', 'disable-admin-notices' ) ] );
27
  }
28
 
29
- $current_user_id = get_current_user_id();
30
- $get_hidden_notices = get_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
 
31
 
32
- if ( ! is_array( $get_hidden_notices ) ) {
33
- $get_hidden_notices = [];
34
- }
 
 
 
 
 
 
 
 
 
35
 
36
- $get_hidden_notices[ $notice_id ] = rtrim( trim( $notice_html ) );
 
 
37
 
38
- update_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), $get_hidden_notices );
 
 
 
 
39
 
40
  wp_send_json_success();
41
  } else {
20
  if ( current_user_can( 'manage_options' ) || current_user_can( 'manage_network' ) ) {
21
  $notice_id = WDN_Plugin::app()->request->post( 'notice_id', null, true );
22
  $notice_html = WDN_Plugin::app()->request->post( 'notice_html', null );
23
+ $hide_target = WDN_Plugin::app()->request->post( 'target', 'user' );
24
+ //$notice_text = wp_kses( $notice_html, [] );
25
 
26
  if ( empty( $notice_id ) ) {
27
  wp_send_json_error( [ 'error_message' => __( 'Undefinded notice id.', 'disable-admin-notices' ) ] );
28
  }
29
 
30
+ switch ( $hide_target ) {
31
+ case 'all':
32
+ $get_hidden_notices = WDN_Plugin::app()->getPopulateOption( 'hidden_notices', [] );
33
 
34
+ if ( ! is_array( $get_hidden_notices ) ) {
35
+ $get_hidden_notices = [];
36
+ }
37
+
38
+ $get_hidden_notices[ $notice_id ] = rtrim( trim( $notice_html ) );
39
+
40
+ WDN_Plugin::app()->updatePopulateOption('hidden_notices', $get_hidden_notices );
41
+ break;
42
+ case 'user':
43
+ default:
44
+ $current_user_id = get_current_user_id();
45
+ $get_hidden_notices = get_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
46
 
47
+ if ( ! is_array( $get_hidden_notices ) ) {
48
+ $get_hidden_notices = [];
49
+ }
50
 
51
+ $get_hidden_notices[ $notice_id ] = rtrim( trim( $notice_html ) );
52
+
53
+ update_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), $get_hidden_notices );
54
+ break;
55
+ }
56
 
57
  wp_send_json_success();
58
  } else {
components/disable-admin-notices/admin/ajax/restore-notice.php CHANGED
@@ -24,14 +24,21 @@ function wbcr_dan_ajax_restore_notice() {
24
  wp_send_json_error( [ 'error_message' => __( 'Undefinded notice id.', 'disable-admin-notices' ) ] );
25
  }
26
 
 
27
  $current_user_id = get_current_user_id();
28
  $get_hidden_notices = get_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
29
-
30
  if ( ! empty( $get_hidden_notices ) && isset( $get_hidden_notices[ $notice_id ] ) ) {
31
  unset( $get_hidden_notices[ $notice_id ] );
 
 
 
 
 
 
 
 
32
  }
33
 
34
- update_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), $get_hidden_notices );
35
 
36
  wp_send_json_success();
37
  } else {
24
  wp_send_json_error( [ 'error_message' => __( 'Undefinded notice id.', 'disable-admin-notices' ) ] );
25
  }
26
 
27
+ //Users notices
28
  $current_user_id = get_current_user_id();
29
  $get_hidden_notices = get_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
 
30
  if ( ! empty( $get_hidden_notices ) && isset( $get_hidden_notices[ $notice_id ] ) ) {
31
  unset( $get_hidden_notices[ $notice_id ] );
32
+ update_user_meta( $current_user_id, WDN_Plugin::app()->getOptionName( 'hidden_notices' ), $get_hidden_notices );
33
+ }
34
+
35
+ //All notices
36
+ $get_hidden_notices_all = WDN_Plugin::app()->getPopulateOption( 'hidden_notices', [] );
37
+ if ( ! empty( $get_hidden_notices_all ) && isset( $get_hidden_notices_all[ $notice_id ] ) ) {
38
+ unset( $get_hidden_notices_all[ $notice_id ] );
39
+ WDN_Plugin::app()->updatePopulateOption( 'hidden_notices', $get_hidden_notices_all );
40
  }
41
 
 
42
 
43
  wp_send_json_success();
44
  } else {
components/disable-admin-notices/admin/assets/css/general.css ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .wbcr-dan-hide-notices {
2
+ position: initial;
3
+ padding: 5px 5px 0;
4
+ background: transparent;
5
+ }
6
+ .wbcr-dan-hide-notices > div {
7
+ margin: 0 !important;
8
+ }
9
+ .is-dismissible .wbcr-dan-hide-links {
10
+ margin-right: -25px;
11
+ }
12
+ .wbcr-dan-hide-links {
13
+ text-align: right;
14
+ padding: 0 5px 5px 0;
15
+ }
16
+ .wbcr-dan-hide-links .wbcr-dan-hide-notice-link {
17
+ min-height: 20px;
18
+ line-height: 2;
19
+ padding: 0 5px 0 0;
20
+ font-size: 11px;
21
+ color: #ec3c47;
22
+ background: #fff;
23
+ margin: 0;
24
+ cursor: pointer;
25
+ border: 1px solid #ec3c47;
26
+ border-radius: 5px;
27
+ }
28
+ .wbcr-dan-hide-links .wbcr-dan-hide-notice-link:hover {
29
+ background: #ec3c47;
30
+ color: #fff;
31
+ }
32
+ .wbcr-dan-hide-links .wbcr-dan-hide-notice-link:hover:before {
33
+ background-image: url('../img/hide-icon-white.svg');
34
+ }
35
+ .wbcr-dan-hide-links .wbcr-dan-hide-notice-link:focus {
36
+ border: 2px solid #ec3c47;
37
+ outline: none;
38
+ }
39
+ .wbcr-dan-hide-links .wbcr-dan-hide-notice-link:before {
40
+ content: '';
41
+ display: inline-block;
42
+ width: 25px;
43
+ height: 18px;
44
+ background-color: transparent;
45
+ background-image: url('../img/hide-icon.svg');
46
+ background-repeat: no-repeat;
47
+ background-position: center center;
48
+ background-size: 25px;
49
+ vertical-align: middle;
50
+ }
components/disable-admin-notices/admin/assets/css/notifications-panel.css CHANGED
@@ -1,66 +1,76 @@
1
- /**
2
- * Notification panel in admin bar
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
- #wp-admin-bar-wbcr-han-notify-panel .wbcr-han-adminbar-counter {
7
- background-color: #0073aa;
8
- border-radius: 50%;
9
- color: #fff;
10
- font-weight: bold;
11
- padding: 2px 6px;
12
- font-size: 0.85em;
13
- margin-left: 5px;
14
- }
15
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper {
16
- max-height: 500px;
17
- overflow-y: scroll;
18
- }
19
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu {
20
- width: 400px;
21
- padding: 0;
22
- }
23
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li {
24
- border-left: 4px solid #26292b;
25
- padding: 0;
26
- }
27
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-updated {
28
- border-left-color: #7ad03a;
29
- }
30
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-update-nag {
31
- border-left-color: #ffba00;
32
- }
33
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-error {
34
- border-left-color: #dd3d36;
35
- }
36
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line {
37
- text-align: right;
38
- }
39
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line a {
40
- color: #ffba00 !important;
41
- text-decoration: none !important;
42
- }
43
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line a:hover {
44
- text-decoration: underline !important;
45
- color: #ffc11a !important;
46
- }
47
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item {
48
- height: 100% !important;
49
- white-space: normal !important;
50
- padding: 0.5em 1em;
51
- border-bottom: 1px solid #4a4f55;
52
- color: #949494;
53
- line-height: 0.5em;
54
- }
55
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item a {
56
- display: inline;
57
- padding: 0;
58
- margin: 0;
59
- text-decoration: underline;
60
- line-height: 0.5em;
61
- color: #949494;
62
- }
63
- #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu li:nth-child(2n) {
64
- background: #26292b;
65
- }
66
- /*# sourceMappingURL=notifications-panel.css.map */
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Notification panel in admin bar
3
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
+ * @copyright Alex Kovalev 23.08.2017
5
+ */
6
+ #wp-admin-bar-wbcr-han-notify-panel .wbcr-han-adminbar-counter {
7
+ background-color: #0073aa;
8
+ border-radius: 50%;
9
+ color: #fff;
10
+ font-weight: bold;
11
+ padding: 2px 6px;
12
+ font-size: 0.85em;
13
+ margin-left: 5px;
14
+ }
15
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper {
16
+ max-height: 500px;
17
+ overflow-y: scroll;
18
+ }
19
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu {
20
+ width: 400px;
21
+ padding: 0;
22
+ }
23
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li {
24
+ border-left: 4px solid #26292b;
25
+ padding: 0;
26
+ }
27
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-updated {
28
+ border-left-color: #7ad03a;
29
+ }
30
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-update-nag {
31
+ border-left-color: #ffba00;
32
+ }
33
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li.wpnc-error {
34
+ border-left-color: #dd3d36;
35
+ }
36
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line {
37
+ text-align: right;
38
+ }
39
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line a {
40
+ color: #ffba00 !important;
41
+ text-decoration: none !important;
42
+ }
43
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .wbcr-han-panel-restore-notify-line a:hover {
44
+ text-decoration: underline !important;
45
+ color: #ffc11a !important;
46
+ }
47
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item {
48
+ height: 100% !important;
49
+ white-space: normal !important;
50
+ padding: 0.5em 1em;
51
+ border-bottom: 1px solid #4a4f55;
52
+ color: #949494;
53
+ line-height: 1.5 !important;
54
+ }
55
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item a {
56
+ display: inline;
57
+ padding: 0;
58
+ margin: 0;
59
+ text-decoration: underline;
60
+ line-height: 1.5 !important;
61
+ color: #949494;
62
+ }
63
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li[id^=wp-admin-bar-wbcr-han-notify-panel-group] .ab-item {
64
+ height: 100%;
65
+ white-space: normal;
66
+ padding: 0.5em 1em;
67
+ border-bottom: 1px solid #fff;
68
+ color: #fff;
69
+ line-height: 2;
70
+ text-align: center;
71
+ font-weight: bold;
72
+ text-transform: uppercase;
73
+ }
74
+ #wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu li:nth-child(2n) {
75
+ background: #26292b;
76
+ }
components/disable-admin-notices/admin/assets/css/notifications-panel.less CHANGED
@@ -32,18 +32,22 @@
32
  &.wpnc-updated {
33
  border-left-color: #7ad03a;
34
  }
 
35
  &.wpnc-update-nag {
36
  border-left-color: #ffba00;
37
  }
 
38
  &.wpnc-error {
39
  border-left-color: #dd3d36;
40
  }
41
 
42
  .wbcr-han-panel-restore-notify-line {
43
  text-align: right;
 
44
  a {
45
  color: #ffba00 !important;
46
  text-decoration: none !important;
 
47
  &:hover {
48
  text-decoration: underline !important;
49
  color: lighten(#ffba00, 5%) !important;
@@ -57,21 +61,36 @@
57
  padding: .5em 1em;
58
  border-bottom: 1px solid #4a4f55;
59
  color: #949494;
60
- line-height: .5em;
 
61
  a {
62
  display: inline;
63
  padding: 0;
64
  margin: 0;
65
  text-decoration: underline;
66
- line-height: .5em;
67
  color: #949494;
68
  }
69
  }
70
  }
71
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
72
  li:nth-child(2n) {
73
  background: #26292b;
74
  }
75
  }
76
  }
77
- }
32
  &.wpnc-updated {
33
  border-left-color: #7ad03a;
34
  }
35
+
36
  &.wpnc-update-nag {
37
  border-left-color: #ffba00;
38
  }
39
+
40
  &.wpnc-error {
41
  border-left-color: #dd3d36;
42
  }
43
 
44
  .wbcr-han-panel-restore-notify-line {
45
  text-align: right;
46
+
47
  a {
48
  color: #ffba00 !important;
49
  text-decoration: none !important;
50
+
51
  &:hover {
52
  text-decoration: underline !important;
53
  color: lighten(#ffba00, 5%) !important;
61
  padding: .5em 1em;
62
  border-bottom: 1px solid #4a4f55;
63
  color: #949494;
64
+ line-height: 1.5 !important;
65
+
66
  a {
67
  display: inline;
68
  padding: 0;
69
  margin: 0;
70
  text-decoration: underline;
71
+ line-height: 1.5 !important;
72
  color: #949494;
73
  }
74
  }
75
  }
76
 
77
+ & > li[id^=wp-admin-bar-wbcr-han-notify-panel-group] {
78
+ .ab-item {
79
+ height: 100%;
80
+ white-space: normal;
81
+ padding: 0.5em 1em;
82
+ border-bottom: 1px solid #fff;
83
+ color: #fff;
84
+ line-height: 2;
85
+ text-align: center;
86
+ font-weight: bold;
87
+ text-transform: uppercase;
88
+ }
89
+ }
90
+
91
  li:nth-child(2n) {
92
  background: #26292b;
93
  }
94
  }
95
  }
96
+ }
components/disable-admin-notices/admin/assets/css/page.css ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ .wdan-plugin-header-logo {
2
+ background: transparent url('../img/hide-icon.svg') no-repeat left center !important;
3
+ background-size: 40px !important;
4
+ display: block;
5
+ float: left;
6
+ height: 30px;
7
+ width: 40px;
8
+ }
components/disable-admin-notices/admin/assets/css/page.less ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ .wdan-plugin-header-logo {
2
+ background: transparent url('../img/hide-icon.svg') no-repeat left center !important;
3
+ background-size: 40px !important;
4
+ display: block;
5
+ float: left;
6
+ height: 30px;
7
+ width: 40px;
8
+ }
components/disable-admin-notices/admin/assets/css/settings.css CHANGED
@@ -1,177 +1,219 @@
1
- #WBCR .factory-checkbox.wdanpro-checkbox-premium-label:after,
2
- #WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
3
- display: inline-block;
4
- position: relative;
5
- content: 'PRO';
6
- background: #ff5722;
7
- border-radius: 4px;
8
- color: #fff;
9
- font-size: 10px;
10
- line-height: 1;
11
- font-style: normal;
12
- padding: 4px 6px;
13
- margin-left: 4px;
14
- vertical-align: top;
15
- top: -8px;
16
- left: -10px;
17
- right: auto;
18
- z-index: 11;
19
- }
20
- #WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
21
- position: absolute;
22
- top: -10px;
23
- right: -10px;
24
- left: auto;
25
- }
26
- #WBCR .factory-checkbox-disabled input,
27
- #WBCR .factory-checkbox-disabled button,
28
- #WBCR .wdanpro-radio-premium-label .factory-compact_panel {
29
- pointer-events: none;
30
- cursor: not-allowed;
31
- opacity: 0.65;
32
- filter: alpha(opacity=65);
33
- -webkit-box-shadow: none;
34
- box-shadow: none;
35
- }
36
- #WBCR .wrdan-premium-fake-content {
37
- position: relative;
38
- padding: 15px;
39
- }
40
- #WBCR .wdan-premium-info {
41
- position: absolute;
42
- top: 50px;
43
- left: 50%;
44
- margin-left: -250px;
45
- max-width: 500px;
46
- z-index: 999;
47
- }
48
- #WBCR .wdan-premium-info h3 {
49
- font-size: 32px;
50
- font-weight: 300;
51
- color: inherit;
52
- margin: 40px 0 10px;
53
- line-height: 1.2;
54
- }
55
- #WBCR .wdan-premium-info p {
56
- font-size: 16px;
57
- font-weight: 400;
58
- color: #a4afb7;
59
- margin-bottom: 40px;
60
- }
61
- #WBCR .wdan-premium-layer {
62
- position: absolute;
63
- top: 0;
64
- left: 0;
65
- right: 0;
66
- bottom: 0;
67
- opacity: 0.9;
68
- background: #fff;
69
- }
70
- #WBCR .wdan-button {
71
- font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
72
- font-weight: 500;
73
- text-transform: uppercase;
74
- outline: none;
75
- border: none;
76
- text-decoration: none;
77
- -webkit-border-radius: 3px;
78
- border-radius: 3px;
79
- -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
80
- transition-property: background, color, opacity, -webkit-box-shadow;
81
- -o-transition-property: background, color, box-shadow, opacity;
82
- transition-property: background, color, box-shadow, opacity;
83
- transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
84
- -webkit-transition-duration: 0.3s;
85
- -o-transition-duration: 0.3s;
86
- transition-duration: 0.3s;
87
- }
88
- #WBCR .wdan-button:hover {
89
- border: none;
90
- }
91
- #WBCR .wdan-button:not([disabled]) {
92
- cursor: pointer;
93
- }
94
- #WBCR .wdan-button:not(.wdan-button-state) .wdan-state-icon {
95
- display: none;
96
- }
97
- #WBCR .wdan-button.wdan-button-success {
98
- color: #fff;
99
- }
100
- #WBCR .wdan-button.wdan-button-success[disabled] {
101
- background-color: #c2cbd2;
102
- }
103
- #WBCR .wdan-button.wdan-button-success:not([disabled]) {
104
- background-color: #39b54a;
105
- }
106
- #WBCR .wdan-button.wdan-button-success:not([disabled]):hover {
107
- opacity: 0.85;
108
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
109
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
110
- }
111
- #WBCR .wdan-button.wdan-button-success:not([disabled]):active {
112
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
113
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
114
- }
115
- #WBCR .wdan-button.wdan-button-warning {
116
- background-color: #a4afb7;
117
- color: #fff;
118
- }
119
- #WBCR .wdan-button.wdan-button-warning[disabled] {
120
- background-color: #c2cbd2;
121
- }
122
- #WBCR .wdan-button.wdan-button-warning:not([disabled]):hover {
123
- background-color: #b01b1b;
124
- opacity: 0.85;
125
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
126
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
127
- }
128
- #WBCR .wdan-button.wdan-button-warning:not([disabled]):active {
129
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
130
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
131
- }
132
- #WBCR .wdan-button.wdan-button-danger {
133
- background-color: #d72b3f;
134
- color: #fff;
135
- }
136
- #WBCR .wdan-button.wdan-button-danger[disabled] {
137
- background-color: #c2cbd2;
138
- }
139
- #WBCR .wdan-button.wdan-button-danger:not([disabled]):hover {
140
- opacity: 0.85;
141
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
142
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
143
- }
144
- #WBCR .wdan-button.wdan-button-danger:not([disabled]):active {
145
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
146
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
147
- }
148
- #WBCR .wdan-button.wdan-edit-template {
149
- display: inline-block;
150
- margin-top: 15px;
151
- color: #fff;
152
- }
153
- #WBCR .wdan-button.wdan-button-default {
154
- background-color: #a4afb7;
155
- color: #fff;
156
- font-size: 11px;
157
- padding: 7px 21px;
158
- }
159
- #WBCR .wdan-button.wdan-button-default:hover {
160
- background-color: #6d7882;
161
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
162
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
163
- }
164
- #WBCR .wdan-button.wdan-button-default:active {
165
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
166
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
167
- }
168
- #WBCR .wdan-button.wdan-button-default:visited {
169
- color: #fff;
170
- }
171
- #WBCR .wdan-button.wdan-button-go-pro {
172
- background-color: #ff5722;
173
- }
174
- #WBCR .wdan-button i {
175
- margin-right: 10px;
176
- }
177
- /*# sourceMappingURL=settings.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #WBCR .factory-checkbox.wdanpro-checkbox-premium-label:after,
2
+ #WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
3
+ display: inline-block;
4
+ position: relative;
5
+ content: 'PRO';
6
+ background: #ff5722;
7
+ border-radius: 4px;
8
+ color: #fff;
9
+ font-size: 10px;
10
+ line-height: 1;
11
+ font-style: normal;
12
+ padding: 4px 6px;
13
+ margin-left: 4px;
14
+ vertical-align: top;
15
+ top: -8px;
16
+ left: -10px;
17
+ right: auto;
18
+ z-index: 11;
19
+ cursor: pointer;
20
+ }
21
+ #WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
22
+ position: absolute;
23
+ top: -10px;
24
+ right: -10px;
25
+ left: auto;
26
+ }
27
+ #WBCR .factory-checkbox-disabled input,
28
+ #WBCR .factory-checkbox-disabled button,
29
+ #WBCR .wdanpro-radio-premium-label .factory-compact_panel {
30
+ pointer-events: none;
31
+ cursor: not-allowed;
32
+ opacity: 0.65;
33
+ filter: alpha(opacity=65);
34
+ -webkit-box-shadow: none;
35
+ box-shadow: none;
36
+ }
37
+ #WBCR .wrdan-premium-fake-content {
38
+ position: relative;
39
+ padding: 15px;
40
+ }
41
+ #WBCR .wdan-premium-info {
42
+ position: absolute;
43
+ top: 50px;
44
+ left: 50%;
45
+ margin-left: -250px;
46
+ max-width: 500px;
47
+ z-index: 999;
48
+ }
49
+ #WBCR .wdan-premium-info h3 {
50
+ font-size: 32px;
51
+ font-weight: 300;
52
+ color: inherit;
53
+ margin: 40px 0 10px;
54
+ line-height: 1.2;
55
+ }
56
+ #WBCR .wdan-premium-info p {
57
+ font-size: 16px;
58
+ font-weight: 400;
59
+ color: #a4afb7;
60
+ margin-bottom: 40px;
61
+ }
62
+ #WBCR .wdan-premium-layer {
63
+ position: absolute;
64
+ top: 0;
65
+ left: 0;
66
+ right: 0;
67
+ bottom: 0;
68
+ opacity: 0.9;
69
+ background: #fff;
70
+ }
71
+ #WBCR .wdan-button {
72
+ font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
73
+ font-weight: 500;
74
+ text-transform: uppercase;
75
+ outline: none;
76
+ border: none;
77
+ text-decoration: none;
78
+ -webkit-border-radius: 3px;
79
+ border-radius: 3px;
80
+ -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
81
+ transition-property: background, color, opacity, -webkit-box-shadow;
82
+ -o-transition-property: background, color, box-shadow, opacity;
83
+ transition-property: background, color, box-shadow, opacity;
84
+ transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
85
+ -webkit-transition-duration: 0.3s;
86
+ -o-transition-duration: 0.3s;
87
+ transition-duration: 0.3s;
88
+ }
89
+ #WBCR .wdan-button:hover {
90
+ border: none;
91
+ }
92
+ #WBCR .wdan-button:not([disabled]) {
93
+ cursor: pointer;
94
+ }
95
+ #WBCR .wdan-button:not(.wdan-button-state) .wdan-state-icon {
96
+ display: none;
97
+ }
98
+ #WBCR .wdan-button.wdan-button-success {
99
+ color: #fff;
100
+ }
101
+ #WBCR .wdan-button.wdan-button-success[disabled] {
102
+ background-color: #c2cbd2;
103
+ }
104
+ #WBCR .wdan-button.wdan-button-success:not([disabled]) {
105
+ background-color: #39b54a;
106
+ }
107
+ #WBCR .wdan-button.wdan-button-success:not([disabled]):hover {
108
+ opacity: 0.85;
109
+ -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
110
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
111
+ }
112
+ #WBCR .wdan-button.wdan-button-success:not([disabled]):active {
113
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
114
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
115
+ }
116
+ #WBCR .wdan-button.wdan-button-warning {
117
+ background-color: #a4afb7;
118
+ color: #fff;
119
+ }
120
+ #WBCR .wdan-button.wdan-button-warning[disabled] {
121
+ background-color: #c2cbd2;
122
+ }
123
+ #WBCR .wdan-button.wdan-button-warning:not([disabled]):hover {
124
+ background-color: #b01b1b;
125
+ opacity: 0.85;
126
+ -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
127
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
128
+ }
129
+ #WBCR .wdan-button.wdan-button-warning:not([disabled]):active {
130
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
131
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
132
+ }
133
+ #WBCR .wdan-button.wdan-button-danger {
134
+ background-color: #d72b3f;
135
+ color: #fff;
136
+ }
137
+ #WBCR .wdan-button.wdan-button-danger[disabled] {
138
+ background-color: #c2cbd2;
139
+ }
140
+ #WBCR .wdan-button.wdan-button-danger:not([disabled]):hover {
141
+ opacity: 0.85;
142
+ -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
143
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
144
+ }
145
+ #WBCR .wdan-button.wdan-button-danger:not([disabled]):active {
146
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
147
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
148
+ }
149
+ #WBCR .wdan-button.wdan-edit-template {
150
+ display: inline-block;
151
+ margin-top: 15px;
152
+ color: #fff;
153
+ }
154
+ #WBCR .wdan-button.wdan-button-default {
155
+ background-color: #a4afb7;
156
+ color: #fff;
157
+ font-size: 11px;
158
+ padding: 7px 21px;
159
+ }
160
+ #WBCR .wdan-button.wdan-button-default:hover {
161
+ background-color: #6d7882;
162
+ -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
163
+ box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
164
+ }
165
+ #WBCR .wdan-button.wdan-button-default:active {
166
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
167
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
168
+ }
169
+ #WBCR .wdan-button.wdan-button-default:visited {
170
+ color: #fff;
171
+ }
172
+ #WBCR .wdan-button.wdan-button-go-pro {
173
+ background-color: #ff5722;
174
+ }
175
+ #WBCR .wdan-button i {
176
+ margin-right: 10px;
177
+ }
178
+ .wdan-hidden-list {
179
+ padding: 0 15px;
180
+ }
181
+ .wdan-hidden-list-notice {
182
+ background: #fff;
183
+ border: 1px solid #ccd0d4;
184
+ border-left-width: 4px;
185
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
186
+ padding: 1px 12px;
187
+ }
188
+ .wdan-hidden-list-notice div.wdan-notice-p {
189
+ margin: 0.5em 0;
190
+ padding: 2px;
191
+ }
192
+ .wdan-hidden-list-notice div.wdan-notice-p div {
193
+ width: 100%;
194
+ }
195
+ .wdan-hidden-list-table {
196
+ border: 0;
197
+ }
198
+ .wdan-hidden-list-table tr > td:first-child {
199
+ padding: 5px 0 5px;
200
+ }
201
+ .wdan-hidden-list-table tr > td:last-child {
202
+ padding: 0 10px 0;
203
+ text-align: center;
204
+ }
205
+ .wdan-hidden-list-table .wdan-notices-page-table-head td {
206
+ font-size: 16px;
207
+ text-transform: uppercase;
208
+ padding: 10px !important;
209
+ font-weight: bold;
210
+ }
211
+ .wdan-hidden-list-table .wdan-hidden-list-notice-action {
212
+ vertical-align: middle;
213
+ }
214
+ .wdan-hidden-list-table .wdan-page-restore-notice-link-loader {
215
+ background: url(../img/loader.gif);
216
+ background-size: contain;
217
+ background-repeat: no-repeat;
218
+ background-position: top;
219
+ }
components/disable-admin-notices/admin/assets/css/settings.less CHANGED
@@ -17,6 +17,7 @@
17
  left: -10px;
18
  right: auto;
19
  z-index: 11;
 
20
  }
21
 
22
  .wdanpro-radio-premium-label .factory-compact_panel:after {
@@ -209,4 +210,57 @@
209
  .wdan-button i {
210
  margin-right: 10px
211
  }
212
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  left: -10px;
18
  right: auto;
19
  z-index: 11;
20
+ cursor: pointer;
21
  }
22
 
23
  .wdanpro-radio-premium-label .factory-compact_panel:after {
210
  .wdan-button i {
211
  margin-right: 10px
212
  }
213
+
214
+ }
215
+
216
+ .wdan-hidden-list {
217
+ padding: 0 15px;
218
+ }
219
+
220
+ .wdan-hidden-list-notice {
221
+ background: #fff;
222
+ border: 1px solid #ccd0d4;
223
+ border-left-width: 4px;
224
+ box-shadow: 0 1px 1px rgba(0, 0, 0, .04);
225
+ padding: 1px 12px;
226
+
227
+ div.wdan-notice-p {
228
+ margin: 0.5em 0;
229
+ padding: 2px;
230
+
231
+ & div{
232
+ width: 100%;
233
+ }
234
+ }
235
+ }
236
+
237
+ .wdan-hidden-list-table {
238
+ border: 0;
239
+
240
+ tr > td:first-child {
241
+ padding: 5px 0 5px;
242
+ }
243
+
244
+ tr > td:last-child {
245
+ padding: 0 10px 0;
246
+ text-align: center;
247
+ }
248
+
249
+ .wdan-notices-page-table-head td {
250
+ font-size: 16px;
251
+ text-transform: uppercase;
252
+ padding: 10px !important;
253
+ font-weight: bold;
254
+ }
255
+
256
+ .wdan-hidden-list-notice-action {
257
+ vertical-align: middle;
258
+ }
259
+
260
+ .wdan-page-restore-notice-link-loader {
261
+ background: url(../img/loader.gif);
262
+ background-size: contain;
263
+ background-repeat: no-repeat;
264
+ background-position: top;
265
+ }
266
+ }
components/disable-admin-notices/admin/assets/img/hide-icon-white.svg ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
3
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
4
+ <svg version="1.0" xmlns="http://www.w3.org/2000/svg"
5
+ width="300.000000pt" height="234.000000pt" viewBox="0 0 300.000000 234.000000"
6
+ preserveAspectRatio="xMidYMid meet">
7
+
8
+ <g transform="translate(0.000000,234.000000) scale(0.100000,-0.100000)"
9
+ fill="#ffffff" stroke="none">
10
+ <path d="M629 2072 c-15 -13 -22 -30 -22 -51 0 -29 20 -53 177 -210 l176 -177
11
+ -92 -95 c-99 -101 -201 -236 -244 -324 l-26 -54 21 -44 c85 -174 274 -388 446
12
+ -502 159 -106 295 -149 475 -148 141 1 236 24 365 87 l90 45 186 -185 c158
13
+ -157 190 -184 215 -184 39 0 74 36 74 76 0 25 -114 142 -878 906 -789 790
14
+ -880 878 -908 878 -18 0 -42 -8 -55 -18z m544 -650 l98 -98 -23 -50 c-31 -68
15
+ -30 -170 1 -242 31 -68 113 -144 182 -167 64 -22 177 -16 232 11 l38 18 89
16
+ -89 c50 -49 90 -92 90 -96 0 -9 -105 -55 -175 -75 -82 -25 -258 -25 -339 0
17
+ -124 37 -255 116 -364 220 -87 81 -232 273 -232 306 0 43 260 360 296 360 5 0
18
+ 53 -44 107 -98z m314 -314 c51 -51 93 -96 93 -99 0 -13 -53 -17 -89 -7 -44 12
19
+ -89 52 -107 95 -21 48 -18 103 5 103 3 0 47 -42 98 -92z"/>
20
+ <path d="M1410 1849 c-87 -15 -123 -52 -105 -109 13 -40 47 -53 111 -41 226
21
+ 42 459 -41 660 -235 69 -67 171 -194 210 -260 l26 -45 -37 -57 c-21 -31 -56
22
+ -81 -78 -110 -47 -62 -53 -105 -18 -134 27 -21 70 -24 92 -5 55 44 199 267
23
+ 199 307 0 14 -16 53 -36 85 -263 437 -650 665 -1024 604z"/>
24
+ </g>
25
+ </svg>
components/disable-admin-notices/admin/assets/img/hide-icon.svg ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
3
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
4
+ <svg version="1.0" xmlns="http://www.w3.org/2000/svg"
5
+ width="300.000000pt" height="234.000000pt" viewBox="0 0 300.000000 234.000000"
6
+ preserveAspectRatio="xMidYMid meet">
7
+
8
+ <g transform="translate(0.000000,234.000000) scale(0.100000,-0.100000)"
9
+ fill="#ed3c48" stroke="none">
10
+ <path d="M629 2072 c-15 -13 -22 -30 -22 -51 0 -29 20 -53 177 -210 l176 -177
11
+ -92 -95 c-99 -101 -201 -236 -244 -324 l-26 -54 21 -44 c85 -174 274 -388 446
12
+ -502 159 -106 295 -149 475 -148 141 1 236 24 365 87 l90 45 186 -185 c158
13
+ -157 190 -184 215 -184 39 0 74 36 74 76 0 25 -114 142 -878 906 -789 790
14
+ -880 878 -908 878 -18 0 -42 -8 -55 -18z m544 -650 l98 -98 -23 -50 c-31 -68
15
+ -30 -170 1 -242 31 -68 113 -144 182 -167 64 -22 177 -16 232 11 l38 18 89
16
+ -89 c50 -49 90 -92 90 -96 0 -9 -105 -55 -175 -75 -82 -25 -258 -25 -339 0
17
+ -124 37 -255 116 -364 220 -87 81 -232 273 -232 306 0 43 260 360 296 360 5 0
18
+ 53 -44 107 -98z m314 -314 c51 -51 93 -96 93 -99 0 -13 -53 -17 -89 -7 -44 12
19
+ -89 52 -107 95 -21 48 -18 103 5 103 3 0 47 -42 98 -92z"/>
20
+ <path d="M1410 1849 c-87 -15 -123 -52 -105 -109 13 -40 47 -53 111 -41 226
21
+ 42 459 -41 660 -235 69 -67 171 -194 210 -260 l26 -45 -37 -57 c-21 -31 -56
22
+ -81 -78 -110 -47 -62 -53 -105 -18 -134 27 -21 70 -24 92 -5 55 44 199 267
23
+ 199 307 0 14 -16 53 -36 85 -263 437 -650 665 -1024 604z"/>
24
+ </g>
25
+ </svg>
components/disable-admin-notices/admin/assets/img/loader.gif ADDED
Binary file
components/disable-admin-notices/admin/assets/js/settings.js ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * General
3
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
4
+ * @copyright (c) 2020, Webcraftic
5
+ * @version 1.0
6
+ */
7
+
8
+ (function ($) {
9
+
10
+ function dan_pro_href(e) {
11
+ var pro_href = "https://clearfy.pro/disable-admin-notices/";
12
+ e.stopPropagation();
13
+ window.open(pro_href, '_blank');
14
+ }
15
+
16
+ $('.factory-checkbox.wdanpro-checkbox-premium-label').click(dan_pro_href);
17
+ $('.wdanpro-radio-premium-label .factory-compact_panel').click(dan_pro_href);
18
+
19
+ $(document).on('click', '.wdan-page-restore-notice-link', function () {
20
+ var self = $(this),
21
+ noticeID = $(this).data('notice-id'),
22
+ nonce = $(this).data('nonce'),
23
+ counterEl = $('.wbcr-han-adminbar-counter');
24
+
25
+ if (!noticeID) {
26
+ alert('Undefinded error. Please report the bug to our support forum.');
27
+ }
28
+
29
+ self.hide();
30
+ self.parent().find('.wdan-page-restore-notice-link-loader').show();
31
+
32
+
33
+ $.ajax(ajaxurl, {
34
+ type: 'post',
35
+ dataType: 'json',
36
+ data: {
37
+ action: 'wbcr-dan-restore-notice',
38
+ security: nonce,
39
+ notice_id: noticeID
40
+ },
41
+ success: function (response) {
42
+ if (!response || !response.success) {
43
+
44
+ if (response.data.error_message) {
45
+ console.log(response.data.error_message);
46
+ self.closest('li').show();
47
+ } else {
48
+ console.log(response);
49
+ }
50
+
51
+ return;
52
+ }
53
+
54
+ counterEl.text(counterEl.text() - 1);
55
+ self.closest('tr').hide();
56
+ self.closest('tr').remove();
57
+ },
58
+ error: function (xhr, ajaxOptions, thrownError) {
59
+ console.log(xhr.status);
60
+ console.log(xhr.responseText);
61
+ console.log(thrownError);
62
+ }
63
+ });
64
+
65
+ return false;
66
+ });
67
+
68
+
69
+ })(jQuery);
components/disable-admin-notices/admin/boot.php CHANGED
@@ -44,7 +44,7 @@ if ( ! defined( 'LOADING_DISABLE_ADMIN_NOTICES_AS_ADDON' ) ) {
44
  *
45
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
46
  */
47
- add_filter( 'wbcr_factory_pages_432_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
48
  if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
49
  return 'https://goo.gl/68ucHp';
50
  }
@@ -100,7 +100,7 @@ if ( ! defined( 'LOADING_DISABLE_ADMIN_NOTICES_AS_ADDON' ) ) {
100
  * that put all unapproved comments to spam check queue.
101
  */
102
  add_action( 'wbcr/factory/admin_notices', function ( $notices, $plugin_name ) {
103
- if ( $plugin_name != WDN_Plugin::app()->getPluginName() ) {
104
  return $notices;
105
  }
106
 
44
  *
45
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
46
  */
47
+ add_filter( 'wbcr_factory_pages_435_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
48
  if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
49
  return 'https://goo.gl/68ucHp';
50
  }
100
  * that put all unapproved comments to spam check queue.
101
  */
102
  add_action( 'wbcr/factory/admin_notices', function ( $notices, $plugin_name ) {
103
+ if ( $plugin_name != WDN_Plugin::app()->getPluginName() || 'wbcr_clearfy' === $plugin_name ) {
104
  return $notices;
105
  }
106
 
components/disable-admin-notices/admin/{pages/class-pages.php → class-page-basic.php} RENAMED
@@ -19,7 +19,25 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  exit;
20
  }
21
 
22
- class WDN_Page extends Wbcr_FactoryClearfy224_PageBase {
23
 
 
 
 
 
 
 
 
 
 
 
 
 
24
 
 
 
 
 
 
 
25
  }
19
  exit;
20
  }
21
 
22
+ class WDN_Page extends Wbcr_FactoryClearfy227_PageBase {
23
 
24
+ /**
25
+ * Requests assets (js and css) for the page.
26
+ *
27
+ * @param Wbcr_Factory436_ScriptList $scripts
28
+ * @param Wbcr_Factory436_StyleList $styles
29
+ *
30
+ * @return void
31
+ * @see Wbcr_FactoryPages435_AdminPage
32
+ *
33
+ */
34
+ public function assets( $scripts, $styles ) {
35
+ $this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/page.css' );
36
 
37
+ parent::assets( $scripts, $styles );
38
+ }
39
+
40
+ public function getPluginTitle() {
41
+ return "<span class='wdan-plugin-header-logo'>&nbsp;</span>" . __( 'Webcraftic Disable Admin Notices', 'disable-admin-notices' );
42
+ }
43
  }
components/disable-admin-notices/admin/options.php CHANGED
@@ -51,7 +51,7 @@ function wbcr_dan_get_plugin_options() {
51
  ]
52
  ];
53
 
54
- if ( ! defined( 'WCL_PLUGIN_ACTIVE' ) ) {
55
  $hide_admin_notices_data[] = [
56
  'compact_panel',
57
  __( 'Compact panel', 'disable-admin-notices' ),
@@ -84,7 +84,7 @@ function wbcr_dan_get_plugin_options() {
84
  ]
85
  ];
86
 
87
- if ( ! defined( 'WCL_PLUGIN_ACTIVE' ) ) {
88
  $options[] = [
89
  'type' => 'checkbox',
90
  'way' => 'buttons',
@@ -159,6 +159,16 @@ function wbcr_dan_get_plugin_options() {
159
  return $options;
160
  }
161
 
 
 
 
 
 
 
 
 
 
 
162
  /**
163
  * Расширяем опции html формы страницы "Дополнительно" в плагине Clearfy
164
  *
@@ -166,7 +176,7 @@ function wbcr_dan_get_plugin_options() {
166
  * с настройками этого плагина, потому что это ухудшает юзабилити.
167
  *
168
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
169
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $page Экземпляр страницы
170
  *
171
  * @return mixed Отсортированный массив с группой опций
172
  */
@@ -193,7 +203,7 @@ add_filter( 'wbcr_clr_additionally_form_options', 'wbcr_dan_additionally_form_op
193
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
194
  * через фреймворк.
195
  *
196
- * @param @param $html_builder Wbcr_FactoryForms430_Html
197
  *
198
  * @since 1.0
199
  *
@@ -220,33 +230,40 @@ function wbcr_dan_reset_notices_button( $html_builder ) {
220
  }
221
 
222
  ?>
223
- <div class="form-group form-group-checkbox factory-control-reset_notices_button">
224
- <label for="wbcr_clearfy_reset_notices_button" class="col-sm-4 control-label">
225
  <?= __( 'Reset hidden notices for', 'disable-admin-notices' ); ?>
226
- <span class="factory-hint-icon factory-hint-icon-grey" data-toggle="factory-tooltip" data-placement="right" title="" data-original-title="<?php _e( 'Push reset hidden notices if you need to show hidden notices again.', 'disable-admin-notices' ) ?>">
227
- <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC" alt="">
 
 
 
228
  </span>
229
- </label>
230
- <div class="control-group col-sm-8">
231
- <div class="factory-checkbox factory-from-control-checkbox factory-buttons-way btn-group">
232
- <form method="post">
233
  <?php wp_nonce_field( $form_name, 'wbcr_dan_reset_nonce' ); ?>
234
- <p>
235
- <input type="radio" name="wbcr_dan_reset_for_users" value="current_user" checked/> <?= __( 'current user', 'disable-admin-notices' ); ?>
236
- </p>
237
- <p>
238
- <input type="radio" name="wbcr_dan_reset_for_users" value="all"/> <?= __( 'all users', 'disable-admin-notices' ); ?>
239
- </p>
240
- <p>
241
- <input type="submit" name="wbcr_dan_reset_action" value="<?= __( 'Reset notices', 'disable-admin-notices' ); ?>" class="button button-default"/>
242
- </p>
 
 
 
 
243
  <?php if ( $reseted ): ?>
244
- <div style="color:green;margin-top:5px;"><?php _e( 'Hidden notices are successfully reset, now you can see them again!', 'disable-admin-notices' ) ?></div>
245
  <?php endif; ?>
246
- </form>
247
- </div>
248
- </div>
249
- </div>
250
  <?php
251
  }
252
 
51
  ]
52
  ];
53
 
54
+ if ( ! wbcr_dan_is_active_clearfy_component() ) {
55
  $hide_admin_notices_data[] = [
56
  'compact_panel',
57
  __( 'Compact panel', 'disable-admin-notices' ),
84
  ]
85
  ];
86
 
87
+ if ( ! wbcr_dan_is_active_clearfy_component() ) {
88
  $options[] = [
89
  'type' => 'checkbox',
90
  'way' => 'buttons',
159
  return $options;
160
  }
161
 
162
+ function wbcr_dan_is_active_clearfy_component() {
163
+ if ( defined( 'WCL_PLUGIN_ACTIVE' ) && class_exists( 'WCL_Plugin' ) ) {
164
+ $deactivate_components = WCL_Plugin::app()->getPopulateOption( 'deactive_preinstall_components', [] );
165
+ if ( ! in_array( 'disable_notices', $deactivate_components ) ) {
166
+ return true;
167
+ }
168
+ }
169
+ return false;
170
+ }
171
+
172
  /**
173
  * Расширяем опции html формы страницы "Дополнительно" в плагине Clearfy
174
  *
176
  * с настройками этого плагина, потому что это ухудшает юзабилити.
177
  *
178
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
179
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $page Экземпляр страницы
180
  *
181
  * @return mixed Отсортированный массив с группой опций
182
  */
203
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
204
  * через фреймворк.
205
  *
206
+ * @param @param $html_builder Wbcr_FactoryForms433_Html
207
  *
208
  * @since 1.0
209
  *
230
  }
231
 
232
  ?>
233
+ <div class="form-group form-group-checkbox factory-control-reset_notices_button">
234
+ <label for="wbcr_clearfy_reset_notices_button" class="col-sm-4 control-label">
235
  <?= __( 'Reset hidden notices for', 'disable-admin-notices' ); ?>
236
+ <span class="factory-hint-icon factory-hint-icon-grey" data-toggle="factory-tooltip" data-placement="right"
237
+ title=""
238
+ data-original-title="<?php _e( 'Push reset hidden notices if you need to show hidden notices again.', 'disable-admin-notices' ) ?>">
239
+ <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
240
+ alt="">
241
  </span>
242
+ </label>
243
+ <div class="control-group col-sm-8">
244
+ <div class="factory-checkbox factory-from-control-checkbox factory-buttons-way btn-group">
245
+ <form method="post">
246
  <?php wp_nonce_field( $form_name, 'wbcr_dan_reset_nonce' ); ?>
247
+ <p>
248
+ <input type="radio" name="wbcr_dan_reset_for_users" value="current_user"
249
+ checked/> <?= __( 'current user', 'disable-admin-notices' ); ?>
250
+ </p>
251
+ <p>
252
+ <input type="radio" name="wbcr_dan_reset_for_users"
253
+ value="all"/> <?= __( 'all users', 'disable-admin-notices' ); ?>
254
+ </p>
255
+ <p>
256
+ <input type="submit" name="wbcr_dan_reset_action"
257
+ value="<?= __( 'Reset notices', 'disable-admin-notices' ); ?>"
258
+ class="button button-default"/>
259
+ </p>
260
  <?php if ( $reseted ): ?>
261
+ <div style="color:green;margin-top:5px;"><?php _e( 'Hidden notices are successfully reset, now you can see them again!', 'disable-admin-notices' ) ?></div>
262
  <?php endif; ?>
263
+ </form>
264
+ </div>
265
+ </div>
266
+ </div>
267
  <?php
268
  }
269
 
components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php CHANGED
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  * @copyright (c) 2019 Webraftic Ltd
15
  * @version 1.0
16
  */
17
- class WDAN_Edit_Admin_Bar extends Wbcr_FactoryClearfy224_PageBase {
18
 
19
  /**
20
  * {@inheritDoc}
@@ -35,7 +35,7 @@ class WDAN_Edit_Admin_Bar extends Wbcr_FactoryClearfy224_PageBase {
35
  *
36
  * @var string
37
  */
38
- public $page_menu_dashicon = 'dashicons-hidden';
39
 
40
  /**
41
  * {@inheritDoc}
@@ -63,11 +63,11 @@ class WDAN_Edit_Admin_Bar extends Wbcr_FactoryClearfy224_PageBase {
63
  /**
64
  * Requests assets (js and css) for the page.
65
  *
66
- * @param Wbcr_Factory432_ScriptList $scripts
67
- * @param Wbcr_Factory432_StyleList $styles
68
  *
69
  * @return void
70
- * @see Wbcr_FactoryPages432_AdminPage
71
  *
72
  */
73
  public function assets( $scripts, $styles ) {
14
  * @copyright (c) 2019 Webraftic Ltd
15
  * @version 1.0
16
  */
17
+ class WDAN_Edit_Admin_Bar extends WDN_Page {
18
 
19
  /**
20
  * {@inheritDoc}
35
  *
36
  * @var string
37
  */
38
+ public $page_menu_dashicon = 'dashicons-menu';
39
 
40
  /**
41
  * {@inheritDoc}
63
  /**
64
  * Requests assets (js and css) for the page.
65
  *
66
+ * @param Wbcr_Factory436_ScriptList $scripts
67
+ * @param Wbcr_Factory436_StyleList $styles
68
  *
69
  * @return void
70
+ * @see Wbcr_FactoryPages435_AdminPage
71
  *
72
  */
73
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php CHANGED
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  * @copyright (c) 2019 Webraftic Ltd
15
  * @version 1.0
16
  */
17
- class WDAN_Block_Ad_Redirects extends Wbcr_FactoryClearfy224_PageBase {
18
 
19
  /**
20
  * {@inheritDoc}
@@ -61,11 +61,11 @@ class WDAN_Block_Ad_Redirects extends Wbcr_FactoryClearfy224_PageBase {
61
  /**
62
  * Requests assets (js and css) for the page.
63
  *
64
- * @param Wbcr_Factory432_ScriptList $scripts
65
- * @param Wbcr_Factory432_StyleList $styles
66
  *
67
  * @return void
68
- * @see Wbcr_FactoryPages432_AdminPage
69
  *
70
  */
71
  public function assets( $scripts, $styles ) {
14
  * @copyright (c) 2019 Webraftic Ltd
15
  * @version 1.0
16
  */
17
+ class WDAN_Block_Ad_Redirects extends WDN_Page {
18
 
19
  /**
20
  * {@inheritDoc}
61
  /**
62
  * Requests assets (js and css) for the page.
63
  *
64
+ * @param Wbcr_Factory436_ScriptList $scripts
65
+ * @param Wbcr_Factory436_StyleList $styles
66
  *
67
  * @return void
68
+ * @see Wbcr_FactoryPages435_AdminPage
69
  *
70
  */
71
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-license.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
- class WDN_LicensePage extends Wbcr_FactoryClearfy224_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@ class WDN_LicensePage extends Wbcr_FactoryClearfy224_LicensePage {
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
- * @param \Wbcr_Factory432_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Disable admin notices premium', 'robin-image-optimizer' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WDN_LicensePage extends Wbcr_FactoryClearfy227_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory436_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Disable admin notices premium', 'robin-image-optimizer' );
components/disable-admin-notices/admin/pages/class-pages-notices.php ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Exit if accessed directly
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ /**
9
+ * Страница со списком скрытых нотисов.
10
+ *
11
+ * @author Artem Prihodko <webtemyk@yandex.ru>
12
+ * @copyright (c) 2020 Webraftic Ltd
13
+ * @version 1.0
14
+ */
15
+ class WDAN_Notices extends WDN_Page {
16
+
17
+ /**
18
+ * {@inheritDoc}
19
+ *
20
+ * @var string
21
+ */
22
+ public $id = "wdan-notices";
23
+
24
+ /**
25
+ * {@inheritDoc}
26
+ *
27
+ * @var string
28
+ */
29
+ public $type = "page";
30
+
31
+ /**
32
+ * {@inheritDoc}
33
+ *
34
+ * @var string
35
+ */
36
+ public $page_menu_dashicon = 'dashicons-hidden';
37
+
38
+ /**
39
+ * {@inheritDoc}
40
+ *
41
+ * @since 2.0.5 - добавлен
42
+ * @var bool
43
+ */
44
+ public $show_right_sidebar_in_options = false;
45
+
46
+
47
+ /**
48
+ * @param WDN_Plugin $plugin
49
+ */
50
+ public function __construct( $plugin ) {
51
+ $this->menu_title = __( 'Hidden notices', 'disable-admin-notices' );
52
+ $this->page_menu_short_description = __( 'Manage hidden notices', 'disable-admin-notices' );
53
+
54
+ parent::__construct( $plugin );
55
+
56
+ $this->plugin = $plugin;
57
+ }
58
+
59
+ /**
60
+ * Requests assets (js and css) for the page.
61
+ *
62
+ * @param Wbcr_Factory436_ScriptList $scripts
63
+ * @param Wbcr_Factory436_StyleList $styles
64
+ *
65
+ * @return void
66
+ * @see Wbcr_FactoryPages435_AdminPage
67
+ *
68
+ */
69
+ public function assets( $scripts, $styles ) {
70
+ parent::assets( $scripts, $styles );
71
+
72
+ $this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
73
+ }
74
+
75
+ public function showPageContent() {
76
+ ?>
77
+ <div class="wrdan-premium-fake-content">
78
+ <div class="wdan-premium-info">
79
+ <h3>Hidden notices PRO</h3>
80
+ <p>This function allows you to disable annoying menu items in the admin bar. Some plugins take up space
81
+ in
82
+ the admin bar to insert their ads. Just get rid of this ad with the premium features of our
83
+ plugin.</p>
84
+ <a class="wdan-button wdan-button-default wdan-button-go-pro" target="_blank"
85
+ href="https://clearfy.pro/disable-admin-notices/">Go
86
+ Pro</a>
87
+ </div>
88
+ </div>
89
+ <?php
90
+ }
91
+ }
components/disable-admin-notices/admin/pages/class-pages-settings.php CHANGED
@@ -19,7 +19,7 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  exit;
20
  }
21
 
22
- class WDN_Settings_Page extends Wbcr_FactoryClearfy224_PageBase {
23
 
24
  /**
25
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WDN_Settings_Page extends Wbcr_FactoryClearfy224_PageBase {
66
 
67
 
68
  /**
69
- * @param Wbcr_Factory432_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
72
  $this->menu_title = __( 'Hide admin notices', 'disable-admin-notices' );
73
  $this->page_menu_short_description = __( 'General settings', 'disable-admin-notices' );
74
 
@@ -88,17 +88,18 @@ class WDN_Settings_Page extends Wbcr_FactoryClearfy224_PageBase {
88
  /**
89
  * Requests assets (js and css) for the page.
90
  *
91
- * @param Wbcr_Factory432_ScriptList $scripts
92
- * @param Wbcr_Factory432_StyleList $styles
93
  *
94
  * @return void
95
- * @see Wbcr_FactoryPages432_AdminPage
96
  *
97
  */
98
  public function assets( $scripts, $styles ) {
99
  parent::assets( $scripts, $styles );
100
 
101
  $this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
 
102
  }
103
 
104
  /**
@@ -121,7 +122,7 @@ class WDN_Settings_Page extends Wbcr_FactoryClearfy224_PageBase {
121
  'wbcr_dan_code' => 'interal_error'
122
  ),
123
  'type' => 'danger',
124
- 'message' => __('An error occurred while trying to delete comments. Internal error occured. Please try again later.', 'factory_pages_432')
125
  );*/
126
 
127
  return $notices;
19
  exit;
20
  }
21
 
22
+ class WDN_Settings_Page extends WDN_Page {
23
 
24
  /**
25
  * {@inheritDoc}
66
 
67
 
68
  /**
69
+ * @param Wbcr_Factory436_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
72
  $this->menu_title = __( 'Hide admin notices', 'disable-admin-notices' );
73
  $this->page_menu_short_description = __( 'General settings', 'disable-admin-notices' );
74
 
88
  /**
89
  * Requests assets (js and css) for the page.
90
  *
91
+ * @param Wbcr_Factory436_ScriptList $scripts
92
+ * @param Wbcr_Factory436_StyleList $styles
93
  *
94
  * @return void
95
+ * @see Wbcr_FactoryPages435_AdminPage
96
  *
97
  */
98
  public function assets( $scripts, $styles ) {
99
  parent::assets( $scripts, $styles );
100
 
101
  $this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
102
+ $this->scripts->add( WDN_PLUGIN_URL . '/admin/assets/js/settings.js' );
103
  }
104
 
105
  /**
122
  'wbcr_dan_code' => 'interal_error'
123
  ),
124
  'type' => 'danger',
125
+ 'message' => __('An error occurred while trying to delete comments. Internal error occured. Please try again later.', 'factory_pages_435')
126
  );*/
127
 
128
  return $notices;
components/disable-admin-notices/clearfy.php CHANGED
@@ -18,7 +18,7 @@ if ( ! defined( 'ABSPATH' ) ) {
18
  }
19
 
20
  if ( ! defined( 'WDN_PLUGIN_ACTIVE' ) ) {
21
- define( 'WDN_PLUGIN_VERSION', '1.1.2' );
22
  define( 'WDN_TEXT_DOMAIN', 'disable-admin-notices' );
23
  define( 'WDN_PLUGIN_ACTIVE', true );
24
 
18
  }
19
 
20
  if ( ! defined( 'WDN_PLUGIN_ACTIVE' ) ) {
21
+ define( 'WDN_PLUGIN_VERSION', '1.2.3' );
22
  define( 'WDN_TEXT_DOMAIN', 'disable-admin-notices' );
23
  define( 'WDN_PLUGIN_ACTIVE', true );
24
 
components/disable-admin-notices/disable-admin-notices.php CHANGED
@@ -1,14 +1,14 @@
1
  <?php
2
  /**
3
- * Plugin Name: Webcraftic Disable Admin Notices Individually
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Disable admin notices plugin gives you the option to hide updates warnings and inline notices in the admin panel.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.2.2
8
  * Text Domain: disable-admin-notices
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  /**
@@ -80,16 +80,16 @@ $wdan_plugin_info = array(
80
 
81
  // FRAMEWORK MODULES
82
  'load_factory_modules' => array(
83
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
84
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
85
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
86
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
87
- array( 'libs/factory/freemius', 'factory_freemius_120', 'all' ),
88
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin' )
89
  )
90
  );
91
 
92
- $wdan_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wdan_plugin_info, array(
93
  'plugin_already_activate' => defined( 'WDN_PLUGIN_ACTIVE' ),
94
  'required_php_version' => '5.4',
95
  'required_wp_version' => '4.2.0',
1
  <?php
2
  /**
3
+ * Plugin Name: Disable Admin Notices Individually
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Disable admin notices plugin gives you the option to hide updates warnings and inline notices in the admin panel.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 1.2.3
8
  * Text Domain: disable-admin-notices
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  /**
80
 
81
  // FRAMEWORK MODULES
82
  'load_factory_modules' => array(
83
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
84
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
85
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
86
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
87
+ array( 'libs/factory/freemius', 'factory_freemius_123', 'all' ),
88
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin' )
89
  )
90
  );
91
 
92
+ $wdan_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wdan_plugin_info, array(
93
  'plugin_already_activate' => defined( 'WDN_PLUGIN_ACTIVE' ),
94
  'required_php_version' => '5.4',
95
  'required_wp_version' => '4.2.0',
components/disable-admin-notices/includes/class-plugin.php CHANGED
@@ -9,16 +9,16 @@
9
  */
10
 
11
  // Exit if accessed directly
12
- //use WBCR\Factory_Adverts_112\Base;
13
 
14
  if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
- class WDN_Plugin extends Wbcr_Factory432_Plugin {
19
 
20
  /**
21
- * @var Wbcr_Factory432_Plugin
22
  */
23
  private static $app;
24
  private $plugin_data;
@@ -44,7 +44,7 @@ class WDN_Plugin extends Wbcr_Factory432_Plugin {
44
  }
45
 
46
  /**
47
- * @return Wbcr_Factory432_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
@@ -54,6 +54,7 @@ class WDN_Plugin extends Wbcr_Factory432_Plugin {
54
  self::app()->registerPage( 'WDN_Settings_Page', WDN_PLUGIN_DIR . '/admin/pages/class-pages-settings.php' );
55
 
56
  if ( ! ( $this->premium->is_activate() && $this->premium->is_install_package() ) ) {
 
57
  self::app()->registerPage( 'WDAN_Block_Ad_Redirects', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
58
  self::app()->registerPage( 'WDAN_Edit_Admin_Bar', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
59
  }
@@ -63,6 +64,7 @@ class WDN_Plugin extends Wbcr_Factory432_Plugin {
63
 
64
  private function admin_scripts() {
65
  require( WDN_PLUGIN_DIR . '/admin/options.php' );
 
66
 
67
  if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
68
  require_once( WDN_PLUGIN_DIR . '/admin/ajax/hide-notice.php' );
@@ -72,6 +74,7 @@ class WDN_Plugin extends Wbcr_Factory432_Plugin {
72
  require_once( WDN_PLUGIN_DIR . '/admin/boot.php' );
73
  require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
74
  require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
 
75
 
76
  add_action( 'plugins_loaded', function () {
77
  $this->registerPages();
@@ -82,4 +85,21 @@ class WDN_Plugin extends Wbcr_Factory432_Plugin {
82
  require_once( WDN_PLUGIN_DIR . '/includes/classes/class-configurate-notices.php' );
83
  new WDN_ConfigHideNotices( self::$app );
84
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  }
9
  */
10
 
11
  // Exit if accessed directly
12
+ //use WBCR\Factory_Adverts_114\Base;
13
 
14
  if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
+ class WDN_Plugin extends Wbcr_Factory436_Plugin {
19
 
20
  /**
21
+ * @var Wbcr_Factory436_Plugin
22
  */
23
  private static $app;
24
  private $plugin_data;
44
  }
45
 
46
  /**
47
+ * @return Wbcr_Factory436_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
54
  self::app()->registerPage( 'WDN_Settings_Page', WDN_PLUGIN_DIR . '/admin/pages/class-pages-settings.php' );
55
 
56
  if ( ! ( $this->premium->is_activate() && $this->premium->is_install_package() ) ) {
57
+ self::app()->registerPage( 'WDAN_Notices', WDN_PLUGIN_DIR . '/admin/pages/class-pages-notices.php' );
58
  self::app()->registerPage( 'WDAN_Block_Ad_Redirects', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
59
  self::app()->registerPage( 'WDAN_Edit_Admin_Bar', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
60
  }
64
 
65
  private function admin_scripts() {
66
  require( WDN_PLUGIN_DIR . '/admin/options.php' );
67
+ require( WDN_PLUGIN_DIR . '/admin/class-page-basic.php' );
68
 
69
  if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
70
  require_once( WDN_PLUGIN_DIR . '/admin/ajax/hide-notice.php' );
74
  require_once( WDN_PLUGIN_DIR . '/admin/boot.php' );
75
  require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
76
  require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
77
+ require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-notices.php' );
78
 
79
  add_action( 'plugins_loaded', function () {
80
  $this->registerPages();
85
  require_once( WDN_PLUGIN_DIR . '/includes/classes/class-configurate-notices.php' );
86
  new WDN_ConfigHideNotices( self::$app );
87
  }
88
+
89
+ /**
90
+ * Метод проверяет активацию премиум плагина и наличие действующего лицензионнного ключа
91
+ *
92
+ * @return bool
93
+ */
94
+ public function is_premium() {
95
+ if (
96
+ $this->premium->is_active() &&
97
+ $this->premium->is_activate()
98
+ && $this->premium->is_install_package()
99
+ ) {
100
+ return true;
101
+ } else {
102
+ return false;
103
+ }
104
+ }
105
  }
components/disable-admin-notices/includes/classes/class-configurate-notices.php CHANGED
@@ -15,11 +15,11 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
- class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
22
- $hide_notices_type = $this->getPopulateOption( 'hide_admin_notices' );
23
 
24
  if ( 'not_hide' !== $hide_notices_type && 'compact_panel' !== $hide_notices_type ) {
25
  add_action( 'admin_print_scripts', [ $this, 'catchNotices' ], 999 );
@@ -30,7 +30,7 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
30
 
31
  if ( ! empty( $hide_notices_type ) ) {
32
  add_action( 'admin_bar_menu', [ $this, 'notificationsPanel' ], 999 );
33
- add_action( 'admin_enqueue_scripts', [ $this, 'notificationsPanelStyles' ] );
34
  }
35
  }
36
  }
@@ -45,11 +45,12 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
45
  }
46
 
47
 
48
- public function notificationsPanelStyles() {
 
 
49
  if ( ! $this->getPopulateOption( 'show_notices_in_adminbar', false ) && current_user_can( 'manage_network' ) ) {
50
  return;
51
  }
52
-
53
  wp_enqueue_style( 'wbcr-notification-panel-styles', WDN_PLUGIN_URL . '/admin/assets/css/notifications-panel.css', [], $this->plugin->getPluginVersion() );
54
  wp_enqueue_script( 'wbcr-notification-panel-scripts', WDN_PLUGIN_URL . '/admin/assets/js/notifications-panel.js', [], $this->plugin->getPluginVersion() );
55
  }
@@ -59,34 +60,49 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
59
  return;
60
  }
61
 
62
- if ( current_user_can( 'manage_options' ) || current_user_can( 'manage_network' ) ) {
63
- $titles = [];
 
64
 
65
- $notifications = get_user_meta( get_current_user_id(), WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
 
 
66
 
67
- if ( empty( $notifications ) ) {
68
  return;
69
  }
70
 
71
- $cont_notifications = sizeof( $notifications );
72
 
73
  // Add top menu
74
  $wp_admin_bar->add_menu( [
75
  'id' => 'wbcr-han-notify-panel',
76
  'parent' => 'top-secondary',
77
  'title' => sprintf( __( 'Notifications %s', 'disable-admin-notices' ), '<span class="wbcr-han-adminbar-counter">' . $cont_notifications . '</span>' ),
78
- 'href' => false
79
  ] );
80
 
81
- // loop
82
- if ( ! empty( $notifications ) ) {
83
- $i = 0;
84
- foreach ( $notifications as $notice_id => $message ) {
 
 
 
 
 
 
 
 
 
 
 
 
85
  $message = $this->getExcerpt( stripslashes( $message ), 0, 350 );
86
  $message .= '<div class="wbcr-han-panel-restore-notify-line">';
87
  $message .= '<a href="#" data-nonce="' . wp_create_nonce( $this->plugin->getPluginName() . '_ajax_restore_notice_nonce' );
88
  $message .= '" data-notice-id="' . esc_attr( $notice_id ) . '" class="wbcr-han-panel-restore-notify-link">';
89
- $message .= __( 'Restore notice', 'clearfy' ) . ( isset( $titles[ $notice_id ] ) ? ' (' . $titles[ $notice_id ] . ')' : '' );
90
  $message .= '</a></div>';
91
 
92
  $wp_admin_bar->add_menu( [
@@ -102,6 +118,11 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
102
  $i ++;
103
  }
104
  }
 
 
 
 
 
105
  }
106
  }
107
 
@@ -112,96 +133,68 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
112
  return;
113
  }
114
  ?>
115
- <!-- Disable admin notices plugin (Clearfy tools) -->
116
- <style>
117
- .wbcr-dan-hide-notices {
118
- position: initial;
119
- padding: 5px 5px 0;
120
- background: transparent;
121
- }
122
-
123
- .wbcr-dan-hide-notices > div {
124
- margin: 0 !important;
125
- }
126
-
127
- .wbcr-dan-hide-notice-link {
128
- display: block;
129
- text-align: right;
130
- margin: 5px 0 5px 5px;
131
- font-weight: bold;
132
- color: #F44336;
133
- }
134
-
135
- .is-dismissible .wbcr-dan-hide-notice-link {
136
- margin-right: -30px;
137
- }
138
-
139
- .wbcr-dan-hide-notice-link:active, .wbcr-dan-hide-notice-link:focus {
140
- box-shadow: none;
141
- outline: none;
142
- }
143
- </style>
144
- <!-- Disable admin notices plugin (Clearfy tools) -->
145
- <script>
146
- jQuery(document).ready(function($) {
147
- $(document).on('click', '.wbcr-dan-hide-notice-link', function() {
148
- var self = $(this),
149
- noticeID = self.data('notice-id'),
150
- nonce = self.data('nonce'),
151
- noticeHtml = self.closest('.wbcr-dan-hide-notices').clone(),
152
- contanierEl = self.closest('.wbcr-dan-hide-notices').parent();
153
-
154
- noticeHtml.find('.wbcr-dan-hide-notice-link').remove();
155
-
156
- if( !noticeID ) {
157
- alert('Undefinded error. Please report the bug to our support forum.');
158
- }
159
-
160
- contanierEl.hide();
161
-
162
- $.ajax(ajaxurl, {
163
- type: 'post',
164
- dataType: 'json',
165
- data: {
166
- action: 'wbcr-dan-hide-notices',
167
- security: nonce,
168
- notice_id: noticeID,
169
- notice_html: noticeHtml.html()
170
- },
171
- success: function(response) {
172
- if( !response || !response.success ) {
173
-
174
- if( response.data.error_message ) {
175
- console.log(response.data.error_message);
176
- self.closest('li').show();
177
- } else {
178
- console.log(response);
179
- }
180
-
181
- contanierEl.show();
182
- return;
183
- }
184
-
185
- contanierEl.remove();
186
- },
187
- error: function(xhr, ajaxOptions, thrownError) {
188
- console.log(xhr.status);
189
- console.log(xhr.responseText);
190
- console.log(thrownError);
191
- }
192
- });
193
-
194
- return false;
195
- });
196
- });
197
- </script>
198
  <?php
199
  foreach ( $wbcr_dan_plugin_all_notices as $val ) {
200
  echo $val;
201
  }
202
  }
203
 
204
- public function catchNotices() {
 
205
  global $wbcr_dan_plugin_all_notices;
206
 
207
  try {
@@ -209,14 +202,15 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
209
  $wp_filter_all_admin_notices = &wdan_get_wp_filter( 'all_admin_notices' );
210
 
211
  $wp_filter_notices = $this->array_merge( $wp_filter_admin_notices, $wp_filter_all_admin_notices );
212
- } catch( Exception $e ) {
213
  $wp_filter_notices = null;
214
  }
215
 
216
  $hide_notices_type = $this->getPopulateOption( 'hide_admin_notices' );
217
 
218
  if ( empty( $hide_notices_type ) || $hide_notices_type == 'only_selected' ) {
219
- $get_hidden_notices = get_user_meta( get_current_user_id(), WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
 
220
 
221
  $content = [];
222
  foreach ( (array) $wp_filter_notices as $filters ) {
@@ -259,6 +253,16 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
259
  $uniq_id2 = md5( $class_name . ':' . $method_name );
260
  }
261
  }
 
 
 
 
 
 
 
 
 
 
262
 
263
  if ( ! empty( $get_hidden_notices ) ) {
264
  $skip_notice = true;
@@ -272,6 +276,7 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
272
 
273
  if ( $compare_notice_id_1 == $uniq_id1 || $compare_notice_id_2 == $uniq_id2 ) {
274
  $skip_notice = false;
 
275
  }
276
  }
277
 
@@ -280,13 +285,25 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
280
  }
281
  }
282
 
283
- $hide_link = '<a href="#" data-nonce="' . wp_create_nonce( $this->plugin->getPluginName() . '_ajax_hide_notices_nonce' ) . '" data-notice-id="' . $uniq_id1 . '_' . $uniq_id2 . '" class="wbcr-dan-hide-notice-link">[' . __( 'Hide notification forever', 'disable-admin-notices' ) . ']</a>';
 
 
 
 
 
 
 
 
 
 
284
 
285
- // Fix for Woocommerce membership
286
- if ( $cont != '<div class="js-wc-memberships-admin-notice-placeholder"></div>' ) {
287
- $cont = preg_replace( '/<(script|style)([^>]+)?>(.*?)<\/(script|style)>/is', '', $cont );
 
288
  $cont = rtrim( trim( $cont ) );
289
- $cont = preg_replace( '/^(<div[^>]+>)(.*?)(<\/div>)$/is', '$1<div class="wbcr-dan-hide-notices">$2' . $hide_link . '</div>$3', $cont );
 
290
  }
291
 
292
  if ( empty( $cont ) ) {
@@ -324,7 +341,10 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
324
  *
325
  * @return String excerpt
326
  */
327
- public function getExcerpt( $str, $startPos = 0, $maxLength = 100 ) {
 
 
 
328
  if ( strlen( $str ) > $maxLength ) {
329
  $excerpt = substr( $str, $startPos, $maxLength - 3 );
330
  $lastSpace = strrpos( $excerpt, ' ' );
@@ -337,7 +357,16 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy224_Configurate {
337
  return $excerpt;
338
  }
339
 
340
- private function array_merge( array $arr1, array $arr2 ) {
 
 
 
 
 
 
 
 
 
341
  if ( ! empty( $arr2 ) ) {
342
  foreach ( $arr2 as $key => $value ) {
343
  if ( ! isset( $arr1[ $key ] ) ) {
15
  exit;
16
  }
17
 
18
+ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy227_Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
22
+ $hide_notices_type = $this->getPopulateOption( 'hide_admin_notices', 'only_selected' );
23
 
24
  if ( 'not_hide' !== $hide_notices_type && 'compact_panel' !== $hide_notices_type ) {
25
  add_action( 'admin_print_scripts', [ $this, 'catchNotices' ], 999 );
30
 
31
  if ( ! empty( $hide_notices_type ) ) {
32
  add_action( 'admin_bar_menu', [ $this, 'notificationsPanel' ], 999 );
33
+ add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_styles' ] );
34
  }
35
  }
36
  }
45
  }
46
 
47
 
48
+ public function enqueue_styles() {
49
+ wp_enqueue_style( 'wbcr-notification-hide-style', WDN_PLUGIN_URL . '/admin/assets/css/general.css', [], $this->plugin->getPluginVersion() );
50
+
51
  if ( ! $this->getPopulateOption( 'show_notices_in_adminbar', false ) && current_user_can( 'manage_network' ) ) {
52
  return;
53
  }
 
54
  wp_enqueue_style( 'wbcr-notification-panel-styles', WDN_PLUGIN_URL . '/admin/assets/css/notifications-panel.css', [], $this->plugin->getPluginVersion() );
55
  wp_enqueue_script( 'wbcr-notification-panel-scripts', WDN_PLUGIN_URL . '/admin/assets/js/notifications-panel.js', [], $this->plugin->getPluginVersion() );
56
  }
60
  return;
61
  }
62
 
63
+ if ( current_user_can( 'manage_options' ) ) {
64
+ $notifications_user = get_user_meta( get_current_user_id(), $this->plugin->getOptionName( 'hidden_notices' ), true );
65
+ $notifications_all = apply_filters( 'wdan/notifications/all', [] );
66
 
67
+ if ( ! is_array( $notifications_user ) ) {
68
+ $notifications_user = [];
69
+ }
70
 
71
+ if ( empty( $notifications_user ) && empty( $notifications_all ) ) {
72
  return;
73
  }
74
 
75
+ $cont_notifications = sizeof( $notifications_user ) + sizeof( $notifications_all );
76
 
77
  // Add top menu
78
  $wp_admin_bar->add_menu( [
79
  'id' => 'wbcr-han-notify-panel',
80
  'parent' => 'top-secondary',
81
  'title' => sprintf( __( 'Notifications %s', 'disable-admin-notices' ), '<span class="wbcr-han-adminbar-counter">' . $cont_notifications . '</span>' ),
82
+ 'href' => $this->plugin->getPluginPageUrl( 'wdan-notices' )
83
  ] );
84
 
85
+ $i = 0;
86
+
87
+ // User
88
+ if ( ! empty( $notifications_user ) ) {
89
+ $wp_admin_bar->add_menu( [
90
+ 'id' => 'wbcr-han-notify-panel-group-user',
91
+ 'parent' => 'wbcr-han-notify-panel',
92
+ 'title' => __( 'Hidden for you', 'disable-admin-notices' ),
93
+ 'href' => false,
94
+ 'meta' => [
95
+ 'class' => ''
96
+ ]
97
+ ] );
98
+
99
+ foreach ( $notifications_user as $notice_id => $message ) {
100
+ $message = wp_kses( $message, [] );
101
  $message = $this->getExcerpt( stripslashes( $message ), 0, 350 );
102
  $message .= '<div class="wbcr-han-panel-restore-notify-line">';
103
  $message .= '<a href="#" data-nonce="' . wp_create_nonce( $this->plugin->getPluginName() . '_ajax_restore_notice_nonce' );
104
  $message .= '" data-notice-id="' . esc_attr( $notice_id ) . '" class="wbcr-han-panel-restore-notify-link">';
105
+ $message .= __( 'Restore notice', 'clearfy' );
106
  $message .= '</a></div>';
107
 
108
  $wp_admin_bar->add_menu( [
118
  $i ++;
119
  }
120
  }
121
+
122
+ if ( $this->plugin->is_premium() && ( current_user_can( 'manage_options' ) || ( is_multisite() && current_user_can( 'manage_network' ) ) ) ) {
123
+ // All
124
+ do_action( 'wdn/notifications/panel/all', $wp_admin_bar, $notifications_all, $i );
125
+ }
126
  }
127
  }
128
 
133
  return;
134
  }
135
  ?>
136
+ <!-- Disable admin notices plugin (Clearfy tools) -->
137
+ <script>
138
+ jQuery(document).ready(function ($) {
139
+ $(document).on('click', '.wbcr-dan-hide-notice-link', function () {
140
+ var self = $(this),
141
+ target = self.data('target'),
142
+ noticeID = self.data('notice-id'),
143
+ nonce = self.data('nonce'),
144
+ noticeHtml = self.closest('.wbcr-dan-hide-links').prev('.wbcr-dan-hide-notices').clone(),
145
+ contanierEl = self.closest('.wbcr-dan-hide-links').prev('.wbcr-dan-hide-notices').parent();
146
+
147
+ contanierEl.find('.wbcr-dan-hide-links').remove();
148
+ contanierEl.slideUp();
149
+
150
+ if (!noticeID) {
151
+ alert('Undefinded error. Please report the bug to our support forum.');
152
+ }
153
+
154
+ $.ajax(ajaxurl, {
155
+ type: 'post',
156
+ dataType: 'json',
157
+ data: {
158
+ action: 'wbcr-dan-hide-notices',
159
+ target: target,
160
+ security: nonce,
161
+ notice_id: noticeID,
162
+ notice_html: noticeHtml.html()
163
+ },
164
+ success: function (response) {
165
+ if (!response || !response.success) {
166
+
167
+ if (response.data.error_message) {
168
+ console.log(response.data.error_message);
169
+ self.closest('li').show();
170
+ } else {
171
+ console.log(response);
172
+ }
173
+
174
+ contanierEl.show();
175
+ return;
176
+ }
177
+
178
+ contanierEl.remove();
179
+ },
180
+ error: function (xhr, ajaxOptions, thrownError) {
181
+ console.log(xhr.status);
182
+ console.log(xhr.responseText);
183
+ console.log(thrownError);
184
+ }
185
+ });
186
+ return false;
187
+ });
188
+ });
189
+ </script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
190
  <?php
191
  foreach ( $wbcr_dan_plugin_all_notices as $val ) {
192
  echo $val;
193
  }
194
  }
195
 
196
+ public
197
+ function catchNotices() {
198
  global $wbcr_dan_plugin_all_notices;
199
 
200
  try {
202
  $wp_filter_all_admin_notices = &wdan_get_wp_filter( 'all_admin_notices' );
203
 
204
  $wp_filter_notices = $this->array_merge( $wp_filter_admin_notices, $wp_filter_all_admin_notices );
205
+ } catch ( Exception $e ) {
206
  $wp_filter_notices = null;
207
  }
208
 
209
  $hide_notices_type = $this->getPopulateOption( 'hide_admin_notices' );
210
 
211
  if ( empty( $hide_notices_type ) || $hide_notices_type == 'only_selected' ) {
212
+ $get_hidden_notices = get_user_meta( get_current_user_id(), $this->plugin->getOptionName( 'hidden_notices' ), true );
213
+ $get_hidden_notices_all = apply_filters( 'wdan/notifications/all', [] );
214
 
215
  $content = [];
216
  foreach ( (array) $wp_filter_notices as $filters ) {
253
  $uniq_id2 = md5( $class_name . ':' . $method_name );
254
  }
255
  }
256
+ $txt = $cont;
257
+ $txt = preg_replace( '/<(script|style)([^>]+)?>(.*?)<\/(script|style)>/is', '', $txt );
258
+ $txt = rtrim( trim( $txt ) );
259
+ $txt = preg_replace( '/^(<div[^>]+>)(.*?)(<\/div>)$/is', '<p>$2</p>', $txt );
260
+
261
+ // All
262
+ $skip_notice = apply_filters( 'wdn/notifications/catch/all', true, $get_hidden_notices_all, $uniq_id1, $uniq_id2 );
263
+ if ( ! $skip_notice ) {
264
+ continue;
265
+ }
266
 
267
  if ( ! empty( $get_hidden_notices ) ) {
268
  $skip_notice = true;
276
 
277
  if ( $compare_notice_id_1 == $uniq_id1 || $compare_notice_id_2 == $uniq_id2 ) {
278
  $skip_notice = false;
279
+ break;
280
  }
281
  }
282
 
285
  }
286
  }
287
 
288
+ $nonce = wp_create_nonce( $this->plugin->getPluginName() . '_ajax_hide_notices_nonce' );
289
+ $hide_link_for_me = "<button data-target='user' data-nonce='{$nonce}' data-notice-id='{$uniq_id1}_{$uniq_id2}' class='wbcr-dan-hide-notice-link'>" . __( 'Hide <b>for me</b>', 'disable-admin-notices' ) . "</button>";
290
+ $hide_link_for_all = "";
291
+
292
+ if ( $this->plugin->is_premium() && ( current_user_can( 'manage_options' ) || ( is_multisite() && current_user_can( 'manage_network' ) ) ) ) {
293
+ $hide_link_for_all = "<button data-target='all' data-nonce='{$nonce}' data-notice-id='{$uniq_id1}_{$uniq_id2}' class='wbcr-dan-hide-notice-link'>" . __( 'Hide <b>for all</b>', 'disable-admin-notices' ) . "</button>";
294
+ }
295
+
296
+ if ( strpos( $cont, 'redux-connect-message' ) ) {
297
+ $a = 1;
298
+ }
299
 
300
+ // Fix for Woocommerce membership and Jetpack message
301
+ if ( $cont != '<div class="js-wc-memberships-admin-notice-placeholder"></div>' && false === strpos( $cont, 'jetpack-jitm-message' ) ) {
302
+ $cont = preg_replace( '/<(noscript|script|style)([^>]+)?>(.*?)<\/(noscript|script|style)>(<\/(noscript|script|style)>)*/is', '', $cont );
303
+ $cont = preg_replace( '/<!--(.*?)-->/is', '', $cont );
304
  $cont = rtrim( trim( $cont ) );
305
+ $cont = preg_replace( '/^(<div[^>]+>)(.*?)(<\/div>)$/is',
306
+ "$1<div class='wbcr-dan-hide-notices'>$2</div><div class='wbcr-dan-hide-links'>{$hide_link_for_me} {$hide_link_for_all}</div>$3", $cont );
307
  }
308
 
309
  if ( empty( $cont ) ) {
341
  *
342
  * @return String excerpt
343
  */
344
+ public
345
+ function getExcerpt(
346
+ $str, $startPos = 0, $maxLength = 100
347
+ ) {
348
  if ( strlen( $str ) > $maxLength ) {
349
  $excerpt = substr( $str, $startPos, $maxLength - 3 );
350
  $lastSpace = strrpos( $excerpt, ' ' );
357
  return $excerpt;
358
  }
359
 
360
+ /**
361
+ * @param array $arr1
362
+ * @param array $arr2
363
+ *
364
+ * @return array
365
+ */
366
+ protected
367
+ function array_merge(
368
+ array $arr1, array $arr2
369
+ ) {
370
  if ( ! empty( $arr2 ) ) {
371
  foreach ( $arr2 as $key => $value ) {
372
  if ( ! isset( $arr1[ $key ] ) ) {
components/disable-admin-notices/languages/disable-admin-notices-ru_RU.mo CHANGED
Binary file
components/disable-admin-notices/languages/disable-admin-notices-ru_RU.po CHANGED
@@ -1,52 +1,51 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: clearfy\n"
4
- "POT-Creation-Date: 2018-03-14 17:34+0300\n"
5
- "PO-Revision-Date: 2018-03-14 17:34+0300\n"
6
- "Last-Translator: alex.kovalevv@gmail.com <alex.kovalevv@gmail.com>\n"
7
- "Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
8
  "Language: ru_RU\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.8.8\n"
13
  "X-Poedit-Basepath: ..\n"
14
- "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
15
- "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
  "X-Poedit-SearchPathExcluded-0: libs\n"
 
 
20
 
21
- #: admin/ajax/hide-notice.php:19 admin/ajax/restore-notice.php:19
22
- msgid "You don't have enough capability to edit this information."
23
- msgstr "Вы не имеете разрешения на редактирование этого!"
24
-
25
- #: admin/ajax/hide-notice.php:32 admin/ajax/restore-notice.php:28
26
- msgid "Undefinded notice id."
27
- msgstr "Не передан notice id."
28
 
29
- #: admin/ajax/hide-notice.php:46 admin/ajax/restore-notice.php:40
30
- msgid "Success"
31
- msgstr "Успешно"
32
 
33
- #: admin/boot.php:29 admin/options.php:32 admin/pages/notices.php:33
 
34
  msgid "Hide admin notices"
35
  msgstr "Скрыть уведомления"
36
 
37
- #: admin/boot.php:35 admin/options.php:72
38
  msgid "Enable hidden notices in adminbar"
39
  msgstr "Включить уведомления в админбаре"
40
 
41
- #: admin/boot.php:51
42
- msgid "Get ultimate plugin free"
43
- msgstr "Получите полную версию плагина бесплатно"
44
 
45
- #: admin/options.php:24
46
  msgid "Admin notifications, Update nags"
47
  msgstr "Уведомления администратора, уведомления об обновлении Wordpress"
48
 
49
- #: admin/options.php:24
50
  msgid ""
51
  "Do you know the situation, when some plugin offers you to update to premium, "
52
  "to collect technical data and shows many annoying notices? You are close "
@@ -61,40 +60,61 @@ msgstr ""
61
  "авторы и вовсе удаляют кнопку “закрыть” из уведомлений, и они висят в шапке "
62
  "вашей панели администратора целую вечность."
63
 
64
- #: admin/options.php:36
 
 
 
 
 
 
 
 
 
 
 
 
65
  msgid "All notices"
66
  msgstr "Все уведомления"
67
 
68
- #: admin/options.php:37
69
  msgid "Hide all notices globally."
70
  msgstr "Скрыть все уведомления глобально."
71
 
72
- #: admin/options.php:41
 
 
 
 
 
 
 
 
 
73
  msgid "Only selected"
74
  msgstr "Только выбранные"
75
 
76
- #: admin/options.php:42
77
  msgid ""
78
- "Hide selected notices only. You will see the link \"Hide notification forever"
79
- "\" in each notice. Push it and they will not bother you anymore."
80
  msgstr ""
81
  "Скрывать только выбранные уведомления. В каждом уведомлении вы увидите "
82
  "ссылку \"Скрыть уведомление навсегда\". Нажмите на неё и уведомление будет "
83
  "скрыто навсегда и перестанет вас беспокоить."
84
 
85
- #: admin/options.php:46
86
- msgid "Don't nide"
87
- msgstr "Не скрывать"
88
 
89
- #: admin/options.php:47
90
  msgid ""
91
- "Do not hide notices and do not show “Hide notification forever” link for "
92
- "admin."
93
  msgstr ""
94
- "Не скрывать уведомления и не показывать ссылку \"Скрыть уведомление навсегда"
95
- "\" в уведомлениях администратора."
96
 
97
- #: admin/options.php:51
98
  msgid ""
99
  "Some plugins shows notifications about premium version, data collecting or "
100
  "promote their services. Even if you push close button (that sometimes are "
@@ -112,7 +132,15 @@ msgstr ""
112
  "контролировать эти уведомления. Скройте их все сразу или каждое по "
113
  "отдельности."
114
 
115
- #: admin/options.php:74
 
 
 
 
 
 
 
 
116
  msgid ""
117
  "By default, the plugin hides all notices, which you specified. If you enable "
118
  "this option, the plugin will collect all hidden notices and show them into "
@@ -124,299 +152,105 @@ msgstr ""
124
  "выводить в верхней панели администратора. Это не будет вас раздражать, но и "
125
  "позволит просматривать уведомления, когда вам это удобно."
126
 
127
- #: admin/options.php:138
 
 
 
 
128
  msgid "Push reset hidden notices if you need to show hidden notices again."
129
  msgstr "Нажмите кнопку \\\"Сбросить скрытые уведомления\\\""
130
 
131
- #: admin/options.php:147
132
- #, php-format
133
- msgid "Reset hidden notices (%s)"
134
- msgstr "Сбросить скрытые уведомления (%s)"
135
 
136
- #: admin/options.php:149 admin/pages/notices.php:67
 
 
 
 
 
 
 
 
137
  msgid "Hidden notices are successfully reset, now you can see them again!"
138
  msgstr ""
139
  "Скрытые уведомления успешно восстановлены, теперь вы можете снова видеть их!"
140
 
141
- #: admin/pages/notices.php:49
142
- msgid "Notices"
143
- msgstr "Уведомления"
144
 
145
- #: admin/pages/notices.php:50
146
- msgid "General"
147
- msgstr "Основные"
148
 
149
- #: disable-admin-notices.php:22
150
- msgid ""
151
- "We found that you have the \"Clearfy - disable unused features\" plugin "
152
- "installed, this plugin already has disable comments functions, so you can "
153
- "deactivate plugin \"Disable admin notices\"!"
154
- msgstr ""
155
- "Мы обнаружили, что у вас установлен плагин «Clearfy - отключить "
156
- "неиспользуемые функции», этот плагин уже имеет функции отключения "
157
- "комментариев, поэтому вы можете отключить плагин «Скрыть уведомления "
158
- "администратора»!"
159
 
160
- #: disable-admin-notices.php:79
161
- msgid "Webcraftic disable admin notices"
162
- msgstr "Webcraftic отключить уведомления администратора"
163
 
164
- #: includes/classes/class.configurate-notices.php:79
165
- #, php-format
166
- msgid "Notifications %s"
167
- msgstr "Уведомления %s"
 
 
 
 
 
 
 
168
 
169
- #: includes/classes/class.configurate-notices.php:88
170
- msgid "Restore notice"
171
- msgstr "Восстановить уведомление"
172
 
173
- #: includes/classes/class.configurate-notices.php:263
174
- msgid "Hide notification forever"
175
- msgstr "Скрыть уведомление навсегда"
176
 
177
- #~ msgid "Hidden notices"
178
- #~ msgstr "Скрытые уведомления"
 
179
 
180
- #~ msgid "Disable comments on the entire site"
181
- #~ msgstr "Отключить комментарии на всем сайте"
 
 
182
 
183
- #~ msgid "Select post types"
184
- #~ msgstr "Выбрать тип записи"
 
185
 
186
- #~ msgid "Replace external links in comments on the JavaScript code"
187
- #~ msgstr "Заменить внешние ссылки в комментариях на JavaScript код"
 
188
 
189
- #~ msgid "Replace external links from comment authors on the JavaScript code"
190
- #~ msgstr "Заменить внешние ссылки от авторов комментариев на код JavaScript"
 
191
 
192
- #~ msgid "Disable X-Pingback"
193
- #~ msgstr "Убрать ссылку на X-Pingback и возможность спамить pingback-ами"
 
 
 
 
 
 
 
 
 
194
 
195
- #~ msgid "Remove field \"site\" in comment form"
196
- #~ msgstr "Удаляет поле \"Сайт\" в форме комментариев"
 
 
197
 
198
- #~ msgid "Disable all comments"
199
- #~ msgstr "Отключить все комментарии"
200
-
201
- #~ msgid "Comments"
202
- #~ msgstr "Комментарии"
203
-
204
- #~ msgid ""
205
- #~ "Hide selected notices only. You will see the link \"Hide notification "
206
- #~ "forever\" in each notice. Push it and they will not bother you anymore. "
207
- #~ "Push <a href=\"%s\">reset hidden notices (%d)</a> if you need to show "
208
- #~ "hidden notices again."
209
- #~ msgstr ""
210
- #~ "Скрывать только выбранные уведомления. В каждом уведомлении вы увидите "
211
- #~ "ссылку \"Скрыть уведомление навсегда\". Нажмите на неё и уведомление "
212
- #~ "будет скрыто навсегда и перестанет вас беспокоить. Нажмите <a href=\"%s"
213
- #~ "\">сбросить скрытые уведомления (%d)</a>, если вам нужно восстановить "
214
- #~ "показ скрытых ранее уведомлений."
215
-
216
- #~ msgid "Webcraftic hide admin notices"
217
- #~ msgstr "Webcraftic скрыть уведомления администратора"
218
-
219
- #~ msgid "Comments tweaks"
220
- #~ msgstr "Инструменты комментариев"
221
-
222
- #~ msgid "All comments have been deleted."
223
- #~ msgstr "Все комментарии были удалены."
224
-
225
- #~ msgid ""
226
- #~ "An error occurred while trying to delete comments. Internal error "
227
- #~ "occured. Please try again later."
228
- #~ msgstr ""
229
- #~ "При попытке удалить комментарии произошла ошибка. Пожалуйста, повторите "
230
- #~ "попытку позже."
231
-
232
- #~ msgid "You are not allowed to view this page."
233
- #~ msgstr "Вам не разрешено просматривать эту страницу."
234
-
235
- #~ msgid "You do not have the selected post types!"
236
- #~ msgstr "Вы не выбрали еще ни одного типа записей!"
237
-
238
- #~ msgid "No comments available for deletion."
239
- #~ msgstr "Нет комментариев для удаления."
240
-
241
- #~ msgid ""
242
- #~ "Are you sure that you desire to delete all comments from the database?"
243
- #~ msgstr "Вы уверены, что хотите удалить все комментарии из базы данных?"
244
-
245
- #~ msgid ""
246
- #~ "Deleting comments will remove existing comment entries in the database "
247
- #~ "and cannot be reverted without a database backup."
248
- #~ msgstr ""
249
- #~ "При удалении комментариев удаляются существующие записи комментариев в "
250
- #~ "базе данных, они не могут быть восстановлены без резервного копирования "
251
- #~ "базы данных."
252
-
253
- #~ msgid "You have %s comments"
254
- #~ msgstr "У вас есть %s комментариев"
255
-
256
- #~ msgid "Yes, I'm sure"
257
- #~ msgstr "Да, я уверен"
258
-
259
- #~ msgid "No, return back"
260
- #~ msgstr "Нет, вернуться"
261
-
262
- #~ msgid ""
263
- #~ "Are you sure that you desire to delete all comments from the database for "
264
- #~ "the selected post types (%s)?"
265
- #~ msgstr ""
266
- #~ "Вы уверены, что хотите удалить все комментарии из базы данных для "
267
- #~ "выбранных типов записей (%s)?"
268
-
269
- #~ msgid "Disable comments"
270
- #~ msgstr "Отключить комментарии"
271
-
272
- #~ msgid "Not disable"
273
- #~ msgstr "Не отключать"
274
-
275
- #~ msgid "Everywhere"
276
- #~ msgstr "Повсюду"
277
-
278
- #~ msgid ""
279
- #~ "You can delete all comments in the database by clicking on this link (<a "
280
- #~ "href=\"%s\">cleaning comments in database</a>)."
281
- #~ msgstr ""
282
- #~ "Вы можете удалить все комментарии в базе данных, нажав на эту ссылку ( <a "
283
- #~ "href=\"%s\">очистка комментариев в базе данных</a> )."
284
-
285
- #~ msgid "On certain post types"
286
- #~ msgstr "Только выбранные типы записей"
287
-
288
- #~ msgid ""
289
- #~ "You can delete all comments for the selected post types. Select the post "
290
- #~ "types below and save the settings. After that, click the link (<a href="
291
- #~ "\"%s\">delete all comments for the selected post types in database</a>)."
292
- #~ msgstr ""
293
- #~ "Вы можете удалить все комментарии для выбранных типов записей. Выберите "
294
- #~ "типы записей ниже и сохраните настройки. После этого нажмите ссылку ( <a "
295
- #~ "href=\"%s\">удалите все комментарии для выбранных типов записей в базе "
296
- #~ "данных</a> )."
297
-
298
- #~ msgid ""
299
- #~ "Everywhere - Warning: This option is global and will affect your entire "
300
- #~ "site. Use it only if you want to disable comments everywhere. A complete "
301
- #~ "description of what this option does is available here"
302
- #~ msgstr ""
303
- #~ "Повсюду - предупреждение: этот параметр является глобальным и повлияет на "
304
- #~ "весь ваш сайт. Используйте его только в том случае, если вы хотите "
305
- #~ "отключить комментарии повсюду. "
306
-
307
- #~ msgid ""
308
- #~ "On certain post types - Disabling comments will also disable trackbacks "
309
- #~ "and pingbacks. All comment-related fields will also be hidden from the "
310
- #~ "edit/quick-edit screens of the affected posts. These settings cannot be "
311
- #~ "overridden for individual posts."
312
- #~ msgstr ""
313
- #~ "В некоторых типах сообщений - отключение комментариев также отключает "
314
- #~ "трекбэки и pingback. Все поля, связанные с комментариями, также будут "
315
- #~ "скрыты от экранов редактирования / быстрого редактирования затронутых "
316
- #~ "сообщений. Эти настройки нельзя переопределять для отдельных сообщений."
317
-
318
- #~ msgid "Select the post types for which comments will be disabled"
319
- #~ msgstr "Выберите типы записей, для которых комментарии будут отключены."
320
-
321
- #~ msgid ""
322
- #~ "Tired of spam in the comments? Do visitors leave \"blank\" comments for "
323
- #~ "the sake of a link to their site?"
324
- #~ msgstr ""
325
- #~ "Надоел спам в комментариях? Посетители оставляют «пустые» комментарии "
326
- #~ "ради ссылки на свой сайт?"
327
-
328
- #~ msgid "Removes the \"Site\" field from the comment form."
329
- #~ msgstr "Убирает поле «Сайт» из формы комментирования."
330
-
331
- #~ msgid ""
332
- #~ "Works with the standard comment form, if the form is manually written in "
333
- #~ "your theme-it probably will not work!"
334
- #~ msgstr ""
335
- #~ "Работает со стандартной формой комментирования, если в Вашей теме форма "
336
- #~ "прописана вручную - скорей всего не сработает!"
337
-
338
- #~ msgid "Recommended"
339
- #~ msgstr "Рекомендовано"
340
-
341
- #~ msgid ""
342
- #~ "Superfluous external links from comments, which can be typed from a dozen "
343
- #~ "and more for one article, do not bring anything good for promotion."
344
- #~ msgstr ""
345
- #~ "Внешние ссылки в комментариях, которых может быть десятки или больше на "
346
- #~ "одной странице, могут ухудшить продвижение вашего сайта."
347
-
348
- #~ msgid "Replaces the links of this kind of %s, on links of this kind %s"
349
- #~ msgstr ""
350
- #~ "Заменяет ссылки %s, на span тег и устанавливает переход с помощью "
351
- #~ "JavaScript %s"
352
-
353
- #~ msgid ""
354
- #~ "Up to 90 percent of comments in the blog can be left for the sake of an "
355
- #~ "external link. Even nofollow from page weight loss here does not help."
356
- #~ msgstr ""
357
- #~ "До 90 процентов комментариев в блоге оставляют ради внешней ссылки. Не "
358
- #~ "поможет даже nofollow от потери веса страницы."
359
-
360
- #~ msgid ""
361
- #~ "Replaces the links of the authors of comments on the JavaScript code, it "
362
- #~ "is impossible to distinguish it from usual links."
363
- #~ msgstr ""
364
- #~ "Заменяет ссылки авторов комментариев на JavaScript код, его невозможно "
365
- #~ "отличить от обычной ссылки."
366
-
367
- #~ msgid "In some Wordpress topics this may not work."
368
- #~ msgstr "В некоторых темах Wordpress это может не сработать."
369
-
370
- #~ msgid "Disable XML-RPC"
371
- #~ msgstr "Отключить XML-RPC"
372
-
373
- #~ msgid ""
374
- #~ "A pingback is basically an automated comment that gets created when "
375
- #~ "another blog links to you. A self-pingback is created when you link to an "
376
- #~ "article within your own blog. Pingbacks are essentially nothing more than "
377
- #~ "spam and simply waste resources."
378
- #~ msgstr ""
379
- #~ "Pingback по-существу автоматизированных комментарий, который создается, "
380
- #~ "когда другой блог ссылается на вас. Self-pingback создается, когда вы "
381
- #~ "оставили ссылку на статью в своем блоге. Pingbacks по существу являются "
382
- #~ "не более чем спам и пустая трата ресурсов вашего сайта."
383
-
384
- #~ msgid "Removes the server responses a reference to the xmlrpc file."
385
- #~ msgstr "Удаляет ссылку на xmlrpc-файл и ответ сервера."
386
-
387
- #~ msgid ""
388
- #~ "We found that you have the \"Clearfy - disable unused features\" plugin "
389
- #~ "installed, this plugin already has disable comments functions, so you can "
390
- #~ "deactivate plugin \"Comments tweaks\"!"
391
- #~ msgstr ""
392
- #~ "Мы обнаружили, что у вас установлен плагин «Clearfy - отключить "
393
- #~ "неиспользуемые функции», этот плагин уже имеет функции отключения "
394
- #~ "комментариев, поэтому вы можете отключить плагин «Инструменты "
395
- #~ "комментариев»!"
396
-
397
- #~ msgid "Webcraftic comments tweaks"
398
- #~ msgstr "Webcraftic инструменты комментариев"
399
-
400
- #~ msgid "Comments are closed."
401
- #~ msgstr "Комментарии Закрыты."
402
-
403
- #~ msgid ""
404
- #~ "Note: The <em>%s</em> plugin is currently active, and comments are "
405
- #~ "completely disabled on: %s. Many of the settings below will not be "
406
- #~ "applicable for those post types."
407
- #~ msgstr ""
408
- #~ "Примечание. Плагин <em>%s</em> в настоящий момент активен, и комментарии "
409
- #~ "полностью отключены: %s. Многие из приведенных ниже настроек не будут "
410
- #~ "применяться для этих типов сообщений."
411
-
412
- #~ msgid ""
413
- #~ "We found that you have the \"Clearfy - disable unused features\" plugin "
414
- #~ "installed, this plugin already has disable comments functions, so you can "
415
- #~ "deactivate plugin \"Disable comments\"!"
416
- #~ msgstr ""
417
- #~ "Мы обнаружили, что у вас установлен плагин «Clearfy - отключить "
418
- #~ "неиспользуемые функции», этот плагин уже имеет функции отключения "
419
- #~ "комментариев, поэтому вы можете отключить плагин «Отключить комментарии»!"
420
-
421
- #~ msgid "Webcraftic Disable comments"
422
- #~ msgstr "Webcraftic отключить комментарии"
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: clearfy\n"
4
+ "POT-Creation-Date: 2020-08-27 12:50+0000\n"
5
+ "PO-Revision-Date: 2020-08-27 12:54+0000\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: Русский\n"
8
  "Language: ru_RU\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Loco https://localise.biz/\n"
13
  "X-Poedit-Basepath: ..\n"
14
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
15
+ "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
18
  "X-Poedit-SearchPath-0: .\n"
19
  "X-Poedit-SearchPathExcluded-0: libs\n"
20
+ "Report-Msgid-Bugs-To: \n"
21
+ "X-Loco-Version: 2.4.2; wp-5.5"
22
 
23
+ #: disable-admin-notices.php:46
24
+ msgid "Webcraftic disable admin notices"
25
+ msgstr "Webcraftic отключить уведомления администратора"
 
 
 
 
26
 
27
+ #: admin/boot.php:27
28
+ msgid "Get ultimate plugin free"
29
+ msgstr "Получите полную версию плагина бесплатно"
30
 
31
+ #: admin/boot.php:82 admin/options.php:66
32
+ #: admin/pages/class-pages-settings.php:72
33
  msgid "Hide admin notices"
34
  msgstr "Скрыть уведомления"
35
 
36
+ #: admin/boot.php:88 admin/options.php:148
37
  msgid "Enable hidden notices in adminbar"
38
  msgstr "Включить уведомления в админбаре"
39
 
40
+ #: admin/class-page-basic.php:41
41
+ msgid "Webcraftic Disable Admin Notices"
42
+ msgstr "Webcraftic Disable Admin Notices"
43
 
44
+ #: admin/options.php:33
45
  msgid "Admin notifications, Update nags"
46
  msgstr "Уведомления администратора, уведомления об обновлении Wordpress"
47
 
48
+ #: admin/options.php:33
49
  msgid ""
50
  "Do you know the situation, when some plugin offers you to update to premium, "
51
  "to collect technical data and shows many annoying notices? You are close "
60
  "авторы и вовсе удаляют кнопку “закрыть” из уведомлений, и они висят в шапке "
61
  "вашей панели администратора целую вечность."
62
 
63
+ #: admin/options.php:39
64
+ msgid "Don't hide"
65
+ msgstr "Не скрывать"
66
+
67
+ #: admin/options.php:40
68
+ msgid ""
69
+ "Do not hide notices and do not show “Hide notification forever” link for "
70
+ "admin."
71
+ msgstr ""
72
+ "Не скрывать уведомления и не показывать ссылку \"Скрыть уведомление "
73
+ "навсегда\" в уведомлениях администратора."
74
+
75
+ #: admin/options.php:44
76
  msgid "All notices"
77
  msgstr "Все уведомления"
78
 
79
+ #: admin/options.php:45
80
  msgid "Hide all notices globally."
81
  msgstr "Скрыть все уведомления глобально."
82
 
83
+ #: admin/options.php:45 admin/options.php:50 admin/options.php:58
84
+ #, php-format
85
+ msgid ""
86
+ "Watch the <a href=\"%s\" target=\"_blank\">video</a> to find out how it "
87
+ "works ."
88
+ msgstr ""
89
+ "Посмотрите <a href=\"%s\" target=\"_blank\">видео</a> о том, как это "
90
+ "работает."
91
+
92
+ #: admin/options.php:49
93
  msgid "Only selected"
94
  msgstr "Только выбранные"
95
 
96
+ #: admin/options.php:50
97
  msgid ""
98
+ "Hide selected notices only. You will see the link \"Hide notification "
99
+ "forever\" in each notice. Push it and they will not bother you anymore."
100
  msgstr ""
101
  "Скрывать только выбранные уведомления. В каждом уведомлении вы увидите "
102
  "ссылку \"Скрыть уведомление навсегда\". Нажмите на неё и уведомление будет "
103
  "скрыто навсегда и перестанет вас беспокоить."
104
 
105
+ #: admin/options.php:57
106
+ msgid "Compact panel"
107
+ msgstr "Компактная панель"
108
 
109
+ #: admin/options.php:58
110
  msgid ""
111
+ "Collapse all notifications in one line (panel with notification counters), "
112
+ "to see the notifications, you will need to click this panel."
113
  msgstr ""
114
+ "Свернуть все уведомления в одну строку (панель со счетчиками уведомлений), "
115
+ "чтобы увидеть уведомления, вам нужно будет нажать на эту панель."
116
 
117
+ #: admin/options.php:69
118
  msgid ""
119
  "Some plugins shows notifications about premium version, data collecting or "
120
  "promote their services. Even if you push close button (that sometimes are "
132
  "контролировать эти уведомления. Скройте их все сразу или каждое по "
133
  "отдельности."
134
 
135
+ #: admin/options.php:92 admin/options.php:94
136
+ msgid "Disable plugins updates nags"
137
+ msgstr "Отключить уведомления об обновлении плагинов"
138
+
139
+ #: admin/options.php:103 admin/options.php:105
140
+ msgid "Disable core updates nags"
141
+ msgstr "Отключить уведомления об обновлении Wordpress"
142
+
143
+ #: admin/options.php:150
144
  msgid ""
145
  "By default, the plugin hides all notices, which you specified. If you enable "
146
  "this option, the plugin will collect all hidden notices and show them into "
152
  "выводить в верхней панели администратора. Это не будет вас раздражать, но и "
153
  "позволит просматривать уведомления, когда вам это удобно."
154
 
155
+ #: admin/options.php:235
156
+ msgid "Reset hidden notices for"
157
+ msgstr "Сброс скрытых уведомлений для"
158
+
159
+ #: admin/options.php:238
160
  msgid "Push reset hidden notices if you need to show hidden notices again."
161
  msgstr "Нажмите кнопку \\\"Сбросить скрытые уведомления\\\""
162
 
163
+ #: admin/options.php:249
164
+ msgid "current user"
165
+ msgstr "Текущий пользователь"
 
166
 
167
+ #: admin/options.php:253
168
+ msgid "all users"
169
+ msgstr "Все пользователи"
170
+
171
+ #: admin/options.php:257
172
+ msgid "Reset notices"
173
+ msgstr "Сбросить уведомления"
174
+
175
+ #: admin/options.php:261 admin/pages/class-pages-settings.php:116
176
  msgid "Hidden notices are successfully reset, now you can see them again!"
177
  msgstr ""
178
  "Скрытые уведомления успешно восстановлены, теперь вы можете снова видеть их!"
179
 
180
+ #: admin/ajax/hide-notice.php:27 admin/ajax/restore-notice.php:24
181
+ msgid "Undefinded notice id."
182
+ msgstr "Не передан notice id."
183
 
184
+ #: admin/ajax/hide-notice.php:59 admin/ajax/restore-notice.php:45
185
+ msgid "You don't have enough capability to edit this information."
186
+ msgstr "Вы не имеете разрешения на редактирование этого!"
187
 
188
+ #: admin/pages/class-pages-edit-admin-bar.php:53
189
+ msgid "Hide adminbar items"
190
+ msgstr "Меню админбара"
 
 
 
 
 
 
 
191
 
192
+ #: admin/pages/class-pages-edit-admin-bar.php:54
193
+ msgid "You can hide an annoying adminbar menu"
194
+ msgstr "Скрытие пунктов меню админбара"
195
 
196
+ #: admin/pages/class-pages-edit-redirects.php:53
197
+ msgid "Block ad redirects"
198
+ msgstr "Рекламные редиректы"
199
+
200
+ #: admin/pages/class-pages-edit-redirects.php:54
201
+ msgid "Break advertising redirects"
202
+ msgstr "Отключение рекламных редиректов"
203
+
204
+ #: admin/pages/class-pages-notices.php:51
205
+ msgid "Hidden notices"
206
+ msgstr "Скрытые нотисы"
207
 
208
+ #: admin/pages/class-pages-notices.php:52
209
+ msgid "Manage hidden notices"
210
+ msgstr "Управление скрытыми нотисами"
211
 
212
+ #: admin/pages/class-pages-settings.php:73
213
+ msgid "General settings"
214
+ msgstr "Основные настройки"
215
 
216
+ #: admin/pages/class-pages-settings.php:85
217
+ msgid "Settings"
218
+ msgstr "Настройки"
219
 
220
+ #: includes/classes/class-configurate-notices.php:81
221
+ #, php-format
222
+ msgid "Notifications %s"
223
+ msgstr "Уведомления %s"
224
 
225
+ #: includes/classes/class-configurate-notices.php:92
226
+ msgid "Hidden for you"
227
+ msgstr "Скрытые для Вас"
228
 
229
+ #: includes/classes/class-configurate-notices.php:289
230
+ msgid "Hide <b>for me</b>"
231
+ msgstr "Скрыть для меня"
232
 
233
+ #: includes/classes/class-configurate-notices.php:293
234
+ msgid "Hide <b>for all</b>"
235
+ msgstr "Скрыть для всех"
236
 
237
+ #. Name of the plugin
238
+ msgid "Disable Admin Notices Individually"
239
+ msgstr "Disable Admin Notices Individually"
240
+
241
+ #. Description of the plugin
242
+ msgid ""
243
+ "Disable admin notices plugin gives you the option to hide updates warnings "
244
+ "and inline notices in the admin panel."
245
+ msgstr ""
246
+ "Плагин Disable admin notices дает вам возможность скрыть предупреждения об "
247
+ "обновлениях и встроенные уведомления в панели администратора."
248
 
249
+ #. URI of the plugin
250
+ #. Author URI of the plugin
251
+ msgid "https://webcraftic.com"
252
+ msgstr "https://webcraftic.com"
253
 
254
+ #. Author of the plugin
255
+ msgid "Webcraftic <wordpress.webraftic@gmail.com>"
256
+ msgstr "Webcraftic <wordpress.webraftic@gmail.com>"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
components/disable-admin-notices/migrations/010007.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WDNUpdate010007 extends Wbcr_Factory432_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WDNUpdate010007 extends Wbcr_Factory436_Update {
8
 
9
  public function install()
10
  {
components/disable-admin-notices/readme.txt CHANGED
@@ -1,9 +1,9 @@
1
- === Disable admin notices individually ===
2
- Tags: hide admin notices, hide updates nags, hide nags, disable notices, disable update nags, disable nags, disable admin notices
3
  Contributors: webcraftic, alexkovalevv, creativemotion
4
  Donate link: https://clearfy.pro/disable-admin-notices/
5
  Requires at least: 4.8
6
- Tested up to: 5.4
7
  Requires PHP: 5.6
8
  Stable tag: trunk
9
  License: GPLv2
@@ -19,8 +19,16 @@ Our team was tired of this, and we developed a small plugin that solves problems
19
  The Hide admin notices plugin adds “Hide notification forever” link for each admin notice. Click this link and plugin will filter this notice and you will never see it. This method will help you to disable only annoying notices from plugins and themes, but important error notifications will continue to work.
20
 
21
  In addition, you can disable all notices globally simply change plugin options. In this case, the plugin hides all admin notices, except of updates notices in the list of installed plug-ins.
 
22
 
23
  And still, that you could see which notices are shows, we made the special item in the top admin bar that will collect all notices in one place. It is disabled by default to freeing space in the admin menu but you can enable it in plugin options.
 
 
 
 
 
 
 
24
 
25
  We used some useful functions from plugins <strong>Clearfy – disable unused features</strong>, <strong>WP Hide Plugin Updates and Warnings</strong>, <strong>Hide All Notices</strong>, <strong>WP Nag Hide</strong>, <strong>WP Notification Center</strong>
26
 
@@ -54,6 +62,13 @@ If you want to help with the translation, please contact me through this site or
54
  3. Notifications panel (optional)
55
 
56
  == Changelog ==
 
 
 
 
 
 
 
57
  = 1.2.2 (09.08.2020) =
58
  * Fixed: It was impossible to hide the notice with an offer to buy a pro version.
59
  * Updated: Improved the accuracy of filters when hiding notifications.
@@ -99,4 +114,4 @@ If you want to help with the translation, please contact me through this site or
99
  * Compatibility with plugins from webcraftic is updated
100
 
101
  = 1.0.0 =
102
- * Plugin release
1
+ === Disable Admin Notices individually ===
2
+ Tags: notices, notification, notifications, upgrade, nag
3
  Contributors: webcraftic, alexkovalevv, creativemotion
4
  Donate link: https://clearfy.pro/disable-admin-notices/
5
  Requires at least: 4.8
6
+ Tested up to: 5.5
7
  Requires PHP: 5.6
8
  Stable tag: trunk
9
  License: GPLv2
19
  The Hide admin notices plugin adds “Hide notification forever” link for each admin notice. Click this link and plugin will filter this notice and you will never see it. This method will help you to disable only annoying notices from plugins and themes, but important error notifications will continue to work.
20
 
21
  In addition, you can disable all notices globally simply change plugin options. In this case, the plugin hides all admin notices, except of updates notices in the list of installed plug-ins.
22
+ <strong>[Premium]</strong> You can hide the notice for other users who have access to the admin panel, while displaying this notice for yourself. (Multisite only)
23
 
24
  And still, that you could see which notices are shows, we made the special item in the top admin bar that will collect all notices in one place. It is disabled by default to freeing space in the admin menu but you can enable it in plugin options.
25
+ <strong>[Premium]</strong> We have also added a Hidden Notices page so that the site administrator can view the entire list of hidden notes and restore some of them, if necessary.
26
+
27
+ <strong>[Premium]</strong> Compact panel - Instead of notices in the admin panel (no matter how many) a compact panel is displayed, it takes up little space and will not interfere with you. By clicking on the compact panel, you will see all your notes, click again and all your notes are hidden again. This is an easy way to keep track of notes, you won't miss anything, all notes will be available in one click.
28
+ <strong>[Premium]</strong> Block Ad Redericts - This feature will be useful to you to break advertising redirects. Some plugins, when updating or during installation, may redirect you to their page with advertisements or news. If plugins do this too often, it can be a headache for you. Break these redirects with our premium features.
29
+ <strong>[Premium]</strong> Hide admin bar items (menu) - This function allows you to disable annoying menu items in the admin bar. Some plugins take up space in the admin bar to insert their ads. Just get rid of this ad with the premium features of our plugin.
30
+ <strong>[Premium]</strong> Disable plugins updates nags
31
+ <strong>[Premium]</strong> Disable core updates nags
32
 
33
  We used some useful functions from plugins <strong>Clearfy – disable unused features</strong>, <strong>WP Hide Plugin Updates and Warnings</strong>, <strong>Hide All Notices</strong>, <strong>WP Nag Hide</strong>, <strong>WP Notification Center</strong>
34
 
62
  3. Notifications panel (optional)
63
 
64
  == Changelog ==
65
+ = 1.2.3 =
66
+ * Fixed: Compatibility with other plugins
67
+ * Fixed: Appearance of the list of hidden notifications in the adminbar
68
+ * [PRO] Added: Added a page with a list of all hidden notifications with the ability to restore.
69
+ * [PRO] Added: Ability to hide notifications for ALL users
70
+ * [PRO] Added: Multisite support
71
+
72
  = 1.2.2 (09.08.2020) =
73
  * Fixed: It was impossible to hide the notice with an offer to buy a pro version.
74
  * Updated: Improved the accuracy of filters when hiding notifications.
114
  * Compatibility with plugins from webcraftic is updated
115
 
116
  = 1.0.0 =
117
+ * Plugin release
components/ga-cache/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
- * @see Factory432_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGA_Activation extends Wbcr_Factory432_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
+ * @see Factory436_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGA_Activation extends Wbcr_Factory436_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/ga-cache/admin/boot.php CHANGED
@@ -23,13 +23,13 @@ if ( ! defined( 'ABSPATH' ) ) {
23
  *
24
  * @since 3.0.1
25
  *
26
- * @param Wbcr_FactoryPages432_ImpressiveThemplate $page
27
  *
28
- * @param Wbcr_Factory432_Plugin $plugin
29
  *
30
  * @return void
31
  */
32
- add_action( 'wbcr_factory_432_imppage_after_form_save', function ( $plugin, $page ) {
33
  if ( WGA_Plugin::app()->getPluginName() != $plugin->getPluginName() ) {
34
  return;
35
  }
23
  *
24
  * @since 3.0.1
25
  *
26
+ * @param Wbcr_FactoryPages435_ImpressiveThemplate $page
27
  *
28
+ * @param Wbcr_Factory436_Plugin $plugin
29
  *
30
  * @return void
31
  */
32
+ add_action( 'wbcr_factory_436_imppage_after_form_save', function ( $plugin, $page ) {
33
  if ( WGA_Plugin::app()->getPluginName() != $plugin->getPluginName() ) {
34
  return;
35
  }
components/ga-cache/admin/options.php CHANGED
@@ -117,7 +117,7 @@ function wbcr_ga_get_plugin_options() {
117
 
118
  /**
119
  * @param $form
120
- * @param $page Wbcr_FactoryPages432_ImpressiveThemplate
121
  *
122
  * @return mixed
123
  */
117
 
118
  /**
119
  * @param $form
120
+ * @param $page Wbcr_FactoryPages435_ImpressiveThemplate
121
  *
122
  * @return mixed
123
  */
components/ga-cache/admin/pages/class-pages-general-settings.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
- class WGA_CachePage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -48,9 +48,9 @@ class WGA_CachePage extends Wbcr_FactoryClearfy224_PageBase {
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
- * @param Wbcr_Factory432_Plugin $plugin
52
  */
53
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
54
  $this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
55
 
56
  if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
+ class WGA_CachePage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory436_Plugin $plugin
52
  */
53
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
54
  $this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
55
 
56
  if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
components/ga-cache/admin/pages/class-pages-more-features.php CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WGA_MoreFeaturesPage extends Wbcr_FactoryClearfy224_MoreFeaturesPage {
20
 
21
  }
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WGA_MoreFeaturesPage extends Wbcr_FactoryClearfy227_MoreFeaturesPage {
20
 
21
  }
components/ga-cache/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WGA_Plugin extends Wbcr_Factory432_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory432_Plugin
18
  */
19
  private static $app;
20
 
@@ -58,7 +58,7 @@ class WGA_Plugin extends Wbcr_Factory432_Plugin {
58
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
59
  * классам.
60
  *
61
- * @return \Wbcr_Factory432_Plugin|\WGA_Plugin
62
  */
63
  public static function app() {
64
  return self::$app;
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WGA_Plugin extends Wbcr_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
58
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
59
  * классам.
60
  *
61
+ * @return \Wbcr_Factory436_Plugin|\WGA_Plugin
62
  */
63
  public static function app() {
64
  return self::$app;
components/ga-cache/includes/classes/class-configurate-ga.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WGA_ConfigGACache extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
12
  exit;
13
  }
14
 
15
+ class WGA_ConfigGACache extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
components/ga-cache/migrations/030002.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGACUpdate030002 extends Wbcr_Factory432_Update {
8
 
9
  public function install() {
10
  /**
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGACUpdate030002 extends Wbcr_Factory436_Update {
8
 
9
  public function install() {
10
  /**
components/ga-cache/simple_google_analytics.php CHANGED
@@ -63,15 +63,15 @@ $plugin_info = array(
63
 
64
  // FRAMEWORK MODULES
65
  'load_factory_modules' => array(
66
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
67
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
68
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
69
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
70
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
71
  )
72
  );
73
 
74
- $wga_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $plugin_info, array(
75
  'plugin_already_activate' => defined( 'WGA_PLUGIN_ACTIVE' ),
76
  'required_php_version' => '5.4',
77
  'required_wp_version' => '4.2.0',
63
 
64
  // FRAMEWORK MODULES
65
  'load_factory_modules' => array(
66
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
67
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
68
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
69
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
70
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
71
  )
72
  );
73
 
74
+ $wga_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $plugin_info, array(
75
  'plugin_already_activate' => defined( 'WGA_PLUGIN_ACTIVE' ),
76
  'required_php_version' => '5.4',
77
  'required_wp_version' => '4.2.0',
components/html-minify/admin/pages/class-pages-settings.php CHANGED
@@ -9,7 +9,7 @@ if ( ! defined( 'ABSPATH' ) ) {
9
  *
10
  * @since 1.0.0
11
  */
12
- class WHTM_SettingsPage extends Wbcr_FactoryClearfy224_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WHTM_SettingsPage extends Wbcr_FactoryClearfy224_PageBase {
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
- * @param \Wbcr_Factory432_Plugin $plugin
56
  */
57
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
58
  // Заголовок страницы
59
  $this->menu_title = __( 'HTML Minify', 'html-minify' );
60
 
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WHTM_SettingsPage extends Wbcr_FactoryClearfy227_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory436_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
58
  // Заголовок страницы
59
  $this->menu_title = __( 'HTML Minify', 'html-minify' );
60
 
components/html-minify/clearfy.php CHANGED
@@ -10,42 +10,42 @@
10
  */
11
 
12
  // Exit if accessed directly
13
- if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- if ( ! defined( 'WHTM_PLUGIN_ACTIVE' ) ) {
18
- define( 'WHTM_PLUGIN_VERSION', '1.1.0' );
19
- define( 'WHTM_TEXT_DOMAIN', 'html-minify' );
20
- define( 'WHTM_PLUGIN_ACTIVE', true );
21
 
22
  // Этот плагин загружен, как аддон для плагина Clearfy
23
- define( 'LOADING_HTML_MINIFY_AS_ADDON', true );
24
 
25
- if ( ! defined( 'WHTM_PLUGIN_DIR' ) ) {
26
- define( 'WHTM_PLUGIN_DIR', dirname( __FILE__ ) );
27
  }
28
 
29
- if ( ! defined( 'WHTM_PLUGIN_BASE' ) ) {
30
- define( 'WHTM_PLUGIN_BASE', plugin_basename( __FILE__ ) );
31
  }
32
 
33
- if ( ! defined( 'WHTM_PLUGIN_URL' ) ) {
34
- define( 'WHTM_PLUGIN_URL', plugins_url( null, __FILE__ ) );
35
  }
36
 
37
  try {
38
  // Global scripts
39
- require_once( WHTM_PLUGIN_DIR . '/includes/3rd-party/class-clearfy-plugin.php' );
40
  new WHTM_Plugin();
41
  } catch( Exception $e ) {
42
- $whtml_plugin_error_func = function () use ( $e ) {
43
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Html minify', $e->getMessage(), $e->getCode() );
44
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
45
  };
46
 
47
- add_action( 'admin_notices', $whtml_plugin_error_func );
48
- add_action( 'network_admin_notices', $whtml_plugin_error_func );
49
  }
50
  }
51
 
10
  */
11
 
12
  // Exit if accessed directly
13
+ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
+ if( !defined('WHTM_PLUGIN_ACTIVE') ) {
18
+ define('WHTM_PLUGIN_VERSION', '1.1.1');
19
+ define('WHTM_TEXT_DOMAIN', 'html-minify');
20
+ define('WHTM_PLUGIN_ACTIVE', true);
21
 
22
  // Этот плагин загружен, как аддон для плагина Clearfy
23
+ define('LOADING_HTML_MINIFY_AS_ADDON', true);
24
 
25
+ if( !defined('WHTM_PLUGIN_DIR') ) {
26
+ define('WHTM_PLUGIN_DIR', dirname(__FILE__));
27
  }
28
 
29
+ if( !defined('WHTM_PLUGIN_BASE') ) {
30
+ define('WHTM_PLUGIN_BASE', plugin_basename(__FILE__));
31
  }
32
 
33
+ if( !defined('WHTM_PLUGIN_URL') ) {
34
+ define('WHTM_PLUGIN_URL', plugins_url(null, __FILE__));
35
  }
36
 
37
  try {
38
  // Global scripts
39
+ require_once(WHTM_PLUGIN_DIR . '/includes/3rd-party/class-clearfy-plugin.php');
40
  new WHTM_Plugin();
41
  } catch( Exception $e ) {
42
+ $whtml_plugin_error_func = function () use ($e) {
43
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Html minify', $e->getMessage(), $e->getCode());
44
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
45
  };
46
 
47
+ add_action('admin_notices', $whtml_plugin_error_func);
48
+ add_action('network_admin_notices', $whtml_plugin_error_func);
49
  }
50
  }
51
 
components/html-minify/html-minify.php CHANGED
@@ -4,11 +4,11 @@
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Ever look at the HTML markup of your website and notice how sloppy and amateurish it looks? The HTML Мinify options cleans up sloppy looking markup and minifies, which also speeds up download.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.1.0
8
  * Text Domain: html-minify
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  /*
@@ -59,15 +59,15 @@ $whtml_plugin_info = array(
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
63
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
64
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
65
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
66
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
67
  )
68
  );
69
 
70
- $whtml_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $whtml_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Ever look at the HTML markup of your website and notice how sloppy and amateurish it looks? The HTML Мinify options cleans up sloppy looking markup and minifies, which also speeds up download.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 1.1.1
8
  * Text Domain: html-minify
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
67
  )
68
  );
69
 
70
+ $whtml_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $whtml_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
components/html-minify/includes/class-plugin.php CHANGED
@@ -13,11 +13,11 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  }
14
 
15
 
16
- class WHTM_Plugin extends Wbcr_Factory432_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory432_Plugin
21
  */
22
  private static $app;
23
 
@@ -53,7 +53,7 @@ class WHTM_Plugin extends Wbcr_Factory432_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory432_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
13
  }
14
 
15
 
16
+ class WHTM_Plugin extends Wbcr_Factory436_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory436_Plugin
21
  */
22
  private static $app;
23
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory436_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
components/html-minify/includes/classes/class-html.php CHANGED
@@ -82,13 +82,13 @@ class WHTM_PluginHTML extends WHTM_PluginBase
82
  // No optimize.
83
  $this->content = $this->hideNoptimize( $this->content );
84
 
85
- // Preparing options for Minify_HTML.
86
  $options = array( 'keepComments' => $this->keepcomments );
87
  if ( $this->forcexhtml ) {
88
  $options['xhtml'] = true;
89
  }
90
 
91
- $tmp_content = Minify_HTML::minify( $this->content, $options );
92
  if ( ! empty( $tmp_content ) ) {
93
  $this->content = $tmp_content;
94
  unset( $tmp_content );
82
  // No optimize.
83
  $this->content = $this->hideNoptimize( $this->content );
84
 
85
+ // Preparing options for WHTM_Minify_HTML.
86
  $options = array( 'keepComments' => $this->keepcomments );
87
  if ( $this->forcexhtml ) {
88
  $options['xhtml'] = true;
89
  }
90
 
91
+ $tmp_content = WHTM_Minify_HTML::minify( $this->content, $options );
92
  if ( ! empty( $tmp_content ) ) {
93
  $this->content = $tmp_content;
94
  unset( $tmp_content );
components/html-minify/includes/classes/ext/php/class-minify-html.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Class Minify_HTML
4
  * @package Minify
5
  */
6
 
@@ -16,7 +16,7 @@
16
  * @package Minify
17
  * @author Stephen Clay <steve@mrclay.org>
18
  */
19
- class Minify_HTML {
20
 
21
  /**
22
  * "Minify" an HTML page
@@ -40,7 +40,7 @@ class Minify_HTML {
40
  * @return string
41
  */
42
  public static function minify($html, $options = array()) {
43
- $min = new Minify_HTML($html, $options);
44
  return $min->process();
45
  }
46
 
1
  <?php
2
  /**
3
+ * Class WHTM_Minify_HTML
4
  * @package Minify
5
  */
6
 
16
  * @package Minify
17
  * @author Stephen Clay <steve@mrclay.org>
18
  */
19
+ class WHTM_Minify_HTML {
20
 
21
  /**
22
  * "Minify" an HTML page
40
  * @return string
41
  */
42
  public static function minify($html, $options = array()) {
43
+ $min = new WHTM_Minify_HTML($html, $options);
44
  return $min->process();
45
  }
46
 
components/minify-and-combine/admin/pages/class-pages-settings.php CHANGED
@@ -9,7 +9,7 @@ if ( ! defined( 'ABSPATH' ) ) {
9
  *
10
  * @since 1.0.0
11
  */
12
- class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy224_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -50,12 +50,12 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy224_PageBase
50
  /**
51
  * WMAC_MinifyAndCombineSettingsPage constructor.
52
  *
53
- * @param \Wbcr_Factory432_Plugin $plugin
54
  *
55
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
56
  *
57
  */
58
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
59
  $this->menu_title = __( 'Minify (JS/CSS)', 'minify-and-combine' );
60
 
61
  if ( ! defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ) {
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy227_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
50
  /**
51
  * WMAC_MinifyAndCombineSettingsPage constructor.
52
  *
53
+ * @param \Wbcr_Factory436_Plugin $plugin
54
  *
55
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
56
  *
57
  */
58
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
59
  $this->menu_title = __( 'Minify (JS/CSS)', 'minify-and-combine' );
60
 
61
  if ( ! defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ) {
components/minify-and-combine/includes/class-plugin.php CHANGED
@@ -13,11 +13,11 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  }
14
 
15
 
16
- class WMAC_Plugin extends Wbcr_Factory432_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory432_Plugin
21
  */
22
  private static $app;
23
 
@@ -55,7 +55,7 @@ class WMAC_Plugin extends Wbcr_Factory432_Plugin {
55
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
56
  * классам.
57
  *
58
- * @return \Wbcr_Factory432_Plugin|\WCM_Plugin
59
  */
60
  public static function app() {
61
  return self::$app;
13
  }
14
 
15
 
16
+ class WMAC_Plugin extends Wbcr_Factory436_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory436_Plugin
21
  */
22
  private static $app;
23
 
55
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
56
  * классам.
57
  *
58
+ * @return \Wbcr_Factory436_Plugin|\WCM_Plugin
59
  */
60
  public static function app() {
61
  return self::$app;
components/minify-and-combine/includes/classes/class-cache.php CHANGED
@@ -385,7 +385,7 @@ class WMAC_PluginCache {
385
  }
386
  }
387
  add_action( 'shutdown', 'wmac_do_cachepurged_action', 11 );
388
- add_action( 'wmac_action_cachepurged', [ 'WbcrFactoryClearfy224_Helpers', 'flushPageCache' ], 10, 0 );
389
  }
390
 
391
  // Warm cache (part of speedupper)!
385
  }
386
  }
387
  add_action( 'shutdown', 'wmac_do_cachepurged_action', 11 );
388
+ add_action( 'wmac_action_cachepurged', [ 'WbcrFactoryClearfy227_Helpers', 'flushPageCache' ], 10, 0 );
389
  }
390
 
391
  // Warm cache (part of speedupper)!
components/minify-and-combine/minify-and-combine.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: minify-and-combine
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  /*
@@ -59,15 +59,15 @@ $wmac_plugin_info = array(
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
63
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
64
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
65
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
66
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
67
  )
68
  );
69
 
70
- $wmac_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wmac_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WMAC_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
8
  * Text Domain: minify-and-combine
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
67
  )
68
  );
69
 
70
+ $wmac_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wmac_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WMAC_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
components/updates-manager/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
- * @see Factory432_Activator
9
  */
10
 
11
  // Exit if accessed directly
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WUPM_Activation extends Wbcr_Factory432_Activator {
17
 
18
  /**
19
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
+ * @see Factory436_Activator
9
  */
10
 
11
  // Exit if accessed directly
13
  exit;
14
  }
15
 
16
+ class WUPM_Activation extends Wbcr_Factory436_Activator {
17
 
18
  /**
19
  * Runs activation actions.
components/updates-manager/admin/assets/css/general.css CHANGED
@@ -1,156 +1,155 @@
1
- /**
2
- * General styles
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
- #WBCR {
7
- /* upm */
8
- }
9
- #WBCR .wp-list-table th,
10
- #WBCR .wp-list-table .plugin-name {
11
- font-size: 13px;
12
- font-weight: 600;
13
- }
14
- #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td {
15
- background: #f9f2f0 !important;
16
- }
17
- #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td .factory-buttons-way,
18
- #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td input[type="checkbox"] {
19
- border-color: #fff;
20
- background: #fff;
21
- }
22
- #WBCR .wp-list-table th.wbcr-upm-column-premium,
23
- #WBCR .wp-list-table td.wbcr-upm-column-premium {
24
- background: #f9f2f0 !important;
25
- }
26
- #WBCR .wp-list-table th.wbcr-upm-column-premium .factory-buttons-way,
27
- #WBCR .wp-list-table td.wbcr-upm-column-premium .factory-buttons-way,
28
- #WBCR .wp-list-table th.wbcr-upm-column-premium input[type="checkbox"],
29
- #WBCR .wp-list-table td.wbcr-upm-column-premium input[type="checkbox"] {
30
- border-color: #fff;
31
- background: #fff;
32
- }
33
- #WBCR .wp-list-table .plugin-update-tr.active td,
34
- #WBCR .wp-list-table.plugins .active th.check-column {
35
- border-left: 4px solid #e6e6e6 !important;
36
- padding-left: 8px !important;
37
- }
38
- #WBCR .wp-list-table.plugins .row-actions,
39
- #WBCR .wp-list-table.plugins .second {
40
- padding: 0 0 5px;
41
- color: #949292;
42
- }
43
- #WBCR .wp-list-table.plugins .active td,
44
- #WBCR .wp-list-table.plugins .active th {
45
- background-color: #ffffff;
46
- }
47
- #WBCR .wp-list-table.plugins,
48
- #WBCR .wp-list-table.plugins td,
49
- #WBCR .wp-list-table.plugins th,
50
- #WBCR .wp-list-table .row-actions .network_active,
51
- #WBCR .wp-list-table .row-actions .network_only {
52
- color: #777;
53
- }
54
- #WBCR .wp-list-table .widefat ol,
55
- #WBCR .wp-list-table .widefat p,
56
- #WBCR .wp-list-table .widefat tfoot tr td,
57
- #WBCR .wp-list-table .widefat tfoot tr th,
58
- #WBCR .wp-list-table .widefat thead tr td,
59
- #WBCR .wp-list-table .widefat thead tr th,
60
- #WBCR .wp-list-table .widefat ul {
61
- color: #7d7d7d;
62
- }
63
- #WBCR .wp-list-table #disable_updates,
64
- #WBCR .wp-list-table #disable_auto_updates,
65
- #WBCR .wp-list-table #disable_translation_updates,
66
- #WBCR .wp-list-table #hide_item {
67
- width: 100px;
68
- }
69
- #WBCR .column-flags .factory-checkbox {
70
- display: inline-flex;
71
- }
72
- #WBCR .wp-list-table.autoupdate th {
73
- white-space: normal !important;
74
- }
75
- #WBCR .wp-list-table.autoupdate .plugin-title {
76
- white-space: normal !important;
77
- }
78
- #WBCR .wp-list-table__plugins .plugin-title {
79
- max-width: 12rem;
80
- }
81
- #WBCR .wbcr-upm-group-header-pro {
82
- position: relative;
83
- display: inline-block;
84
- }
85
- #WBCR .wbcr-upm-group-header-pro:after {
86
- display: inline-block;
87
- position: relative;
88
- content: 'PRO';
89
- background: #ff5722;
90
- border-radius: 4px;
91
- color: #fff;
92
- font-size: 10px;
93
- line-height: 1;
94
- font-style: normal;
95
- padding: 4px 6px;
96
- margin-left: 4px;
97
- vertical-align: top;
98
- top: 0;
99
- left: auto;
100
- right: 0;
101
- z-index: 11;
102
- }
103
- #WBCR #disable_translation_updates,
104
- #WBCR #hide_item {
105
- position: relative;
106
- }
107
- #WBCR #disable_translation_updates.wbcr-upm-column-pro:after,
108
- #WBCR #hide_item.wbcr-upm-column-pro:after {
109
- display: inline-block;
110
- position: absolute;
111
- content: 'PRO';
112
- background: #ff5722;
113
- border-radius: 4px;
114
- color: #fff;
115
- font-size: 10px;
116
- line-height: 1;
117
- font-style: normal;
118
- padding: 4px 6px;
119
- margin-left: 4px;
120
- vertical-align: top;
121
- top: -10px;
122
- left: auto;
123
- right: 0;
124
- z-index: 11;
125
- }
126
- #WBCR .factory-checkbox.wbcr-upm-icon-pro:after {
127
- display: inline-block;
128
- position: relative;
129
- content: 'PRO';
130
- background: #ff5722;
131
- border-radius: 4px;
132
- color: #fff;
133
- font-size: 10px;
134
- line-height: 1;
135
- font-style: normal;
136
- padding: 4px 6px;
137
- margin-left: 4px;
138
- vertical-align: top;
139
- top: -8px;
140
- left: -10px;
141
- right: auto;
142
- z-index: 11;
143
- }
144
- #WBCR .wp-list-table.autoupdate .check-column {
145
- padding: 10px 9px;
146
- }
147
- .factory-checkbox-disabled input,
148
- .factory-checkbox-disabled button {
149
- pointer-events: none;
150
- cursor: not-allowed;
151
- opacity: 0.65;
152
- filter: alpha(opacity=65);
153
- -webkit-box-shadow: none;
154
- box-shadow: none;
155
- }
156
- /*# sourceMappingURL=general.css.map */
1
+ /**
2
+ * General styles
3
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
+ * @copyright Alex Kovalev 23.08.2017
5
+ */
6
+ #WBCR {
7
+ /* upm */
8
+ }
9
+ #WBCR .wp-list-table th,
10
+ #WBCR .wp-list-table .plugin-name {
11
+ font-size: 13px;
12
+ font-weight: 600;
13
+ }
14
+ #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td {
15
+ background: #f9f2f0 !important;
16
+ }
17
+ #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td .factory-buttons-way,
18
+ #WBCR .wp-list-table.wbcr-upm-list-table-pro.wbcr-upm-column-premium td input[type="checkbox"] {
19
+ border-color: #fff;
20
+ background: #fff;
21
+ }
22
+ #WBCR .wp-list-table th.wbcr-upm-column-premium,
23
+ #WBCR .wp-list-table td.wbcr-upm-column-premium {
24
+ background: #f9f2f0 !important;
25
+ }
26
+ #WBCR .wp-list-table th.wbcr-upm-column-premium .factory-buttons-way,
27
+ #WBCR .wp-list-table td.wbcr-upm-column-premium .factory-buttons-way,
28
+ #WBCR .wp-list-table th.wbcr-upm-column-premium input[type="checkbox"],
29
+ #WBCR .wp-list-table td.wbcr-upm-column-premium input[type="checkbox"] {
30
+ border-color: #fff;
31
+ background: #fff;
32
+ }
33
+ #WBCR .wp-list-table .plugin-update-tr.active td,
34
+ #WBCR .wp-list-table.plugins .active th.check-column {
35
+ border-left: 4px solid #e6e6e6 !important;
36
+ padding-left: 8px !important;
37
+ }
38
+ #WBCR .wp-list-table.plugins .row-actions,
39
+ #WBCR .wp-list-table.plugins .second {
40
+ padding: 0 0 5px;
41
+ color: #949292;
42
+ }
43
+ #WBCR .wp-list-table.plugins .active td,
44
+ #WBCR .wp-list-table.plugins .active th {
45
+ background-color: #ffffff;
46
+ }
47
+ #WBCR .wp-list-table.plugins,
48
+ #WBCR .wp-list-table.plugins td,
49
+ #WBCR .wp-list-table.plugins th,
50
+ #WBCR .wp-list-table .row-actions .network_active,
51
+ #WBCR .wp-list-table .row-actions .network_only {
52
+ color: #777;
53
+ }
54
+ #WBCR .wp-list-table .widefat ol,
55
+ #WBCR .wp-list-table .widefat p,
56
+ #WBCR .wp-list-table .widefat tfoot tr td,
57
+ #WBCR .wp-list-table .widefat tfoot tr th,
58
+ #WBCR .wp-list-table .widefat thead tr td,
59
+ #WBCR .wp-list-table .widefat thead tr th,
60
+ #WBCR .wp-list-table .widefat ul {
61
+ color: #7d7d7d;
62
+ }
63
+ #WBCR .wp-list-table #disable_updates,
64
+ #WBCR .wp-list-table #disable_auto_updates,
65
+ #WBCR .wp-list-table #disable_translation_updates,
66
+ #WBCR .wp-list-table #hide_item {
67
+ width: 100px;
68
+ }
69
+ #WBCR .column-flags .factory-checkbox {
70
+ display: inline-flex;
71
+ }
72
+ #WBCR .wp-list-table.autoupdate th {
73
+ white-space: normal !important;
74
+ }
75
+ #WBCR .wp-list-table.autoupdate .plugin-title {
76
+ white-space: normal !important;
77
+ }
78
+ #WBCR .wp-list-table__plugins .plugin-title {
79
+ max-width: 12rem;
80
+ }
81
+ #WBCR .wbcr-upm-group-header-pro {
82
+ position: relative;
83
+ display: inline-block;
84
+ }
85
+ #WBCR .wbcr-upm-group-header-pro:after {
86
+ display: inline-block;
87
+ position: relative;
88
+ content: 'PRO';
89
+ background: #ff5722;
90
+ border-radius: 4px;
91
+ color: #fff;
92
+ font-size: 10px;
93
+ line-height: 1;
94
+ font-style: normal;
95
+ padding: 4px 6px;
96
+ margin-left: 4px;
97
+ vertical-align: top;
98
+ top: 0;
99
+ left: auto;
100
+ right: 0;
101
+ z-index: 11;
102
+ }
103
+ #WBCR #disable_translation_updates,
104
+ #WBCR #hide_item {
105
+ position: relative;
106
+ }
107
+ #WBCR #disable_translation_updates.wbcr-upm-column-pro:after,
108
+ #WBCR #hide_item.wbcr-upm-column-pro:after {
109
+ display: inline-block;
110
+ position: absolute;
111
+ content: 'PRO';
112
+ background: #ff5722;
113
+ border-radius: 4px;
114
+ color: #fff;
115
+ font-size: 10px;
116
+ line-height: 1;
117
+ font-style: normal;
118
+ padding: 4px 6px;
119
+ margin-left: 4px;
120
+ vertical-align: top;
121
+ top: -10px;
122
+ left: auto;
123
+ right: 0;
124
+ z-index: 11;
125
+ }
126
+ #WBCR .factory-checkbox.wbcr-upm-icon-pro:after {
127
+ display: inline-block;
128
+ position: relative;
129
+ content: 'PRO';
130
+ background: #ff5722;
131
+ border-radius: 4px;
132
+ color: #fff;
133
+ font-size: 10px;
134
+ line-height: 1;
135
+ font-style: normal;
136
+ padding: 4px 6px;
137
+ margin-left: 4px;
138
+ vertical-align: top;
139
+ top: -8px;
140
+ left: -10px;
141
+ right: auto;
142
+ z-index: 11;
143
+ }
144
+ #WBCR .wp-list-table.autoupdate .check-column {
145
+ padding: 10px 9px;
146
+ }
147
+ .factory-checkbox-disabled input,
148
+ .factory-checkbox-disabled button {
149
+ pointer-events: none;
150
+ cursor: not-allowed;
151
+ opacity: 0.65;
152
+ filter: alpha(opacity=65);
153
+ -webkit-box-shadow: none;
154
+ box-shadow: none;
155
+ }
 
components/updates-manager/admin/assets/css/plugins.css CHANGED
@@ -1,33 +1,32 @@
1
- /**
2
- * Plugins page interface
3
- * @author Webcraftic <wordpress.webraftic@gmail.com>
4
- * @copyright Webcraftic 03.09.2018
5
- */
6
- /* wordpress default plugins page */
7
- .wbcr-upm-plugin-status,
8
- tbody .check-column:not(.hide-placeholder):after {
9
- display: block;
10
- content: "\f463";
11
- line-height: 1;
12
- font-family: dashicons;
13
- text-decoration: inherit;
14
- font-weight: 400;
15
- font-style: normal;
16
- vertical-align: top;
17
- text-align: center;
18
- margin: 4px 0 0 8px;
19
- color: #b4b9be;
20
- border: 1px solid #b4b9be;
21
- font-size: 14px;
22
- height: 14px;
23
- width: 14px;
24
- }
25
- .wbcr-upm-plugin-status.wbcr-upm-red {
26
- color: rgba(170, 0, 0, 0.58);
27
- border-color: rgba(170, 0, 0, 0.45);
28
- }
29
- .wbcr-upm-plugin-status.wbcr-upm-purple {
30
- color: #ac62b9;
31
- border-color: #a767b3;
32
- }
33
- /*# sourceMappingURL=plugins.css.map */
1
+ /**
2
+ * Plugins page interface
3
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
4
+ * @copyright Webcraftic 03.09.2018
5
+ */
6
+ /* wordpress default plugins page */
7
+ .wbcr-upm-plugin-status,
8
+ tbody .check-column:not(.hide-placeholder):after {
9
+ display: block;
10
+ content: "\f463";
11
+ line-height: 1;
12
+ font-family: dashicons;
13
+ text-decoration: inherit;
14
+ font-weight: 400;
15
+ font-style: normal;
16
+ vertical-align: top;
17
+ text-align: center;
18
+ margin: 4px 0 0 8px;
19
+ color: #b4b9be;
20
+ border: 1px solid #b4b9be;
21
+ font-size: 14px;
22
+ height: 14px;
23
+ width: 14px;
24
+ }
25
+ .wbcr-upm-plugin-status.wbcr-upm-red {
26
+ color: rgba(170, 0, 0, 0.58);
27
+ border-color: rgba(170, 0, 0, 0.45);
28
+ }
29
+ .wbcr-upm-plugin-status.wbcr-upm-purple {
30
+ color: #ac62b9;
31
+ border-color: #a767b3;
32
+ }
 
components/updates-manager/admin/assets/css/themes.css CHANGED
@@ -1,21 +1,20 @@
1
- /* update manager button */
2
- /*#wpbody .search-form:not(.hide-placeholder):before {
3
- display: inline-block;
4
- content: 'Update manager';
5
- margin-left: 4px;
6
- padding: 4px 8px;
7
- position: relative;
8
- top: -3px;
9
- text-decoration: none;
10
- border: 1px solid #ccc;
11
- border-radius: 2px;
12
- background: #f7f7f7;
13
- text-shadow: none;
14
- font-weight: 600;
15
- font-size: 13px;
16
- line-height: normal;
17
- color: #0073aa;
18
- cursor: pointer;
19
- outline: 0;
20
- }*/
21
- /*# sourceMappingURL=themes.css.map */
1
+ /* update manager button */
2
+ /*#wpbody .search-form:not(.hide-placeholder):before {
3
+ display: inline-block;
4
+ content: 'Update manager';
5
+ margin-left: 4px;
6
+ padding: 4px 8px;
7
+ position: relative;
8
+ top: -3px;
9
+ text-decoration: none;
10
+ border: 1px solid #ccc;
11
+ border-radius: 2px;
12
+ background: #f7f7f7;
13
+ text-shadow: none;
14
+ font-weight: 600;
15
+ font-size: 13px;
16
+ line-height: normal;
17
+ color: #0073aa;
18
+ cursor: pointer;
19
+ outline: 0;
20
+ }*/
 
components/updates-manager/admin/assets/js/ajax-components.js CHANGED
@@ -59,15 +59,15 @@ jQuery(function($) {
59
 
60
  if( !response || !response.success ) {
61
  if( response.data.error_message ) {
62
- $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
63
  }
64
  return false;
65
  }
66
 
67
- /*var noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Settings successfully updated', 'success');
68
 
69
  setTimeout(function() {
70
- $.wbcr_factory_clearfy_224.app.hideNotice(noticeId);
71
  }, 5000);*/
72
  },
73
  error: function(xhr, ajaxOptions, thrownError) {
@@ -75,7 +75,7 @@ jQuery(function($) {
75
  console.log(xhr.responseText);
76
  console.log(thrownError);
77
 
78
- $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
79
  }
80
  });
81
  });
59
 
60
  if( !response || !response.success ) {
61
  if( response.data.error_message ) {
62
+ $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
63
  }
64
  return false;
65
  }
66
 
67
+ /*var noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Settings successfully updated', 'success');
68
 
69
  setTimeout(function() {
70
+ $.wbcr_factory_clearfy_227.app.hideNotice(noticeId);
71
  }, 5000);*/
72
  },
73
  error: function(xhr, ajaxOptions, thrownError) {
75
  console.log(xhr.responseText);
76
  console.log(thrownError);
77
 
78
+ $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
79
  }
80
  });
81
  });
components/updates-manager/admin/boot.php CHANGED
@@ -48,7 +48,7 @@ if ( ! defined( 'LOADING_UPDATES_MANAGER_AS_ADDON' ) ) {
48
  return $page_url;
49
  }
50
 
51
- add_filter( 'wbcr_factory_pages_432_imppage_rating_widget_url', 'wbcr_upm_rating_widget_url', 10, 2 );
52
 
53
  /**
54
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
48
  return $page_url;
49
  }
50
 
51
+ add_filter( 'wbcr_factory_pages_435_imppage_rating_widget_url', 'wbcr_upm_rating_widget_url', 10, 2 );
52
 
53
  /**
54
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/updates-manager/admin/includes/class-abstract-filters.php CHANGED
@@ -14,7 +14,7 @@ abstract class WUPM_AbstractFilters {
14
  protected $is_disable_translation_updates;
15
 
16
 
17
- function __construct( Wbcr_Factory432_Plugin $plugin ) {
18
  $this->plugin = $plugin;
19
  $this->load();
20
  }
14
  protected $is_disable_translation_updates;
15
 
16
 
17
+ function __construct( Wbcr_Factory436_Plugin $plugin ) {
18
  $this->plugin = $plugin;
19
  $this->load();
20
  }
components/updates-manager/admin/pages/class-page-advanced.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_AdvancedPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy224_PageBase {
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
- * @param \Wbcr_Factory432_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
72
  $this->menu_title = __( 'Advanced', 'webcraftic-updates-manager' );
73
 
74
  parent::__construct( $plugin );
@@ -79,8 +79,8 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy224_PageBase {
79
  *
80
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
81
  *
82
- * @param \Wbcr_Factory432_ScriptList $scripts
83
- * @param \Wbcr_Factory432_StyleList $styles
84
  */
85
  public function assets( $scripts, $styles ) {
86
  parent::assets( $scripts, $styles );
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory436_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
72
  $this->menu_title = __( 'Advanced', 'webcraftic-updates-manager' );
73
 
74
  parent::__construct( $plugin );
79
  *
80
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
81
  *
82
+ * @param \Wbcr_Factory436_ScriptList $scripts
83
+ * @param \Wbcr_Factory436_StyleList $styles
84
  */
85
  public function assets( $scripts, $styles ) {
86
  parent::assets( $scripts, $styles );
components/updates-manager/admin/pages/class-page-more-features.php CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_MoreFeaturesPage extends Wbcr_FactoryClearfy224_MoreFeaturesPage {
20
 
21
  }
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_MoreFeaturesPage extends Wbcr_FactoryClearfy227_MoreFeaturesPage {
20
 
21
  }
components/updates-manager/admin/pages/class-page-plugins.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_PluginsPage extends Wbcr_FactoryClearfy224_PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
@@ -83,9 +83,9 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy224_PageBase {
83
  *
84
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
85
  *
86
- * @param \Wbcr_Factory432_Plugin $plugin
87
  */
88
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
89
  $this->menu_title = __( 'Plugins', 'webcraftic-updates-manager' );
90
 
91
  parent::__construct( $plugin );
@@ -121,8 +121,8 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy224_PageBase {
121
  *
122
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
123
  *
124
- * @param \Wbcr_Factory432_ScriptList $scripts
125
- * @param \Wbcr_Factory432_StyleList $styles
126
  */
127
  public function assets( $scripts, $styles ) {
128
  parent::assets( $scripts, $styles );
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_PluginsPage extends Wbcr_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
83
  *
84
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
85
  *
86
+ * @param \Wbcr_Factory436_Plugin $plugin
87
  */
88
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
89
  $this->menu_title = __( 'Plugins', 'webcraftic-updates-manager' );
90
 
91
  parent::__construct( $plugin );
121
  *
122
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
123
  *
124
+ * @param \Wbcr_Factory436_ScriptList $scripts
125
+ * @param \Wbcr_Factory436_StyleList $styles
126
  */
127
  public function assets( $scripts, $styles ) {
128
  parent::assets( $scripts, $styles );
components/updates-manager/admin/pages/class-page-themes.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
- class WUPM_ThemesPage extends Wbcr_FactoryClearfy224_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -85,9 +85,9 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy224_PageBase {
85
  private $themes_update_filters = [];
86
 
87
  /**
88
- * @param Wbcr_Factory432_Plugin $plugin
89
  */
90
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
91
  $this->menu_title = __( 'Themes', 'webcraftic-updates-manager' );
92
 
93
  parent::__construct( $plugin );
@@ -123,7 +123,7 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy224_PageBase {
123
  *
124
  * @since 1.0.0
125
  * @return void
126
- * @see FactoryPages432_AdminPage
127
  *
128
  */
129
  public function assets( $scripts, $styles ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
+ class WUPM_ThemesPage extends Wbcr_FactoryClearfy227_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
85
  private $themes_update_filters = [];
86
 
87
  /**
88
+ * @param Wbcr_Factory436_Plugin $plugin
89
  */
90
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
91
  $this->menu_title = __( 'Themes', 'webcraftic-updates-manager' );
92
 
93
  parent::__construct( $plugin );
123
  *
124
  * @since 1.0.0
125
  * @return void
126
+ * @see FactoryPages435_AdminPage
127
  *
128
  */
129
  public function assets( $scripts, $styles ) {
components/updates-manager/admin/pages/class-page-updates.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
- class WUPM_UpdatesPage extends Wbcr_FactoryClearfy224_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -51,9 +51,9 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy224_PageBase {
51
  *
52
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
53
  *
54
- * @param \Wbcr_Factory432_Plugin $plugin
55
  */
56
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
57
  $this->menu_title = __( 'Updates manager', 'webcraftic-updates-manager' );
58
  $this->page_menu_short_description = __( 'Manage all site updates', 'webcraftic-updates-manager' );
59
 
@@ -85,8 +85,8 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy224_PageBase {
85
  *
86
  * @author Alexander Kovalev <alex.kovalevv@gmail.com> *
87
  *
88
- * @param \Wbcr_Factory432_ScriptList $scripts
89
- * @param \Wbcr_Factory432_StyleList $styles
90
  */
91
  public function assets( $scripts, $styles ) {
92
  parent::assets( $scripts, $styles );
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
+ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy227_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
51
  *
52
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
53
  *
54
+ * @param \Wbcr_Factory436_Plugin $plugin
55
  */
56
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
57
  $this->menu_title = __( 'Updates manager', 'webcraftic-updates-manager' );
58
  $this->page_menu_short_description = __( 'Manage all site updates', 'webcraftic-updates-manager' );
59
 
85
  *
86
  * @author Alexander Kovalev <alex.kovalevv@gmail.com> *
87
  *
88
+ * @param \Wbcr_Factory436_ScriptList $scripts
89
+ * @param \Wbcr_Factory436_StyleList $styles
90
  */
91
  public function assets( $scripts, $styles ) {
92
  parent::assets( $scripts, $styles );
components/updates-manager/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WUPM_Plugin extends Wbcr_Factory432_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory432_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WUPM_Plugin extends Wbcr_Factory432_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory432_Plugin|\WUPM_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WUPM_Plugin extends Wbcr_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory436_Plugin|\WUPM_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
components/updates-manager/includes/classes/class-configurate-updates.php CHANGED
@@ -12,7 +12,7 @@ require_once WUPM_PLUGIN_DIR . '/admin/includes/class-plugin-filters.php';
12
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
- class WUPM_ConfigUpdates extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
  /**
12
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
+ class WUPM_ConfigUpdates extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
  /**
components/updates-manager/migrations/010008.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WUPMUpdate010008 extends Wbcr_Factory432_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WUPMUpdate010008 extends Wbcr_Factory436_Update {
8
 
9
  public function install()
10
  {
components/updates-manager/webcraftic-updates-manager.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: webcraftic-updates-manager
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_432_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -64,15 +64,15 @@ $wupm_plugin_info = array(
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
- array( 'libs/factory/bootstrap', 'factory_bootstrap_433', 'admin' ),
68
- array( 'libs/factory/forms', 'factory_forms_430', 'admin' ),
69
- array( 'libs/factory/pages', 'factory_pages_432', 'admin' ),
70
- array( 'libs/factory/clearfy', 'factory_clearfy_224', 'all' ),
71
- array( 'libs/factory/adverts', 'factory_adverts_112', 'admin')
72
  )
73
  );
74
 
75
- $wupm_compatibility = new Wbcr_Factory432_Requirements( __FILE__, array_merge( $wupm_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WUPM_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
8
  * Text Domain: webcraftic-updates-manager
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_436_VERSION
12
  */
13
 
14
  // Exit if accessed directly
64
 
65
  // FRAMEWORK MODULES
66
  'load_factory_modules' => array(
67
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_436', 'admin' ),
68
+ array( 'libs/factory/forms', 'factory_forms_433', 'admin' ),
69
+ array( 'libs/factory/pages', 'factory_pages_435', 'admin' ),
70
+ array( 'libs/factory/clearfy', 'factory_clearfy_227', 'all' ),
71
+ array( 'libs/factory/adverts', 'factory_adverts_114', 'admin')
72
  )
73
  );
74
 
75
+ $wupm_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $wupm_plugin_info, array(
76
  'plugin_already_activate' => defined( 'WUPM_PLUGIN_ACTIVE' ),
77
  'required_php_version' => '5.4',
78
  'required_wp_version' => '4.2.0',
includes/boot.php CHANGED
@@ -54,7 +54,7 @@
54
  * @since 1.1.3 - добавлен
55
  * @since 1.1.4 - является устаревшим
56
  */
57
- $menu_items = wbcr_factory_432_apply_filters_deprecated( 'wbcr_clearfy_admin_bar_menu_items', [ $menu_items ], '1.4.0', 'wbcr/clearfy/adminbar_menu_items' );
58
 
59
  /**
60
  * @since 1.1.3 - добавлен
54
  * @since 1.1.3 - добавлен
55
  * @since 1.1.4 - является устаревшим
56
  */
57
+ $menu_items = wbcr_factory_436_apply_filters_deprecated( 'wbcr_clearfy_admin_bar_menu_items', [ $menu_items ], '1.4.0', 'wbcr/clearfy/adminbar_menu_items' );
58
 
59
  /**
60
  * @since 1.1.3 - добавлен
includes/class.plugin.php CHANGED
@@ -12,11 +12,11 @@ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
- class WCL_Plugin extends Wbcr_Factory432_Plugin {
16
 
17
  /**
18
  * @see self::app()
19
- * @var Wbcr_Factory432_Plugin
20
  */
21
  private static $app;
22
 
@@ -47,8 +47,8 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
47
 
48
  if( defined('DOING_AJAX') && DOING_AJAX ) {
49
  require(WCL_PLUGIN_DIR . '/admin/ajax/configurate.php');
 
50
  require(WCL_PLUGIN_DIR . '/admin/ajax/import-settings.php');
51
- require(WCL_PLUGIN_DIR . '/admin/ajax/install-addons.php');
52
  }
53
 
54
  require_once(WCL_PLUGIN_DIR . '/admin/includes/compatibility.php');
@@ -71,13 +71,26 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
71
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
72
  * классам.
73
  *
74
- * @return \Wbcr_Factory432_Plugin|\WCL_Plugin
75
  */
76
  public static function app()
77
  {
78
  return self::$app;
79
  }
80
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
 
82
  /**
83
  * Выполняет php сценарии, когда все Wordpress плагины будут загружены
@@ -152,6 +165,7 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
152
  require_once(WCL_PLUGIN_DIR . '/admin/pages/class-page.php');
153
 
154
  try {
 
155
  $this->registerPage('WCL_QuickStartPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-quick-start.php');
156
  $this->registerPage('WCL_AdvancedPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-advanced.php');
157
  $this->registerPage('WCL_PerformancePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-performance.php');
@@ -165,7 +179,7 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
165
  $this->registerPage('WCL_TitanSecurityPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-defence-titan.php');
166
  }
167
 
168
- if( defined('WIO_PLUGIN_ACTIVE') && !wrio_is_clearfy_license_activate() ) {
169
  $this->registerPage('WCL_ComponentsLicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components-license.php');
170
  }
171
 
@@ -230,21 +244,7 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
230
  */
231
  public function isActivateComponent($component_name)
232
  {
233
- if( !is_string($component_name) ) {
234
- return false;
235
- }
236
-
237
- $deactivate_components = $this->getPopulateOption('deactive_preinstall_components', []);
238
-
239
- if( !is_array($deactivate_components) ) {
240
- $deactivate_components = [];
241
- }
242
-
243
- if( $deactivate_components && in_array($component_name, $deactivate_components) ) {
244
- return false;
245
- }
246
-
247
- return true;
248
  }
249
 
250
  /**
@@ -254,22 +254,13 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
254
  */
255
  public function deactivateComponent($component_name)
256
  {
257
- if( !$this->isActivateComponent($component_name) ) {
258
  return true;
259
  }
260
 
261
  do_action('wbcr_clearfy_pre_deactivate_component', $component_name);
262
 
263
- $deactivate_components = $this->getPopulateOption('deactive_preinstall_components', []);
264
-
265
- if( !empty($deactivate_components) && is_array($deactivate_components) ) {
266
- $deactivate_components[] = $component_name;
267
- } else {
268
- $deactivate_components = [];
269
- $deactivate_components[] = $component_name;
270
- }
271
-
272
- $this->updatePopulateOption('deactive_preinstall_components', $deactivate_components);
273
 
274
  do_action('wbcr_clearfy_deactivated_component', $component_name);
275
 
@@ -283,26 +274,13 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
283
  */
284
  public function activateComponent($component_name)
285
  {
286
- if( $this->isActivateComponent($component_name) ) {
287
  return true;
288
  }
289
 
290
  do_action('wbcr_clearfy_pre_activate_component', $component_name);
291
 
292
- $deactivate_components = $this->getPopulateOption('deactive_preinstall_components', []);
293
-
294
- if( !empty($deactivate_components) && is_array($deactivate_components) ) {
295
- $index = array_search($component_name, $deactivate_components);
296
- unset($deactivate_components[$index]);
297
- }
298
-
299
- if( empty($deactivate_components) ) {
300
- $this->deletePopulateOption('deactive_preinstall_components');
301
- } else {
302
- $this->updatePopulateOption('deactive_preinstall_components', $deactivate_components);
303
- }
304
-
305
- return true;
306
  }
307
 
308
  /**
@@ -312,13 +290,11 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
312
  * @param $slug
313
  * param $premium
314
  *
315
- * @return WCL_InstallPluginsButton
316
  */
317
  public function getInstallComponentsButton($component_type, $slug)
318
  {
319
- require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
320
-
321
- return new WCL_InstallPluginsButton($component_type, $slug);
322
  }
323
 
324
  /**
@@ -327,13 +303,10 @@ class WCL_Plugin extends Wbcr_Factory432_Plugin {
327
  * @param $component_type
328
  * @param $slug
329
  *
330
- * @return WCL_InstallPluginsButton
331
  */
332
  public function getDeleteComponentsButton($component_type, $slug)
333
  {
334
- require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.install-plugins-button.php';
335
- require_once WCL_PLUGIN_DIR . '/admin/includes/classes/class.delete-plugins-button.php';
336
-
337
- return new WCL_DeletePluginsButton($component_type, $slug);
338
  }
339
  }
12
  exit;
13
  }
14
 
15
+ class WCL_Plugin extends Wbcr_Factory436_Plugin {
16
 
17
  /**
18
  * @see self::app()
19
+ * @var Wbcr_Factory436_Plugin
20
  */
21
  private static $app;
22
 
47
 
48
  if( defined('DOING_AJAX') && DOING_AJAX ) {
49
  require(WCL_PLUGIN_DIR . '/admin/ajax/configurate.php');
50
+ require(WCL_PLUGIN_DIR . '/admin/ajax/google-page-speed.php');
51
  require(WCL_PLUGIN_DIR . '/admin/ajax/import-settings.php');
 
52
  }
53
 
54
  require_once(WCL_PLUGIN_DIR . '/admin/includes/compatibility.php');
71
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
72
  * классам.
73
  *
74
+ * @return \Wbcr_Factory436_Plugin|\WCL_Plugin
75
  */
76
  public static function app()
77
  {
78
  return self::$app;
79
  }
80
 
81
+ /**
82
+ * Метод проверяет активацию премиум плагина и наличие действующего лицензионнного ключа
83
+ *
84
+ * @return bool
85
+ */
86
+ public function is_premium()
87
+ {
88
+ if( $this->premium->is_active() && $this->premium->is_activate() && $this->premium->is_install_package() ) {
89
+ return true;
90
+ } else {
91
+ return false;
92
+ }
93
+ }
94
 
95
  /**
96
  * Выполняет php сценарии, когда все Wordpress плагины будут загружены
165
  require_once(WCL_PLUGIN_DIR . '/admin/pages/class-page.php');
166
 
167
  try {
168
+ $this->registerPage('WCL_Setup', WCL_PLUGIN_DIR . '/admin/pages/setup/class-pages-setup.php');
169
  $this->registerPage('WCL_QuickStartPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-quick-start.php');
170
  $this->registerPage('WCL_AdvancedPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-advanced.php');
171
  $this->registerPage('WCL_PerformancePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-performance.php');
179
  $this->registerPage('WCL_TitanSecurityPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-defence-titan.php');
180
  }
181
 
182
+ if( defined('WRIO_PLUGIN_ACTIVE') && !wrio_is_clearfy_license_activate() ) {
183
  $this->registerPage('WCL_ComponentsLicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components-license.php');
184
  }
185
 
244
  */
245
  public function isActivateComponent($component_name)
246
  {
247
+ return $this->is_activate_component($component_name);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
248
  }
249
 
250
  /**
254
  */
255
  public function deactivateComponent($component_name)
256
  {
257
+ if( !$this->is_activate_component($component_name) ) {
258
  return true;
259
  }
260
 
261
  do_action('wbcr_clearfy_pre_deactivate_component', $component_name);
262
 
263
+ $this->deactivate_component($component_name);
 
 
 
 
 
 
 
 
 
264
 
265
  do_action('wbcr_clearfy_deactivated_component', $component_name);
266
 
274
  */
275
  public function activateComponent($component_name)
276
  {
277
+ if( $this->is_activate_component($component_name) ) {
278
  return true;
279
  }
280
 
281
  do_action('wbcr_clearfy_pre_activate_component', $component_name);
282
 
283
+ return $this->activate_component($component_name);
 
 
 
 
 
 
 
 
 
 
 
 
 
284
  }
285
 
286
  /**
290
  * @param $slug
291
  * param $premium
292
  *
293
+ * @return \WBCR\Factory_436\Components\Install_Button
294
  */
295
  public function getInstallComponentsButton($component_type, $slug)
296
  {
297
+ return $this->get_install_component_button($component_type, $slug);
 
 
298
  }
299
 
300
  /**
303
  * @param $component_type
304
  * @param $slug
305
  *
306
+ * @return \WBCR\Factory_436\Components\Delete_Button
307
  */
308
  public function getDeleteComponentsButton($component_type, $slug)
309
  {
310
+ return $this->get_delete_component_button($component_type, $slug);
 
 
 
311
  }
312
  }
includes/classes/class.configurate-advanced.php CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  exit;
12
  }
13
 
14
- class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy224_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
@@ -126,8 +126,7 @@ class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy224_Configurate {
126
  }
127
  break;
128
  case 'on_dashboard_page':
129
- global $pagenow;
130
- if ( 'index.php' === $pagenow ) {
131
  wp_deregister_script( 'heartbeat' );
132
  }
133
  break;
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy227_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
126
  }
127
  break;
128
  case 'on_dashboard_page':
129
+ if ( is_admin() ) {
 
130
  wp_deregister_script( 'heartbeat' );
131
  }
132
  break;
includes/classes/class.configurate-google-performance.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WCL_ConfigGooglePerformance extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigGooglePerformance extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-performance.php CHANGED
@@ -8,61 +8,63 @@
8
  */
9
 
10
  // Exit if accessed directly
11
- if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
19
  */
20
- public function __construct( WCL_Plugin $plugin ) {
21
- parent::__construct( $plugin );
 
22
 
23
  $this->plugin = $plugin;
24
  }
25
 
26
- public function registerActionsAndFilters() {
27
- if ( $this->getPopulateOption( 'disable_emoji' ) ) {
28
- add_action( 'init', [ $this, 'disableEmojis' ] );
 
29
  }
30
 
31
- if ( $this->getPopulateOption( 'disable_embeds' ) ) {
32
- add_action( 'init', [ $this, 'disableEmbeds' ] );
33
  }
34
 
35
- if ( $this->getPopulateOption( 'disable_json_rest_api' ) ) {
36
  $this->removeRestApi();
37
  }
38
 
39
- if ( ( $this->getPopulateOption( 'revision_limit' ) || $this->getPopulateOption( 'revisions_disable' ) ) ) {
40
- add_filter( 'wp_revisions_to_keep', [ $this, 'revisions_to_keep' ], 10, 2 );
41
 
42
- if ( $this->getPopulateOption( 'revisions_disable' ) ) {
43
- add_action( 'admin_init', [ $this, 'disable_revision_support' ] );
44
  }
45
  }
46
 
47
- if ( ! is_admin() ) {
48
- if ( $this->getPopulateOption( 'remove_jquery_migrate' ) ) {
49
- add_filter( 'wp_default_scripts', [ $this, 'removeJqueryMigrate' ] );
50
  }
51
 
52
- if ( $this->getPopulateOption( 'disable_feed' ) ) {
53
  $this->disableFeed();
54
  }
55
 
56
- if ( $this->getPopulateOption( 'disable_dashicons' ) ) {
57
- add_action( 'wp_print_styles', [ $this, 'disableDashicons' ], - 1 );
58
  }
59
 
60
- if ( $this->getPopulateOption( 'remove_xfn_link' ) ) {
61
- add_action( 'wp_loaded', [ $this, 'htmlCompressor' ] );
62
  }
63
 
64
- if ( $this->getPopulateOption( 'remove_recent_comments_style' ) ) {
65
- add_action( 'widgets_init', [ $this, 'removeRecentCommentsStyle' ] );
66
  }
67
 
68
  /**
@@ -70,45 +72,46 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
70
  * Hook into the style loader and remove the version information.
71
  */
72
 
73
- if ( $this->getPopulateOption( 'remove_style_version' ) ) {
74
- add_filter( 'style_loader_src', [ $this, 'hideWordpressVersionInScript' ], 9999, 2 );
75
  }
76
 
77
  /**
78
  * Hook into the script loader and remove the version information.
79
  */
80
 
81
- if ( $this->getPopulateOption( 'remove_js_version' ) ) {
82
- add_filter( 'script_loader_src', [ $this, 'hideWordpressVersionInScript' ], 9999, 2 );
83
  }
84
 
85
  $this->remove_tags_from_head();
86
  } else {
87
- if ( $this->getPopulateOption( 'disable_post_autosave' ) ) {
88
- add_action( 'wp_print_scripts', [ $this, 'disable_posts_autosave' ] );
89
  }
90
  }
91
 
92
- if ( $this->getPopulateOption( 'gutenberg_autosave_control' ) ) {
93
- add_action( 'admin_init', [ $this, 'register_gutenberg_autosave_settings' ] );
94
- add_action( 'rest_api_init', [ $this, 'gutenberg_autosave_rest_mapping' ] );
95
- add_action( 'enqueue_block_editor_assets', [ $this, 'enqueue_gutenberg_autosave_assets' ] );
96
  }
97
  }
98
 
99
  /**
100
  * Gutenberg assets.
101
  */
102
- public function enqueue_gutenberg_autosave_assets() {
 
103
  /**
104
  * Styles.
105
  */
106
- wp_enqueue_style( 'wbcr-clearfy-gutenberg-autosave', WCL_PLUGIN_URL . '/admin/assets/css/gutenberg-autosave-control.css', [], $this->plugin->getPluginVersion(), 'all' );
107
 
108
  /**
109
  * Scripts.
110
  */
111
- wp_enqueue_script( 'wbcr-clearfy-gutenberg-autosave', WCL_PLUGIN_URL . '/admin/assets/gutenberg/build/index.build.js', [
112
  'react',
113
  'wp-api-fetch',
114
  'wp-components',
@@ -117,15 +120,16 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
117
  'wp-edit-post',
118
  'wp-i18n',
119
  'wp-plugins',
120
- ], $this->plugin->getPluginVersion(), true );
121
  // todo: It is necessary to cteate the localization for the Gutenberg widget, which is responsible for the selection of AutoSave intveraval.
122
  }
123
 
124
  /**
125
  * Register settings for Gutenberg
126
  */
127
- public function register_gutenberg_autosave_settings() {
128
- register_setting( 'clearfy-gutenberg-autosave', $this->plugin->getPrefix() . 'autosave_interval', [ 'default' => 99999 ] );
 
129
  }
130
 
131
  /**
@@ -133,8 +137,9 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
133
  *
134
  * @return int
135
  */
136
- public function get_gutenberg_autosave_interval() {
137
- return (int) $this->getOption( 'gutenberg_autosave_interval', 99999 );
 
138
  }
139
 
140
  /**
@@ -144,47 +149,55 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
144
  *
145
  * @return mixed
146
  */
147
- public function set_get_gutenberg_autosave_interval( \WP_REST_Request $request ) {
148
- if ( ! isset( $request['interval'] ) ) {
149
- return new \WP_Error( 'no_interval', __( 'No interval specified', 'clearfy' ), [ 'status' => 400 ] );
 
150
  }
151
 
152
- return $this->updateOption( 'gutenberg_autosave_interval', (int) $request['interval'] );
 
 
153
  }
154
 
155
  /**
156
  * Setup REST API for managing interval option. Сreates an endpoint
157
  * for working with autosave in gutenberg editor.
158
  */
159
- public function gutenberg_autosave_rest_mapping() {
160
- register_rest_route( 'clearfy-gutenberg-autosave/v1', '/interval', [
 
161
  [
162
- 'methods' => \WP_REST_Server::READABLE,
163
- 'callback' => [ $this, 'get_gutenberg_autosave_interval' ],
 
 
 
164
  ],
165
  [
166
- 'methods' => \WP_REST_Server::CREATABLE,
167
- 'callback' => [ $this, 'set_get_gutenberg_autosave_interval' ],
168
- 'args' => [
169
  'interval' => [
170
- 'validate_callback' => function ( $param, $request, $key ) {
171
- return is_numeric( $param );
172
  },
173
- ],
174
  ],
175
  'permission_callback' => function () {
176
  return WCL_Plugin::app()->currentUserCan();
177
- },
178
  ],
179
- ] );
180
  }
181
 
182
 
183
  /**
184
  * Disables automatic saving drafts.
185
  */
186
- public function disable_posts_autosave() {
187
- wp_deregister_script( 'autosave' );
 
188
  }
189
 
190
  /**
@@ -192,15 +205,16 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
192
  *
193
  * @since 1.5.1
194
  */
195
- public function disable_revision_support() {
 
196
  $post_types = get_post_types();
197
 
198
- if ( ! is_array( $post_types ) || empty( $post_types ) ) {
199
  return;
200
  }
201
 
202
- foreach ( $post_types as $post_type ) {
203
- remove_post_type_support( $post_type, 'revisions' );
204
  }
205
  }
206
 
@@ -210,17 +224,18 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
210
  * @since 0.9.5
211
  */
212
 
213
- public function revisions_to_keep( $num, $post ) {
214
- $revision_limit = $this->getPopulateOption( 'revision_limit', null );
215
- if ( $revision_limit ) {
216
- $num = (int) $revision_limit;
 
217
  }
218
 
219
- if ( 'default' == $revision_limit ) {
220
  $num = true;
221
  }
222
 
223
- if ( $this->getPopulateOption( 'revisions_disable' ) ) {
224
  $num = 0;
225
  }
226
 
@@ -235,17 +250,18 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
235
  *
236
  * @return string
237
  */
238
- public function hideWordpressVersionInScript( $src, $handle ) {
239
- if ( is_user_logged_in() ) {
 
240
  return $src;
241
  }
242
 
243
- $filename_arr = explode( '?', basename( $src ) );
244
- $exclude_file_list = $this->getPopulateOption( 'remove_version_exclude', '' );
245
- $exclude_files_arr = array_map( 'trim', explode( PHP_EOL, $exclude_file_list ) );
246
 
247
- if ( strpos( $src, 'ver=' ) && ! in_array( str_replace( '?' . $filename_arr[1], '', $src ), $exclude_files_arr, true ) ) {
248
- $src = remove_query_arg( 'ver', $src );
249
  }
250
 
251
  return $src;
@@ -254,26 +270,28 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
254
  /**
255
  * Disable dashicons for all but the auth user
256
  */
257
- public function disableDashicons() {
258
- if ( ! is_admin_bar_showing() && ! is_customize_preview() ) {
259
- wp_deregister_style( 'dashicons' );
 
260
  }
261
  }
262
 
263
  /**
264
  * Disable the emoji's
265
  */
266
- public function disableEmojis() {
267
- remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
268
- remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
269
- remove_action( 'wp_print_styles', 'print_emoji_styles' );
270
- remove_action( 'admin_print_styles', 'print_emoji_styles' );
271
- remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
272
- remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
273
- remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
274
- add_filter( 'emoji_svg_url', '__return_false' );
275
- add_filter( 'tiny_mce_plugins', [ $this, 'disableEmojisTinymce' ] );
276
- add_filter( 'wp_resource_hints', [ $this, 'disableEmojisRemoveDnsPrefetch' ], 10, 2 );
 
277
  }
278
 
279
  /**
@@ -283,9 +301,10 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
283
  *
284
  * @return array Difference betwen the two arrays
285
  */
286
- function disableEmojisTinymce( $plugins ) {
287
- if ( is_array( $plugins ) ) {
288
- return array_diff( $plugins, [ 'wpemoji' ] );
 
289
  }
290
 
291
  return [];
@@ -294,20 +313,21 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
294
  /**
295
  * Remove emoji CDN hostname from DNS prefetching hints.
296
  *
297
- * @param array $urls URLs to print for resource hints.
298
- * @param string $relation_type The relation type the URLs are printed for.
299
  *
300
  * @return array Difference betwen the two arrays.
301
  */
302
- function disableEmojisRemoveDnsPrefetch( $urls, $relation_type ) {
 
303
 
304
- if ( 'dns-prefetch' == $relation_type ) {
305
 
306
  // Strip out any URLs referencing the WordPress.org emoji location
307
  $emoji_svg_url_bit = 'https://s.w.org/images/core/emoji/';
308
- foreach ( $urls as $key => $url ) {
309
- if ( strpos( $url, $emoji_svg_url_bit ) !== false ) {
310
- unset( $urls[ $key ] );
311
  }
312
  }
313
  }
@@ -318,42 +338,44 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
318
  /**
319
  * Disables the WP REST API for visitors not logged into WordPress.
320
  */
321
- public function removeRestApi() {
 
322
  /*
323
  Disable REST API link in HTTP headers
324
  Link: <https://example.com/wp-json/>; rel="https://api.w.org/"
325
  */
326
- remove_action( 'template_redirect', 'rest_output_link_header', 11 );
327
 
328
  /*
329
  Disable REST API links in HTML <head>
330
  <link rel='https://api.w.org/' href='https://example.com/wp-json/' />
331
  */
332
- remove_action( 'wp_head', 'rest_output_link_wp_head', 10 );
333
- remove_action( 'xmlrpc_rsd_apis', 'rest_output_rsd' );
334
 
335
  /*
336
  Disable REST API
337
  */
338
- if ( version_compare( get_bloginfo( 'version' ), '4.7', '>=' ) ) {
339
- add_filter( 'rest_authentication_errors', [ $this, 'disableWpRestApi' ] );
340
  } else {
341
  // REST API 1.x
342
- add_filter( 'json_enabled', '__return_false' );
343
- add_filter( 'json_jsonp_enabled', '__return_false' );
344
 
345
  // REST API 2.x
346
- add_filter( 'rest_enabled', '__return_false' );
347
- add_filter( 'rest_jsonp_enabled', '__return_false' );
348
  }
349
  }
350
 
351
- public function disableWpRestApi( $access ) {
352
- if ( ! is_user_logged_in() ) {
 
353
 
354
- $message = apply_filters( 'disable_wp_rest_api_error', __( 'REST API restricted to authenticated users.', 'clearfy' ) );
355
 
356
- return new WP_Error( 'rest_login_required', $message, [ 'status' => rest_authorization_required_code() ] );
357
  }
358
 
359
  return $access;
@@ -361,75 +383,80 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
361
 
362
 
363
  // todo: не работает должным образом, проверить
364
- public function removeRecentCommentsStyle() {
 
365
  global $wp_widget_factory;
366
 
367
- $widget_recent_comments = isset( $wp_widget_factory->widgets['WP_Widget_Recent_Comments'] ) ? $wp_widget_factory->widgets['WP_Widget_Recent_Comments'] : null;
368
 
369
- if ( ! empty( $widget_recent_comments ) ) {
370
- remove_action( 'wp_head', [
371
  $wp_widget_factory->widgets['WP_Widget_Recent_Comments'],
372
  'recent_comments_style'
373
- ] );
374
  }
375
  }
376
 
377
  /**
378
  * Disable feeds
379
  */
380
- public function disableFeed() {
381
- add_action( 'wp_loaded', [ $this, 'removeFeedLinks' ] );
382
- add_action( 'template_redirect', [ $this, 'filterFeeds' ], 1 );
383
- add_filter( 'bbp_request', [ $this, 'filterBbpFeeds' ], 9 );
 
384
  }
385
 
386
 
387
- public function removeFeedLinks() {
388
- remove_action( 'wp_head', 'feed_links', 2 );
389
- remove_action( 'wp_head', 'feed_links_extra', 3 );
 
390
  }
391
 
392
- public function filterFeeds() {
393
- if ( ! is_feed() || is_404() ) {
 
394
  return;
395
  }
396
 
397
  $this->disabled_feed_behaviour();
398
  }
399
 
400
- public function disabled_feed_behaviour() {
 
401
  global $wp_rewrite, $wp_query;
402
 
403
- if ( $this->getPopulateOption( 'disabled_feed_behaviour', 'redirect_301' ) == 'redirect_404' ) {
404
  $wp_query->is_feed = false;
405
  $wp_query->set_404();
406
- status_header( 404 );
407
  // Override the xml+rss header set by WP in send_headers
408
- header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );
409
  } else {
410
- if ( isset( $_GET['feed'] ) ) {
411
- wp_redirect( esc_url_raw( remove_query_arg( 'feed' ) ), 301 );
412
  exit;
413
  }
414
 
415
- if ( 'old' !== get_query_var( 'feed' ) ) { // WP redirects these anyway, and removing the query var will confuse it thoroughly
416
- set_query_var( 'feed', '' );
417
  }
418
 
419
  redirect_canonical(); // Let WP figure out the appropriate redirect URL.
420
 
421
  // Still here? redirect_canonical failed to redirect, probably because of a filter. Try the hard way.
422
- $struct = ( ! is_singular() && is_comment_feed() ) ? $wp_rewrite->get_comment_feed_permastruct() : $wp_rewrite->get_feed_permastruct();
423
 
424
- $struct = preg_quote( $struct, '#' );
425
- $struct = str_replace( '%feed%', '(\w+)?', $struct );
426
- $struct = preg_replace( '#/+#', '/', $struct );
427
- $requested_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
428
 
429
- $new_url = preg_replace( '#' . $struct . '/?$#', '', $requested_url );
430
 
431
- if ( $new_url !== $requested_url ) {
432
- wp_redirect( $new_url, 301 );
433
  exit;
434
  }
435
  }
@@ -442,18 +469,19 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
442
  *
443
  * @return array
444
  */
445
- public function filterBbpFeeds( $query_vars ) {
 
446
  // Looking at a feed
447
- if ( isset( $query_vars['feed'] ) ) {
448
 
449
  // Forum/Topic/Reply Feed
450
- if ( isset( $query_vars['post_type'] ) ) {
451
 
452
  // Matched post type
453
- $post_type = false;
454
  $post_types = [];
455
 
456
- if ( function_exists( 'bbp_get_forum_post_type' ) && function_exists( 'bbp_get_topic_post_type' ) && function_exists( 'bbp_get_reply_post_type' ) ) // Post types to check
457
  {
458
  $post_types = [
459
  bbp_get_forum_post_type(),
@@ -463,18 +491,18 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
463
  }
464
 
465
  // Cast query vars as array outside of foreach loop
466
- $qv_array = (array) $query_vars['post_type'];
467
 
468
  // Check if this query is for a bbPress post type
469
- foreach ( $post_types as $bbp_pt ) {
470
- if ( in_array( $bbp_pt, $qv_array, true ) ) {
471
  $post_type = $bbp_pt;
472
  break;
473
  }
474
  }
475
 
476
  // Looking at a bbPress post type
477
- if ( ! empty( $post_type ) ) {
478
  $this->disabled_feed_behaviour();
479
  }
480
  }
@@ -487,28 +515,29 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
487
  /**
488
  * Remove unused tags from head
489
  */
490
- public function remove_tags_from_head() {
 
491
 
492
- if ( $this->getPopulateOption( 'remove_rsd_link' ) ) {
493
- remove_action( 'wp_head', 'rsd_link' );
494
  }
495
 
496
- if ( $this->getPopulateOption( 'remove_wlw_link' ) ) {
497
- remove_action( 'wp_head', 'wlwmanifest_link' );
498
  }
499
 
500
- if ( $this->getPopulateOption( 'remove_adjacent_posts_link' ) ) {
501
- remove_action( 'wp_head', 'adjacent_posts_rel_link' );
502
- remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head' );
503
  }
504
 
505
- if ( $this->getPopulateOption( 'remove_shortlink_link' ) ) {
506
- remove_action( 'wp_head', 'wp_shortlink_wp_head' );
507
- remove_action( 'template_redirect', 'wp_shortlink_header', 11 );
508
  }
509
 
510
- if ( $this->getPopulateOption( 'remove_xfn_link' ) ) {
511
- add_filter( 'avf_profile_head_tag', [ $this, 'removeXfnLink' ] );
512
  }
513
  }
514
 
@@ -518,7 +547,8 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
518
  * http://gmpg.org/xfn/
519
  * @return bool
520
  */
521
- public function removeXfnLink() {
 
522
  return false;
523
  }
524
 
@@ -527,103 +557,109 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy224_Configurate {
527
  *
528
  * @param WP_Scripts $scripts
529
  */
530
- public function removeJqueryMigrate( &$scripts ) {
531
- $scripts->remove( 'jquery' );
532
- $scripts->add( 'jquery', false, [ 'jquery-core' ], '1.12.4' );
 
533
  }
534
 
535
  // Disable Embeds
536
- public function disableEmbeds() {
 
537
  global $wp, $wp_embed;
538
 
539
- $wp->public_query_vars = array_diff( $wp->public_query_vars, [ 'embed' ] );
540
- remove_filter( 'the_content', [ $wp_embed, 'autoembed' ], 8 );
541
 
542
  // Remove content feed filter
543
- remove_filter( 'the_content_feed', '_oembed_filter_feed_content' );
544
 
545
  // Abort embed libraries loading
546
- remove_action( 'plugins_loaded', 'wp_maybe_load_embeds', 0 );
547
 
548
  // No auto-embedding support
549
- add_filter( 'pre_option_embed_autourls', '__return_false' );
550
 
551
  // Avoid oEmbed auto discovery
552
- add_filter( 'embed_oembed_discover', '__return_false' );
553
 
554
  // Remove REST API related hooks
555
- remove_action( 'rest_api_init', 'wp_oembed_register_route' );
556
- remove_filter( 'rest_pre_serve_request', '_oembed_rest_pre_serve_request', 10 );
557
 
558
  // Remove header actions
559
- remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
560
- remove_action( 'wp_head', 'wp_oembed_add_host_js' );
561
-
562
- remove_action( 'embed_head', 'enqueue_embed_scripts', 1 );
563
- remove_action( 'embed_head', 'print_emoji_detection_script' );
564
- remove_action( 'embed_head', 'print_embed_styles' );
565
- remove_action( 'embed_head', 'wp_print_head_scripts', 20 );
566
- remove_action( 'embed_head', 'wp_print_styles', 20 );
567
- remove_action( 'embed_head', 'wp_no_robots' );
568
- remove_action( 'embed_head', 'rel_canonical' );
569
- remove_action( 'embed_head', 'locale_stylesheet', 30 );
570
-
571
- remove_action( 'embed_content_meta', 'print_embed_comments_button' );
572
- remove_action( 'embed_content_meta', 'print_embed_sharing_button' );
573
-
574
- remove_action( 'embed_footer', 'print_embed_sharing_dialog' );
575
- remove_action( 'embed_footer', 'print_embed_scripts' );
576
- remove_action( 'embed_footer', 'wp_print_footer_scripts', 20 );
577
-
578
- remove_filter( 'excerpt_more', 'wp_embed_excerpt_more', 20 );
579
- remove_filter( 'the_excerpt_embed', 'wptexturize' );
580
- remove_filter( 'the_excerpt_embed', 'convert_chars' );
581
- remove_filter( 'the_excerpt_embed', 'wpautop' );
582
- remove_filter( 'the_excerpt_embed', 'shortcode_unautop' );
583
- remove_filter( 'the_excerpt_embed', 'wp_embed_excerpt_attachment' );
584
 
585
  // Remove data and results filters
586
- remove_filter( 'oembed_dataparse', 'wp_filter_oembed_result', 10 );
587
- remove_filter( 'oembed_response_data', 'get_oembed_response_data_rich', 10 );
588
- remove_filter( 'pre_oembed_result', 'wp_filter_pre_oembed_result', 10 );
589
 
590
  // WooCommerce embeds in short description
591
- remove_filter( 'woocommerce_short_description', 'wc_do_oembeds' );
592
 
593
- add_filter( 'tiny_mce_plugins', [ $this, 'disableEmbedsTinyMcePlugin' ] );
594
- add_filter( 'rewrite_rules_array', [ $this, 'disableEmbedsRewrites' ] );
595
  }
596
 
597
- public function disableEmbedsTinyMcePlugin( $plugins ) {
598
- return array_diff( $plugins, [ 'wpembed', 'wpview' ] );
 
599
  }
600
 
601
- public function disableEmbedsRewrites( $rules ) {
 
602
  $new_rules = [];
603
- foreach ( $rules as $rule => $rewrite ) {
604
- if ( false !== ( $pos = strpos( $rewrite, '?' ) ) ) {
605
- $params = explode( '&', substr( $rewrite, $pos + 1 ) );
606
- if ( in_array( 'embed=true', $params ) ) {
607
  continue;
608
  }
609
  }
610
- $new_rules[ $rule ] = $rewrite;
611
  }
612
 
613
  return $new_rules;
614
  }
615
 
616
- public function htmlCompressor() {
617
- ob_start( [ $this, 'htmlCompressorMain' ] );
 
618
  }
619
 
620
- public function htmlCompressorMain( $content ) {
 
621
  $old_content = $content;
622
 
623
- if ( $this->getPopulateOption( 'remove_xfn_link' ) ) {
624
- $content = preg_replace( '/<link[^>]+href=(?:\'|")https?:\/\/gmpg.org\/xfn\/11(?:\'|")(?:[^>]+)?>/', '', $content );
625
 
626
- if ( empty( $content ) ) {
627
  $content = $old_content;
628
  }
629
  }
8
  */
9
 
10
  // Exit if accessed directly
11
+ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
19
  */
20
+ public function __construct(WCL_Plugin $plugin)
21
+ {
22
+ parent::__construct($plugin);
23
 
24
  $this->plugin = $plugin;
25
  }
26
 
27
+ public function registerActionsAndFilters()
28
+ {
29
+ if( $this->getPopulateOption('disable_emoji') ) {
30
+ add_action('init', [$this, 'disableEmojis']);
31
  }
32
 
33
+ if( $this->getPopulateOption('disable_embeds') ) {
34
+ add_action('init', [$this, 'disableEmbeds']);
35
  }
36
 
37
+ if( $this->getPopulateOption('disable_json_rest_api') ) {
38
  $this->removeRestApi();
39
  }
40
 
41
+ if( ($this->getPopulateOption('revision_limit') || $this->getPopulateOption('revisions_disable')) ) {
42
+ add_filter('wp_revisions_to_keep', [$this, 'revisions_to_keep'], 10, 2);
43
 
44
+ if( $this->getPopulateOption('revisions_disable') ) {
45
+ add_action('admin_init', [$this, 'disable_revision_support']);
46
  }
47
  }
48
 
49
+ if( !is_admin() ) {
50
+ if( $this->getPopulateOption('remove_jquery_migrate') ) {
51
+ add_filter('wp_default_scripts', [$this, 'removeJqueryMigrate']);
52
  }
53
 
54
+ if( $this->getPopulateOption('disable_feed') ) {
55
  $this->disableFeed();
56
  }
57
 
58
+ if( $this->getPopulateOption('disable_dashicons') ) {
59
+ add_action('wp_print_styles', [$this, 'disableDashicons'], -1);
60
  }
61
 
62
+ if( $this->getPopulateOption('remove_xfn_link') ) {
63
+ add_action('wp_loaded', [$this, 'htmlCompressor']);
64
  }
65
 
66
+ if( $this->getPopulateOption('remove_recent_comments_style') ) {
67
+ add_action('widgets_init', [$this, 'removeRecentCommentsStyle']);
68
  }
69
 
70
  /**
72
  * Hook into the style loader and remove the version information.
73
  */
74
 
75
+ if( $this->getPopulateOption('remove_style_version') ) {
76
+ add_filter('style_loader_src', [$this, 'hideWordpressVersionInScript'], 9999, 2);
77
  }
78
 
79
  /**
80
  * Hook into the script loader and remove the version information.
81
  */
82
 
83
+ if( $this->getPopulateOption('remove_js_version') ) {
84
+ add_filter('script_loader_src', [$this, 'hideWordpressVersionInScript'], 9999, 2);
85
  }
86
 
87
  $this->remove_tags_from_head();
88
  } else {
89
+ if( $this->getPopulateOption('disable_post_autosave') ) {
90
+ add_action('wp_print_scripts', [$this, 'disable_posts_autosave']);
91
  }
92
  }
93
 
94
+ if( $this->getPopulateOption('gutenberg_autosave_control') ) {
95
+ add_action('admin_init', [$this, 'register_gutenberg_autosave_settings']);
96
+ add_action('rest_api_init', [$this, 'gutenberg_autosave_rest_mapping']);
97
+ add_action('enqueue_block_editor_assets', [$this, 'enqueue_gutenberg_autosave_assets']);
98
  }
99
  }
100
 
101
  /**
102
  * Gutenberg assets.
103
  */
104
+ public function enqueue_gutenberg_autosave_assets()
105
+ {
106
  /**
107
  * Styles.
108
  */
109
+ wp_enqueue_style('wbcr-clearfy-gutenberg-autosave', WCL_PLUGIN_URL . '/admin/assets/css/gutenberg-autosave-control.css', [], $this->plugin->getPluginVersion(), 'all');
110
 
111
  /**
112
  * Scripts.
113
  */
114
+ wp_enqueue_script('wbcr-clearfy-gutenberg-autosave', WCL_PLUGIN_URL . '/admin/assets/gutenberg/build/index.build.js', [
115
  'react',
116
  'wp-api-fetch',
117
  'wp-components',
120
  'wp-edit-post',
121
  'wp-i18n',
122
  'wp-plugins',
123
+ ], $this->plugin->getPluginVersion(), true);
124
  // todo: It is necessary to cteate the localization for the Gutenberg widget, which is responsible for the selection of AutoSave intveraval.
125
  }
126
 
127
  /**
128
  * Register settings for Gutenberg
129
  */
130
+ public function register_gutenberg_autosave_settings()
131
+ {
132
+ register_setting('clearfy-gutenberg-autosave', $this->plugin->getPrefix() . 'autosave_interval', ['default' => 99999]);
133
  }
134
 
135
  /**
137
  *
138
  * @return int
139
  */
140
+ public function get_gutenberg_autosave_interval()
141
+ {
142
+ return (int)$this->getOption('gutenberg_autosave_interval', 99999);
143
  }
144
 
145
  /**
149
  *
150
  * @return mixed
151
  */
152
+ public function set_get_gutenberg_autosave_interval(\WP_REST_Request $request)
153
+ {
154
+ if( !isset($request['interval']) ) {
155
+ return new \WP_Error('no_interval', __('No interval specified', 'clearfy'), ['status' => 400]);
156
  }
157
 
158
+ $this->updateOption('gutenberg_autosave_interval', (int)$request['interval']);
159
+
160
+ return [];
161
  }
162
 
163
  /**
164
  * Setup REST API for managing interval option. Сreates an endpoint
165
  * for working with autosave in gutenberg editor.
166
  */
167
+ public function gutenberg_autosave_rest_mapping()
168
+ {
169
+ register_rest_route('clearfy-gutenberg-autosave/v1', '/interval', [
170
  [
171
+ 'methods' => \WP_REST_Server::READABLE,
172
+ 'callback' => [$this, 'get_gutenberg_autosave_interval'],
173
+ 'permission_callback' => function () {
174
+ return WCL_Plugin::app()->currentUserCan();
175
+ }
176
  ],
177
  [
178
+ 'methods' => \WP_REST_Server::CREATABLE,
179
+ 'callback' => [$this, 'set_get_gutenberg_autosave_interval'],
180
+ 'args' => [
181
  'interval' => [
182
+ 'validate_callback' => function ($param, $request, $key) {
183
+ return is_numeric($param);
184
  },
185
+ ]
186
  ],
187
  'permission_callback' => function () {
188
  return WCL_Plugin::app()->currentUserCan();
189
+ }
190
  ],
191
+ ]);
192
  }
193
 
194
 
195
  /**
196
  * Disables automatic saving drafts.
197
  */
198
+ public function disable_posts_autosave()
199
+ {
200
+ wp_deregister_script('autosave');
201
  }
202
 
203
  /**
205
  *
206
  * @since 1.5.1
207
  */
208
+ public function disable_revision_support()
209
+ {
210
  $post_types = get_post_types();
211
 
212
+ if( !is_array($post_types) || empty($post_types) ) {
213
  return;
214
  }
215
 
216
+ foreach($post_types as $post_type) {
217
+ remove_post_type_support($post_type, 'revisions');
218
  }
219
  }
220
 
224
  * @since 0.9.5
225
  */
226
 
227
+ public function revisions_to_keep($num, $post)
228
+ {
229
+ $revision_limit = $this->getPopulateOption('revision_limit', null);
230
+ if( $revision_limit ) {
231
+ $num = (int)$revision_limit;
232
  }
233
 
234
+ if( 'default' == $revision_limit ) {
235
  $num = true;
236
  }
237
 
238
+ if( $this->getPopulateOption('revisions_disable') ) {
239
  $num = 0;
240
  }
241
 
250
  *
251
  * @return string
252
  */
253
+ public function hideWordpressVersionInScript($src, $handle)
254
+ {
255
+ if( is_user_logged_in() ) {
256
  return $src;
257
  }
258
 
259
+ $filename_arr = explode('?', basename($src));
260
+ $exclude_file_list = $this->getPopulateOption('remove_version_exclude', '');
261
+ $exclude_files_arr = array_map('trim', explode(PHP_EOL, $exclude_file_list));
262
 
263
+ if( strpos($src, 'ver=') && !in_array(str_replace('?' . $filename_arr[1], '', $src), $exclude_files_arr, true) ) {
264
+ $src = remove_query_arg('ver', $src);
265
  }
266
 
267
  return $src;
270
  /**
271
  * Disable dashicons for all but the auth user
272
  */
273
+ public function disableDashicons()
274
+ {
275
+ if( !is_admin_bar_showing() && !is_customize_preview() ) {
276
+ wp_deregister_style('dashicons');
277
  }
278
  }
279
 
280
  /**
281
  * Disable the emoji's
282
  */
283
+ public function disableEmojis()
284
+ {
285
+ remove_action('wp_head', 'print_emoji_detection_script', 7);
286
+ remove_action('admin_print_scripts', 'print_emoji_detection_script');
287
+ remove_action('wp_print_styles', 'print_emoji_styles');
288
+ remove_action('admin_print_styles', 'print_emoji_styles');
289
+ remove_filter('the_content_feed', 'wp_staticize_emoji');
290
+ remove_filter('comment_text_rss', 'wp_staticize_emoji');
291
+ remove_filter('wp_mail', 'wp_staticize_emoji_for_email');
292
+ add_filter('emoji_svg_url', '__return_false');
293
+ add_filter('tiny_mce_plugins', [$this, 'disableEmojisTinymce']);
294
+ add_filter('wp_resource_hints', [$this, 'disableEmojisRemoveDnsPrefetch'], 10, 2);
295
  }
296
 
297
  /**
301
  *
302
  * @return array Difference betwen the two arrays
303
  */
304
+ function disableEmojisTinymce($plugins)
305
+ {
306
+ if( is_array($plugins) ) {
307
+ return array_diff($plugins, ['wpemoji']);
308
  }
309
 
310
  return [];
313
  /**
314
  * Remove emoji CDN hostname from DNS prefetching hints.
315
  *
316
+ * @param array $urls URLs to print for resource hints.
317
+ * @param string $relation_type The relation type the URLs are printed for.
318
  *
319
  * @return array Difference betwen the two arrays.
320
  */
321
+ function disableEmojisRemoveDnsPrefetch($urls, $relation_type)
322
+ {
323
 
324
+ if( 'dns-prefetch' == $relation_type ) {
325
 
326
  // Strip out any URLs referencing the WordPress.org emoji location
327
  $emoji_svg_url_bit = 'https://s.w.org/images/core/emoji/';
328
+ foreach($urls as $key => $url) {
329
+ if( strpos($url, $emoji_svg_url_bit) !== false ) {
330
+ unset($urls[$key]);
331
  }
332
  }
333
  }
338
  /**
339
  * Disables the WP REST API for visitors not logged into WordPress.
340
  */
341
+ public function removeRestApi()
342
+ {
343
  /*
344
  Disable REST API link in HTTP headers
345
  Link: <https://example.com/wp-json/>; rel="https://api.w.org/"
346
  */
347
+ remove_action('template_redirect', 'rest_output_link_header', 11);
348
 
349
  /*
350
  Disable REST API links in HTML <head>
351
  <link rel='https://api.w.org/' href='https://example.com/wp-json/' />
352
  */
353
+ remove_action('wp_head', 'rest_output_link_wp_head', 10);
354
+ remove_action('xmlrpc_rsd_apis', 'rest_output_rsd');
355
 
356
  /*
357
  Disable REST API
358
  */
359
+ if( version_compare(get_bloginfo('version'), '4.7', '>=') ) {
360
+ add_filter('rest_authentication_errors', [$this, 'disableWpRestApi']);
361
  } else {
362
  // REST API 1.x
363
+ add_filter('json_enabled', '__return_false');
364
+ add_filter('json_jsonp_enabled', '__return_false');
365
 
366
  // REST API 2.x
367
+ add_filter('rest_enabled', '__return_false');
368
+ add_filter('rest_jsonp_enabled', '__return_false');
369
  }
370
  }
371
 
372
+ public function disableWpRestApi($access)
373
+ {
374
+ if( !is_user_logged_in() ) {
375
 
376
+ $message = apply_filters('disable_wp_rest_api_error', __('REST API restricted to authenticated users.', 'clearfy'));
377
 
378
+ return new WP_Error('rest_login_required', $message, ['status' => rest_authorization_required_code()]);
379
  }
380
 
381
  return $access;
383
 
384
 
385
  // todo: не работает должным образом, проверить
386
+ public function removeRecentCommentsStyle()
387
+ {
388
  global $wp_widget_factory;
389
 
390
+ $widget_recent_comments = isset($wp_widget_factory->widgets['WP_Widget_Recent_Comments']) ? $wp_widget_factory->widgets['WP_Widget_Recent_Comments'] : null;
391
 
392
+ if( !empty($widget_recent_comments) ) {
393
+ remove_action('wp_head', [
394
  $wp_widget_factory->widgets['WP_Widget_Recent_Comments'],
395
  'recent_comments_style'
396
+ ]);
397
  }
398
  }
399
 
400
  /**
401
  * Disable feeds
402
  */
403
+ public function disableFeed()
404
+ {
405
+ add_action('wp_loaded', [$this, 'removeFeedLinks']);
406
+ add_action('template_redirect', [$this, 'filterFeeds'], 1);
407
+ add_filter('bbp_request', [$this, 'filterBbpFeeds'], 9);
408
  }
409
 
410
 
411
+ public function removeFeedLinks()
412
+ {
413
+ remove_action('wp_head', 'feed_links', 2);
414
+ remove_action('wp_head', 'feed_links_extra', 3);
415
  }
416
 
417
+ public function filterFeeds()
418
+ {
419
+ if( !is_feed() || is_404() ) {
420
  return;
421
  }
422
 
423
  $this->disabled_feed_behaviour();
424
  }
425
 
426
+ public function disabled_feed_behaviour()
427
+ {
428
  global $wp_rewrite, $wp_query;
429
 
430
+ if( $this->getPopulateOption('disabled_feed_behaviour', 'redirect_301') == 'redirect_404' ) {
431
  $wp_query->is_feed = false;
432
  $wp_query->set_404();
433
+ status_header(404);
434
  // Override the xml+rss header set by WP in send_headers
435
+ header('Content-Type: ' . get_option('html_type') . '; charset=' . get_option('blog_charset'));
436
  } else {
437
+ if( isset($_GET['feed']) ) {
438
+ wp_redirect(esc_url_raw(remove_query_arg('feed')), 301);
439
  exit;
440
  }
441
 
442
+ if( 'old' !== get_query_var('feed') ) { // WP redirects these anyway, and removing the query var will confuse it thoroughly
443
+ set_query_var('feed', '');
444
  }
445
 
446
  redirect_canonical(); // Let WP figure out the appropriate redirect URL.
447
 
448
  // Still here? redirect_canonical failed to redirect, probably because of a filter. Try the hard way.
449
+ $struct = (!is_singular() && is_comment_feed()) ? $wp_rewrite->get_comment_feed_permastruct() : $wp_rewrite->get_feed_permastruct();
450
 
451
+ $struct = preg_quote($struct, '#');
452
+ $struct = str_replace('%feed%', '(\w+)?', $struct);
453
+ $struct = preg_replace('#/+#', '/', $struct);
454
+ $requested_url = (is_ssl() ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
455
 
456
+ $new_url = preg_replace('#' . $struct . '/?$#', '', $requested_url);
457
 
458
+ if( $new_url !== $requested_url ) {
459
+ wp_redirect($new_url, 301);
460
  exit;
461
  }
462
  }
469
  *
470
  * @return array
471
  */
472
+ public function filterBbpFeeds($query_vars)
473
+ {
474
  // Looking at a feed
475
+ if( isset($query_vars['feed']) ) {
476
 
477
  // Forum/Topic/Reply Feed
478
+ if( isset($query_vars['post_type']) ) {
479
 
480
  // Matched post type
481
+ $post_type = false;
482
  $post_types = [];
483
 
484
+ if( function_exists('bbp_get_forum_post_type') && function_exists('bbp_get_topic_post_type') && function_exists('bbp_get_reply_post_type') ) // Post types to check
485
  {
486
  $post_types = [
487
  bbp_get_forum_post_type(),
491
  }
492
 
493
  // Cast query vars as array outside of foreach loop
494
+ $qv_array = (array)$query_vars['post_type'];
495
 
496
  // Check if this query is for a bbPress post type
497
+ foreach($post_types as $bbp_pt) {
498
+ if( in_array($bbp_pt, $qv_array, true) ) {
499
  $post_type = $bbp_pt;
500
  break;
501
  }
502
  }
503
 
504
  // Looking at a bbPress post type
505
+ if( !empty($post_type) ) {
506
  $this->disabled_feed_behaviour();
507
  }
508
  }
515
  /**
516
  * Remove unused tags from head
517
  */
518
+ public function remove_tags_from_head()
519
+ {
520
 
521
+ if( $this->getPopulateOption('remove_rsd_link') ) {
522
+ remove_action('wp_head', 'rsd_link');
523
  }
524
 
525
+ if( $this->getPopulateOption('remove_wlw_link') ) {
526
+ remove_action('wp_head', 'wlwmanifest_link');
527
  }
528
 
529
+ if( $this->getPopulateOption('remove_adjacent_posts_link') ) {
530
+ remove_action('wp_head', 'adjacent_posts_rel_link');
531
+ remove_action('wp_head', 'adjacent_posts_rel_link_wp_head');
532
  }
533
 
534
+ if( $this->getPopulateOption('remove_shortlink_link') ) {
535
+ remove_action('wp_head', 'wp_shortlink_wp_head');
536
+ remove_action('template_redirect', 'wp_shortlink_header', 11);
537
  }
538
 
539
+ if( $this->getPopulateOption('remove_xfn_link') ) {
540
+ add_filter('avf_profile_head_tag', [$this, 'removeXfnLink']);
541
  }
542
  }
543
 
547
  * http://gmpg.org/xfn/
548
  * @return bool
549
  */
550
+ public function removeXfnLink()
551
+ {
552
  return false;
553
  }
554
 
557
  *
558
  * @param WP_Scripts $scripts
559
  */
560
+ public function removeJqueryMigrate(&$scripts)
561
+ {
562
+ $scripts->remove('jquery');
563
+ $scripts->add('jquery', false, ['jquery-core'], '1.12.4');
564
  }
565
 
566
  // Disable Embeds
567
+ public function disableEmbeds()
568
+ {
569
  global $wp, $wp_embed;
570
 
571
+ $wp->public_query_vars = array_diff($wp->public_query_vars, ['embed']);
572
+ remove_filter('the_content', [$wp_embed, 'autoembed'], 8);
573
 
574
  // Remove content feed filter
575
+ remove_filter('the_content_feed', '_oembed_filter_feed_content');
576
 
577
  // Abort embed libraries loading
578
+ remove_action('plugins_loaded', 'wp_maybe_load_embeds', 0);
579
 
580
  // No auto-embedding support
581
+ add_filter('pre_option_embed_autourls', '__return_false');
582
 
583
  // Avoid oEmbed auto discovery
584
+ add_filter('embed_oembed_discover', '__return_false');
585
 
586
  // Remove REST API related hooks
587
+ remove_action('rest_api_init', 'wp_oembed_register_route');
588
+ remove_filter('rest_pre_serve_request', '_oembed_rest_pre_serve_request', 10);
589
 
590
  // Remove header actions
591
+ remove_action('wp_head', 'wp_oembed_add_discovery_links');
592
+ remove_action('wp_head', 'wp_oembed_add_host_js');
593
+
594
+ remove_action('embed_head', 'enqueue_embed_scripts', 1);
595
+ remove_action('embed_head', 'print_emoji_detection_script');
596
+ remove_action('embed_head', 'print_embed_styles');
597
+ remove_action('embed_head', 'wp_print_head_scripts', 20);
598
+ remove_action('embed_head', 'wp_print_styles', 20);
599
+ remove_action('embed_head', 'wp_no_robots');
600
+ remove_action('embed_head', 'rel_canonical');
601
+ remove_action('embed_head', 'locale_stylesheet', 30);
602
+
603
+ remove_action('embed_content_meta', 'print_embed_comments_button');
604
+ remove_action('embed_content_meta', 'print_embed_sharing_button');
605
+
606
+ remove_action('embed_footer', 'print_embed_sharing_dialog');
607
+ remove_action('embed_footer', 'print_embed_scripts');
608
+ remove_action('embed_footer', 'wp_print_footer_scripts', 20);
609
+
610
+ remove_filter('excerpt_more', 'wp_embed_excerpt_more', 20);
611
+ remove_filter('the_excerpt_embed', 'wptexturize');
612
+ remove_filter('the_excerpt_embed', 'convert_chars');
613
+ remove_filter('the_excerpt_embed', 'wpautop');
614
+ remove_filter('the_excerpt_embed', 'shortcode_unautop');
615
+ remove_filter('the_excerpt_embed', 'wp_embed_excerpt_attachment');
616
 
617
  // Remove data and results filters
618
+ remove_filter('oembed_dataparse', 'wp_filter_oembed_result', 10);
619
+ remove_filter('oembed_response_data', 'get_oembed_response_data_rich', 10);
620
+ remove_filter('pre_oembed_result', 'wp_filter_pre_oembed_result', 10);
621
 
622
  // WooCommerce embeds in short description
623
+ remove_filter('woocommerce_short_description', 'wc_do_oembeds');
624
 
625
+ add_filter('tiny_mce_plugins', [$this, 'disableEmbedsTinyMcePlugin']);
626
+ add_filter('rewrite_rules_array', [$this, 'disableEmbedsRewrites']);
627
  }
628
 
629
+ public function disableEmbedsTinyMcePlugin($plugins)
630
+ {
631
+ return array_diff($plugins, ['wpembed', 'wpview']);
632
  }
633
 
634
+ public function disableEmbedsRewrites($rules)
635
+ {
636
  $new_rules = [];
637
+ foreach($rules as $rule => $rewrite) {
638
+ if( false !== ($pos = strpos($rewrite, '?')) ) {
639
+ $params = explode('&', substr($rewrite, $pos + 1));
640
+ if( in_array('embed=true', $params) ) {
641
  continue;
642
  }
643
  }
644
+ $new_rules[$rule] = $rewrite;
645
  }
646
 
647
  return $new_rules;
648
  }
649
 
650
+ public function htmlCompressor()
651
+ {
652
+ ob_start([$this, 'htmlCompressorMain']);
653
  }
654
 
655
+ public function htmlCompressorMain($content)
656
+ {
657
  $old_content = $content;
658
 
659
+ if( $this->getPopulateOption('remove_xfn_link') ) {
660
+ $content = preg_replace('/<link[^>]+href=(?:\'|")https?:\/\/gmpg.org\/xfn\/11(?:\'|")(?:[^>]+)?>/', '', $content);
661
 
662
+ if( empty($content) ) {
663
  $content = $old_content;
664
  }
665
  }
includes/classes/class.configurate-privacy.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy224_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy227_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-security.php CHANGED
@@ -11,7 +11,7 @@
11
  exit;
12
  }
13
 
14
- class WCL_ConfigSecurity extends Wbcr_FactoryClearfy224_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigSecurity extends Wbcr_FactoryClearfy227_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-seo.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_ConfigSeo extends Wbcr_FactoryClearfy224_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigSeo extends Wbcr_FactoryClearfy227_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
includes/helpers.php CHANGED
@@ -1,247 +1,322 @@
1
  <?php
2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  /**
4
- * Helpers functions
5
- * @author Webcraftic <wordpress.webraftic@gmail.com>
6
- * @copyright (c) 2017 Webraftic Ltd
7
- * @version 1.0
8
  */
 
 
 
 
 
 
 
 
 
 
 
9
 
10
- // Exit if accessed directly
11
- if( !defined('ABSPATH') ) {
12
- exit;
13
  }
14
 
15
- class WCL_Helper {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
- /**
18
- * Allows you to get the base path to the plugin in the directory wp-content/plugins/
19
- *
20
- * @param $slug - slug for example "clearfy", "hide-login-page"
21
- * @return int|null|string - "clearfy/clearfy.php"
22
- */
23
- public static function getPluginBasePathBySlug($slug)
24
- {
25
- // Check if the function get_plugins() is registered. It is necessary for the front-end
26
- // usually get_plugins() only works in the admin panel.
27
- if( !function_exists('get_plugins') ) {
28
- require_once ABSPATH . 'wp-admin/includes/plugin.php';
29
- }
30
 
31
- $plugins = get_plugins();
 
32
 
33
- foreach($plugins as $base_path => $plugin) {
34
- if( strpos($base_path, rtrim(trim($slug))) !== false ) {
35
- return $base_path;
36
- }
37
- }
 
 
 
 
38
 
39
- return null;
 
 
 
 
 
 
 
 
 
 
40
  }
41
 
42
- /**
43
- * Static method will check whether the plugin is activated or not. You can check whether the plugin exists
44
- * by using its slug or the base path.
45
- *
46
- * @param string $slug - slug for example "clearfy", "hide-login-page" or base path "clearfy/clearfy.php"
47
- * @return bool
48
- */
49
- public static function isPluginActivated($slug)
50
- {
51
- if( strpos(rtrim(trim($slug)), '/') === false ) {
52
- $plugin_base_path = self::getPluginBasePathBySlug($slug);
53
 
54
- if( empty($plugin_base_path) ) {
55
- return false;
56
- }
57
- } else {
58
- $plugin_base_path = $slug;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  }
 
60
 
61
- require_once ABSPATH . '/wp-admin/includes/plugin.php';
 
62
 
63
- return is_plugin_active($plugin_base_path);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
64
  }
65
 
66
- /**
67
- * Static method will check whether the plugin is installed or not. You can check whether the plugin exists
68
- * by using its slug or the base path.
69
- *
70
- * @param string $slug - slug "clearfy" or base_path "clearfy/clearfy.php"
71
- * @return bool
72
- */
73
- public static function isPluginInstalled($slug)
74
- {
75
- if( strpos(rtrim(trim($slug)), '/') === false ) {
76
- $plugin_base_path = self::getPluginBasePathBySlug($slug);
77
 
78
- if( !empty($plugin_base_path) ) {
79
- return true;
80
- }
81
- } else {
82
 
83
- // Check if the function get_plugins() is registered. It is necessary for the front-end
84
- // usually get_plugins() only works in the admin panel.
85
- if( !function_exists('get_plugins') ) {
86
- require_once ABSPATH . 'wp-admin/includes/plugin.php';
87
- }
 
 
 
 
 
 
88
 
89
- $plugins = get_plugins();
 
 
 
90
 
91
- if( isset($plugins[$slug]) ) {
92
- return true;
93
- }
 
94
  }
95
 
96
- return false;
 
 
 
 
97
  }
98
 
99
- /**
100
- * Is permalink enabled?
101
- * @global WP_Rewrite $wp_rewrite
102
- * @since 1.0.0
103
- * @return bool
104
- */
105
- public static function isPermalink()
106
- {
107
- global $wp_rewrite;
108
 
109
- if( !isset($wp_rewrite) || !is_object($wp_rewrite) || !$wp_rewrite->using_permalinks() ) {
110
- return false;
111
- }
 
 
 
 
 
 
112
 
113
- return true;
 
114
  }
115
 
116
- /**
117
- * Получает и возвращает все опции разрешенные для экспорта
118
- *
119
- * @param string $return
120
- * @return array|string
121
- */
122
- public static function getExportOptions($return = 'json')
123
- {
124
- global $wpdb;
125
 
126
- $export_options = array();
 
 
 
 
 
 
 
 
127
 
128
- $options = WCL_Option::getAllOptions();
129
 
130
- $allow_export_options = array();
131
 
132
- foreach((array)$options as $option_class) {
133
- $option_name = $option_class->getName();
134
- $allow_export_options[] = WCL_Plugin::app()->getOptionName($option_name);
135
- }
136
 
137
- if( WCL_Plugin::app()->isNetworkActive() ) {
138
- $network_id = get_current_network_id();
 
 
139
 
140
- $request = $wpdb->get_results($wpdb->prepare("
 
 
 
141
  SELECT meta_key, meta_value
142
  FROM {$wpdb->sitemeta}
143
  WHERE site_id = '%d' AND meta_key
144
  LIKE '%s'", $network_id, WCL_Plugin::app()->getPrefix() . "%"));
145
- } else {
146
- $request = $wpdb->get_results($wpdb->prepare("
147
  SELECT option_name, option_value
148
  FROM {$wpdb->options}
149
  WHERE option_name
150
  LIKE '%s'", WCL_Plugin::app()->getPrefix() . "_%"));
151
- }
152
 
153
- if( !empty($request) && !empty($allow_export_options) ) {
154
- foreach($request as $option) {
155
- if( WCL_Plugin::app()->isNetworkActive() ) {
156
- $option_name = $option->meta_key;
157
- $option_value = $option->meta_value;
158
- } else {
159
- $option_name = $option->option_name;
160
- $option_value = $option->option_value;
161
- }
162
- if( in_array($option_name, $allow_export_options) ) {
163
- $export_options[$option_name] = $option_value;
164
- }
165
  }
166
  }
 
167
 
168
- if( $return == 'array' ) {
169
- return $export_options;
170
- }
171
 
172
- return WCL_Helper::getEscapeJson($export_options);
173
- }
174
-
175
- /**
176
- * Try to get variable from JSON-encoded post variable
177
- *
178
- * Note: we pass some params via json-encoded variables, as via pure post some data (ex empty array) will be absent
179
- *
180
- * @param string $name $_POST's variable name
181
- *
182
- * @return array
183
- */
184
- public static function maybeGetPostJson($name)
185
- {
186
- if( isset($_POST[$name]) AND is_string($_POST[$name]) ) {
187
- $result = json_decode(stripslashes($_POST[$name]), true);
188
- if( !is_array($result) ) {
189
- $result = array();
190
- }
191
 
192
- return $result;
193
- } else {
194
- return array();
 
 
 
 
 
 
 
 
 
 
 
 
195
  }
196
- }
197
 
198
- /**
199
- * Escape json data
200
- * @param array $data
201
- * @return string escaped json string
202
- */
203
- public static function getEscapeJson(array $data)
204
- {
205
- return htmlspecialchars(json_encode($data), ENT_QUOTES, 'UTF-8');
206
  }
 
207
 
208
- /**
209
- * Componate content for robot.txt
210
- * @return string
211
- */
212
- public static function getRightRobotTxt()
213
- {
214
- $cache_output = WCL_Plugin::app()->getPopulateOption('robots_txt_text_cache');
 
 
215
 
216
- if( $cache_output ) {
217
- return $cache_output;
218
- }
219
-
220
- $site_url = get_home_url();
221
- $dir_host = preg_replace("(^https?://)", "", $site_url);
 
222
 
223
- if( is_ssl() ) {
224
- $dir_host = 'https://' . $dir_host;
225
- }
226
 
227
- $file_path = WCL_PLUGIN_DIR . '/templates/robots.txt';
228
- $file = fopen($file_path, 'r');
229
- $robot_default_content = fread($file, filesize($file_path));
230
- fclose($file);
231
 
232
- $output = $robot_default_content;
233
- $output .= 'Host: ' . $dir_host . PHP_EOL;
 
234
 
235
- $headers = @get_headers($site_url . '/sitemap.xml', 1);
 
 
 
236
 
237
- if( strpos($headers[0], '200 OK') !== false ) {
238
- $output .= 'Sitemap: ' . $site_url . '/sitemap.xml' . PHP_EOL;
239
- } else if( isset($headers['Location']) && !empty($headers['Location']) ) {
240
- $output .= 'Sitemap: ' . $headers['Location'] . PHP_EOL;
241
- }
242
 
243
- WCL_Plugin::app()->updatePopulateOption('robots_txt_text_cache', $output);
244
 
245
- return $output;
 
 
 
246
  }
 
 
 
 
247
  }
 
1
  <?php
2
 
3
+ /**
4
+ * Helpers functions
5
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
6
+ * @copyright (c) 2017 Webraftic Ltd
7
+ * @version 1.0
8
+ */
9
+
10
+ // Exit if accessed directly
11
+ if( !defined('ABSPATH') ) {
12
+ exit;
13
+ }
14
+
15
+ class WCL_Helper {
16
+
17
  /**
18
+ * Should show a page about the plugin or not.
19
+ *
20
+ * @return bool
 
21
  */
22
+ public static function is_need_show_setup_page()
23
+ {
24
+ $need_show_about = (int)get_option(WCL_Plugin::app()->getOptionName('setup_wizard'));
25
+
26
+ $is_ajax = self::doing_ajax();
27
+ $is_cron = self::doing_cron();
28
+ $is_rest = self::doing_rest_api();
29
+
30
+ if( $need_show_about && !$is_ajax && !$is_cron && !$is_rest ) {
31
+ return true;
32
+ }
33
 
34
+ return false;
 
 
35
  }
36
 
37
+ /**
38
+ * Checks if the current request is a WP REST API request.
39
+ *
40
+ * Case #1: After WP_REST_Request initialisation
41
+ * Case #2: Support "plain" permalink settings
42
+ * Case #3: URL Path begins with wp-json/ (your REST prefix)
43
+ * Also supports WP installations in subfolders
44
+ *
45
+ * @author matzeeable https://wordpress.stackexchange.com/questions/221202/does-something-like-is-rest-exist
46
+ * @since 2.1.0
47
+ * @return boolean
48
+ */
49
+ public static function doing_rest_api()
50
+ {
51
+ $prefix = rest_get_url_prefix();
52
+ $rest_route = WCL_Plugin::app()->request->get('rest_route', null);
53
+ if( defined('REST_REQUEST') && REST_REQUEST // (#1)
54
+ || !is_null($rest_route) // (#2)
55
+ && strpos(trim($rest_route, '\\/'), $prefix, 0) === 0 ) {
56
+ return true;
57
+ }
58
 
59
+ // (#3)
60
+ $rest_url = wp_parse_url(site_url($prefix));
61
+ $current_url = wp_parse_url(add_query_arg([]));
 
 
 
 
 
 
 
 
 
 
62
 
63
+ return strpos($current_url['path'], $rest_url['path'], 0) === 0;
64
+ }
65
 
66
+ /**
67
+ * @return bool
68
+ * @since 2.1.0
69
+ */
70
+ public static function doing_ajax()
71
+ {
72
+ if( function_exists('wp_doing_ajax') ) {
73
+ return wp_doing_ajax();
74
+ }
75
 
76
+ return defined('DOING_AJAX') && DOING_AJAX;
77
+ }
78
+
79
+ /**
80
+ * @return bool
81
+ * @since 2.1.0
82
+ */
83
+ public static function doing_cron()
84
+ {
85
+ if( function_exists('wp_doing_cron') ) {
86
+ return wp_doing_cron();
87
  }
88
 
89
+ return defined('DOING_CRON') && DOING_CRON;
90
+ }
 
 
 
 
 
 
 
 
 
91
 
92
+ /**
93
+ * Allows you to get the base path to the plugin in the directory wp-content/plugins/
94
+ *
95
+ * @param $slug - slug for example "clearfy", "hide-login-page"
96
+ * @return int|null|string - "clearfy/clearfy.php"
97
+ */
98
+ public static function getPluginBasePathBySlug($slug)
99
+ {
100
+ // Check if the function get_plugins() is registered. It is necessary for the front-end
101
+ // usually get_plugins() only works in the admin panel.
102
+ if( !function_exists('get_plugins') ) {
103
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
104
+ }
105
+
106
+ $plugins = get_plugins();
107
+
108
+ foreach($plugins as $base_path => $plugin) {
109
+ if( strpos($base_path, rtrim(trim($slug))) !== false ) {
110
+ return $base_path;
111
  }
112
+ }
113
 
114
+ return null;
115
+ }
116
 
117
+ /**
118
+ * Static method will check whether the plugin is activated or not. You can check whether the plugin exists
119
+ * by using its slug or the base path.
120
+ *
121
+ * @param string $slug - slug for example "clearfy", "hide-login-page" or base path "clearfy/clearfy.php"
122
+ * @return bool
123
+ */
124
+ public static function isPluginActivated($slug)
125
+ {
126
+ if( strpos(rtrim(trim($slug)), '/') === false ) {
127
+ $plugin_base_path = self::getPluginBasePathBySlug($slug);
128
+
129
+ if( empty($plugin_base_path) ) {
130
+ return false;
131
+ }
132
+ } else {
133
+ $plugin_base_path = $slug;
134
  }
135
 
136
+ require_once ABSPATH . '/wp-admin/includes/plugin.php';
 
 
 
 
 
 
 
 
 
 
137
 
138
+ return is_plugin_active($plugin_base_path);
139
+ }
 
 
140
 
141
+ /**
142
+ * Static method will check whether the plugin is installed or not. You can check whether the plugin exists
143
+ * by using its slug or the base path.
144
+ *
145
+ * @param string $slug - slug "clearfy" or base_path "clearfy/clearfy.php"
146
+ * @return bool
147
+ */
148
+ public static function isPluginInstalled($slug)
149
+ {
150
+ if( strpos(rtrim(trim($slug)), '/') === false ) {
151
+ $plugin_base_path = self::getPluginBasePathBySlug($slug);
152
 
153
+ if( !empty($plugin_base_path) ) {
154
+ return true;
155
+ }
156
+ } else {
157
 
158
+ // Check if the function get_plugins() is registered. It is necessary for the front-end
159
+ // usually get_plugins() only works in the admin panel.
160
+ if( !function_exists('get_plugins') ) {
161
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
162
  }
163
 
164
+ $plugins = get_plugins();
165
+
166
+ if( isset($plugins[$slug]) ) {
167
+ return true;
168
+ }
169
  }
170
 
171
+ return false;
172
+ }
 
 
 
 
 
 
 
173
 
174
+ /**
175
+ * Is permalink enabled?
176
+ * @return bool
177
+ * @since 1.0.0
178
+ * @global WP_Rewrite $wp_rewrite
179
+ */
180
+ public static function isPermalink()
181
+ {
182
+ global $wp_rewrite;
183
 
184
+ if( !isset($wp_rewrite) || !is_object($wp_rewrite) || !$wp_rewrite->using_permalinks() ) {
185
+ return false;
186
  }
187
 
188
+ return true;
189
+ }
 
 
 
 
 
 
 
190
 
191
+ /**
192
+ * Получает и возвращает все опции разрешенные для экспорта
193
+ *
194
+ * @param string $return
195
+ * @return array|string
196
+ */
197
+ public static function getExportOptions($return = 'json')
198
+ {
199
+ global $wpdb;
200
 
201
+ $export_options = array();
202
 
203
+ $options = WCL_Option::getAllOptions();
204
 
205
+ $allow_export_options = array();
 
 
 
206
 
207
+ foreach((array)$options as $option_class) {
208
+ $option_name = $option_class->getName();
209
+ $allow_export_options[] = WCL_Plugin::app()->getOptionName($option_name);
210
+ }
211
 
212
+ if( WCL_Plugin::app()->isNetworkActive() ) {
213
+ $network_id = get_current_network_id();
214
+
215
+ $request = $wpdb->get_results($wpdb->prepare("
216
  SELECT meta_key, meta_value
217
  FROM {$wpdb->sitemeta}
218
  WHERE site_id = '%d' AND meta_key
219
  LIKE '%s'", $network_id, WCL_Plugin::app()->getPrefix() . "%"));
220
+ } else {
221
+ $request = $wpdb->get_results($wpdb->prepare("
222
  SELECT option_name, option_value
223
  FROM {$wpdb->options}
224
  WHERE option_name
225
  LIKE '%s'", WCL_Plugin::app()->getPrefix() . "_%"));
226
+ }
227
 
228
+ if( !empty($request) && !empty($allow_export_options) ) {
229
+ foreach($request as $option) {
230
+ if( WCL_Plugin::app()->isNetworkActive() ) {
231
+ $option_name = $option->meta_key;
232
+ $option_value = $option->meta_value;
233
+ } else {
234
+ $option_name = $option->option_name;
235
+ $option_value = $option->option_value;
236
+ }
237
+ if( in_array($option_name, $allow_export_options) ) {
238
+ $export_options[$option_name] = $option_value;
 
239
  }
240
  }
241
+ }
242
 
243
+ if( $return == 'array' ) {
244
+ return $export_options;
245
+ }
246
 
247
+ return WCL_Helper::getEscapeJson($export_options);
248
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
249
 
250
+ /**
251
+ * Try to get variable from JSON-encoded post variable
252
+ *
253
+ * Note: we pass some params via json-encoded variables, as via pure post some data (ex empty array) will be absent
254
+ *
255
+ * @param string $name $_POST's variable name
256
+ *
257
+ * @return array
258
+ */
259
+ public static function maybeGetPostJson($name)
260
+ {
261
+ if( isset($_POST[$name]) and is_string($_POST[$name]) ) {
262
+ $result = json_decode(stripslashes($_POST[$name]), true);
263
+ if( !is_array($result) ) {
264
+ $result = array();
265
  }
 
266
 
267
+ return $result;
268
+ } else {
269
+ return array();
 
 
 
 
 
270
  }
271
+ }
272
 
273
+ /**
274
+ * Escape json data
275
+ * @param array $data
276
+ * @return string escaped json string
277
+ */
278
+ public static function getEscapeJson(array $data)
279
+ {
280
+ return htmlspecialchars(json_encode($data), ENT_QUOTES, 'UTF-8');
281
+ }
282
 
283
+ /**
284
+ * Componate content for robot.txt
285
+ * @return string
286
+ */
287
+ public static function getRightRobotTxt()
288
+ {
289
+ $cache_output = WCL_Plugin::app()->getPopulateOption('robots_txt_text_cache');
290
 
291
+ if( $cache_output ) {
292
+ return $cache_output;
293
+ }
294
 
295
+ $site_url = get_home_url();
296
+ $dir_host = preg_replace("(^https?://)", "", $site_url);
 
 
297
 
298
+ if( is_ssl() ) {
299
+ $dir_host = 'https://' . $dir_host;
300
+ }
301
 
302
+ $file_path = WCL_PLUGIN_DIR . '/templates/robots.txt';
303
+ $file = fopen($file_path, 'r');
304
+ $robot_default_content = fread($file, filesize($file_path));
305
+ fclose($file);
306
 
307
+ $output = $robot_default_content;
308
+ $output .= 'Host: ' . $dir_host . PHP_EOL;
 
 
 
309
 
310
+ $headers = @get_headers($site_url . '/sitemap.xml', 1);
311
 
312
+ if( strpos($headers[0], '200 OK') !== false ) {
313
+ $output .= 'Sitemap: ' . $site_url . '/sitemap.xml' . PHP_EOL;
314
+ } else if( isset($headers['Location']) && !empty($headers['Location']) ) {
315
+ $output .= 'Sitemap: ' . $headers['Location'] . PHP_EOL;
316
  }
317
+
318
+ WCL_Plugin::app()->updatePopulateOption('robots_txt_text_cache', $output);
319
+
320
+ return $output;
321
  }
322
+ }
libs/factory/adverts/boot.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- use WBCR\Factory_Adverts_112\Base;
4
 
5
  /**
6
  * Factory Adverts
@@ -20,31 +20,31 @@ if( !defined('ABSPATH') ) {
20
  exit;
21
  }
22
 
23
- if( defined('FACTORY_ADVERTS_112_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
- define('FACTORY_ADVERTS_112_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
- define('FACTORY_ADVERTS_112_VERSION', '1.1.2');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
- load_plugin_textdomain('wbcr_factory_adverts_112', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
- define('FACTORY_ADVERTS_112_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
- define('FACTORY_ADVERTS_112_URL', plugins_url(null, __FILE__));
41
 
42
- require_once(FACTORY_ADVERTS_112_DIR . '/includes/class-rest-request.php');
43
- require_once(FACTORY_ADVERTS_112_DIR . '/includes/class-base.php');
44
 
45
  /**
46
- * @param Wbcr_Factory432_Plugin $plugin
47
  */
48
- add_action('wbcr_factory_adverts_112_plugin_created', function ($plugin) {
49
- $plugin->set_adverts_manager("WBCR\Factory_Adverts_112\Base");
50
  });
1
  <?php
2
 
3
+ use WBCR\Factory_Adverts_114\Base;
4
 
5
  /**
6
  * Factory Adverts
20
  exit;
21
  }
22
 
23
+ if( defined('FACTORY_ADVERTS_114_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
+ define('FACTORY_ADVERTS_114_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
+ define('FACTORY_ADVERTS_114_VERSION', '1.1.4');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
+ load_plugin_textdomain('wbcr_factory_adverts_114', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
+ define('FACTORY_ADVERTS_114_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
+ define('FACTORY_ADVERTS_114_URL', plugins_url(null, __FILE__));
41
 
42
+ require_once(FACTORY_ADVERTS_114_DIR . '/includes/class-rest-request.php');
43
+ require_once(FACTORY_ADVERTS_114_DIR . '/includes/class-base.php');
44
 
45
  /**
46
+ * @param Wbcr_Factory436_Plugin $plugin
47
  */
48
+ add_action('wbcr_factory_adverts_114_plugin_created', function ($plugin) {
49
+ $plugin->set_adverts_manager("WBCR\Factory_Adverts_114\Base");
50
  });
libs/factory/adverts/includes/class-base.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_112;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -28,7 +28,7 @@ class Base {
28
  *
29
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
30
  * @since 1.0.1
31
- * @var \Wbcr_Factory432_Plugin
32
  */
33
  private $plugin;
34
 
@@ -53,7 +53,7 @@ class Base {
53
  *
54
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
55
  * @since 1.0.1
56
- * @var \WBCR\Factory_Adverts_112\Creative_Motion_API
57
  */
58
  private $api;
59
 
@@ -82,9 +82,9 @@ class Base {
82
  *
83
  * @since 1.0.0 Added
84
  *
85
- * @param \Wbcr_Factory432_Plugin $plugin
86
  */
87
- public function __construct( \Wbcr_Factory432_Plugin $plugin, $settings ) {
88
  $this->plugin = $plugin;
89
 
90
  $this->settings = wp_parse_args( $settings, [
@@ -257,7 +257,7 @@ class Base {
257
  $content = $this->get_debug_message( 'dashboard_widget' );
258
  }
259
 
260
- require_once FACTORY_ADVERTS_112_DIR . '/includes/class-dashboard-widget.php';
261
  new Dashboard_Widget( $this->plugin, $content );
262
  }
263
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_114;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
28
  *
29
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
30
  * @since 1.0.1
31
+ * @var \Wbcr_Factory436_Plugin
32
  */
33
  private $plugin;
34
 
53
  *
54
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
55
  * @since 1.0.1
56
+ * @var \WBCR\Factory_Adverts_114\Creative_Motion_API
57
  */
58
  private $api;
59
 
82
  *
83
  * @since 1.0.0 Added
84
  *
85
+ * @param \Wbcr_Factory436_Plugin $plugin
86
  */
87
+ public function __construct( \Wbcr_Factory436_Plugin $plugin, $settings ) {
88
  $this->plugin = $plugin;
89
 
90
  $this->settings = wp_parse_args( $settings, [
257
  $content = $this->get_debug_message( 'dashboard_widget' );
258
  }
259
 
260
+ require_once FACTORY_ADVERTS_114_DIR . '/includes/class-dashboard-widget.php';
261
  new Dashboard_Widget( $this->plugin, $content );
262
  }
263
  }
libs/factory/adverts/includes/class-dashboard-widget.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_112;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -35,7 +35,7 @@ class Dashboard_Widget {
35
  *
36
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
37
  * @since 1.0.1
38
- * @var \Wbcr_Factory432_Plugin
39
  */
40
  private $plugin;
41
 
@@ -46,10 +46,10 @@ class Dashboard_Widget {
46
  *
47
  * @since 1.0.0 Added
48
  *
49
- * @param \Wbcr_Factory432_Plugin $plugin
50
  * @param string $content
51
  */
52
- public function __construct( \Wbcr_Factory432_Plugin $plugin, $content ) {
53
 
54
  $this->plugin = $plugin;
55
  $this->content = $content;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_114;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
35
  *
36
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
37
  * @since 1.0.1
38
+ * @var \Wbcr_Factory436_Plugin
39
  */
40
  private $plugin;
41
 
46
  *
47
  * @since 1.0.0 Added
48
  *
49
+ * @param \Wbcr_Factory436_Plugin $plugin
50
  * @param string $content
51
  */
52
+ public function __construct( \Wbcr_Factory436_Plugin $plugin, $content ) {
53
 
54
  $this->plugin = $plugin;
55
  $this->content = $content;
libs/factory/adverts/includes/class-rest-request.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_112;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -65,7 +65,7 @@ class Creative_Motion_API {
65
  *
66
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
67
  * @since 1.0.1
68
- * @var \Wbcr_Factory432_Plugin
69
  */
70
  private $plugin;
71
 
@@ -75,11 +75,11 @@ class Creative_Motion_API {
75
  *
76
  * Variable initialization.
77
  *
78
- * @param \Wbcr_Factory432_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
- public function __construct(\Wbcr_Factory432_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_114;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
65
  *
66
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
67
  * @since 1.0.1
68
+ * @var \Wbcr_Factory436_Plugin
69
  */
70
  private $plugin;
71
 
75
  *
76
  * Variable initialization.
77
  *
78
+ * @param \Wbcr_Factory436_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
+ public function __construct(\Wbcr_Factory436_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
libs/factory/adverts/langs/{wbcr_factory_adverts_112-ru_RU.mo → wbcr_factory_adverts_114-ru_RU.mo} RENAMED
File without changes
libs/factory/adverts/langs/{wbcr_factory_adverts_112-ru_RU.po → wbcr_factory_adverts_114-ru_RU.po} RENAMED
File without changes
libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-accordion{margin:0 0 30px;border-top:1px solid #DDD;border-right:1px solid #DDD;border-left:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.factory-bootstrap-433 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-433 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-433 .factory-accordion-item{display:none}.factory-bootstrap-433 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-433 .factory-accordion>h3.active:hover{cursor:default}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-accordion{margin:0 0 30px;border-top:1px solid #DDD;border-right:1px solid #DDD;border-left:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.factory-bootstrap-436 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-436 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-436 .factory-accordion-item{display:none}.factory-bootstrap-436 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-436 .factory-accordion>h3.active:hover{cursor:default}
libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#e1a948;border-color:#d39323;color:#fff;-webkit-box-shadow:inset 0 1px 0 #ecc88a,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #ecc88a,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#db9825;border-color:#bd831f;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8be74,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8be74,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#db9825;border-color:#bd831f;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#e1a948;border-color:#d39323;color:#fff;-webkit-box-shadow:inset 0 1px 0 #ecc88a,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #ecc88a,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#db9825;border-color:#bd831f;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8be74,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8be74,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#db9825;border-color:#bd831f;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#c7a589;border-color:#b78a66;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e0cdbd,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e0cdbd,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#ba906d;border-color:#ae7d55;color:#fff;-webkit-box-shadow:inset 0 1px 0 #d7bfac,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #d7bfac,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#ba906d;border-color:#ae7d55;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#c7a589;border-color:#b78a66;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e0cdbd,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e0cdbd,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#ba906d;border-color:#ae7d55;color:#fff;-webkit-box-shadow:inset 0 1px 0 #d7bfac,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #d7bfac,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#ba906d;border-color:#ae7d55;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css CHANGED
@@ -8,7 +8,7 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 article,.factory-bootstrap-433 aside,.factory-bootstrap-433 details,.factory-bootstrap-433 figcaption,.factory-bootstrap-433 figure,.factory-bootstrap-433 footer,.factory-bootstrap-433 header,.factory-bootstrap-433 hgroup,.factory-bootstrap-433 main,.factory-bootstrap-433 nav,.factory-bootstrap-433 section,.factory-bootstrap-433 summary{display:block}.factory-bootstrap-433 audio,.factory-bootstrap-433 canvas,.factory-bootstrap-433 video{display:inline-block}.factory-bootstrap-433 audio:not([controls]){display:none;height:0}.factory-bootstrap-433 [hidden],.factory-bootstrap-433 template{display:none}.factory-bootstrap-433 body{margin:0}.factory-bootstrap-433 a{background:0 0}.factory-bootstrap-433 a:focus{outline:thin dotted}.factory-bootstrap-433 a:active,.factory-bootstrap-433 a:hover{outline:0}.factory-bootstrap-433 h1{margin:.67em 0}.factory-bootstrap-433 b,.factory-bootstrap-433 strong{font-weight:700}.factory-bootstrap-433 dfn{font-style:italic}.factory-bootstrap-433 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-433 mark{color:#000;background:#ff0}.factory-bootstrap-433 code,.factory-bootstrap-433 kbd,.factory-bootstrap-433 pre,.factory-bootstrap-433 samp{font-size:1em}.factory-bootstrap-433 pre{white-space:pre-wrap}.factory-bootstrap-433 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-433 sub,.factory-bootstrap-433 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-433 sup{top:-.5em}.factory-bootstrap-433 sub{bottom:-.25em}.factory-bootstrap-433 img{border:0}.factory-bootstrap-433 svg:not(:root){overflow:hidden}.factory-bootstrap-433 figure{margin:0}.factory-bootstrap-433 button,.factory-bootstrap-433 input,.factory-bootstrap-433 select,.factory-bootstrap-433 textarea{margin:0}.factory-bootstrap-433 button,.factory-bootstrap-433 select{text-transform:none}.factory-bootstrap-433 select{padding-right:4px!important}.factory-bootstrap-433 button,.factory-bootstrap-433 input[type=reset],.factory-bootstrap-433 input[type=submit],html .factory-bootstrap-433 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-433 button[disabled],html .factory-bootstrap-433 input[disabled]{cursor:default}.factory-bootstrap-433 input[type=checkbox],.factory-bootstrap-433 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-433 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-433 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-433 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-433 button::-moz-focus-inner,.factory-bootstrap-433 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-433 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-433 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-433 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-433 a,.factory-bootstrap-433 a:visited{text-decoration:underline}.factory-bootstrap-433 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-433 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-433 a[href^="javascript:"]:after,.factory-bootstrap-433 a[href^="#"]:after{content:""}.factory-bootstrap-433 blockquote,.factory-bootstrap-433 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-433 thead{display:table-header-group}.factory-bootstrap-433 img,.factory-bootstrap-433 tr{page-break-inside:avoid}.factory-bootstrap-433 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-433 h2,.factory-bootstrap-433 h3,.factory-bootstrap-433 p{orphans:3;widows:3}.factory-bootstrap-433 h2,.factory-bootstrap-433 h3{page-break-after:avoid}.factory-bootstrap-433 select{background:#fff!important}.factory-bootstrap-433 .navbar{display:none}.factory-bootstrap-433 .table td,.factory-bootstrap-433 .table th{background-color:#fff!important}.factory-bootstrap-433 .btn>.caret,.factory-bootstrap-433 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-433 .label{border:1px solid #000}.factory-bootstrap-433 .table{border-collapse:collapse!important}.factory-bootstrap-433 .table-bordered td,.factory-bootstrap-433 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-433 *,.factory-bootstrap-433 :after,.factory-bootstrap-433 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-433{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-433 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-433 button,.factory-bootstrap-433 input,.factory-bootstrap-433 select,.factory-bootstrap-433 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-433 img{vertical-align:middle}.factory-bootstrap-433 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-433 .img-rounded{border-radius:6px}.factory-bootstrap-433 .img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.factory-bootstrap-433 .img-circle{border-radius:50%}.factory-bootstrap-433 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-433 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-433 .h1,.factory-bootstrap-433 .h2,.factory-bootstrap-433 .h3,.factory-bootstrap-433 .h4,.factory-bootstrap-433 .h5,.factory-bootstrap-433 .h6,.factory-bootstrap-433 h1,.factory-bootstrap-433 h2,.factory-bootstrap-433 h3,.factory-bootstrap-433 h4,.factory-bootstrap-433 h5,.factory-bootstrap-433 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-433 .h1 .small,.factory-bootstrap-433 .h1 small,.factory-bootstrap-433 .h2 .small,.factory-bootstrap-433 .h2 small,.factory-bootstrap-433 .h3 .small,.factory-bootstrap-433 .h3 small,.factory-bootstrap-433 .h4 .small,.factory-bootstrap-433 .h4 small,.factory-bootstrap-433 .h5 .small,.factory-bootstrap-433 .h5 small,.factory-bootstrap-433 .h6 .small,.factory-bootstrap-433 .h6 small,.factory-bootstrap-433 h1 .small,.factory-bootstrap-433 h1 small,.factory-bootstrap-433 h2 .small,.factory-bootstrap-433 h2 small,.factory-bootstrap-433 h3 .small,.factory-bootstrap-433 h3 small,.factory-bootstrap-433 h4 .small,.factory-bootstrap-433 h4 small,.factory-bootstrap-433 h5 .small,.factory-bootstrap-433 h5 small,.factory-bootstrap-433 h6 .small,.factory-bootstrap-433 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-433 h1,.factory-bootstrap-433 h2,.factory-bootstrap-433 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-433 h1 .small,.factory-bootstrap-433 h1 small,.factory-bootstrap-433 h2 .small,.factory-bootstrap-433 h2 small,.factory-bootstrap-433 h3 .small,.factory-bootstrap-433 h3 small{font-size:65%}.factory-bootstrap-433 h4,.factory-bootstrap-433 h5,.factory-bootstrap-433 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-433 h4 .small,.factory-bootstrap-433 h4 small,.factory-bootstrap-433 h5 .small,.factory-bootstrap-433 h5 small,.factory-bootstrap-433 h6 .small,.factory-bootstrap-433 h6 small{font-size:75%}.factory-bootstrap-433 .h1,.factory-bootstrap-433 h1{font-size:36px}.factory-bootstrap-433 .h2,.factory-bootstrap-433 h2{font-size:30px}.factory-bootstrap-433 .h3,.factory-bootstrap-433 h3{font-size:24px}.factory-bootstrap-433 .h4,.factory-bootstrap-433 h4{font-size:18px}.factory-bootstrap-433 .h5,.factory-bootstrap-433 h5{font-size:14px}.factory-bootstrap-433 .h6,.factory-bootstrap-433 h6{font-size:12px}.factory-bootstrap-433 p{margin:0 0 10px}.factory-bootstrap-433 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-433 .small,.factory-bootstrap-433 small{font-size:85%}.factory-bootstrap-433 cite{font-style:normal}.factory-bootstrap-433 .text-muted{color:#999}.factory-bootstrap-433 .text-primary{color:#428bca}.factory-bootstrap-433 .text-primary:hover{color:#3071a9}.factory-bootstrap-433 .text-warning{color:#8a6d3b}.factory-bootstrap-433 .text-warning:hover{color:#66512c}.factory-bootstrap-433 .text-danger{color:#a94442}.factory-bootstrap-433 .text-danger:hover{color:#843534}.factory-bootstrap-433 .text-success{color:#3c763d}.factory-bootstrap-433 .text-success:hover{color:#2b542c}.factory-bootstrap-433 .text-info{color:#31708f}.factory-bootstrap-433 .text-info:hover{color:#245269}.factory-bootstrap-433 .text-left{text-align:left}.factory-bootstrap-433 .text-right{text-align:right}.factory-bootstrap-433 .text-center{text-align:center}.factory-bootstrap-433 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-433 ol,.factory-bootstrap-433 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-433 ol ol,.factory-bootstrap-433 ol ul,.factory-bootstrap-433 ul ol,.factory-bootstrap-433 ul ul{margin-bottom:0}.factory-bootstrap-433 .list-inline,.factory-bootstrap-433 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-433 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-433 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-433 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-433 dd,.factory-bootstrap-433 dt{line-height:1.428571429}.factory-bootstrap-433 dt{font-weight:700}.factory-bootstrap-433 dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:after,.dl-horizontal dd:before{display:table;content:" "}.dl-horizontal dd:after{clear:both}}.factory-bootstrap-433 abbr[data-original-title],.factory-bootstrap-433 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-433 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-433 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-433 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-433 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-433 blockquote .small,.factory-bootstrap-433 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-433 blockquote .small:before,.factory-bootstrap-433 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-433 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-433 blockquote.pull-right .small,.factory-bootstrap-433 blockquote.pull-right p,.factory-bootstrap-433 blockquote.pull-right small{text-align:right}.factory-bootstrap-433 blockquote.pull-right .small:before,.factory-bootstrap-433 blockquote.pull-right small:before{content:''}.factory-bootstrap-433 blockquote.pull-right .small:after,.factory-bootstrap-433 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-433 blockquote:after,.factory-bootstrap-433 blockquote:before{content:""}.factory-bootstrap-433 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-433 code,.factory-bootstrap-433 kbd,.factory-bootstrap-433 pre,.factory-bootstrap-433 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-433 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-433 pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.factory-bootstrap-433 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-433 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-433 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-433 .container:after,.factory-bootstrap-433 .container:before{display:table;content:" "}.factory-bootstrap-433 .container:after{clear:both}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.factory-bootstrap-433 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-433 .row:after,.factory-bootstrap-433 .row:before{display:table;content:" "}.factory-bootstrap-433 .row:after{clear:both}.factory-bootstrap-433 .col-lg-1,.factory-bootstrap-433 .col-lg-10,.factory-bootstrap-433 .col-lg-11,.factory-bootstrap-433 .col-lg-12,.factory-bootstrap-433 .col-lg-2,.factory-bootstrap-433 .col-lg-3,.factory-bootstrap-433 .col-lg-4,.factory-bootstrap-433 .col-lg-5,.factory-bootstrap-433 .col-lg-6,.factory-bootstrap-433 .col-lg-7,.factory-bootstrap-433 .col-lg-8,.factory-bootstrap-433 .col-lg-9,.factory-bootstrap-433 .col-md-1,.factory-bootstrap-433 .col-md-10,.factory-bootstrap-433 .col-md-11,.factory-bootstrap-433 .col-md-12,.factory-bootstrap-433 .col-md-2,.factory-bootstrap-433 .col-md-3,.factory-bootstrap-433 .col-md-4,.factory-bootstrap-433 .col-md-5,.factory-bootstrap-433 .col-md-6,.factory-bootstrap-433 .col-md-7,.factory-bootstrap-433 .col-md-8,.factory-bootstrap-433 .col-md-9,.factory-bootstrap-433 .col-sm-1,.factory-bootstrap-433 .col-sm-10,.factory-bootstrap-433 .col-sm-11,.factory-bootstrap-433 .col-sm-12,.factory-bootstrap-433 .col-sm-2,.factory-bootstrap-433 .col-sm-3,.factory-bootstrap-433 .col-sm-4,.factory-bootstrap-433 .col-sm-5,.factory-bootstrap-433 .col-sm-6,.factory-bootstrap-433 .col-sm-7,.factory-bootstrap-433 .col-sm-8,.factory-bootstrap-433 .col-sm-9,.factory-bootstrap-433 .col-xs-1,.factory-bootstrap-433 .col-xs-10,.factory-bootstrap-433 .col-xs-11,.factory-bootstrap-433 .col-xs-12,.factory-bootstrap-433 .col-xs-2,.factory-bootstrap-433 .col-xs-3,.factory-bootstrap-433 .col-xs-4,.factory-bootstrap-433 .col-xs-5,.factory-bootstrap-433 .col-xs-6,.factory-bootstrap-433 .col-xs-7,.factory-bootstrap-433 .col-xs-8,.factory-bootstrap-433 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-433 .col-xs-1,.factory-bootstrap-433 .col-xs-10,.factory-bootstrap-433 .col-xs-11,.factory-bootstrap-433 .col-xs-12,.factory-bootstrap-433 .col-xs-2,.factory-bootstrap-433 .col-xs-3,.factory-bootstrap-433 .col-xs-4,.factory-bootstrap-433 .col-xs-5,.factory-bootstrap-433 .col-xs-6,.factory-bootstrap-433 .col-xs-7,.factory-bootstrap-433 .col-xs-8,.factory-bootstrap-433 .col-xs-9{float:left}.factory-bootstrap-433 .col-xs-12{width:100%}.factory-bootstrap-433 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-433 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-433 .col-xs-9{width:75%}.factory-bootstrap-433 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-433 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-433 .col-xs-6{width:50%}.factory-bootstrap-433 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-433 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-433 .col-xs-3{width:25%}.factory-bootstrap-433 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-433 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-433 .col-xs-pull-12{right:100%}.factory-bootstrap-433 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-433 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-433 .col-xs-pull-9{right:75%}.factory-bootstrap-433 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-433 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-433 .col-xs-pull-6{right:50%}.factory-bootstrap-433 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-433 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-433 .col-xs-pull-3{right:25%}.factory-bootstrap-433 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-433 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-433 .col-xs-pull-0{right:0}.factory-bootstrap-433 .col-xs-push-12{left:100%}.factory-bootstrap-433 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-433 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-433 .col-xs-push-9{left:75%}.factory-bootstrap-433 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-433 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-433 .col-xs-push-6{left:50%}.factory-bootstrap-433 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-433 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-433 .col-xs-push-3{left:25%}.factory-bootstrap-433 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-433 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-433 .col-xs-push-0{left:0}.factory-bootstrap-433 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-433 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-433 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-433 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-433 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-433 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-433 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-433 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-433 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-433 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-433 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-433 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-433 .col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666666666666%}.col-sm-10{width:83.33333333333334%}.col-sm-9{width:75%}.col-sm-8{width:66.66666666666666%}.col-sm-7{width:58.333333333333336%}.col-sm-6{width:50%}.col-sm-5{width:41.66666666666667%}.col-sm-4{width:33.33333333333333%}.col-sm-3{width:25%}.col-sm-2{width:16.666666666666664%}.col-sm-1{width:8.333333333333332%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666666666666%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666666666666%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666666666666%}.col-md-10{width:83.33333333333334%}.col-md-9{width:75%}.col-md-8{width:66.66666666666666%}.col-md-7{width:58.333333333333336%}.col-md-6{width:50%}.col-md-5{width:41.66666666666667%}.col-md-4{width:33.33333333333333%}.col-md-3{width:25%}.col-md-2{width:16.666666666666664%}.col-md-1{width:8.333333333333332%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666666666666%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666666666666%}.col-md-push-10{left:83.33333333333334%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666666666666%}.col-md-push-7{left:58.333333333333336%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666666666667%}.col-md-push-4{left:33.33333333333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.666666666666664%}.col-md-push-1{left:8.333333333333332%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666666666666%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666666666666%}.col-lg-10{width:83.33333333333334%}.col-lg-9{width:75%}.col-lg-8{width:66.66666666666666%}.col-lg-7{width:58.333333333333336%}.col-lg-6{width:50%}.col-lg-5{width:41.66666666666667%}.col-lg-4{width:33.33333333333333%}.col-lg-3{width:25%}.col-lg-2{width:16.666666666666664%}.col-lg-1{width:8.333333333333332%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666666666666%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666666666666%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-0{margin-left:0}}.factory-bootstrap-433 table{max-width:100%;background-color:transparent}.factory-bootstrap-433 th{text-align:left}.factory-bootstrap-433 .table{width:100%;margin-bottom:20px}.factory-bootstrap-433 .table>tbody>tr>td,.factory-bootstrap-433 .table>tbody>tr>th,.factory-bootstrap-433 .table>tfoot>tr>td,.factory-bootstrap-433 .table>tfoot>tr>th,.factory-bootstrap-433 .table>thead>tr>td,.factory-bootstrap-433 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-433 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-433 .table>caption+thead>tr:first-child>td,.factory-bootstrap-433 .table>caption+thead>tr:first-child>th,.factory-bootstrap-433 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-433 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-433 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-433 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-433 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-433 .table .table{background-color:#fff}.factory-bootstrap-433 .table-condensed>tbody>tr>td,.factory-bootstrap-433 .table-condensed>tbody>tr>th,.factory-bootstrap-433 .table-condensed>tfoot>tr>td,.factory-bootstrap-433 .table-condensed>tfoot>tr>th,.factory-bootstrap-433 .table-condensed>thead>tr>td,.factory-bootstrap-433 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-433 .table-bordered,.factory-bootstrap-433 .table-bordered>tbody>tr>td,.factory-bootstrap-433 .table-bordered>tbody>tr>th,.factory-bootstrap-433 .table-bordered>tfoot>tr>td,.factory-bootstrap-433 .table-bordered>tfoot>tr>th,.factory-bootstrap-433 .table-bordered>thead>tr>td,.factory-bootstrap-433 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-433 .table-bordered>thead>tr>td,.factory-bootstrap-433 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-433 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-433 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-433 .table-hover>tbody>tr:hover>td,.factory-bootstrap-433 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-433 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-433 table td[class*=col-],.factory-bootstrap-433 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-433 .table>tbody>.active>td,.factory-bootstrap-433 .table>tbody>.active>th,.factory-bootstrap-433 .table>tbody>tr>.active,.factory-bootstrap-433 .table>tfoot>.active>td,.factory-bootstrap-433 .table>tfoot>.active>th,.factory-bootstrap-433 .table>tfoot>tr>.active,.factory-bootstrap-433 .table>thead>.active>td,.factory-bootstrap-433 .table>thead>.active>th,.factory-bootstrap-433 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-433 .table-hover>tbody>.active:hover>td,.factory-bootstrap-433 .table-hover>tbody>.active:hover>th,.factory-bootstrap-433 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-433 .table>tbody>.success>td,.factory-bootstrap-433 .table>tbody>.success>th,.factory-bootstrap-433 .table>tbody>tr>.success,.factory-bootstrap-433 .table>tfoot>.success>td,.factory-bootstrap-433 .table>tfoot>.success>th,.factory-bootstrap-433 .table>tfoot>tr>.success,.factory-bootstrap-433 .table>thead>.success>td,.factory-bootstrap-433 .table>thead>.success>th,.factory-bootstrap-433 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-433 .table-hover>tbody>.success:hover>td,.factory-bootstrap-433 .table-hover>tbody>.success:hover>th,.factory-bootstrap-433 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-433 .table>tbody>.danger>td,.factory-bootstrap-433 .table>tbody>.danger>th,.factory-bootstrap-433 .table>tbody>tr>.danger,.factory-bootstrap-433 .table>tfoot>.danger>td,.factory-bootstrap-433 .table>tfoot>.danger>th,.factory-bootstrap-433 .table>tfoot>tr>.danger,.factory-bootstrap-433 .table>thead>.danger>td,.factory-bootstrap-433 .table>thead>.danger>th,.factory-bootstrap-433 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-433 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-433 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-433 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-433 .table>tbody>.warning>td,.factory-bootstrap-433 .table>tbody>.warning>th,.factory-bootstrap-433 .table>tbody>tr>.warning,.factory-bootstrap-433 .table>tfoot>.warning>td,.factory-bootstrap-433 .table>tfoot>.warning>th,.factory-bootstrap-433 .table>tfoot>tr>.warning,.factory-bootstrap-433 .table>thead>.warning>td,.factory-bootstrap-433 .table>thead>.warning>th,.factory-bootstrap-433 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-433 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-433 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-433 .table-hover>tbody>tr>.warning:hover{background-color:#faf2cc}@media (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}.factory-bootstrap-433 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-433 legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-433 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-433 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-433 input[type=checkbox],.factory-bootstrap-433 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-433 input[type=file]{display:block}.factory-bootstrap-433 select[multiple],.factory-bootstrap-433 select[size]{height:auto}.factory-bootstrap-433 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-433 input[type=checkbox]:focus,.factory-bootstrap-433 input[type=file]:focus,.factory-bootstrap-433 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-433 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-433 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-433 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-433 .form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.factory-bootstrap-433 .form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-433 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-433 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-433 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-433 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-433 .form-control[disabled],.factory-bootstrap-433 .form-control[readonly],.factory-bootstrap-433 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-433 textarea.form-control{height:auto}.factory-bootstrap-433 .form-group{margin-bottom:15px}.factory-bootstrap-433 .checkbox,.factory-bootstrap-433 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-433 .checkbox label,.factory-bootstrap-433 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-433 .checkbox input[type=checkbox],.factory-bootstrap-433 .checkbox-inline input[type=checkbox],.factory-bootstrap-433 .radio input[type=radio],.factory-bootstrap-433 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-433 .checkbox+.checkbox,.factory-bootstrap-433 .radio+.radio{margin-top:-5px}.factory-bootstrap-433 .checkbox-inline,.factory-bootstrap-433 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-433 .checkbox-inline+.checkbox-inline,.factory-bootstrap-433 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-433 .checkbox-inline[disabled],.factory-bootstrap-433 .checkbox[disabled],.factory-bootstrap-433 .radio-inline[disabled],.factory-bootstrap-433 .radio[disabled],.factory-bootstrap-433 fieldset[disabled] .checkbox,.factory-bootstrap-433 fieldset[disabled] .checkbox-inline,.factory-bootstrap-433 fieldset[disabled] .radio,.factory-bootstrap-433 fieldset[disabled] .radio-inline,.factory-bootstrap-433 fieldset[disabled] input[type=checkbox],.factory-bootstrap-433 fieldset[disabled] input[type=radio],.factory-bootstrap-433 input[type=checkbox][disabled],.factory-bootstrap-433 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-433 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-433 textarea.input-sm{height:auto}.factory-bootstrap-433 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-433 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-433 textarea.input-lg{height:auto}.factory-bootstrap-433 .has-warning .checkbox,.factory-bootstrap-433 .has-warning .checkbox-inline,.factory-bootstrap-433 .has-warning .control-label,.factory-bootstrap-433 .has-warning .help-block,.factory-bootstrap-433 .has-warning .radio,.factory-bootstrap-433 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-433 .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-433 .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.factory-bootstrap-433 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-433 .has-error .checkbox,.factory-bootstrap-433 .has-error .checkbox-inline,.factory-bootstrap-433 .has-error .control-label,.factory-bootstrap-433 .has-error .help-block,.factory-bootstrap-433 .has-error .radio,.factory-bootstrap-433 .has-error .radio-inline{color:#a94442}.factory-bootstrap-433 .controls{display:block}.factory-bootstrap-433 .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-433 .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.factory-bootstrap-433 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-433 .has-success .checkbox,.factory-bootstrap-433 .has-success .checkbox-inline,.factory-bootstrap-433 .has-success .control-label,.factory-bootstrap-433 .has-success .help-block,.factory-bootstrap-433 .has-success .radio,.factory-bootstrap-433 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-433 .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-433 .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.factory-bootstrap-433 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-433 .form-control-static{margin-bottom:0}.factory-bootstrap-433 .help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373;font-weight:400}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline select.form-control{width:auto}.form-inline .checkbox,.form-inline .radio{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{float:none;margin-left:0}}.factory-bootstrap-433 .form-horizontal .checkbox,.factory-bootstrap-433 .form-horizontal .checkbox-inline,.factory-bootstrap-433 .form-horizontal .control-label,.factory-bootstrap-433 .form-horizontal .radio,.factory-bootstrap-433 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-433 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-433 .form-horizontal .checkbox,.factory-bootstrap-433 .form-horizontal .radio{min-height:27px}.factory-bootstrap-433 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-433 .form-horizontal .form-group:after,.factory-bootstrap-433 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-433 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-433 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-433 .btn{display:inline-block;padding:5px 12px;margin-bottom:0;font-size:13px;font-weight:400;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.factory-bootstrap-433 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-433 .btn{text-decoration:none}.factory-bootstrap-433 .btn:focus,.factory-bootstrap-433 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-433 .btn.disabled,.factory-bootstrap-433 .btn[disabled],.factory-bootstrap-433 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-433 .btn-default.active,.factory-bootstrap-433 .btn-default:active,.factory-bootstrap-433 .btn-default:focus,.factory-bootstrap-433 .btn-default:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-433 .btn-default.active,.factory-bootstrap-433 .btn-default:active,.factory-bootstrap-433 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-433 .btn-default.disabled,.factory-bootstrap-433 .btn-default.disabled.active,.factory-bootstrap-433 .btn-default.disabled:active,.factory-bootstrap-433 .btn-default.disabled:focus,.factory-bootstrap-433 .btn-default.disabled:hover,.factory-bootstrap-433 .btn-default[disabled],.factory-bootstrap-433 .btn-default[disabled].active,.factory-bootstrap-433 .btn-default[disabled]:active,.factory-bootstrap-433 .btn-default[disabled]:focus,.factory-bootstrap-433 .btn-default[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-default,.factory-bootstrap-433 fieldset[disabled] .btn-default.active,.factory-bootstrap-433 fieldset[disabled] .btn-default:active,.factory-bootstrap-433 fieldset[disabled] .btn-default:focus,.factory-bootstrap-433 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-433 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-433 .btn-primary.active,.factory-bootstrap-433 .btn-primary:active,.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-433 .btn-primary.active,.factory-bootstrap-433 .btn-primary:active,.factory-bootstrap-433 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-433 .btn-primary.disabled,.factory-bootstrap-433 .btn-primary.disabled.active,.factory-bootstrap-433 .btn-primary.disabled:active,.factory-bootstrap-433 .btn-primary.disabled:focus,.factory-bootstrap-433 .btn-primary.disabled:hover,.factory-bootstrap-433 .btn-primary[disabled],.factory-bootstrap-433 .btn-primary[disabled].active,.factory-bootstrap-433 .btn-primary[disabled]:active,.factory-bootstrap-433 .btn-primary[disabled]:focus,.factory-bootstrap-433 .btn-primary[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-primary,.factory-bootstrap-433 fieldset[disabled] .btn-primary.active,.factory-bootstrap-433 fieldset[disabled] .btn-primary:active,.factory-bootstrap-433 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-433 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-433 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-433 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-433 .btn-warning.active,.factory-bootstrap-433 .btn-warning:active,.factory-bootstrap-433 .btn-warning:focus,.factory-bootstrap-433 .btn-warning:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-433 .btn-warning.active,.factory-bootstrap-433 .btn-warning:active,.factory-bootstrap-433 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-433 .btn-warning.disabled,.factory-bootstrap-433 .btn-warning.disabled.active,.factory-bootstrap-433 .btn-warning.disabled:active,.factory-bootstrap-433 .btn-warning.disabled:focus,.factory-bootstrap-433 .btn-warning.disabled:hover,.factory-bootstrap-433 .btn-warning[disabled],.factory-bootstrap-433 .btn-warning[disabled].active,.factory-bootstrap-433 .btn-warning[disabled]:active,.factory-bootstrap-433 .btn-warning[disabled]:focus,.factory-bootstrap-433 .btn-warning[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-warning,.factory-bootstrap-433 fieldset[disabled] .btn-warning.active,.factory-bootstrap-433 fieldset[disabled] .btn-warning:active,.factory-bootstrap-433 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-433 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-433 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-433 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-433 .btn-success.active,.factory-bootstrap-433 .btn-success:active,.factory-bootstrap-433 .btn-success:focus,.factory-bootstrap-433 .btn-success:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-433 .btn-success.active,.factory-bootstrap-433 .btn-success:active,.factory-bootstrap-433 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-433 .btn-success.disabled,.factory-bootstrap-433 .btn-success.disabled.active,.factory-bootstrap-433 .btn-success.disabled:active,.factory-bootstrap-433 .btn-success.disabled:focus,.factory-bootstrap-433 .btn-success.disabled:hover,.factory-bootstrap-433 .btn-success[disabled],.factory-bootstrap-433 .btn-success[disabled].active,.factory-bootstrap-433 .btn-success[disabled]:active,.factory-bootstrap-433 .btn-success[disabled]:focus,.factory-bootstrap-433 .btn-success[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-success,.factory-bootstrap-433 fieldset[disabled] .btn-success.active,.factory-bootstrap-433 fieldset[disabled] .btn-success:active,.factory-bootstrap-433 fieldset[disabled] .btn-success:focus,.factory-bootstrap-433 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-433 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-433 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-433 .btn-info.active,.factory-bootstrap-433 .btn-info:active,.factory-bootstrap-433 .btn-info:focus,.factory-bootstrap-433 .btn-info:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-433 .btn-info.active,.factory-bootstrap-433 .btn-info:active,.factory-bootstrap-433 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-433 .btn-info.disabled,.factory-bootstrap-433 .btn-info.disabled.active,.factory-bootstrap-433 .btn-info.disabled:active,.factory-bootstrap-433 .btn-info.disabled:focus,.factory-bootstrap-433 .btn-info.disabled:hover,.factory-bootstrap-433 .btn-info[disabled],.factory-bootstrap-433 .btn-info[disabled].active,.factory-bootstrap-433 .btn-info[disabled]:active,.factory-bootstrap-433 .btn-info[disabled]:focus,.factory-bootstrap-433 .btn-info[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-info,.factory-bootstrap-433 fieldset[disabled] .btn-info.active,.factory-bootstrap-433 fieldset[disabled] .btn-info:active,.factory-bootstrap-433 fieldset[disabled] .btn-info:focus,.factory-bootstrap-433 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-433 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-433 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-433 .btn-link,.factory-bootstrap-433 .btn-link:active,.factory-bootstrap-433 .btn-link[disabled],.factory-bootstrap-433 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-433 .btn-link,.factory-bootstrap-433 .btn-link:active,.factory-bootstrap-433 .btn-link:focus,.factory-bootstrap-433 .btn-link:hover{border-color:transparent}.factory-bootstrap-433 .btn-link:focus,.factory-bootstrap-433 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-433 .btn-link[disabled]:focus,.factory-bootstrap-433 .btn-link[disabled]:hover,.factory-bootstrap-433 fieldset[disabled] .btn-link:focus,.factory-bootstrap-433 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-433 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-433 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-433 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-433 input[type=button].btn-block,.factory-bootstrap-433 input[type=reset].btn-block,.factory-bootstrap-433 input[type=submit].btn-block{width:100%}.factory-bootstrap-433 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-433 .fade.in{opacity:1}.factory-bootstrap-433 .collapse{display:none}.factory-bootstrap-433 .collapse.in{display:block}.factory-bootstrap-433 .collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular) format('svg')}.factory-bootstrap-433 .glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:400;line-height:1;-moz-osx-font-smoothing:grayscale}.factory-bootstrap-433 .glyphicon:empty{width:1em}.factory-bootstrap-433 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-433 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-433 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-433 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-433 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-433 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-433 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-433 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-433 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-433 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-433 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-433 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-433 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-433 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-433 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-433 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-433 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-433 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-433 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-433 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-433 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-433 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-433 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-433 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-433 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-433 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-433 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-433 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-433 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-433 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-433 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-433 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-433 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-433 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-433 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-433 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-433 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-433 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-433 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-433 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-433 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-433 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-433 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-433 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-433 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-433 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-433 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-433 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-433 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-433 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-433 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-433 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-433 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-433 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-433 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-433 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-433 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-433 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-433 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-433 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-433 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-433 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-433 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-433 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-433 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-433 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-433 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-433 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-433 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-433 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-433 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-433 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-433 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-433 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-433 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-433 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-433 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-433 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-433 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-433 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-433 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-433 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-433 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-433 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-433 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-433 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-433 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-433 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-433 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-433 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-433 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-433 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-433 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-433 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-433 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-433 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-433 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-433 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-433 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-433 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-433 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-433 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-433 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-433 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-433 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-433 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-433 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-433 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-433 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-433 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-433 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-433 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-433 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-433 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-433 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-433 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-433 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-433 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-433 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-433 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-433 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-433 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-433 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-433 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-433 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-433 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-433 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-433 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-433 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-433 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-433 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-433 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-433 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-433 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-433 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-433 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-433 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-433 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-433 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-433 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-433 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-433 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-433 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-433 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-433 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-433 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-433 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-433 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-433 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-433 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-433 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-433 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-433 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-433 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-433 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-433 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-433 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-433 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-433 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-433 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-433 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-433 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-433 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-433 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-433 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-433 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-433 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-433 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-433 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-433 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-433 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-433 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-433 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-433 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-433 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-433 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-433 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-433 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-433 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-433 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-433 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-433 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-433 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-433 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-433 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-433 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-433 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-433 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-433 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-433 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-433 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-433 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-433 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-433 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-433 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-433 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-433 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-433 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-433 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-433 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-433 .caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.factory-bootstrap-433 .dropdown{position:relative}.factory-bootstrap-433 .dropdown-toggle:focus{outline:0}.factory-bootstrap-433 .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.factory-bootstrap-433 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-433 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-433 .dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429;color:#333;white-space:nowrap}.factory-bootstrap-433 .dropdown-menu>li>a:focus,.factory-bootstrap-433 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-433 .dropdown-menu>.active>a,.factory-bootstrap-433 .dropdown-menu>.active>a:focus,.factory-bootstrap-433 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-433 .dropdown-menu>.disabled>a,.factory-bootstrap-433 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-433 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-433 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-433 .dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-433 .open>.dropdown-menu{display:block}.factory-bootstrap-433 .open>a{outline:0}.factory-bootstrap-433 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-433 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-433 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-433 .dropup .caret,.factory-bootstrap-433 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-433 .dropup .dropdown-menu,.factory-bootstrap-433 .navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.factory-bootstrap-433 .btn-group,.factory-bootstrap-433 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-433 .btn-group-vertical>.btn,.factory-bootstrap-433 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-433 .btn-group-vertical>.btn.active,.factory-bootstrap-433 .btn-group-vertical>.btn:active,.factory-bootstrap-433 .btn-group-vertical>.btn:focus,.factory-bootstrap-433 .btn-group-vertical>.btn:hover,.factory-bootstrap-433 .btn-group>.btn.active,.factory-bootstrap-433 .btn-group>.btn:active,.factory-bootstrap-433 .btn-group>.btn:focus,.factory-bootstrap-433 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-433 .btn-group-vertical>.btn:focus,.factory-bootstrap-433 .btn-group>.btn:focus{outline:0}.factory-bootstrap-433 .btn-group .btn+.btn,.factory-bootstrap-433 .btn-group .btn+.btn-group,.factory-bootstrap-433 .btn-group .btn-group+.btn,.factory-bootstrap-433 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-433 .btn-toolbar:after,.factory-bootstrap-433 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-433 .btn-toolbar:after{clear:both}.factory-bootstrap-433 .btn-toolbar .btn-group{float:left}.factory-bootstrap-433 .btn-toolbar>.btn+.btn,.factory-bootstrap-433 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-433 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-433 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-433 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-433 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-433 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-433 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-433 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .btn-group>.btn-group{float:left}.factory-bootstrap-433 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-433 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-433 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-433 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .btn-group .dropdown-toggle:active,.factory-bootstrap-433 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-433 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-433 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-433 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-433 .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.factory-bootstrap-433 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-433 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-433 .btn-group .btn.active.value{text-shadow:none;color:#fff;background-color:#33aad5;-webkit-box-shadow:inset 0 1px 1px #0074a2;box-shadow:inset 0 1px 3px #0074a2;border-top:1px solid #0074a2;border-bottom:1px solid #0074a2;border-left:1px solid #0074a2}.factory-bootstrap-433 .btn .caret{margin-left:0}.factory-bootstrap-433 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-433 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-433 .btn-group-vertical>.btn,.factory-bootstrap-433 .btn-group-vertical>.btn-group,.factory-bootstrap-433 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-433 .btn-group-vertical>.btn-group:after,.factory-bootstrap-433 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-433 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-433 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-433 .btn-group-vertical>.btn+.btn,.factory-bootstrap-433 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-433 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-433 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-433 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-433 .btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-433 .btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.factory-bootstrap-433 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-433 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-433 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-433 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-433 .btn-group-justified>.btn,.factory-bootstrap-433 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-433 .btn-group-justified>.btn-group .btn{width:100%}[data-toggle=buttons]>.btn>input[type=checkbox],[data-toggle=buttons]>.btn>input[type=radio]{display:none}.factory-bootstrap-433 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-433 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-433 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-433 .input-group-lg>.form-control,.factory-bootstrap-433 .input-group-lg>.input-group-addon,.factory-bootstrap-433 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-433 select.input-group-lg>.form-control,.factory-bootstrap-433 select.input-group-lg>.input-group-addon,.factory-bootstrap-433 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-433 textarea.input-group-lg>.form-control,.factory-bootstrap-433 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-433 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-433 .input-group-sm>.form-control,.factory-bootstrap-433 .input-group-sm>.input-group-addon,.factory-bootstrap-433 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-433 select.input-group-sm>.form-control,.factory-bootstrap-433 select.input-group-sm>.input-group-addon,.factory-bootstrap-433 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-433 textarea.input-group-sm>.form-control,.factory-bootstrap-433 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-433 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-433 .input-group .form-control,.factory-bootstrap-433 .input-group-addon,.factory-bootstrap-433 .input-group-btn{display:table-cell}.factory-bootstrap-433 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-433 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-433 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-433 .input-group-addon,.factory-bootstrap-433 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-433 .input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.factory-bootstrap-433 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-433 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-433 .input-group-addon input[type=checkbox],.factory-bootstrap-433 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-433 .input-group .form-control:first-child,.factory-bootstrap-433 .input-group-addon:first-child,.factory-bootstrap-433 .input-group-btn:first-child>.btn,.factory-bootstrap-433 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-433 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-433 .input-group-addon:first-child{border-right:0}.factory-bootstrap-433 .input-group .form-control:last-child,.factory-bootstrap-433 .input-group-addon:last-child,.factory-bootstrap-433 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-433 .input-group-btn:last-child>.btn,.factory-bootstrap-433 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .input-group-addon:last-child{border-left:0}.factory-bootstrap-433 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-433 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-433 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-433 .input-group-btn>.btn{position:relative}.factory-bootstrap-433 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-433 .input-group-btn>.btn:active,.factory-bootstrap-433 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-433 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-433 .nav:after,.factory-bootstrap-433 .nav:before{display:table;content:" "}.factory-bootstrap-433 .nav:after{clear:both}.factory-bootstrap-433 .nav>li{position:relative;display:block}.factory-bootstrap-433 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-433 .nav>li>a:focus,.factory-bootstrap-433 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-433 .nav>li.disabled>a{color:#999}.factory-bootstrap-433 .nav>li.disabled>a:focus,.factory-bootstrap-433 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-433 .nav .open>a,.factory-bootstrap-433 .nav .open>a:focus,.factory-bootstrap-433 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-433 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-433 .nav>li>a>img{max-width:none}.factory-bootstrap-433 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-433 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-433 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-433 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-433 .nav-tabs>li.active>a,.factory-bootstrap-433 .nav-tabs>li.active>a:focus,.factory-bootstrap-433 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-433 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-433 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-433 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-433 .nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.factory-bootstrap-433 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-433 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-433 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-433 .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.factory-bootstrap-433 .nav-pills>li{float:left}.factory-bootstrap-433 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-433 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-433 .nav-pills>li.active>a,.factory-bootstrap-433 .nav-pills>li.active>a:focus,.factory-bootstrap-433 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-433 .nav-stacked>li{float:none}.factory-bootstrap-433 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-433 .nav-justified{width:100%}.factory-bootstrap-433 .nav-justified>li{float:none}.factory-bootstrap-433 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-433 .nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.factory-bootstrap-433 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-433 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-433 .nav-tabs-justified>.active>a,.factory-bootstrap-433 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-433 .nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.factory-bootstrap-433 .tab-content>.tab-pane{display:none}.factory-bootstrap-433 .tab-content>.active{display:block}.factory-bootstrap-433 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-433 .navbar:after,.factory-bootstrap-433 .navbar:before{display:table;content:" "}.factory-bootstrap-433 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-433 .navbar-header:after,.factory-bootstrap-433 .navbar-header:before{display:table;content:" "}.factory-bootstrap-433 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-433 .navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.factory-bootstrap-433 .navbar-collapse:after,.factory-bootstrap-433 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-433 .navbar-collapse:after{clear:both}.factory-bootstrap-433 .navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.factory-bootstrap-433 .container>.navbar-collapse,.factory-bootstrap-433 .container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.factory-bootstrap-433 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-433 .navbar-fixed-bottom,.factory-bootstrap-433 .navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.factory-bootstrap-433 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-433 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-433 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-433 .navbar-brand:focus,.factory-bootstrap-433 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-433 .navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.factory-bootstrap-433 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-433 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-433 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-433 .navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.factory-bootstrap-433 .navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form select.form-control{width:auto}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{float:none;margin-left:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.factory-bootstrap-433 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-433 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-433 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-433 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-433 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-433 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-433 .navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.factory-bootstrap-433 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-433 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-433 .navbar-default .navbar-brand:focus,.factory-bootstrap-433 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-433 .navbar-default .navbar-nav>li>a,.factory-bootstrap-433 .navbar-default .navbar-text{color:#777}.factory-bootstrap-433 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-433 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-433 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-433 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-433 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-433 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-433 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-433 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-433 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-433 .navbar-default .navbar-toggle:focus,.factory-bootstrap-433 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-433 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-433 .navbar-default .navbar-collapse,.factory-bootstrap-433 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-433 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-433 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-433 .navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.factory-bootstrap-433 .navbar-default .navbar-link{color:#777}.factory-bootstrap-433 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-433 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-433 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-433 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-433 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-433 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-433 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-433 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-433 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-433 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-433 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-433 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-433 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-433 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-433 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-433 .navbar-inverse .navbar-collapse,.factory-bootstrap-433 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-433 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-433 .navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.factory-bootstrap-433 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-433 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-433 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-433 .breadcrumb>li{display:inline-block}.factory-bootstrap-433 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-433 .breadcrumb>.active{color:#999}.factory-bootstrap-433 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-433 .pagination>li{display:inline}.factory-bootstrap-433 .pagination>li>a,.factory-bootstrap-433 .pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-433 .pagination>li:first-child>a,.factory-bootstrap-433 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-433 .pagination>li:last-child>a,.factory-bootstrap-433 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-433 .pagination>li>a:focus,.factory-bootstrap-433 .pagination>li>a:hover,.factory-bootstrap-433 .pagination>li>span:focus,.factory-bootstrap-433 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-433 .pagination>.disabled>a,.factory-bootstrap-433 .pagination>.disabled>a:focus,.factory-bootstrap-433 .pagination>.disabled>a:hover,.factory-bootstrap-433 .pagination>.disabled>span,.factory-bootstrap-433 .pagination>.disabled>span:focus,.factory-bootstrap-433 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-433 .pagination-lg>li>a,.factory-bootstrap-433 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-433 .pagination-lg>li:first-child>a,.factory-bootstrap-433 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-433 .pagination-lg>li:last-child>a,.factory-bootstrap-433 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-433 .pagination-sm>li>a,.factory-bootstrap-433 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-433 .pagination-sm>li:first-child>a,.factory-bootstrap-433 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-433 .pagination-sm>li:last-child>a,.factory-bootstrap-433 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-433 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-433 .pager:after,.factory-bootstrap-433 .pager:before{display:table;content:" "}.factory-bootstrap-433 .pager:after{clear:both}.factory-bootstrap-433 .pager li{display:inline}.factory-bootstrap-433 .pager li>a,.factory-bootstrap-433 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-433 .pager li>a:focus,.factory-bootstrap-433 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-433 .pager .next>a,.factory-bootstrap-433 .pager .next>span{float:right}.factory-bootstrap-433 .pager .previous>a,.factory-bootstrap-433 .pager .previous>span{float:left}.factory-bootstrap-433 .pager .disabled>a,.factory-bootstrap-433 .pager .disabled>a:focus,.factory-bootstrap-433 .pager .disabled>a:hover,.factory-bootstrap-433 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-433 .label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.factory-bootstrap-433 .label[href]:focus,.factory-bootstrap-433 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-433 .label:empty{display:none}.factory-bootstrap-433 .btn .label{position:relative;top:-1px}.factory-bootstrap-433 .label-default{background-color:#999}.factory-bootstrap-433 .label-default[href]:focus,.factory-bootstrap-433 .label-default[href]:hover{background-color:gray}.factory-bootstrap-433 .label-primary{background-color:#428bca}.factory-bootstrap-433 .label-primary[href]:focus,.factory-bootstrap-433 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-433 .label-success{background-color:#5cb85c}.factory-bootstrap-433 .label-success[href]:focus,.factory-bootstrap-433 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-433 .label-info{background-color:#5bc0de}.factory-bootstrap-433 .label-info[href]:focus,.factory-bootstrap-433 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-433 .label-warning{background-color:#f0ad4e}.factory-bootstrap-433 .label-warning[href]:focus,.factory-bootstrap-433 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-433 .label-danger{background-color:#d9534f}.factory-bootstrap-433 .label-danger[href]:focus,.factory-bootstrap-433 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-433 .badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.factory-bootstrap-433 .badge:empty{display:none}.factory-bootstrap-433 .btn .badge{position:relative;top:-1px}.factory-bootstrap-433 a.badge:focus,.factory-bootstrap-433 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-433 .nav-pills>.active>a>.badge,.factory-bootstrap-433 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-433 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-433 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-433 .jumbotron .h1,.factory-bootstrap-433 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-433 .jumbotron p{line-height:1.4}.factory-bootstrap-433 .container .jumbotron{border-radius:6px}.factory-bootstrap-433 .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.factory-bootstrap-433 .thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.factory-bootstrap-433 .thumbnail a>img,.factory-bootstrap-433 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-433 a.thumbnail.active,.factory-bootstrap-433 a.thumbnail:focus,.factory-bootstrap-433 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-433 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-433 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-433 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-433 .alert .alert-link{font-weight:700}.factory-bootstrap-433 .alert>p,.factory-bootstrap-433 .alert>ul{margin-bottom:0}.factory-bootstrap-433 .alert>p+p{margin-top:5px}.factory-bootstrap-433 .alert-dismissable{padding-right:35px}.factory-bootstrap-433 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-433 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-433 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-433 .alert-info .alert-link{color:#245269}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.factory-bootstrap-433 .progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.factory-bootstrap-433 .progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#2ea2cc;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.factory-bootstrap-433 .progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.factory-bootstrap-433 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-433 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-433 .progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-433 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-433 .progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-433 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-433 .progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-433 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-433 .progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-433 .media,.factory-bootstrap-433 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-433 .media,.factory-bootstrap-433 .media .media{margin-top:15px}.factory-bootstrap-433 .media:first-child{margin-top:0}.factory-bootstrap-433 .media-object{display:block}.factory-bootstrap-433 .media-heading{margin:0 0 5px}.factory-bootstrap-433 .media>.pull-left{margin-right:10px}.factory-bootstrap-433 .media>.pull-right{margin-left:10px}.factory-bootstrap-433 .media-list{padding-left:0;list-style:none}.factory-bootstrap-433 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-433 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-433 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-433 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-433 .list-group-item>.badge{float:right}.factory-bootstrap-433 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-433 a.list-group-item{color:#555}.factory-bootstrap-433 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-433 a.list-group-item:focus,.factory-bootstrap-433 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-433 a.list-group-item.active,.factory-bootstrap-433 a.list-group-item.active:focus,.factory-bootstrap-433 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-433 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-433 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-433 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-433 a.list-group-item.active .list-group-item-text,.factory-bootstrap-433 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-433 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-433 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-433 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-433 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-433 .panel-body{padding:15px}.factory-bootstrap-433 .panel-body:after,.factory-bootstrap-433 .panel-body:before{display:table;content:" "}.factory-bootstrap-433 .panel-body:after{clear:both}.factory-bootstrap-433 .panel>.list-group{margin-bottom:0}.factory-bootstrap-433 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-433 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-433 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-433 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-433 .panel>.table,.factory-bootstrap-433 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-433 .panel>.panel-body+.table,.factory-bootstrap-433 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-433 .panel>.table>tbody:first-child td,.factory-bootstrap-433 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-433 .panel>.table-bordered,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-433 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-433 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-433 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-433 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-433 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-433 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-433 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-433 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-433 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-433 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-433 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-433 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-433 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-433 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-433 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-433 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-433 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-433 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-433 .panel-title>a{color:inherit}.factory-bootstrap-433 .panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.factory-bootstrap-433 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-433 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-433 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-433 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-433 .panel-group .panel-footer{border-top:0}.factory-bootstrap-433 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-433 .panel-default{border-color:#ddd}.factory-bootstrap-433 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-433 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-433 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-433 .panel-primary{border-color:#428bca}.factory-bootstrap-433 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-433 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-433 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-433 .panel-success{border-color:#d6e9c6}.factory-bootstrap-433 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-433 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-433 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-433 .panel-warning{border-color:#faebcc}.factory-bootstrap-433 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-433 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-433 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-433 .panel-danger{border-color:#ebccd1}.factory-bootstrap-433 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-433 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-433 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-433 .panel-info{border-color:#bce8f1}.factory-bootstrap-433 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-433 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-433 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-433 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-433 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-433 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-433 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-433 .close{float:right;font-size:14px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.3;filter:alpha(opacity=30)}.factory-bootstrap-433 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-433 .close:focus,.factory-bootstrap-433 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-433 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-433 .modal-open{overflow:hidden}.factory-bootstrap-433 .modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll;width:auto;margin-left:0;background-color:transparent;border:0}.factory-bootstrap-433 .modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.factory-bootstrap-433 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-433 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-433 .modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box}.factory-bootstrap-433 .modal-backdrop,.factory-bootstrap-433-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-433 .modal-backdrop.fade,.factory-bootstrap-433-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-433 .modal-backdrop.in,.factory-bootstrap-433-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-433 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-433 .modal-header .close{margin-top:-2px}.factory-bootstrap-433 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-433 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-433 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-433 .modal-footer:after,.factory-bootstrap-433 .modal-footer:before{display:table;content:" "}.factory-bootstrap-433 .modal-footer:after{clear:both}.factory-bootstrap-433 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-433 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-433 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-433 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-433 .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}}.factory-bootstrap-433 .tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.factory-bootstrap-433 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-433 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-433 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-433 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-433 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-433 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-433 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-433 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-433 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-433 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-433 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-433 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-433 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-433 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-433 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-433 .popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);background-clip:padding-box}.factory-bootstrap-433 .popover.top{margin-top:-10px}.factory-bootstrap-433 .popover.right{margin-left:10px}.factory-bootstrap-433 .popover.bottom{margin-top:10px}.factory-bootstrap-433 .popover.left{margin-left:-10px}.factory-bootstrap-433 .popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.factory-bootstrap-433 .popover-content{padding:9px 14px}.factory-bootstrap-433 .popover .arrow,.factory-bootstrap-433 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-433 .popover .arrow{border-width:11px}.factory-bootstrap-433 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-433 .popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.factory-bootstrap-433 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-433 .popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.factory-bootstrap-433 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-433 .popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);border-top-width:0}.factory-bootstrap-433 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-433 .popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,.25);border-right-width:0}.factory-bootstrap-433 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-433 .carousel{position:relative}.factory-bootstrap-433 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-433 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-433 .carousel-inner>.item>a>img,.factory-bootstrap-433 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-433 .carousel-inner>.active,.factory-bootstrap-433 .carousel-inner>.next,.factory-bootstrap-433 .carousel-inner>.prev{display:block}.factory-bootstrap-433 .carousel-inner>.active{left:0}.factory-bootstrap-433 .carousel-inner>.next,.factory-bootstrap-433 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-433 .carousel-inner>.next{left:100%}.factory-bootstrap-433 .carousel-inner>.prev{left:-100%}.factory-bootstrap-433 .carousel-inner>.next.left,.factory-bootstrap-433 .carousel-inner>.prev.right{left:0}.factory-bootstrap-433 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-433 .carousel-inner>.active.right{left:100%}.factory-bootstrap-433 .carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-433 .carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.factory-bootstrap-433 .carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.factory-bootstrap-433 .carousel-control:focus,.factory-bootstrap-433 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-433 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-433 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-433 .carousel-control .icon-next,.factory-bootstrap-433 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-433 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-433 .carousel-control .icon-prev{left:50%}.factory-bootstrap-433 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-433 .carousel-control .icon-next{right:50%}.factory-bootstrap-433 .carousel-control .icon-next,.factory-bootstrap-433 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-433 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-433 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-433 .carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.factory-bootstrap-433 .carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.factory-bootstrap-433 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-433 .carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.factory-bootstrap-433 .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicons-chevron-left,.carousel-control .glyphicons-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.factory-bootstrap-433 .clearfix:after,.factory-bootstrap-433 .clearfix:before{display:table;content:" "}.factory-bootstrap-433 .clearfix:after{clear:both}.factory-bootstrap-433 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-433 .pull-right{float:right!important}.factory-bootstrap-433 .pull-left{float:left!important}.factory-bootstrap-433 .hide{display:none!important}.factory-bootstrap-433 .show{display:block!important}.factory-bootstrap-433 .invisible{visibility:hidden}.factory-bootstrap-433 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-433 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-433 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-433 .visible-lg,.factory-bootstrap-433 .visible-md,.factory-bootstrap-433 .visible-sm,.factory-bootstrap-433 .visible-xs,.factory-bootstrap-433 td.visible-lg,.factory-bootstrap-433 td.visible-md,.factory-bootstrap-433 td.visible-sm,.factory-bootstrap-433 td.visible-xs,.factory-bootstrap-433 th.visible-lg,.factory-bootstrap-433 th.visible-md,.factory-bootstrap-433 th.visible-sm,.factory-bootstrap-433 th.visible-xs,.factory-bootstrap-433 tr.visible-lg,.factory-bootstrap-433 tr.visible-md,.factory-bootstrap-433 tr.visible-sm,.factory-bootstrap-433 tr.visible-xs{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}table.visible-xs.visible-sm{display:table}tr.visible-xs.visible-sm{display:table-row!important}td.visible-xs.visible-sm,th.visible-xs.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}table.visible-xs.visible-md{display:table}tr.visible-xs.visible-md{display:table-row!important}td.visible-xs.visible-md,th.visible-xs.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-xs.visible-lg{display:block!important}table.visible-xs.visible-lg{display:table}tr.visible-xs.visible-lg{display:table-row!important}td.visible-xs.visible-lg,th.visible-xs.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-sm.visible-xs{display:block!important}table.visible-sm.visible-xs{display:table}tr.visible-sm.visible-xs{display:table-row!important}td.visible-sm.visible-xs,th.visible-sm.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}table.visible-sm.visible-md{display:table}tr.visible-sm.visible-md{display:table-row!important}td.visible-sm.visible-md,th.visible-sm.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-sm.visible-lg{display:block!important}table.visible-sm.visible-lg{display:table}tr.visible-sm.visible-lg{display:table-row!important}td.visible-sm.visible-lg,th.visible-sm.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-md.visible-xs{display:block!important}table.visible-md.visible-xs{display:table}tr.visible-md.visible-xs{display:table-row!important}td.visible-md.visible-xs,th.visible-md.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}table.visible-md.visible-sm{display:table}tr.visible-md.visible-sm{display:table-row!important}td.visible-md.visible-sm,th.visible-md.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-md.visible-lg{display:block!important}table.visible-md.visible-lg{display:table}tr.visible-md.visible-lg{display:table-row!important}td.visible-md.visible-lg,th.visible-md.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-lg.visible-xs{display:block!important}table.visible-lg.visible-xs{display:table}tr.visible-lg.visible-xs{display:table-row!important}td.visible-lg.visible-xs,th.visible-lg.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}table.visible-lg.visible-sm{display:table}tr.visible-lg.visible-sm{display:table-row!important}td.visible-lg.visible-sm,th.visible-lg.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}table.visible-lg.visible-md{display:table}tr.visible-lg.visible-md{display:table-row!important}td.visible-lg.visible-md,th.visible-lg.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}.factory-bootstrap-433 .hidden-xs{display:block!important}.factory-bootstrap-433 table.hidden-xs{display:table}.factory-bootstrap-433 tr.hidden-xs{display:table-row!important}.factory-bootstrap-433 td.hidden-xs,.factory-bootstrap-433 th.hidden-xs{display:table-cell!important}@media (max-width:767px){.hidden-xs,td.hidden-xs,th.hidden-xs,tr.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm,th.hidden-xs.hidden-sm,tr.hidden-xs.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md,td.hidden-xs.hidden-md,th.hidden-xs.hidden-md,tr.hidden-xs.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg,th.hidden-xs.hidden-lg,tr.hidden-xs.hidden-lg{display:none!important}}.factory-bootstrap-433 .hidden-sm{display:block!important}.factory-bootstrap-433 table.hidden-sm{display:table}.factory-bootstrap-433 tr.hidden-sm{display:table-row!important}.factory-bootstrap-433 td.hidden-sm,.factory-bootstrap-433 th.hidden-sm{display:table-cell!important}@media (max-width:767px){.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs,th.hidden-sm.hidden-xs,tr.hidden-sm.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm,td.hidden-sm,th.hidden-sm,tr.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md,td.hidden-sm.hidden-md,th.hidden-sm.hidden-md,tr.hidden-sm.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg,th.hidden-sm.hidden-lg,tr.hidden-sm.hidden-lg{display:none!important}}.factory-bootstrap-433 .hidden-md{display:block!important}.factory-bootstrap-433 table.hidden-md{display:table}.factory-bootstrap-433 tr.hidden-md{display:table-row!important}.factory-bootstrap-433 td.hidden-md,.factory-bootstrap-433 th.hidden-md{display:table-cell!important}@media (max-width:767px){.hidden-md.hidden-xs,td.hidden-md.hidden-xs,th.hidden-md.hidden-xs,tr.hidden-md.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-md.hidden-sm,td.hidden-md.hidden-sm,th.hidden-md.hidden-sm,tr.hidden-md.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md,td.hidden-md,th.hidden-md,tr.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-md.hidden-lg,td.hidden-md.hidden-lg,th.hidden-md.hidden-lg,tr.hidden-md.hidden-lg{display:none!important}}.factory-bootstrap-433 .hidden-lg{display:block!important}.factory-bootstrap-433 table.hidden-lg{display:table}.factory-bootstrap-433 tr.hidden-lg{display:table-row!important}.factory-bootstrap-433 td.hidden-lg,.factory-bootstrap-433 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-433 .hidden-lg.hidden-xs,.factory-bootstrap-433 td.hidden-lg.hidden-xs,.factory-bootstrap-433 th.hidden-lg.hidden-xs,.factory-bootstrap-433 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-433 .hidden-lg.hidden-sm,.factory-bootstrap-433 td.hidden-lg.hidden-sm,.factory-bootstrap-433 th.hidden-lg.hidden-sm,.factory-bootstrap-433 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-433 .hidden-lg.hidden-md,.factory-bootstrap-433 td.hidden-lg.hidden-md,.factory-bootstrap-433 th.hidden-lg.hidden-md,.factory-bootstrap-433 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-433 .hidden-lg,.factory-bootstrap-433 td.hidden-lg,.factory-bootstrap-433 th.hidden-lg,.factory-bootstrap-433 tr.hidden-lg{display:none!important}}.factory-bootstrap-433 .visible-print,.factory-bootstrap-433 td.visible-print,.factory-bootstrap-433 th.visible-print,.factory-bootstrap-433 tr.visible-print{display:none!important}@media print{.factory-bootstrap-433 .visible-print{display:block!important}.factory-bootstrap-433 table.visible-print{display:table}.factory-bootstrap-433 tr.visible-print{display:table-row!important}.factory-bootstrap-433 td.visible-print,.factory-bootstrap-433 th.visible-print{display:table-cell!important}.factory-bootstrap-433 .hidden-print,.factory-bootstrap-433 td.hidden-print,.factory-bootstrap-433 th.hidden-print,.factory-bootstrap-433 tr.hidden-print{display:none!important}}/*!
12
  * Factory Default Bootstrap Theme
13
  *
14
  * The code is based on Bootstrap v2.1.1
@@ -22,4 +22,4 @@
22
  *
23
  * @package factory-bootstrap
24
  * @since 1.0.0
25
- */.factory-bootstrap-433 .btn-danger,.factory-bootstrap-433 .btn-default,.factory-bootstrap-433 .btn-info,.factory-bootstrap-433 .btn-primary,.factory-bootstrap-433 .btn-success,.factory-bootstrap-433 .btn-warning{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-433 .btn-danger.active,.factory-bootstrap-433 .btn-danger:active,.factory-bootstrap-433 .btn-default.active,.factory-bootstrap-433 .btn-default:active,.factory-bootstrap-433 .btn-info.active,.factory-bootstrap-433 .btn-info:active,.factory-bootstrap-433 .btn-primary.active,.factory-bootstrap-433 .btn-primary:active,.factory-bootstrap-433 .btn-success.active,.factory-bootstrap-433 .btn-success:active,.factory-bootstrap-433 .btn-warning.active,.factory-bootstrap-433 .btn-warning:active{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 1px rgba(0,0,0,.1)}.factory-bootstrap-433 .btn.active,.factory-bootstrap-433 .btn:active{background-image:none}.factory-bootstrap-433 .btn-default{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);vertical-align:top}.factory-bootstrap-433 .btn-default.active,.factory-bootstrap-433 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-433 .btn-gold{font-weight:700;padding:7px 12px;cursor:pointer;line-height:16px;display:inline-block;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;box-shadow:#e3e3e3 0 1px 1px;-moz-box-shadow:0 1px 1px rgba(000,000,000,.1),inset 0 1px 1px rgba(255,255,255,.7);-webkit-box-shadow:0 1px 1px rgba(000,000,000,.1),inset 0 1px 1px rgba(255,255,255,.7);text-shadow:1px 1px 0 #ffe8b2;color:#7c5d1b;border:1px solid #d6a437;background:#feeb80}.factory-bootstrap-433 .btn-gold:focus,.factory-bootstrap-433 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-433 .btn-gold.active,.factory-bootstrap-433 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-433 .btn-primary{background:#2ea2cc;border-color:#0074a2;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#1e8cbe;border-color:#0074a2;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6);box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff}.factory-bootstrap-433 .btn-primary.active,.factory-bootstrap-433 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-433 .btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);background-repeat:repeat-x;border-color:#3e8f3e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-433 .btn-success:focus,.factory-bootstrap-433 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-433 .btn-success.active,.factory-bootstrap-433 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-433 .btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);background-repeat:repeat-x;border-color:#e38d13;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-433 .btn-warning:focus,.factory-bootstrap-433 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-433 .btn-warning.active,.factory-bootstrap-433 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-433 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-433 .btn-danger.active,.factory-bootstrap-433 .btn-danger:active,.factory-bootstrap-433 .btn-danger:focus,.factory-bootstrap-433 .btn-danger:hover,.factory-bootstrap-433 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-433 .btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);background-repeat:repeat-x;border-color:#28a4c9;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-433 .btn-info:focus,.factory-bootstrap-433 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-433 .btn-info.active,.factory-bootstrap-433 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-433 .img-thumbnail,.factory-bootstrap-433 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-433 .dropdown-menu>li>a:focus,.factory-bootstrap-433 .dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.factory-bootstrap-433 .dropdown-menu>.active>a,.factory-bootstrap-433 .dropdown-menu>.active>a:focus,.factory-bootstrap-433 .dropdown-menu>.active>a:hover{background-color:#357ebd;background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)}.factory-bootstrap-433 .navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.factory-bootstrap-433 .navbar-default .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f3f3f3 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f3f3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.factory-bootstrap-433 .navbar-brand,.factory-bootstrap-433 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-433 .navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-433 .navbar-inverse .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#222 0,#282828 100%);background-image:linear-gradient(to bottom,#222 0,#282828 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.factory-bootstrap-433 .navbar-inverse .navbar-brand,.factory-bootstrap-433 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-433 .navbar-fixed-bottom,.factory-bootstrap-433 .navbar-fixed-top,.factory-bootstrap-433 .navbar-static-top{border-radius:0}.factory-bootstrap-433 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-433 .alert .actions{padding-top:10px}.factory-bootstrap-433 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-433 .alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0)}.factory-bootstrap-433 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-433 .alert-normal,.factory-bootstrap-433 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-433 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-433 .alert-danger a:not(.btn),.factory-bootstrap-433 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-433 .progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0)}.factory-bootstrap-433 .progress-bar{background-image:-webkit-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0)}.factory-bootstrap-433 .progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0)}.factory-bootstrap-433 .progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0)}.factory-bootstrap-433 .progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0)}.factory-bootstrap-433 .progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0)}.factory-bootstrap-433 .list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-433 .list-group-item.active,.factory-bootstrap-433 .list-group-item.active:focus,.factory-bootstrap-433 .list-group-item.active:hover{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0)}.factory-bootstrap-433 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-433 .panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.factory-bootstrap-433 .panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)}.factory-bootstrap-433 .panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0)}.factory-bootstrap-433 .panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0)}.factory-bootstrap-433 .panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0)}.factory-bootstrap-433 .panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0)}.factory-bootstrap-433 .well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}.factory-bootstrap-433 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-433 .factory-hidden{display:none}.factory-bootstrap-433 .factory-ajax-loader{width:25px;height:25px;background:url(../assets/images/loader-sm-tr.gif)}.factory-control-error{background-color:rgba(0,0,0,.8);white-space:normal;z-index:10;font-weight:400;line-height:150%;border-radius:4px;color:#fff;font-size:13px;margin-top:5px;padding:4px 10px 3px;max-width:500px;display:inline-block}.factory-control-error i{margin:0 7px 0 1px}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 article,.factory-bootstrap-436 aside,.factory-bootstrap-436 details,.factory-bootstrap-436 figcaption,.factory-bootstrap-436 figure,.factory-bootstrap-436 footer,.factory-bootstrap-436 header,.factory-bootstrap-436 hgroup,.factory-bootstrap-436 main,.factory-bootstrap-436 nav,.factory-bootstrap-436 section,.factory-bootstrap-436 summary{display:block}.factory-bootstrap-436 audio,.factory-bootstrap-436 canvas,.factory-bootstrap-436 video{display:inline-block}.factory-bootstrap-436 audio:not([controls]){display:none;height:0}.factory-bootstrap-436 [hidden],.factory-bootstrap-436 template{display:none}.factory-bootstrap-436 body{margin:0}.factory-bootstrap-436 a{background:0 0}.factory-bootstrap-436 a:focus{outline:thin dotted}.factory-bootstrap-436 a:active,.factory-bootstrap-436 a:hover{outline:0}.factory-bootstrap-436 h1{margin:.67em 0}.factory-bootstrap-436 b,.factory-bootstrap-436 strong{font-weight:700}.factory-bootstrap-436 dfn{font-style:italic}.factory-bootstrap-436 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-436 mark{color:#000;background:#ff0}.factory-bootstrap-436 code,.factory-bootstrap-436 kbd,.factory-bootstrap-436 pre,.factory-bootstrap-436 samp{font-size:1em}.factory-bootstrap-436 pre{white-space:pre-wrap}.factory-bootstrap-436 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-436 sub,.factory-bootstrap-436 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-436 sup{top:-.5em}.factory-bootstrap-436 sub{bottom:-.25em}.factory-bootstrap-436 img{border:0}.factory-bootstrap-436 svg:not(:root){overflow:hidden}.factory-bootstrap-436 figure{margin:0}.factory-bootstrap-436 button,.factory-bootstrap-436 input,.factory-bootstrap-436 select,.factory-bootstrap-436 textarea{margin:0}.factory-bootstrap-436 button,.factory-bootstrap-436 select{text-transform:none}.factory-bootstrap-436 select{padding-right:4px!important}.factory-bootstrap-436 button,.factory-bootstrap-436 input[type=reset],.factory-bootstrap-436 input[type=submit],html .factory-bootstrap-436 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-436 button[disabled],html .factory-bootstrap-436 input[disabled]{cursor:default}.factory-bootstrap-436 input[type=checkbox],.factory-bootstrap-436 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-436 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-436 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-436 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-436 button::-moz-focus-inner,.factory-bootstrap-436 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-436 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-436 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-436 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-436 a,.factory-bootstrap-436 a:visited{text-decoration:underline}.factory-bootstrap-436 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-436 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-436 a[href^="javascript:"]:after,.factory-bootstrap-436 a[href^="#"]:after{content:""}.factory-bootstrap-436 blockquote,.factory-bootstrap-436 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-436 thead{display:table-header-group}.factory-bootstrap-436 img,.factory-bootstrap-436 tr{page-break-inside:avoid}.factory-bootstrap-436 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-436 h2,.factory-bootstrap-436 h3,.factory-bootstrap-436 p{orphans:3;widows:3}.factory-bootstrap-436 h2,.factory-bootstrap-436 h3{page-break-after:avoid}.factory-bootstrap-436 select{background:#fff!important}.factory-bootstrap-436 .navbar{display:none}.factory-bootstrap-436 .table td,.factory-bootstrap-436 .table th{background-color:#fff!important}.factory-bootstrap-436 .btn>.caret,.factory-bootstrap-436 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-436 .label{border:1px solid #000}.factory-bootstrap-436 .table{border-collapse:collapse!important}.factory-bootstrap-436 .table-bordered td,.factory-bootstrap-436 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-436 *,.factory-bootstrap-436 :after,.factory-bootstrap-436 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-436{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-436 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-436 button,.factory-bootstrap-436 input,.factory-bootstrap-436 select,.factory-bootstrap-436 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-436 img{vertical-align:middle}.factory-bootstrap-436 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-436 .img-rounded{border-radius:6px}.factory-bootstrap-436 .img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.factory-bootstrap-436 .img-circle{border-radius:50%}.factory-bootstrap-436 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-436 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-436 .h1,.factory-bootstrap-436 .h2,.factory-bootstrap-436 .h3,.factory-bootstrap-436 .h4,.factory-bootstrap-436 .h5,.factory-bootstrap-436 .h6,.factory-bootstrap-436 h1,.factory-bootstrap-436 h2,.factory-bootstrap-436 h3,.factory-bootstrap-436 h4,.factory-bootstrap-436 h5,.factory-bootstrap-436 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-436 .h1 .small,.factory-bootstrap-436 .h1 small,.factory-bootstrap-436 .h2 .small,.factory-bootstrap-436 .h2 small,.factory-bootstrap-436 .h3 .small,.factory-bootstrap-436 .h3 small,.factory-bootstrap-436 .h4 .small,.factory-bootstrap-436 .h4 small,.factory-bootstrap-436 .h5 .small,.factory-bootstrap-436 .h5 small,.factory-bootstrap-436 .h6 .small,.factory-bootstrap-436 .h6 small,.factory-bootstrap-436 h1 .small,.factory-bootstrap-436 h1 small,.factory-bootstrap-436 h2 .small,.factory-bootstrap-436 h2 small,.factory-bootstrap-436 h3 .small,.factory-bootstrap-436 h3 small,.factory-bootstrap-436 h4 .small,.factory-bootstrap-436 h4 small,.factory-bootstrap-436 h5 .small,.factory-bootstrap-436 h5 small,.factory-bootstrap-436 h6 .small,.factory-bootstrap-436 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-436 h1,.factory-bootstrap-436 h2,.factory-bootstrap-436 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-436 h1 .small,.factory-bootstrap-436 h1 small,.factory-bootstrap-436 h2 .small,.factory-bootstrap-436 h2 small,.factory-bootstrap-436 h3 .small,.factory-bootstrap-436 h3 small{font-size:65%}.factory-bootstrap-436 h4,.factory-bootstrap-436 h5,.factory-bootstrap-436 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-436 h4 .small,.factory-bootstrap-436 h4 small,.factory-bootstrap-436 h5 .small,.factory-bootstrap-436 h5 small,.factory-bootstrap-436 h6 .small,.factory-bootstrap-436 h6 small{font-size:75%}.factory-bootstrap-436 .h1,.factory-bootstrap-436 h1{font-size:36px}.factory-bootstrap-436 .h2,.factory-bootstrap-436 h2{font-size:30px}.factory-bootstrap-436 .h3,.factory-bootstrap-436 h3{font-size:24px}.factory-bootstrap-436 .h4,.factory-bootstrap-436 h4{font-size:18px}.factory-bootstrap-436 .h5,.factory-bootstrap-436 h5{font-size:14px}.factory-bootstrap-436 .h6,.factory-bootstrap-436 h6{font-size:12px}.factory-bootstrap-436 p{margin:0 0 10px}.factory-bootstrap-436 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-436 .small,.factory-bootstrap-436 small{font-size:85%}.factory-bootstrap-436 cite{font-style:normal}.factory-bootstrap-436 .text-muted{color:#999}.factory-bootstrap-436 .text-primary{color:#428bca}.factory-bootstrap-436 .text-primary:hover{color:#3071a9}.factory-bootstrap-436 .text-warning{color:#8a6d3b}.factory-bootstrap-436 .text-warning:hover{color:#66512c}.factory-bootstrap-436 .text-danger{color:#a94442}.factory-bootstrap-436 .text-danger:hover{color:#843534}.factory-bootstrap-436 .text-success{color:#3c763d}.factory-bootstrap-436 .text-success:hover{color:#2b542c}.factory-bootstrap-436 .text-info{color:#31708f}.factory-bootstrap-436 .text-info:hover{color:#245269}.factory-bootstrap-436 .text-left{text-align:left}.factory-bootstrap-436 .text-right{text-align:right}.factory-bootstrap-436 .text-center{text-align:center}.factory-bootstrap-436 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-436 ol,.factory-bootstrap-436 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-436 ol ol,.factory-bootstrap-436 ol ul,.factory-bootstrap-436 ul ol,.factory-bootstrap-436 ul ul{margin-bottom:0}.factory-bootstrap-436 .list-inline,.factory-bootstrap-436 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-436 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-436 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-436 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-436 dd,.factory-bootstrap-436 dt{line-height:1.428571429}.factory-bootstrap-436 dt{font-weight:700}.factory-bootstrap-436 dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:after,.dl-horizontal dd:before{display:table;content:" "}.dl-horizontal dd:after{clear:both}}.factory-bootstrap-436 abbr[data-original-title],.factory-bootstrap-436 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-436 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-436 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-436 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-436 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-436 blockquote .small,.factory-bootstrap-436 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-436 blockquote .small:before,.factory-bootstrap-436 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-436 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-436 blockquote.pull-right .small,.factory-bootstrap-436 blockquote.pull-right p,.factory-bootstrap-436 blockquote.pull-right small{text-align:right}.factory-bootstrap-436 blockquote.pull-right .small:before,.factory-bootstrap-436 blockquote.pull-right small:before{content:''}.factory-bootstrap-436 blockquote.pull-right .small:after,.factory-bootstrap-436 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-436 blockquote:after,.factory-bootstrap-436 blockquote:before{content:""}.factory-bootstrap-436 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-436 code,.factory-bootstrap-436 kbd,.factory-bootstrap-436 pre,.factory-bootstrap-436 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-436 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-436 pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.factory-bootstrap-436 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-436 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-436 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-436 .container:after,.factory-bootstrap-436 .container:before{display:table;content:" "}.factory-bootstrap-436 .container:after{clear:both}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.factory-bootstrap-436 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-436 .row:after,.factory-bootstrap-436 .row:before{display:table;content:" "}.factory-bootstrap-436 .row:after{clear:both}.factory-bootstrap-436 .col-lg-1,.factory-bootstrap-436 .col-lg-10,.factory-bootstrap-436 .col-lg-11,.factory-bootstrap-436 .col-lg-12,.factory-bootstrap-436 .col-lg-2,.factory-bootstrap-436 .col-lg-3,.factory-bootstrap-436 .col-lg-4,.factory-bootstrap-436 .col-lg-5,.factory-bootstrap-436 .col-lg-6,.factory-bootstrap-436 .col-lg-7,.factory-bootstrap-436 .col-lg-8,.factory-bootstrap-436 .col-lg-9,.factory-bootstrap-436 .col-md-1,.factory-bootstrap-436 .col-md-10,.factory-bootstrap-436 .col-md-11,.factory-bootstrap-436 .col-md-12,.factory-bootstrap-436 .col-md-2,.factory-bootstrap-436 .col-md-3,.factory-bootstrap-436 .col-md-4,.factory-bootstrap-436 .col-md-5,.factory-bootstrap-436 .col-md-6,.factory-bootstrap-436 .col-md-7,.factory-bootstrap-436 .col-md-8,.factory-bootstrap-436 .col-md-9,.factory-bootstrap-436 .col-sm-1,.factory-bootstrap-436 .col-sm-10,.factory-bootstrap-436 .col-sm-11,.factory-bootstrap-436 .col-sm-12,.factory-bootstrap-436 .col-sm-2,.factory-bootstrap-436 .col-sm-3,.factory-bootstrap-436 .col-sm-4,.factory-bootstrap-436 .col-sm-5,.factory-bootstrap-436 .col-sm-6,.factory-bootstrap-436 .col-sm-7,.factory-bootstrap-436 .col-sm-8,.factory-bootstrap-436 .col-sm-9,.factory-bootstrap-436 .col-xs-1,.factory-bootstrap-436 .col-xs-10,.factory-bootstrap-436 .col-xs-11,.factory-bootstrap-436 .col-xs-12,.factory-bootstrap-436 .col-xs-2,.factory-bootstrap-436 .col-xs-3,.factory-bootstrap-436 .col-xs-4,.factory-bootstrap-436 .col-xs-5,.factory-bootstrap-436 .col-xs-6,.factory-bootstrap-436 .col-xs-7,.factory-bootstrap-436 .col-xs-8,.factory-bootstrap-436 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-436 .col-xs-1,.factory-bootstrap-436 .col-xs-10,.factory-bootstrap-436 .col-xs-11,.factory-bootstrap-436 .col-xs-12,.factory-bootstrap-436 .col-xs-2,.factory-bootstrap-436 .col-xs-3,.factory-bootstrap-436 .col-xs-4,.factory-bootstrap-436 .col-xs-5,.factory-bootstrap-436 .col-xs-6,.factory-bootstrap-436 .col-xs-7,.factory-bootstrap-436 .col-xs-8,.factory-bootstrap-436 .col-xs-9{float:left}.factory-bootstrap-436 .col-xs-12{width:100%}.factory-bootstrap-436 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-436 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-436 .col-xs-9{width:75%}.factory-bootstrap-436 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-436 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-436 .col-xs-6{width:50%}.factory-bootstrap-436 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-436 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-436 .col-xs-3{width:25%}.factory-bootstrap-436 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-436 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-436 .col-xs-pull-12{right:100%}.factory-bootstrap-436 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-436 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-436 .col-xs-pull-9{right:75%}.factory-bootstrap-436 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-436 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-436 .col-xs-pull-6{right:50%}.factory-bootstrap-436 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-436 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-436 .col-xs-pull-3{right:25%}.factory-bootstrap-436 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-436 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-436 .col-xs-pull-0{right:0}.factory-bootstrap-436 .col-xs-push-12{left:100%}.factory-bootstrap-436 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-436 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-436 .col-xs-push-9{left:75%}.factory-bootstrap-436 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-436 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-436 .col-xs-push-6{left:50%}.factory-bootstrap-436 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-436 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-436 .col-xs-push-3{left:25%}.factory-bootstrap-436 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-436 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-436 .col-xs-push-0{left:0}.factory-bootstrap-436 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-436 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-436 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-436 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-436 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-436 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-436 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-436 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-436 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-436 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-436 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-436 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-436 .col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666666666666%}.col-sm-10{width:83.33333333333334%}.col-sm-9{width:75%}.col-sm-8{width:66.66666666666666%}.col-sm-7{width:58.333333333333336%}.col-sm-6{width:50%}.col-sm-5{width:41.66666666666667%}.col-sm-4{width:33.33333333333333%}.col-sm-3{width:25%}.col-sm-2{width:16.666666666666664%}.col-sm-1{width:8.333333333333332%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666666666666%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666666666666%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666666666666%}.col-md-10{width:83.33333333333334%}.col-md-9{width:75%}.col-md-8{width:66.66666666666666%}.col-md-7{width:58.333333333333336%}.col-md-6{width:50%}.col-md-5{width:41.66666666666667%}.col-md-4{width:33.33333333333333%}.col-md-3{width:25%}.col-md-2{width:16.666666666666664%}.col-md-1{width:8.333333333333332%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666666666666%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666666666666%}.col-md-push-10{left:83.33333333333334%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666666666666%}.col-md-push-7{left:58.333333333333336%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666666666667%}.col-md-push-4{left:33.33333333333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.666666666666664%}.col-md-push-1{left:8.333333333333332%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666666666666%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666666666666%}.col-lg-10{width:83.33333333333334%}.col-lg-9{width:75%}.col-lg-8{width:66.66666666666666%}.col-lg-7{width:58.333333333333336%}.col-lg-6{width:50%}.col-lg-5{width:41.66666666666667%}.col-lg-4{width:33.33333333333333%}.col-lg-3{width:25%}.col-lg-2{width:16.666666666666664%}.col-lg-1{width:8.333333333333332%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666666666666%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666666666666%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-0{margin-left:0}}.factory-bootstrap-436 table{max-width:100%;background-color:transparent}.factory-bootstrap-436 th{text-align:left}.factory-bootstrap-436 .table{width:100%;margin-bottom:20px}.factory-bootstrap-436 .table>tbody>tr>td,.factory-bootstrap-436 .table>tbody>tr>th,.factory-bootstrap-436 .table>tfoot>tr>td,.factory-bootstrap-436 .table>tfoot>tr>th,.factory-bootstrap-436 .table>thead>tr>td,.factory-bootstrap-436 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-436 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-436 .table>caption+thead>tr:first-child>td,.factory-bootstrap-436 .table>caption+thead>tr:first-child>th,.factory-bootstrap-436 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-436 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-436 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-436 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-436 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-436 .table .table{background-color:#fff}.factory-bootstrap-436 .table-condensed>tbody>tr>td,.factory-bootstrap-436 .table-condensed>tbody>tr>th,.factory-bootstrap-436 .table-condensed>tfoot>tr>td,.factory-bootstrap-436 .table-condensed>tfoot>tr>th,.factory-bootstrap-436 .table-condensed>thead>tr>td,.factory-bootstrap-436 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-436 .table-bordered,.factory-bootstrap-436 .table-bordered>tbody>tr>td,.factory-bootstrap-436 .table-bordered>tbody>tr>th,.factory-bootstrap-436 .table-bordered>tfoot>tr>td,.factory-bootstrap-436 .table-bordered>tfoot>tr>th,.factory-bootstrap-436 .table-bordered>thead>tr>td,.factory-bootstrap-436 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-436 .table-bordered>thead>tr>td,.factory-bootstrap-436 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-436 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-436 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-436 .table-hover>tbody>tr:hover>td,.factory-bootstrap-436 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-436 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-436 table td[class*=col-],.factory-bootstrap-436 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-436 .table>tbody>.active>td,.factory-bootstrap-436 .table>tbody>.active>th,.factory-bootstrap-436 .table>tbody>tr>.active,.factory-bootstrap-436 .table>tfoot>.active>td,.factory-bootstrap-436 .table>tfoot>.active>th,.factory-bootstrap-436 .table>tfoot>tr>.active,.factory-bootstrap-436 .table>thead>.active>td,.factory-bootstrap-436 .table>thead>.active>th,.factory-bootstrap-436 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-436 .table-hover>tbody>.active:hover>td,.factory-bootstrap-436 .table-hover>tbody>.active:hover>th,.factory-bootstrap-436 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-436 .table>tbody>.success>td,.factory-bootstrap-436 .table>tbody>.success>th,.factory-bootstrap-436 .table>tbody>tr>.success,.factory-bootstrap-436 .table>tfoot>.success>td,.factory-bootstrap-436 .table>tfoot>.success>th,.factory-bootstrap-436 .table>tfoot>tr>.success,.factory-bootstrap-436 .table>thead>.success>td,.factory-bootstrap-436 .table>thead>.success>th,.factory-bootstrap-436 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-436 .table-hover>tbody>.success:hover>td,.factory-bootstrap-436 .table-hover>tbody>.success:hover>th,.factory-bootstrap-436 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-436 .table>tbody>.danger>td,.factory-bootstrap-436 .table>tbody>.danger>th,.factory-bootstrap-436 .table>tbody>tr>.danger,.factory-bootstrap-436 .table>tfoot>.danger>td,.factory-bootstrap-436 .table>tfoot>.danger>th,.factory-bootstrap-436 .table>tfoot>tr>.danger,.factory-bootstrap-436 .table>thead>.danger>td,.factory-bootstrap-436 .table>thead>.danger>th,.factory-bootstrap-436 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-436 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-436 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-436 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-436 .table>tbody>.warning>td,.factory-bootstrap-436 .table>tbody>.warning>th,.factory-bootstrap-436 .table>tbody>tr>.warning,.factory-bootstrap-436 .table>tfoot>.warning>td,.factory-bootstrap-436 .table>tfoot>.warning>th,.factory-bootstrap-436 .table>tfoot>tr>.warning,.factory-bootstrap-436 .table>thead>.warning>td,.factory-bootstrap-436 .table>thead>.warning>th,.factory-bootstrap-436 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-436 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-436 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-436 .table-hover>tbody>tr>.warning:hover{background-color:#faf2cc}@media (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}.factory-bootstrap-436 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-436 legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-436 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-436 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-436 input[type=checkbox],.factory-bootstrap-436 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-436 input[type=file]{display:block}.factory-bootstrap-436 select[multiple],.factory-bootstrap-436 select[size]{height:auto}.factory-bootstrap-436 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-436 input[type=checkbox]:focus,.factory-bootstrap-436 input[type=file]:focus,.factory-bootstrap-436 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-436 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-436 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-436 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-436 .form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:3px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.factory-bootstrap-436 .form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-436 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-436 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-436 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-436 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-436 .form-control[disabled],.factory-bootstrap-436 .form-control[readonly],.factory-bootstrap-436 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-436 textarea.form-control{height:auto}.factory-bootstrap-436 .form-group{margin-bottom:15px}.factory-bootstrap-436 .checkbox,.factory-bootstrap-436 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-436 .checkbox label,.factory-bootstrap-436 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-436 .checkbox input[type=checkbox],.factory-bootstrap-436 .checkbox-inline input[type=checkbox],.factory-bootstrap-436 .radio input[type=radio],.factory-bootstrap-436 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-436 .checkbox+.checkbox,.factory-bootstrap-436 .radio+.radio{margin-top:-5px}.factory-bootstrap-436 .checkbox-inline,.factory-bootstrap-436 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-436 .checkbox-inline+.checkbox-inline,.factory-bootstrap-436 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-436 .checkbox-inline[disabled],.factory-bootstrap-436 .checkbox[disabled],.factory-bootstrap-436 .radio-inline[disabled],.factory-bootstrap-436 .radio[disabled],.factory-bootstrap-436 fieldset[disabled] .checkbox,.factory-bootstrap-436 fieldset[disabled] .checkbox-inline,.factory-bootstrap-436 fieldset[disabled] .radio,.factory-bootstrap-436 fieldset[disabled] .radio-inline,.factory-bootstrap-436 fieldset[disabled] input[type=checkbox],.factory-bootstrap-436 fieldset[disabled] input[type=radio],.factory-bootstrap-436 input[type=checkbox][disabled],.factory-bootstrap-436 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-436 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-436 textarea.input-sm{height:auto}.factory-bootstrap-436 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-436 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-436 textarea.input-lg{height:auto}.factory-bootstrap-436 .has-warning .checkbox,.factory-bootstrap-436 .has-warning .checkbox-inline,.factory-bootstrap-436 .has-warning .control-label,.factory-bootstrap-436 .has-warning .help-block,.factory-bootstrap-436 .has-warning .radio,.factory-bootstrap-436 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-436 .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-436 .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.factory-bootstrap-436 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-436 .has-error .checkbox,.factory-bootstrap-436 .has-error .checkbox-inline,.factory-bootstrap-436 .has-error .control-label,.factory-bootstrap-436 .has-error .help-block,.factory-bootstrap-436 .has-error .radio,.factory-bootstrap-436 .has-error .radio-inline{color:#a94442}.factory-bootstrap-436 .controls{display:block}.factory-bootstrap-436 .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-436 .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.factory-bootstrap-436 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-436 .has-success .checkbox,.factory-bootstrap-436 .has-success .checkbox-inline,.factory-bootstrap-436 .has-success .control-label,.factory-bootstrap-436 .has-success .help-block,.factory-bootstrap-436 .has-success .radio,.factory-bootstrap-436 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-436 .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-436 .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.factory-bootstrap-436 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-436 .form-control-static{margin-bottom:0}.factory-bootstrap-436 .help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373;font-weight:400}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline select.form-control{width:auto}.form-inline .checkbox,.form-inline .radio{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{float:none;margin-left:0}}.factory-bootstrap-436 .form-horizontal .checkbox,.factory-bootstrap-436 .form-horizontal .checkbox-inline,.factory-bootstrap-436 .form-horizontal .control-label,.factory-bootstrap-436 .form-horizontal .radio,.factory-bootstrap-436 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-436 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-436 .form-horizontal .checkbox,.factory-bootstrap-436 .form-horizontal .radio{min-height:27px}.factory-bootstrap-436 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-436 .form-horizontal .form-group:after,.factory-bootstrap-436 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-436 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-436 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-436 .btn{display:inline-block;padding:5px 12px;margin-bottom:0;font-size:13px;font-weight:400;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.factory-bootstrap-436 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-436 .btn{text-decoration:none}.factory-bootstrap-436 .btn:focus,.factory-bootstrap-436 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-436 .btn.disabled,.factory-bootstrap-436 .btn[disabled],.factory-bootstrap-436 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-436 .btn-default.active,.factory-bootstrap-436 .btn-default:active,.factory-bootstrap-436 .btn-default:focus,.factory-bootstrap-436 .btn-default:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-436 .btn-default.active,.factory-bootstrap-436 .btn-default:active,.factory-bootstrap-436 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-436 .btn-default.disabled,.factory-bootstrap-436 .btn-default.disabled.active,.factory-bootstrap-436 .btn-default.disabled:active,.factory-bootstrap-436 .btn-default.disabled:focus,.factory-bootstrap-436 .btn-default.disabled:hover,.factory-bootstrap-436 .btn-default[disabled],.factory-bootstrap-436 .btn-default[disabled].active,.factory-bootstrap-436 .btn-default[disabled]:active,.factory-bootstrap-436 .btn-default[disabled]:focus,.factory-bootstrap-436 .btn-default[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-default,.factory-bootstrap-436 fieldset[disabled] .btn-default.active,.factory-bootstrap-436 fieldset[disabled] .btn-default:active,.factory-bootstrap-436 fieldset[disabled] .btn-default:focus,.factory-bootstrap-436 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-436 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-436 .btn-primary.active,.factory-bootstrap-436 .btn-primary:active,.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-436 .btn-primary.active,.factory-bootstrap-436 .btn-primary:active,.factory-bootstrap-436 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-436 .btn-primary.disabled,.factory-bootstrap-436 .btn-primary.disabled.active,.factory-bootstrap-436 .btn-primary.disabled:active,.factory-bootstrap-436 .btn-primary.disabled:focus,.factory-bootstrap-436 .btn-primary.disabled:hover,.factory-bootstrap-436 .btn-primary[disabled],.factory-bootstrap-436 .btn-primary[disabled].active,.factory-bootstrap-436 .btn-primary[disabled]:active,.factory-bootstrap-436 .btn-primary[disabled]:focus,.factory-bootstrap-436 .btn-primary[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-primary,.factory-bootstrap-436 fieldset[disabled] .btn-primary.active,.factory-bootstrap-436 fieldset[disabled] .btn-primary:active,.factory-bootstrap-436 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-436 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-436 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-436 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-436 .btn-warning.active,.factory-bootstrap-436 .btn-warning:active,.factory-bootstrap-436 .btn-warning:focus,.factory-bootstrap-436 .btn-warning:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-436 .btn-warning.active,.factory-bootstrap-436 .btn-warning:active,.factory-bootstrap-436 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-436 .btn-warning.disabled,.factory-bootstrap-436 .btn-warning.disabled.active,.factory-bootstrap-436 .btn-warning.disabled:active,.factory-bootstrap-436 .btn-warning.disabled:focus,.factory-bootstrap-436 .btn-warning.disabled:hover,.factory-bootstrap-436 .btn-warning[disabled],.factory-bootstrap-436 .btn-warning[disabled].active,.factory-bootstrap-436 .btn-warning[disabled]:active,.factory-bootstrap-436 .btn-warning[disabled]:focus,.factory-bootstrap-436 .btn-warning[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-warning,.factory-bootstrap-436 fieldset[disabled] .btn-warning.active,.factory-bootstrap-436 fieldset[disabled] .btn-warning:active,.factory-bootstrap-436 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-436 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-436 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-436 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-436 .btn-success.active,.factory-bootstrap-436 .btn-success:active,.factory-bootstrap-436 .btn-success:focus,.factory-bootstrap-436 .btn-success:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-436 .btn-success.active,.factory-bootstrap-436 .btn-success:active,.factory-bootstrap-436 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-436 .btn-success.disabled,.factory-bootstrap-436 .btn-success.disabled.active,.factory-bootstrap-436 .btn-success.disabled:active,.factory-bootstrap-436 .btn-success.disabled:focus,.factory-bootstrap-436 .btn-success.disabled:hover,.factory-bootstrap-436 .btn-success[disabled],.factory-bootstrap-436 .btn-success[disabled].active,.factory-bootstrap-436 .btn-success[disabled]:active,.factory-bootstrap-436 .btn-success[disabled]:focus,.factory-bootstrap-436 .btn-success[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-success,.factory-bootstrap-436 fieldset[disabled] .btn-success.active,.factory-bootstrap-436 fieldset[disabled] .btn-success:active,.factory-bootstrap-436 fieldset[disabled] .btn-success:focus,.factory-bootstrap-436 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-436 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-436 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-436 .btn-info.active,.factory-bootstrap-436 .btn-info:active,.factory-bootstrap-436 .btn-info:focus,.factory-bootstrap-436 .btn-info:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-436 .btn-info.active,.factory-bootstrap-436 .btn-info:active,.factory-bootstrap-436 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-436 .btn-info.disabled,.factory-bootstrap-436 .btn-info.disabled.active,.factory-bootstrap-436 .btn-info.disabled:active,.factory-bootstrap-436 .btn-info.disabled:focus,.factory-bootstrap-436 .btn-info.disabled:hover,.factory-bootstrap-436 .btn-info[disabled],.factory-bootstrap-436 .btn-info[disabled].active,.factory-bootstrap-436 .btn-info[disabled]:active,.factory-bootstrap-436 .btn-info[disabled]:focus,.factory-bootstrap-436 .btn-info[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-info,.factory-bootstrap-436 fieldset[disabled] .btn-info.active,.factory-bootstrap-436 fieldset[disabled] .btn-info:active,.factory-bootstrap-436 fieldset[disabled] .btn-info:focus,.factory-bootstrap-436 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-436 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-436 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-436 .btn-link,.factory-bootstrap-436 .btn-link:active,.factory-bootstrap-436 .btn-link[disabled],.factory-bootstrap-436 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-436 .btn-link,.factory-bootstrap-436 .btn-link:active,.factory-bootstrap-436 .btn-link:focus,.factory-bootstrap-436 .btn-link:hover{border-color:transparent}.factory-bootstrap-436 .btn-link:focus,.factory-bootstrap-436 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-436 .btn-link[disabled]:focus,.factory-bootstrap-436 .btn-link[disabled]:hover,.factory-bootstrap-436 fieldset[disabled] .btn-link:focus,.factory-bootstrap-436 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-436 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-436 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-436 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-436 input[type=button].btn-block,.factory-bootstrap-436 input[type=reset].btn-block,.factory-bootstrap-436 input[type=submit].btn-block{width:100%}.factory-bootstrap-436 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-436 .fade.in{opacity:1}.factory-bootstrap-436 .collapse{display:none}.factory-bootstrap-436 .collapse.in{display:block}.factory-bootstrap-436 .collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular) format('svg')}.factory-bootstrap-436 .glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:400;line-height:1;-moz-osx-font-smoothing:grayscale}.factory-bootstrap-436 .glyphicon:empty{width:1em}.factory-bootstrap-436 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-436 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-436 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-436 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-436 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-436 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-436 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-436 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-436 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-436 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-436 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-436 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-436 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-436 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-436 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-436 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-436 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-436 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-436 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-436 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-436 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-436 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-436 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-436 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-436 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-436 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-436 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-436 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-436 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-436 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-436 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-436 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-436 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-436 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-436 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-436 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-436 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-436 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-436 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-436 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-436 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-436 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-436 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-436 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-436 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-436 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-436 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-436 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-436 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-436 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-436 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-436 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-436 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-436 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-436 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-436 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-436 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-436 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-436 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-436 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-436 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-436 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-436 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-436 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-436 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-436 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-436 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-436 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-436 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-436 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-436 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-436 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-436 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-436 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-436 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-436 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-436 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-436 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-436 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-436 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-436 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-436 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-436 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-436 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-436 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-436 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-436 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-436 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-436 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-436 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-436 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-436 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-436 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-436 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-436 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-436 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-436 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-436 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-436 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-436 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-436 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-436 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-436 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-436 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-436 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-436 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-436 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-436 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-436 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-436 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-436 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-436 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-436 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-436 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-436 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-436 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-436 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-436 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-436 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-436 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-436 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-436 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-436 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-436 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-436 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-436 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-436 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-436 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-436 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-436 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-436 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-436 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-436 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-436 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-436 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-436 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-436 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-436 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-436 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-436 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-436 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-436 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-436 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-436 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-436 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-436 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-436 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-436 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-436 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-436 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-436 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-436 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-436 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-436 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-436 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-436 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-436 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-436 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-436 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-436 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-436 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-436 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-436 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-436 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-436 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-436 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-436 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-436 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-436 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-436 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-436 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-436 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-436 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-436 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-436 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-436 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-436 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-436 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-436 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-436 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-436 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-436 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-436 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-436 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-436 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-436 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-436 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-436 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-436 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-436 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-436 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-436 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-436 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-436 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-436 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-436 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-436 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-436 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-436 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-436 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-436 .caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.factory-bootstrap-436 .dropdown{position:relative}.factory-bootstrap-436 .dropdown-toggle:focus{outline:0}.factory-bootstrap-436 .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.factory-bootstrap-436 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-436 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-436 .dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429;color:#333;white-space:nowrap}.factory-bootstrap-436 .dropdown-menu>li>a:focus,.factory-bootstrap-436 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-436 .dropdown-menu>.active>a,.factory-bootstrap-436 .dropdown-menu>.active>a:focus,.factory-bootstrap-436 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-436 .dropdown-menu>.disabled>a,.factory-bootstrap-436 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-436 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-436 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-436 .dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-436 .open>.dropdown-menu{display:block}.factory-bootstrap-436 .open>a{outline:0}.factory-bootstrap-436 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-436 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-436 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-436 .dropup .caret,.factory-bootstrap-436 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-436 .dropup .dropdown-menu,.factory-bootstrap-436 .navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.factory-bootstrap-436 .btn-group,.factory-bootstrap-436 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-436 .btn-group-vertical>.btn,.factory-bootstrap-436 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-436 .btn-group-vertical>.btn.active,.factory-bootstrap-436 .btn-group-vertical>.btn:active,.factory-bootstrap-436 .btn-group-vertical>.btn:focus,.factory-bootstrap-436 .btn-group-vertical>.btn:hover,.factory-bootstrap-436 .btn-group>.btn.active,.factory-bootstrap-436 .btn-group>.btn:active,.factory-bootstrap-436 .btn-group>.btn:focus,.factory-bootstrap-436 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-436 .btn-group-vertical>.btn:focus,.factory-bootstrap-436 .btn-group>.btn:focus{outline:0}.factory-bootstrap-436 .btn-group .btn+.btn,.factory-bootstrap-436 .btn-group .btn+.btn-group,.factory-bootstrap-436 .btn-group .btn-group+.btn,.factory-bootstrap-436 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-436 .btn-toolbar:after,.factory-bootstrap-436 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-436 .btn-toolbar:after{clear:both}.factory-bootstrap-436 .btn-toolbar .btn-group{float:left}.factory-bootstrap-436 .btn-toolbar>.btn+.btn,.factory-bootstrap-436 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-436 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-436 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-436 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-436 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-436 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-436 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-436 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .btn-group>.btn-group{float:left}.factory-bootstrap-436 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-436 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-436 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-436 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .btn-group .dropdown-toggle:active,.factory-bootstrap-436 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-436 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-436 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-436 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-436 .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.factory-bootstrap-436 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-436 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-436 .btn-group .btn.active.value{text-shadow:none;color:#fff;background-color:#33aad5;-webkit-box-shadow:inset 0 1px 1px #0074a2;box-shadow:inset 0 1px 3px #0074a2;border-top:1px solid #0074a2;border-bottom:1px solid #0074a2;border-left:1px solid #0074a2}.factory-bootstrap-436 .btn .caret{margin-left:0}.factory-bootstrap-436 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-436 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-436 .btn-group-vertical>.btn,.factory-bootstrap-436 .btn-group-vertical>.btn-group,.factory-bootstrap-436 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-436 .btn-group-vertical>.btn-group:after,.factory-bootstrap-436 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-436 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-436 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-436 .btn-group-vertical>.btn+.btn,.factory-bootstrap-436 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-436 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-436 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-436 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-436 .btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-436 .btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.factory-bootstrap-436 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-436 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-436 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-436 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-436 .btn-group-justified>.btn,.factory-bootstrap-436 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-436 .btn-group-justified>.btn-group .btn{width:100%}[data-toggle=buttons]>.btn>input[type=checkbox],[data-toggle=buttons]>.btn>input[type=radio]{display:none}.factory-bootstrap-436 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-436 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-436 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-436 .input-group-lg>.form-control,.factory-bootstrap-436 .input-group-lg>.input-group-addon,.factory-bootstrap-436 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-436 select.input-group-lg>.form-control,.factory-bootstrap-436 select.input-group-lg>.input-group-addon,.factory-bootstrap-436 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-436 textarea.input-group-lg>.form-control,.factory-bootstrap-436 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-436 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-436 .input-group-sm>.form-control,.factory-bootstrap-436 .input-group-sm>.input-group-addon,.factory-bootstrap-436 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-436 select.input-group-sm>.form-control,.factory-bootstrap-436 select.input-group-sm>.input-group-addon,.factory-bootstrap-436 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-436 textarea.input-group-sm>.form-control,.factory-bootstrap-436 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-436 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-436 .input-group .form-control,.factory-bootstrap-436 .input-group-addon,.factory-bootstrap-436 .input-group-btn{display:table-cell}.factory-bootstrap-436 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-436 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-436 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-436 .input-group-addon,.factory-bootstrap-436 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-436 .input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.factory-bootstrap-436 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-436 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-436 .input-group-addon input[type=checkbox],.factory-bootstrap-436 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-436 .input-group .form-control:first-child,.factory-bootstrap-436 .input-group-addon:first-child,.factory-bootstrap-436 .input-group-btn:first-child>.btn,.factory-bootstrap-436 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-436 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-436 .input-group-addon:first-child{border-right:0}.factory-bootstrap-436 .input-group .form-control:last-child,.factory-bootstrap-436 .input-group-addon:last-child,.factory-bootstrap-436 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-436 .input-group-btn:last-child>.btn,.factory-bootstrap-436 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .input-group-addon:last-child{border-left:0}.factory-bootstrap-436 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-436 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-436 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-436 .input-group-btn>.btn{position:relative}.factory-bootstrap-436 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-436 .input-group-btn>.btn:active,.factory-bootstrap-436 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-436 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-436 .nav:after,.factory-bootstrap-436 .nav:before{display:table;content:" "}.factory-bootstrap-436 .nav:after{clear:both}.factory-bootstrap-436 .nav>li{position:relative;display:block}.factory-bootstrap-436 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-436 .nav>li>a:focus,.factory-bootstrap-436 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-436 .nav>li.disabled>a{color:#999}.factory-bootstrap-436 .nav>li.disabled>a:focus,.factory-bootstrap-436 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-436 .nav .open>a,.factory-bootstrap-436 .nav .open>a:focus,.factory-bootstrap-436 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-436 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-436 .nav>li>a>img{max-width:none}.factory-bootstrap-436 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-436 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-436 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-436 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-436 .nav-tabs>li.active>a,.factory-bootstrap-436 .nav-tabs>li.active>a:focus,.factory-bootstrap-436 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-436 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-436 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-436 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-436 .nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.factory-bootstrap-436 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-436 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-436 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-436 .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.factory-bootstrap-436 .nav-pills>li{float:left}.factory-bootstrap-436 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-436 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-436 .nav-pills>li.active>a,.factory-bootstrap-436 .nav-pills>li.active>a:focus,.factory-bootstrap-436 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-436 .nav-stacked>li{float:none}.factory-bootstrap-436 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-436 .nav-justified{width:100%}.factory-bootstrap-436 .nav-justified>li{float:none}.factory-bootstrap-436 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-436 .nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.factory-bootstrap-436 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-436 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-436 .nav-tabs-justified>.active>a,.factory-bootstrap-436 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-436 .nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.factory-bootstrap-436 .tab-content>.tab-pane{display:none}.factory-bootstrap-436 .tab-content>.active{display:block}.factory-bootstrap-436 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-436 .navbar:after,.factory-bootstrap-436 .navbar:before{display:table;content:" "}.factory-bootstrap-436 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-436 .navbar-header:after,.factory-bootstrap-436 .navbar-header:before{display:table;content:" "}.factory-bootstrap-436 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-436 .navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.factory-bootstrap-436 .navbar-collapse:after,.factory-bootstrap-436 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-436 .navbar-collapse:after{clear:both}.factory-bootstrap-436 .navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.factory-bootstrap-436 .container>.navbar-collapse,.factory-bootstrap-436 .container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.factory-bootstrap-436 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-436 .navbar-fixed-bottom,.factory-bootstrap-436 .navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.factory-bootstrap-436 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-436 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-436 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-436 .navbar-brand:focus,.factory-bootstrap-436 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-436 .navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.factory-bootstrap-436 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-436 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-436 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-436 .navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.factory-bootstrap-436 .navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form select.form-control{width:auto}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{float:none;margin-left:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.factory-bootstrap-436 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-436 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-436 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-436 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-436 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-436 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-436 .navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.factory-bootstrap-436 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-436 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-436 .navbar-default .navbar-brand:focus,.factory-bootstrap-436 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-436 .navbar-default .navbar-nav>li>a,.factory-bootstrap-436 .navbar-default .navbar-text{color:#777}.factory-bootstrap-436 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-436 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-436 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-436 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-436 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-436 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-436 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-436 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-436 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-436 .navbar-default .navbar-toggle:focus,.factory-bootstrap-436 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-436 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-436 .navbar-default .navbar-collapse,.factory-bootstrap-436 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-436 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-436 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-436 .navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.factory-bootstrap-436 .navbar-default .navbar-link{color:#777}.factory-bootstrap-436 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-436 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-436 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-436 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-436 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-436 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-436 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-436 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-436 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-436 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-436 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-436 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-436 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-436 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-436 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-436 .navbar-inverse .navbar-collapse,.factory-bootstrap-436 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-436 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-436 .navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.factory-bootstrap-436 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-436 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-436 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-436 .breadcrumb>li{display:inline-block}.factory-bootstrap-436 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-436 .breadcrumb>.active{color:#999}.factory-bootstrap-436 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-436 .pagination>li{display:inline}.factory-bootstrap-436 .pagination>li>a,.factory-bootstrap-436 .pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-436 .pagination>li:first-child>a,.factory-bootstrap-436 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-436 .pagination>li:last-child>a,.factory-bootstrap-436 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-436 .pagination>li>a:focus,.factory-bootstrap-436 .pagination>li>a:hover,.factory-bootstrap-436 .pagination>li>span:focus,.factory-bootstrap-436 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-436 .pagination>.disabled>a,.factory-bootstrap-436 .pagination>.disabled>a:focus,.factory-bootstrap-436 .pagination>.disabled>a:hover,.factory-bootstrap-436 .pagination>.disabled>span,.factory-bootstrap-436 .pagination>.disabled>span:focus,.factory-bootstrap-436 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-436 .pagination-lg>li>a,.factory-bootstrap-436 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-436 .pagination-lg>li:first-child>a,.factory-bootstrap-436 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-436 .pagination-lg>li:last-child>a,.factory-bootstrap-436 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-436 .pagination-sm>li>a,.factory-bootstrap-436 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-436 .pagination-sm>li:first-child>a,.factory-bootstrap-436 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-436 .pagination-sm>li:last-child>a,.factory-bootstrap-436 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-436 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-436 .pager:after,.factory-bootstrap-436 .pager:before{display:table;content:" "}.factory-bootstrap-436 .pager:after{clear:both}.factory-bootstrap-436 .pager li{display:inline}.factory-bootstrap-436 .pager li>a,.factory-bootstrap-436 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-436 .pager li>a:focus,.factory-bootstrap-436 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-436 .pager .next>a,.factory-bootstrap-436 .pager .next>span{float:right}.factory-bootstrap-436 .pager .previous>a,.factory-bootstrap-436 .pager .previous>span{float:left}.factory-bootstrap-436 .pager .disabled>a,.factory-bootstrap-436 .pager .disabled>a:focus,.factory-bootstrap-436 .pager .disabled>a:hover,.factory-bootstrap-436 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-436 .label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.factory-bootstrap-436 .label[href]:focus,.factory-bootstrap-436 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-436 .label:empty{display:none}.factory-bootstrap-436 .btn .label{position:relative;top:-1px}.factory-bootstrap-436 .label-default{background-color:#999}.factory-bootstrap-436 .label-default[href]:focus,.factory-bootstrap-436 .label-default[href]:hover{background-color:gray}.factory-bootstrap-436 .label-primary{background-color:#428bca}.factory-bootstrap-436 .label-primary[href]:focus,.factory-bootstrap-436 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-436 .label-success{background-color:#5cb85c}.factory-bootstrap-436 .label-success[href]:focus,.factory-bootstrap-436 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-436 .label-info{background-color:#5bc0de}.factory-bootstrap-436 .label-info[href]:focus,.factory-bootstrap-436 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-436 .label-warning{background-color:#f0ad4e}.factory-bootstrap-436 .label-warning[href]:focus,.factory-bootstrap-436 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-436 .label-danger{background-color:#d9534f}.factory-bootstrap-436 .label-danger[href]:focus,.factory-bootstrap-436 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-436 .badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.factory-bootstrap-436 .badge:empty{display:none}.factory-bootstrap-436 .btn .badge{position:relative;top:-1px}.factory-bootstrap-436 a.badge:focus,.factory-bootstrap-436 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-436 .nav-pills>.active>a>.badge,.factory-bootstrap-436 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-436 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-436 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-436 .jumbotron .h1,.factory-bootstrap-436 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-436 .jumbotron p{line-height:1.4}.factory-bootstrap-436 .container .jumbotron{border-radius:6px}.factory-bootstrap-436 .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.factory-bootstrap-436 .thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.factory-bootstrap-436 .thumbnail a>img,.factory-bootstrap-436 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-436 a.thumbnail.active,.factory-bootstrap-436 a.thumbnail:focus,.factory-bootstrap-436 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-436 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-436 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-436 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-436 .alert .alert-link{font-weight:700}.factory-bootstrap-436 .alert>p,.factory-bootstrap-436 .alert>ul{margin-bottom:0}.factory-bootstrap-436 .alert>p+p{margin-top:5px}.factory-bootstrap-436 .alert-dismissable{padding-right:35px}.factory-bootstrap-436 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-436 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-436 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-436 .alert-info .alert-link{color:#245269}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.factory-bootstrap-436 .progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.factory-bootstrap-436 .progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#2ea2cc;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.factory-bootstrap-436 .progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.factory-bootstrap-436 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-436 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-436 .progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-436 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-436 .progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-436 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-436 .progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-436 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-436 .progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.factory-bootstrap-436 .media,.factory-bootstrap-436 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-436 .media,.factory-bootstrap-436 .media .media{margin-top:15px}.factory-bootstrap-436 .media:first-child{margin-top:0}.factory-bootstrap-436 .media-object{display:block}.factory-bootstrap-436 .media-heading{margin:0 0 5px}.factory-bootstrap-436 .media>.pull-left{margin-right:10px}.factory-bootstrap-436 .media>.pull-right{margin-left:10px}.factory-bootstrap-436 .media-list{padding-left:0;list-style:none}.factory-bootstrap-436 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-436 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-436 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-436 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-436 .list-group-item>.badge{float:right}.factory-bootstrap-436 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-436 a.list-group-item{color:#555}.factory-bootstrap-436 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-436 a.list-group-item:focus,.factory-bootstrap-436 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-436 a.list-group-item.active,.factory-bootstrap-436 a.list-group-item.active:focus,.factory-bootstrap-436 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-436 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-436 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-436 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-436 a.list-group-item.active .list-group-item-text,.factory-bootstrap-436 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-436 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-436 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-436 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-436 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-436 .panel-body{padding:15px}.factory-bootstrap-436 .panel-body:after,.factory-bootstrap-436 .panel-body:before{display:table;content:" "}.factory-bootstrap-436 .panel-body:after{clear:both}.factory-bootstrap-436 .panel>.list-group{margin-bottom:0}.factory-bootstrap-436 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-436 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-436 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-436 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-436 .panel>.table,.factory-bootstrap-436 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-436 .panel>.panel-body+.table,.factory-bootstrap-436 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-436 .panel>.table>tbody:first-child td,.factory-bootstrap-436 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-436 .panel>.table-bordered,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-436 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-436 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-436 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-436 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-436 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-436 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-436 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-436 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-436 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-436 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-436 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-436 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-436 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-436 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-436 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-436 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-436 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-436 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-436 .panel-title>a{color:inherit}.factory-bootstrap-436 .panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.factory-bootstrap-436 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-436 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-436 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-436 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-436 .panel-group .panel-footer{border-top:0}.factory-bootstrap-436 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-436 .panel-default{border-color:#ddd}.factory-bootstrap-436 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-436 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-436 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-436 .panel-primary{border-color:#428bca}.factory-bootstrap-436 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-436 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-436 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-436 .panel-success{border-color:#d6e9c6}.factory-bootstrap-436 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-436 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-436 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-436 .panel-warning{border-color:#faebcc}.factory-bootstrap-436 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-436 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-436 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-436 .panel-danger{border-color:#ebccd1}.factory-bootstrap-436 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-436 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-436 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-436 .panel-info{border-color:#bce8f1}.factory-bootstrap-436 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-436 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-436 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-436 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-436 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-436 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-436 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-436 .close{float:right;font-size:14px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.3;filter:alpha(opacity=30)}.factory-bootstrap-436 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-436 .close:focus,.factory-bootstrap-436 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-436 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-436 .modal-open{overflow:hidden}.factory-bootstrap-436 .modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll;width:auto;margin-left:0;background-color:transparent;border:0}.factory-bootstrap-436 .modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.factory-bootstrap-436 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-436 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-436 .modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box}.factory-bootstrap-436 .modal-backdrop,.factory-bootstrap-436-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-436 .modal-backdrop.fade,.factory-bootstrap-436-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-436 .modal-backdrop.in,.factory-bootstrap-436-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-436 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-436 .modal-header .close{margin-top:-2px}.factory-bootstrap-436 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-436 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-436 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-436 .modal-footer:after,.factory-bootstrap-436 .modal-footer:before{display:table;content:" "}.factory-bootstrap-436 .modal-footer:after{clear:both}.factory-bootstrap-436 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-436 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-436 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-436 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-436 .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}}.factory-bootstrap-436 .tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.factory-bootstrap-436 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-436 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-436 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-436 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-436 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-436 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-436 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-436 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-436 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-436 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-436 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-436 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-436 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-436 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-436 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-436 .popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);background-clip:padding-box}.factory-bootstrap-436 .popover.top{margin-top:-10px}.factory-bootstrap-436 .popover.right{margin-left:10px}.factory-bootstrap-436 .popover.bottom{margin-top:10px}.factory-bootstrap-436 .popover.left{margin-left:-10px}.factory-bootstrap-436 .popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.factory-bootstrap-436 .popover-content{padding:9px 14px}.factory-bootstrap-436 .popover .arrow,.factory-bootstrap-436 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-436 .popover .arrow{border-width:11px}.factory-bootstrap-436 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-436 .popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.factory-bootstrap-436 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-436 .popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.factory-bootstrap-436 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-436 .popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);border-top-width:0}.factory-bootstrap-436 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-436 .popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,.25);border-right-width:0}.factory-bootstrap-436 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-436 .carousel{position:relative}.factory-bootstrap-436 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-436 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-436 .carousel-inner>.item>a>img,.factory-bootstrap-436 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-436 .carousel-inner>.active,.factory-bootstrap-436 .carousel-inner>.next,.factory-bootstrap-436 .carousel-inner>.prev{display:block}.factory-bootstrap-436 .carousel-inner>.active{left:0}.factory-bootstrap-436 .carousel-inner>.next,.factory-bootstrap-436 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-436 .carousel-inner>.next{left:100%}.factory-bootstrap-436 .carousel-inner>.prev{left:-100%}.factory-bootstrap-436 .carousel-inner>.next.left,.factory-bootstrap-436 .carousel-inner>.prev.right{left:0}.factory-bootstrap-436 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-436 .carousel-inner>.active.right{left:100%}.factory-bootstrap-436 .carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-436 .carousel-control.left{background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.5) 0),color-stop(rgba(0,0,0,.0001) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.factory-bootstrap-436 .carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,.0001) 0),color-stop(rgba(0,0,0,.5) 100%));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.factory-bootstrap-436 .carousel-control:focus,.factory-bootstrap-436 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-436 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-436 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-436 .carousel-control .icon-next,.factory-bootstrap-436 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-436 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-436 .carousel-control .icon-prev{left:50%}.factory-bootstrap-436 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-436 .carousel-control .icon-next{right:50%}.factory-bootstrap-436 .carousel-control .icon-next,.factory-bootstrap-436 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-436 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-436 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-436 .carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.factory-bootstrap-436 .carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.factory-bootstrap-436 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-436 .carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.factory-bootstrap-436 .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicons-chevron-left,.carousel-control .glyphicons-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.factory-bootstrap-436 .clearfix:after,.factory-bootstrap-436 .clearfix:before{display:table;content:" "}.factory-bootstrap-436 .clearfix:after{clear:both}.factory-bootstrap-436 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-436 .pull-right{float:right!important}.factory-bootstrap-436 .pull-left{float:left!important}.factory-bootstrap-436 .hide{display:none!important}.factory-bootstrap-436 .show{display:block!important}.factory-bootstrap-436 .invisible{visibility:hidden}.factory-bootstrap-436 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-436 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-436 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-436 .visible-lg,.factory-bootstrap-436 .visible-md,.factory-bootstrap-436 .visible-sm,.factory-bootstrap-436 .visible-xs,.factory-bootstrap-436 td.visible-lg,.factory-bootstrap-436 td.visible-md,.factory-bootstrap-436 td.visible-sm,.factory-bootstrap-436 td.visible-xs,.factory-bootstrap-436 th.visible-lg,.factory-bootstrap-436 th.visible-md,.factory-bootstrap-436 th.visible-sm,.factory-bootstrap-436 th.visible-xs,.factory-bootstrap-436 tr.visible-lg,.factory-bootstrap-436 tr.visible-md,.factory-bootstrap-436 tr.visible-sm,.factory-bootstrap-436 tr.visible-xs{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}table.visible-xs.visible-sm{display:table}tr.visible-xs.visible-sm{display:table-row!important}td.visible-xs.visible-sm,th.visible-xs.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}table.visible-xs.visible-md{display:table}tr.visible-xs.visible-md{display:table-row!important}td.visible-xs.visible-md,th.visible-xs.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-xs.visible-lg{display:block!important}table.visible-xs.visible-lg{display:table}tr.visible-xs.visible-lg{display:table-row!important}td.visible-xs.visible-lg,th.visible-xs.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-sm.visible-xs{display:block!important}table.visible-sm.visible-xs{display:table}tr.visible-sm.visible-xs{display:table-row!important}td.visible-sm.visible-xs,th.visible-sm.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}table.visible-sm.visible-md{display:table}tr.visible-sm.visible-md{display:table-row!important}td.visible-sm.visible-md,th.visible-sm.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-sm.visible-lg{display:block!important}table.visible-sm.visible-lg{display:table}tr.visible-sm.visible-lg{display:table-row!important}td.visible-sm.visible-lg,th.visible-sm.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-md.visible-xs{display:block!important}table.visible-md.visible-xs{display:table}tr.visible-md.visible-xs{display:table-row!important}td.visible-md.visible-xs,th.visible-md.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}table.visible-md.visible-sm{display:table}tr.visible-md.visible-sm{display:table-row!important}td.visible-md.visible-sm,th.visible-md.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-md.visible-lg{display:block!important}table.visible-md.visible-lg{display:table}tr.visible-md.visible-lg{display:table-row!important}td.visible-md.visible-lg,th.visible-md.visible-lg{display:table-cell!important}}@media (max-width:767px){.visible-lg.visible-xs{display:block!important}table.visible-lg.visible-xs{display:table}tr.visible-lg.visible-xs{display:table-row!important}td.visible-lg.visible-xs,th.visible-lg.visible-xs{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}table.visible-lg.visible-sm{display:table}tr.visible-lg.visible-sm{display:table-row!important}td.visible-lg.visible-sm,th.visible-lg.visible-sm{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}table.visible-lg.visible-md{display:table}tr.visible-lg.visible-md{display:table-row!important}td.visible-lg.visible-md,th.visible-lg.visible-md{display:table-cell!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}.factory-bootstrap-436 .hidden-xs{display:block!important}.factory-bootstrap-436 table.hidden-xs{display:table}.factory-bootstrap-436 tr.hidden-xs{display:table-row!important}.factory-bootstrap-436 td.hidden-xs,.factory-bootstrap-436 th.hidden-xs{display:table-cell!important}@media (max-width:767px){.hidden-xs,td.hidden-xs,th.hidden-xs,tr.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm,th.hidden-xs.hidden-sm,tr.hidden-xs.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md,td.hidden-xs.hidden-md,th.hidden-xs.hidden-md,tr.hidden-xs.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg,th.hidden-xs.hidden-lg,tr.hidden-xs.hidden-lg{display:none!important}}.factory-bootstrap-436 .hidden-sm{display:block!important}.factory-bootstrap-436 table.hidden-sm{display:table}.factory-bootstrap-436 tr.hidden-sm{display:table-row!important}.factory-bootstrap-436 td.hidden-sm,.factory-bootstrap-436 th.hidden-sm{display:table-cell!important}@media (max-width:767px){.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs,th.hidden-sm.hidden-xs,tr.hidden-sm.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm,td.hidden-sm,th.hidden-sm,tr.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md,td.hidden-sm.hidden-md,th.hidden-sm.hidden-md,tr.hidden-sm.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg,th.hidden-sm.hidden-lg,tr.hidden-sm.hidden-lg{display:none!important}}.factory-bootstrap-436 .hidden-md{display:block!important}.factory-bootstrap-436 table.hidden-md{display:table}.factory-bootstrap-436 tr.hidden-md{display:table-row!important}.factory-bootstrap-436 td.hidden-md,.factory-bootstrap-436 th.hidden-md{display:table-cell!important}@media (max-width:767px){.hidden-md.hidden-xs,td.hidden-md.hidden-xs,th.hidden-md.hidden-xs,tr.hidden-md.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-md.hidden-sm,td.hidden-md.hidden-sm,th.hidden-md.hidden-sm,tr.hidden-md.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md,td.hidden-md,th.hidden-md,tr.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-md.hidden-lg,td.hidden-md.hidden-lg,th.hidden-md.hidden-lg,tr.hidden-md.hidden-lg{display:none!important}}.factory-bootstrap-436 .hidden-lg{display:block!important}.factory-bootstrap-436 table.hidden-lg{display:table}.factory-bootstrap-436 tr.hidden-lg{display:table-row!important}.factory-bootstrap-436 td.hidden-lg,.factory-bootstrap-436 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-436 .hidden-lg.hidden-xs,.factory-bootstrap-436 td.hidden-lg.hidden-xs,.factory-bootstrap-436 th.hidden-lg.hidden-xs,.factory-bootstrap-436 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-436 .hidden-lg.hidden-sm,.factory-bootstrap-436 td.hidden-lg.hidden-sm,.factory-bootstrap-436 th.hidden-lg.hidden-sm,.factory-bootstrap-436 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-436 .hidden-lg.hidden-md,.factory-bootstrap-436 td.hidden-lg.hidden-md,.factory-bootstrap-436 th.hidden-lg.hidden-md,.factory-bootstrap-436 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-436 .hidden-lg,.factory-bootstrap-436 td.hidden-lg,.factory-bootstrap-436 th.hidden-lg,.factory-bootstrap-436 tr.hidden-lg{display:none!important}}.factory-bootstrap-436 .visible-print,.factory-bootstrap-436 td.visible-print,.factory-bootstrap-436 th.visible-print,.factory-bootstrap-436 tr.visible-print{display:none!important}@media print{.factory-bootstrap-436 .visible-print{display:block!important}.factory-bootstrap-436 table.visible-print{display:table}.factory-bootstrap-436 tr.visible-print{display:table-row!important}.factory-bootstrap-436 td.visible-print,.factory-bootstrap-436 th.visible-print{display:table-cell!important}.factory-bootstrap-436 .hidden-print,.factory-bootstrap-436 td.hidden-print,.factory-bootstrap-436 th.hidden-print,.factory-bootstrap-436 tr.hidden-print{display:none!important}}/*!
12
  * Factory Default Bootstrap Theme
13
  *
14
  * The code is based on Bootstrap v2.1.1
22
  *
23
  * @package factory-bootstrap
24
  * @since 1.0.0
25
+ */.factory-bootstrap-436 .btn-danger,.factory-bootstrap-436 .btn-default,.factory-bootstrap-436 .btn-info,.factory-bootstrap-436 .btn-primary,.factory-bootstrap-436 .btn-success,.factory-bootstrap-436 .btn-warning{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.factory-bootstrap-436 .btn-danger.active,.factory-bootstrap-436 .btn-danger:active,.factory-bootstrap-436 .btn-default.active,.factory-bootstrap-436 .btn-default:active,.factory-bootstrap-436 .btn-info.active,.factory-bootstrap-436 .btn-info:active,.factory-bootstrap-436 .btn-primary.active,.factory-bootstrap-436 .btn-primary:active,.factory-bootstrap-436 .btn-success.active,.factory-bootstrap-436 .btn-success:active,.factory-bootstrap-436 .btn-warning.active,.factory-bootstrap-436 .btn-warning:active{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 1px rgba(0,0,0,.1)}.factory-bootstrap-436 .btn.active,.factory-bootstrap-436 .btn:active{background-image:none}.factory-bootstrap-436 .btn-default{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);vertical-align:top}.factory-bootstrap-436 .btn-default.active,.factory-bootstrap-436 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-436 .btn-gold{font-weight:700;padding:7px 12px;cursor:pointer;line-height:16px;display:inline-block;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;box-shadow:#e3e3e3 0 1px 1px;-moz-box-shadow:0 1px 1px rgba(000,000,000,.1),inset 0 1px 1px rgba(255,255,255,.7);-webkit-box-shadow:0 1px 1px rgba(000,000,000,.1),inset 0 1px 1px rgba(255,255,255,.7);text-shadow:1px 1px 0 #ffe8b2;color:#7c5d1b;border:1px solid #d6a437;background:#feeb80}.factory-bootstrap-436 .btn-gold:focus,.factory-bootstrap-436 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-436 .btn-gold.active,.factory-bootstrap-436 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-436 .btn-primary{background:#2ea2cc;border-color:#0074a2;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 rgba(120,200,230,.5),0 1px 0 rgba(0,0,0,.15);color:#fff;text-decoration:none}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#1e8cbe;border-color:#0074a2;-webkit-box-shadow:inset 0 1px 0 rgba(120,200,230,.6);box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff}.factory-bootstrap-436 .btn-primary.active,.factory-bootstrap-436 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-436 .btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);background-repeat:repeat-x;border-color:#3e8f3e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-436 .btn-success:focus,.factory-bootstrap-436 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-436 .btn-success.active,.factory-bootstrap-436 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-436 .btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);background-repeat:repeat-x;border-color:#e38d13;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-436 .btn-warning:focus,.factory-bootstrap-436 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-436 .btn-warning.active,.factory-bootstrap-436 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-436 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-436 .btn-danger.active,.factory-bootstrap-436 .btn-danger:active,.factory-bootstrap-436 .btn-danger:focus,.factory-bootstrap-436 .btn-danger:hover,.factory-bootstrap-436 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-436 .btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);background-repeat:repeat-x;border-color:#28a4c9;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-436 .btn-info:focus,.factory-bootstrap-436 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-436 .btn-info.active,.factory-bootstrap-436 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-436 .img-thumbnail,.factory-bootstrap-436 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-436 .dropdown-menu>li>a:focus,.factory-bootstrap-436 .dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.factory-bootstrap-436 .dropdown-menu>.active>a,.factory-bootstrap-436 .dropdown-menu>.active>a:focus,.factory-bootstrap-436 .dropdown-menu>.active>a:hover{background-color:#357ebd;background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)}.factory-bootstrap-436 .navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.factory-bootstrap-436 .navbar-default .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f3f3f3 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f3f3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.factory-bootstrap-436 .navbar-brand,.factory-bootstrap-436 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-436 .navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.factory-bootstrap-436 .navbar-inverse .navbar-nav>.active>a{background-image:-webkit-linear-gradient(top,#222 0,#282828 100%);background-image:linear-gradient(to bottom,#222 0,#282828 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0);-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.factory-bootstrap-436 .navbar-inverse .navbar-brand,.factory-bootstrap-436 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-436 .navbar-fixed-bottom,.factory-bootstrap-436 .navbar-fixed-top,.factory-bootstrap-436 .navbar-static-top{border-radius:0}.factory-bootstrap-436 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-436 .alert .actions{padding-top:10px}.factory-bootstrap-436 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-436 .alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0)}.factory-bootstrap-436 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-436 .alert-normal,.factory-bootstrap-436 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-436 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-436 .alert-danger a:not(.btn),.factory-bootstrap-436 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-436 .progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0)}.factory-bootstrap-436 .progress-bar{background-image:-webkit-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0)}.factory-bootstrap-436 .progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0)}.factory-bootstrap-436 .progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0)}.factory-bootstrap-436 .progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0)}.factory-bootstrap-436 .progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0)}.factory-bootstrap-436 .list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-436 .list-group-item.active,.factory-bootstrap-436 .list-group-item.active:focus,.factory-bootstrap-436 .list-group-item.active:hover{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0)}.factory-bootstrap-436 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-436 .panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0)}.factory-bootstrap-436 .panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)}.factory-bootstrap-436 .panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0)}.factory-bootstrap-436 .panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0)}.factory-bootstrap-436 .panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0)}.factory-bootstrap-436 .panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0)}.factory-bootstrap-436 .well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)}.factory-bootstrap-436 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-436 .factory-hidden{display:none}.factory-bootstrap-436 .factory-ajax-loader{width:25px;height:25px;background:url(../assets/images/loader-sm-tr.gif)}.factory-control-error{background-color:rgba(0,0,0,.8);white-space:normal;z-index:10;font-weight:400;line-height:150%;border-radius:4px;color:#fff;font-size:13px;margin-top:5px;padding:4px 10px 3px;max-width:500px;display:inline-block}.factory-control-error i{margin:0 7px 0 1px}
libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#a3b745;border-color:#839237;color:#fff;-webkit-box-shadow:inset 0 1px 0 #c0cd7b,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #c0cd7b,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#89993a;border-color:#727f30;color:#fff;-webkit-box-shadow:inset 0 1px 0 #b7c669,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #b7c669,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#89993a;border-color:#727f30;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#a3b745;border-color:#839237;color:#fff;-webkit-box-shadow:inset 0 1px 0 #c0cd7b,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #c0cd7b,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#89993a;border-color:#727f30;color:#fff;-webkit-box-shadow:inset 0 1px 0 #b7c669,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #b7c669,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#89993a;border-color:#727f30;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-433 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-433 .factory-form-group .factory-hint-icon{display:block;width:16px;height:16px;line-height:13px;padding:0;font-size:11px;text-align:center;position:absolute;top:-5px;right:-3px;color:#fff;background:#E91E63;border-radius:3px}.factory-bootstrap-433 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-433 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-433 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-433 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-433 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-433 .factory-form-group legend+.control-group{margin-top:0}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-436 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-436 .factory-form-group .factory-hint-icon{display:block;width:16px;height:16px;line-height:13px;padding:0;font-size:11px;text-align:center;position:absolute;top:-5px;right:-3px;color:#fff;background:#E91E63;border-radius:3px}.factory-bootstrap-436 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-436 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-436 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-436 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-436 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-436 .factory-form-group legend+.control-group{margin-top:0}
libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#04a4cc;border-color:#037c9a;color:#fff;-webkit-box-shadow:inset 0 1px 0 #22cffb,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #22cffb,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#0384a4;border-color:#036881;color:#fff;-webkit-box-shadow:inset 0 1px 0 #09cafa,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #09cafa,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#0384a4;border-color:#036881;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#04a4cc;border-color:#037c9a;color:#fff;-webkit-box-shadow:inset 0 1px 0 #22cffb,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #22cffb,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#0384a4;border-color:#036881;color:#fff;-webkit-box-shadow:inset 0 1px 0 #09cafa,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #09cafa,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#0384a4;border-color:#036881;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#e14d43;border-color:#d02a21;color:#fff;-webkit-box-shadow:inset 0 1px 0 #ec8a85,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #ec8a85,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#d92c23;border-color:#ba251e;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8756f,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8756f,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#d92c23;border-color:#ba251e;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#e14d43;border-color:#d02a21;color:#fff;-webkit-box-shadow:inset 0 1px 0 #ec8a85,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #ec8a85,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#d92c23;border-color:#ba251e;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8756f,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8756f,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#d92c23;border-color:#ba251e;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#9ebaa0;border-color:#80a583;color:#fff;-webkit-box-shadow:inset 0 1px 0 #cbdacc,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #cbdacc,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#86a988;border-color:#719a74;color:#fff;-webkit-box-shadow:inset 0 1px 0 #bccfbd,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #bccfbd,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#86a988;border-color:#719a74;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#9ebaa0;border-color:#80a583;color:#fff;-webkit-box-shadow:inset 0 1px 0 #cbdacc,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #cbdacc,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#86a988;border-color:#719a74;color:#fff;-webkit-box-shadow:inset 0 1px 0 #bccfbd,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #bccfbd,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#86a988;border-color:#719a74;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .btn-primary{background:#dd823b;border-color:#c36822;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8ab7c,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8ab7c,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:focus,.factory-bootstrap-433 .btn-primary:hover{background:#cc6c23;border-color:#ad5c1e;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e59d66,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e59d66,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-433 .btn-primary:active{background:#cc6c23;border-color:#ad5c1e;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-433 .btn-primary:disabled,.factory-bootstrap-433 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-433 .btn-group .btn.active.value{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}.factory-bootstrap-433 .pagination>.active>a,.factory-bootstrap-433 .pagination>.active>a:focus,.factory-bootstrap-433 .pagination>.active>a:hover,.factory-bootstrap-433 .pagination>.active>span,.factory-bootstrap-433 .pagination>.active>span:focus,.factory-bootstrap-433 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .btn-primary{background:#dd823b;border-color:#c36822;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e8ab7c,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e8ab7c,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:focus,.factory-bootstrap-436 .btn-primary:hover{background:#cc6c23;border-color:#ad5c1e;color:#fff;-webkit-box-shadow:inset 0 1px 0 #e59d66,0 1px 0 rgba(0,0,0,.15);box-shadow:inset 0 1px 0 #e59d66,0 1px 0 rgba(0,0,0,.15)}.factory-bootstrap-436 .btn-primary:active{background:#cc6c23;border-color:#ad5c1e;color:#fff;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}.factory-bootstrap-436 .btn-primary:disabled,.factory-bootstrap-436 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-436 .btn-group .btn.active.value{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}.factory-bootstrap-436 .pagination>.active>a,.factory-bootstrap-436 .pagination>.active>a:focus,.factory-bootstrap-436 .pagination>.active>a:hover,.factory-bootstrap-436 .pagination>.active>span,.factory-bootstrap-436 .pagination>.active>span:focus,.factory-bootstrap-436 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
libs/factory/bootstrap/assets/css-min/control.checkbox.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- #side-sortables .factory-bootstrap-433 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-433 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-433 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-433 .factory-buttons-way .factory-on.active{text-shadow:none;color:#fff;background-color:#33aad5;-webkit-box-shadow:inset 0 1px 1px #0074a2;box-shadow:inset 0 1px 3px #0074a2;border-top:1px solid #0074a2;border-bottom:1px solid #0074a2;border-left:1px solid #0074a2}.factory-bootstrap-433 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-433 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.admin-color-blue .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.admin-color-coffee .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.admin-color-ectoplasm .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.admin-color-midnight .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.admin-color-ocean .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.admin-color-sunrise .factory-bootstrap-433 .factory-buttons-way .factory-on.active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}
8
  */
9
 
10
 
11
+ #side-sortables .factory-bootstrap-436 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-436 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-436 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-436 .factory-buttons-way .factory-on.active{text-shadow:none;color:#fff;background-color:#33aad5;-webkit-box-shadow:inset 0 1px 1px #0074a2;box-shadow:inset 0 1px 3px #0074a2;border-top:1px solid #0074a2;border-bottom:1px solid #0074a2;border-left:1px solid #0074a2}.factory-bootstrap-436 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-436 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.admin-color-blue .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.admin-color-coffee .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.admin-color-ectoplasm .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.admin-color-midnight .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.admin-color-ocean .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.admin-color-sunrise .factory-bootstrap-436 .factory-buttons-way .factory-on.active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}
libs/factory/bootstrap/assets/css-min/control.dropdown.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-433 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-433 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.admin-color-blue .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.admin-color-coffee .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.admin-color-ectoplasm .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.admin-color-midnight .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.admin-color-ocean .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.admin-color-sunrise .factory-bootstrap-433 .factory-dropdown.factory-buttons-way .active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}.factory-bootstrap-433 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-433 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-433 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-433 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-436 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-436 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#04a4cc;-webkit-box-shadow:inset 0 1px 2px #037c9a;box-shadow:inset 0 1px 2px #037c9a;border-top:1px solid #037c9a;border-bottom:1px solid #037c9a;border-left:1px solid #037c9a}.admin-color-blue .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#e1a948;-webkit-box-shadow:inset 0 1px 2px #d39323;box-shadow:inset 0 1px 2px #d39323;border-top:1px solid #d39323;border-bottom:1px solid #d39323;border-left:1px solid #d39323}.admin-color-coffee .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#c7a589;-webkit-box-shadow:inset 0 1px 2px #b78a66;box-shadow:inset 0 1px 2px #b78a66;border-top:1px solid #b78a66;border-bottom:1px solid #b78a66;border-left:1px solid #b78a66}.admin-color-ectoplasm .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#a3b745;-webkit-box-shadow:inset 0 1px 2px #839237;box-shadow:inset 0 1px 2px #839237;border-top:1px solid #839237;border-bottom:1px solid #839237;border-left:1px solid #839237}.admin-color-midnight .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#e14d43;-webkit-box-shadow:inset 0 1px 2px #d02a21;box-shadow:inset 0 1px 2px #d02a21;border-top:1px solid #d02a21;border-bottom:1px solid #d02a21;border-left:1px solid #d02a21}.admin-color-ocean .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#9ebaa0;-webkit-box-shadow:inset 0 1px 2px #80a583;box-shadow:inset 0 1px 2px #80a583;border-top:1px solid #80a583;border-bottom:1px solid #80a583;border-left:1px solid #80a583}.admin-color-sunrise .factory-bootstrap-436 .factory-dropdown.factory-buttons-way .active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}.factory-bootstrap-436 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-436 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-436 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-436 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-433 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-433 .factory-mtextbox-item .factory-mtextbox-remove-item{position:absolute;top:0;right:0;bottom:0;width:40px;border-radius:0 3px 3px 0;outline:0}.factory-bootstrap-433 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-433 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-433 .factory-mtextbox-add-item{display:block;margin-top:10px}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-436 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-436 .factory-mtextbox-item .factory-mtextbox-remove-item{position:absolute;top:0;right:0;bottom:0;width:40px;border-radius:0 3px 3px 0;outline:0}.factory-bootstrap-436 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-436 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-436 .factory-mtextbox-add-item{display:block;margin-top:10px}
libs/factory/bootstrap/assets/css-min/holder.more-link.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-433 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-433 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-433 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-433 .factory-tab .factory-more-link-hide{position:absolute;margin-top:-35px;background-color:#fff;padding:0 5px;right:20px;color:#bbb;text-decoration:none}.factory-bootstrap-433 .factory-tab .factory-more-link-hide:hover{color:#999}
8
  */
9
 
10
 
11
+ .factory-bootstrap-436 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-436 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-436 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-436 .factory-tab .factory-more-link-hide{position:absolute;margin-top:-35px;background-color:#fff;padding:0 5px;right:20px;color:#bbb;text-decoration:none}.factory-bootstrap-436 .factory-tab .factory-more-link-hide:hover{color:#999}
libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- +function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=factory-dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}},a.fn.factoryBootstrap433_dropdown=function(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new f(this)),"string"==typeof b&&d[b].call(c)})},a.fn.factoryBootstrap433_dropdown.Constructor=f,a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ +function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=factory-dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}},a.fn.factoryBootstrap436_dropdown=function(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new f(this)),"string"==typeof b&&d[b].call(c)})},a.fn.factoryBootstrap436_dropdown.Constructor=f,a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(jQuery);
libs/factory/bootstrap/assets/js-min/control.checkbox.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- !function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.attr("checked","checked"),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.removeAttr("checked"),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&(console.log(l[m]),a(m).val(l[m]))}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap433_checkboxControl=function(c){if("string"==typeof c){var d=a(this).data("factory.checkbox.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.checkbox.control");d||c.data("factory.checkbox.control",d=new b(this))})},a.fn.factoryBootstrap433_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-433 .factory-checkbox.factory-buttons-way").factoryBootstrap433_checkboxControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.attr("checked","checked"),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.removeAttr("checked"),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&(console.log(l[m]),a(m).val(l[m]))}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap436_checkboxControl=function(c){if("string"==typeof c){var d=a(this).data("factory.checkbox.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.checkbox.control");d||c.data("factory.checkbox.control",d=new b(this))})},a.fn.factoryBootstrap436_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-436 .factory-checkbox.factory-buttons-way").factoryBootstrap436_checkboxControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.dropdown.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name")||this.$element.attr("name"),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){void 0!==window.factory_dropdown_control_events_data&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.val(),f=window.factory_dropdown_control_events_data[d];if(f&&f[e]){var g;void 0===window.__factory_dropdown_control_detach_elements&&(window.__factory_dropdown_control_detach_elements={}),g=window.__factory_dropdown_control_detach_elements;for(var h in f[e])if(f[e].hasOwnProperty(h)){var i,j=f[e][h];switch(a.isArray(j)||(i=c.hashCode(d+j)),h){case"hide":"string"==typeof j&&a(j).hide(0);break;case"show":"string"==typeof j&&a(j).fadeIn(200);break;case"detach":"string"==typeof j&&a(j).each(function(b){g[i]||(g[i]={}),g[i][b]||(g[i][b]={}),g[i][b].recovery_contanier=a(this).parent(),g[i][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(g[i]){for(var k in g[i])g[i].hasOwnProperty(k)&&g[i][k].recovery_contanier&&g[i][k].element&&g[i][k].recovery_contanier.append(g[i][k].element);delete g[i]}break;case"removeClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).removeClass(j[l]);break;case"addClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).addClass(j[l])}}}},"buttons"===this.way)this.$result=this.$element.find(".factory-result"),this.$hints=this.$element.find(".factory-hints"),this.$buttons=this.$element.find(".btn"),c.executeEvents(this.$result),this.$buttons.click(function(){var b=a(this).data("value");return c.$buttons.removeClass("active"),a(this).addClass("active"),c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+b).fadeIn(),c.$result.val(b),c.$result.trigger("change"),!1});else if("ddslick"===this.way){c.executeEvents(c.$element.find(".factory-result"));var d=window["factory_"+this.name+"_data"],e=this.$element.find(".factory-ddslick"),f=this.$element.data("width")||300,g=this.$element.data("align")||"right";a(d).each(function(){return this.imageHoverSrc?void(a("<img/>")[0].src=this.imageHoverSrc):!0}),e.ddslick({data:d,width:f,imagePosition:g,selectText:"- select -",onSelected:function(a){a.selectedData.imageHoverSrc&&c.$element.find(".dd-selected-image").attr("src",a.selectedData.imageHoverSrc);var b=c.$element.find(".factory-result").val(a.selectedData.value);b.change()}})}else{c.executeEvents(this.$element),this.$hints=this.$element.next(),this.$hints.hasClass("factory-hints")&&(this.$element.change(function(){return c.updateHints(),!1}),this.updateHints=function(){var a=c.$element.val();c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+a).show()},c.updateHints()),this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(a){console&&console.log&&console.log(a.responseText),c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length)for(var d in a){var e=a[d];c.addListItem(e)}else this.$element.append("<option>"+b.emptyList+"</li>");this.$element.trigger("factory-loaded")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<option />").attr("value",b.value).text(b.title).appendTo(this.$element),e=c.getAjaxData();e.selected&&e.selected==b.value&&d.attr("selected","selected")},this.showError=function(b){this.clearList();var d=a("<div class='factory-control-error'></div>").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),e=c.getAjaxData();this.$element.append("<option>"+e.emptyList+"</li>"),this.$element.after(d),this.$element.addClass("factory-has-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var h=this.$element.data("ajax");h&&this.loadData()}};a.fn.factoryBootstrap433_dropdownControl=function(c){if("string"==typeof c){var d=a(this).data("factory.dropdown.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.dropdown.control");d||c.data("factory.dropdown.control",d=new b(this))})},a.fn.factoryBootstrap433_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-433 .factory-dropdown").factoryBootstrap433_dropdownControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name")||this.$element.attr("name"),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){void 0!==window.factory_dropdown_control_events_data&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.val(),f=window.factory_dropdown_control_events_data[d];if(f&&f[e]){var g;void 0===window.__factory_dropdown_control_detach_elements&&(window.__factory_dropdown_control_detach_elements={}),g=window.__factory_dropdown_control_detach_elements;for(var h in f[e])if(f[e].hasOwnProperty(h)){var i,j=f[e][h];switch(a.isArray(j)||(i=c.hashCode(d+j)),h){case"hide":"string"==typeof j&&a(j).hide(0);break;case"show":"string"==typeof j&&a(j).fadeIn(200);break;case"detach":"string"==typeof j&&a(j).each(function(b){g[i]||(g[i]={}),g[i][b]||(g[i][b]={}),g[i][b].recovery_contanier=a(this).parent(),g[i][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(g[i]){for(var k in g[i])g[i].hasOwnProperty(k)&&g[i][k].recovery_contanier&&g[i][k].element&&g[i][k].recovery_contanier.append(g[i][k].element);delete g[i]}break;case"removeClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).removeClass(j[l]);break;case"addClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).addClass(j[l])}}}},"buttons"===this.way)this.$result=this.$element.find(".factory-result"),this.$hints=this.$element.find(".factory-hints"),this.$buttons=this.$element.find(".btn"),c.executeEvents(this.$result),this.$buttons.click(function(){var b=a(this).data("value");return c.$buttons.removeClass("active"),a(this).addClass("active"),c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+b).fadeIn(),c.$result.val(b),c.$result.trigger("change"),!1});else if("ddslick"===this.way){c.executeEvents(c.$element.find(".factory-result"));var d=window["factory_"+this.name+"_data"],e=this.$element.find(".factory-ddslick"),f=this.$element.data("width")||300,g=this.$element.data("align")||"right";a(d).each(function(){return this.imageHoverSrc?void(a("<img/>")[0].src=this.imageHoverSrc):!0}),e.ddslick({data:d,width:f,imagePosition:g,selectText:"- select -",onSelected:function(a){a.selectedData.imageHoverSrc&&c.$element.find(".dd-selected-image").attr("src",a.selectedData.imageHoverSrc);var b=c.$element.find(".factory-result").val(a.selectedData.value);b.change()}})}else{c.executeEvents(this.$element),this.$hints=this.$element.next(),this.$hints.hasClass("factory-hints")&&(this.$element.change(function(){return c.updateHints(),!1}),this.updateHints=function(){var a=c.$element.val();c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+a).show()},c.updateHints()),this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(a){console&&console.log&&console.log(a.responseText),c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length)for(var d in a){var e=a[d];c.addListItem(e)}else this.$element.append("<option>"+b.emptyList+"</li>");this.$element.trigger("factory-loaded")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<option />").attr("value",b.value).text(b.title).appendTo(this.$element),e=c.getAjaxData();e.selected&&e.selected==b.value&&d.attr("selected","selected")},this.showError=function(b){this.clearList();var d=a("<div class='factory-control-error'></div>").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),e=c.getAjaxData();this.$element.append("<option>"+e.emptyList+"</li>"),this.$element.after(d),this.$element.addClass("factory-has-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var h=this.$element.data("ajax");h&&this.loadData()}};a.fn.factoryBootstrap436_dropdownControl=function(c){if("string"==typeof c){var d=a(this).data("factory.dropdown.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.dropdown.control");d||c.data("factory.dropdown.control",d=new b(this))})},a.fn.factoryBootstrap436_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-436 .factory-dropdown").factoryBootstrap436_dropdownControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.list.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name"),"checklist"===this.way){this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(){c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length){this.$element.removeClass("factory-empty");for(var d in a){var e=a[d];c.addListItem(e)}}else this.$element.addClass("factory-empty"),this.$element.append("<li>"+b.emptyList+"</li>")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<li>"),e=a("<label>").attr("for","factory-checklist-"+c.name+"-"+b.value).appendTo(d),f=a("<span>").appendTo(e),g=a("<input />").attr("type","checkbox").attr("name",c.name+"[]").val(b.value).attr("id","factory-checklist-"+c.name+"-"+b.value).appendTo(f),h=(a("<span>"+b.title+"</span>").appendTo(e),c.getAjaxData());h.selected.length&&a.inArray(b.value,h.selected)>=0&&g.attr("checked","checked"),this.$element.append(d)},this.showError=function(b){this.$element.html("").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),this.$element.addClass("factory-list-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var d=this.$element.data("ajax");d&&this.loadData()}};a.fn.factoryBootstrap433_listControl=function(c){if("string"==typeof c){var d=a(this).data("factory.list.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.list.control");d||c.data("factory.list.control",d=new b(this))})},a.fn.factoryBootstrap433_listControl.Constructor=b,a(function(){a(".factory-bootstrap-433 .factory-list").factoryBootstrap433_listControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name"),"checklist"===this.way){this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(){c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length){this.$element.removeClass("factory-empty");for(var d in a){var e=a[d];c.addListItem(e)}}else this.$element.addClass("factory-empty"),this.$element.append("<li>"+b.emptyList+"</li>")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<li>"),e=a("<label>").attr("for","factory-checklist-"+c.name+"-"+b.value).appendTo(d),f=a("<span>").appendTo(e),g=a("<input />").attr("type","checkbox").attr("name",c.name+"[]").val(b.value).attr("id","factory-checklist-"+c.name+"-"+b.value).appendTo(f),h=(a("<span>"+b.title+"</span>").appendTo(e),c.getAjaxData());h.selected.length&&a.inArray(b.value,h.selected)>=0&&g.attr("checked","checked"),this.$element.append(d)},this.showError=function(b){this.$element.html("").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),this.$element.addClass("factory-list-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var d=this.$element.data("ajax");d&&this.loadData()}};a.fn.factoryBootstrap436_listControl=function(c){if("string"==typeof c){var d=a(this).data("factory.list.control");return d?d[c]():null}return this.each(function(){var c=a(this),d=c.data("factory.list.control");d||c.data("factory.list.control",d=new b(this))})},a.fn.factoryBootstrap436_listControl.Constructor=b,a(function(){a(".factory-bootstrap-436 .factory-list").factoryBootstrap436_listControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- !function(a){"use strict";var b=function(b){this.$element=a(b);var c=a(".factory-mtextbox-item",this.$element).eq(0).clone(!0);a(".factory-mtextbox-add-item",this.$element).on("click",function(){var b=a(this).closest(".factory-multiple-textbox-group").find(".factory-mtextbox-items"),d=c.clone(!0),e=a('<button class="btn btn-default btn-small factory-mtextbox-remove-item"><i class="fa fa-times" aria-hidden="true"></i></button>');return b.append(d.append(e)),d.find('input[type="text"]').val("").focus(),!1}),a(document).on("click",".factory-mtextbox-remove-item",function(){return a(this).closest(".factory-mtextbox-item").remove(),!1})};a.fn.factoryBootstrap433_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-433 .factory-multiple-textbox-group").factoryBootstrap433_MultipleTextboxControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){"use strict";var b=function(b){this.$element=a(b);var c=a(".factory-mtextbox-item",this.$element).eq(0).clone(!0);a(".factory-mtextbox-add-item",this.$element).on("click",function(){var b=a(this).closest(".factory-multiple-textbox-group").find(".factory-mtextbox-items"),d=c.clone(!0),e=a('<button class="btn btn-default btn-small factory-mtextbox-remove-item"><i class="fa fa-times" aria-hidden="true"></i></button>');return b.append(d.append(e)),d.find('input[type="text"]').val("").focus(),!1}),a(document).on("click",".factory-mtextbox-remove-item",function(){return a(this).closest(".factory-mtextbox-item").remove(),!1})};a.fn.factoryBootstrap436_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-436 .factory-multiple-textbox-group").factoryBootstrap436_MultipleTextboxControl()})}(jQuery);
libs/factory/bootstrap/boot.php CHANGED
@@ -19,27 +19,27 @@ if( !is_admin() ) {
19
  return;
20
  }
21
 
22
- if( defined('FACTORY_BOOTSTRAP_433_LOADED') ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_BOOTSTRAP_433_VERSION', '4.3.3');
27
- define('FACTORY_BOOTSTRAP_433_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
- define('FACTORY_BOOTSTRAP_433_DIR', dirname(__FILE__));
34
- define('FACTORY_BOOTSTRAP_433_URL', plugins_url(null, __FILE__));
35
 
36
- require_once(FACTORY_BOOTSTRAP_433_DIR . '/includes/functions.php');
37
 
38
  /**
39
- * @param Wbcr_Factory432_Plugin $plugin
40
  */
41
- add_action('wbcr_factory_bootstrap_433_plugin_created', function ($plugin) {
42
- $manager = new Wbcr_FactoryBootstrap433_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_BOOTSTRAP_436_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_BOOTSTRAP_436_VERSION', '4.3.6');
27
+ define('FACTORY_BOOTSTRAP_436_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
+ define('FACTORY_BOOTSTRAP_436_DIR', dirname(__FILE__));
34
+ define('FACTORY_BOOTSTRAP_436_URL', plugins_url(null, __FILE__));
35
 
36
+ require_once(FACTORY_BOOTSTRAP_436_DIR . '/includes/functions.php');
37
 
38
  /**
39
+ * @param Wbcr_Factory436_Plugin $plugin
40
  */
41
+ add_action('wbcr_factory_bootstrap_436_plugin_created', function ($plugin) {
42
+ $manager = new Wbcr_FactoryBootstrap436_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
libs/factory/bootstrap/includes/functions.php CHANGED
@@ -20,13 +20,13 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 3.2.0
22
  */
23
- class Wbcr_FactoryBootstrap433_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
- * @var Wbcr_Factory432_Plugin
30
  */
31
  public $plugin;
32
 
@@ -51,7 +51,7 @@ class Wbcr_FactoryBootstrap433_Manager {
51
  *
52
  * @since 1.0.0
53
  */
54
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
55
  $this->plugin = $plugin;
56
 
57
  add_action( 'admin_enqueue_scripts', [ $this, 'loadAssets' ] );
@@ -111,8 +111,8 @@ class Wbcr_FactoryBootstrap433_Manager {
111
  */
112
  public function loadAssets( $hook ) {
113
 
114
- do_action( 'wbcr_factory_432_bootstrap_enqueue_scripts', $hook );
115
- do_action( 'wbcr_factory_432_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook );
116
 
117
  $dependencies = [];
118
  if ( ! empty( $this->scripts ) ) {
@@ -156,8 +156,8 @@ class Wbcr_FactoryBootstrap433_Manager {
156
  $cache_enable = apply_filters( 'wbcr/factory/bootstrap/cache_enable', true );
157
 
158
  $cache_id = md5( implode( ',', $this->scripts ) . $type . $this->plugin->getPluginVersion() );
159
- $cache_dir_path = FACTORY_BOOTSTRAP_433_DIR . '/assets/cache/';
160
- $cache_dir_url = FACTORY_BOOTSTRAP_433_URL . '/assets/cache/';
161
 
162
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
163
  $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
@@ -184,7 +184,7 @@ class Wbcr_FactoryBootstrap433_Manager {
184
  foreach ( $scripts as $script_to_load ) {
185
  $script_to_load = sanitize_text_field( $script_to_load );
186
  if ( $cache_enable && $cache_dir_exists ) {
187
- $fname = FACTORY_BOOTSTRAP_433_DIR . "/assets/$type-min/$script_to_load.min." . $type;
188
  if ( file_exists( $fname ) ) {
189
  $f = @fopen( $fname, 'r' );
190
  $concat_files[] = @fread( $f, filesize( $fname ) );
@@ -192,9 +192,9 @@ class Wbcr_FactoryBootstrap433_Manager {
192
  }
193
  } else {
194
  if ( $type == 'js' ) {
195
- wp_enqueue_script( md5( $script_to_load ), FACTORY_BOOTSTRAP_433_URL . "/assets/$type-min/$script_to_load.min." . $type, $is_first ? $dependencies : false, $this->plugin->getPluginVersion() );
196
  } else {
197
- wp_enqueue_style( md5( $script_to_load ), FACTORY_BOOTSTRAP_433_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion() );
198
  }
199
  $is_first = false;
200
  }
20
  *
21
  * @since 3.2.0
22
  */
23
+ class Wbcr_FactoryBootstrap436_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
+ * @var Wbcr_Factory436_Plugin
30
  */
31
  public $plugin;
32
 
51
  *
52
  * @since 1.0.0
53
  */
54
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
55
  $this->plugin = $plugin;
56
 
57
  add_action( 'admin_enqueue_scripts', [ $this, 'loadAssets' ] );
111
  */
112
  public function loadAssets( $hook ) {
113
 
114
+ do_action( 'wbcr_factory_436_bootstrap_enqueue_scripts', $hook );
115
+ do_action( 'wbcr_factory_436_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook );
116
 
117
  $dependencies = [];
118
  if ( ! empty( $this->scripts ) ) {
156
  $cache_enable = apply_filters( 'wbcr/factory/bootstrap/cache_enable', true );
157
 
158
  $cache_id = md5( implode( ',', $this->scripts ) . $type . $this->plugin->getPluginVersion() );
159
+ $cache_dir_path = FACTORY_BOOTSTRAP_436_DIR . '/assets/cache/';
160
+ $cache_dir_url = FACTORY_BOOTSTRAP_436_URL . '/assets/cache/';
161
 
162
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
163
  $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
184
  foreach ( $scripts as $script_to_load ) {
185
  $script_to_load = sanitize_text_field( $script_to_load );
186
  if ( $cache_enable && $cache_dir_exists ) {
187
+ $fname = FACTORY_BOOTSTRAP_436_DIR . "/assets/$type-min/$script_to_load.min." . $type;
188
  if ( file_exists( $fname ) ) {
189
  $f = @fopen( $fname, 'r' );
190
  $concat_files[] = @fread( $f, filesize( $fname ) );
192
  }
193
  } else {
194
  if ( $type == 'js' ) {
195
+ wp_enqueue_script( md5( $script_to_load ), FACTORY_BOOTSTRAP_436_URL . "/assets/$type-min/$script_to_load.min." . $type, $is_first ? $dependencies : false, $this->plugin->getPluginVersion() );
196
  } else {
197
+ wp_enqueue_style( md5( $script_to_load ), FACTORY_BOOTSTRAP_436_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion() );
198
  }
199
  $is_first = false;
200
  }
libs/factory/clearfy/assets/css/clearfy-base.css CHANGED
@@ -5,18 +5,18 @@
5
  * @copyright Webcraftic 06.10.2018
6
  * @sicne 2.0.5
7
  */
8
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion {
9
  padding: 30px 80px;
10
  }
11
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion h3 {
12
  margin: 0 0 20px;
13
  }
14
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-inner-contanier {
15
  border: 2px dashed #8bc34a;
16
  background: #fff;
17
  padding: 20px;
18
  }
19
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-activate-premium {
20
  display: inline-block;
21
  cursor: pointer;
22
  line-height: 16px;
@@ -35,16 +35,16 @@
35
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
36
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
37
  }
38
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-activate-premium:active {
39
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
40
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
41
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
42
  }
43
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-activate-premium:focus {
44
  outline: none;
45
  border: 0;
46
  }
47
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-purchase-premium {
48
  display: inline-block;
49
  cursor: pointer;
50
  line-height: 16px;
@@ -63,22 +63,22 @@
63
  -moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
64
  -webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
65
  }
66
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-purchase-premium:active {
67
  box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
68
  -moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
69
  -webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
70
  }
71
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-suggetion .wbcr-factory-purchase-premium:focus {
72
  outline: none;
73
  border: 0;
74
  }
75
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion {
76
  background: #fff;
77
  color: #353535;
78
  font-weight: 600;
79
  border: 2px dashed #8bc34a;
80
  }
81
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion h3 {
82
  margin: 0 0 20px;
83
  padding: 10px 0;
84
  text-align: center;
@@ -89,16 +89,16 @@
89
  vertical-align: middle;
90
  text-transform: uppercase;
91
  }
92
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul {
93
  position: relative;
94
  margin-bottom: 20px;
95
  }
96
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul li {
97
  font-size: 15px;
98
  padding: 7px;
99
  padding-left: 20px;
100
  }
101
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul li:before {
102
  content: " ";
103
  display: inline-block;
104
  width: 0.4em;
@@ -112,7 +112,7 @@
112
  -o-transform: rotate(45deg);
113
  transform: rotate(45deg);
114
  }
115
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion .wbcr-factory-purchase-premium {
116
  display: block;
117
  cursor: pointer;
118
  line-height: 16px;
@@ -131,44 +131,44 @@
131
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
132
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
133
  }
134
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion .wbcr-factory-purchase-premium:active {
135
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
136
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
137
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
138
  }
139
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion .wbcr-factory-purchase-premium:focus {
140
  outline: none;
141
  border: 0;
142
  }
143
  @media screen and (max-width: 1550px) {
144
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-clearfy-224-multisite-pro-suggetion {
145
  padding: 10px 80px;
146
  }
147
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion {
148
  padding: 10px;
149
  }
150
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion h3 {
151
  margin: 0 0 20px;
152
  padding: 10px 0;
153
  font-size: 13px;
154
  font-weight: 600;
155
  }
156
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul {
157
  margin-bottom: 20px;
158
  }
159
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul li {
160
  font-size: 13px;
161
  padding: 2px;
162
  padding-left: 10px;
163
  }
164
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion ul li:before {
165
  width: 0.4em;
166
  height: 0.7em;
167
  border-width: 0 0.2em 0.2em 0;
168
  left: 0;
169
  margin-right: 10px;
170
  }
171
- #WBCR .wbcr-factory-pages-432-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-224-pro-suggettion .wbcr-factory-purchase-premium {
172
  font-weight: 700;
173
  line-height: 16px;
174
  font-size: 12px;
5
  * @copyright Webcraftic 06.10.2018
6
  * @sicne 2.0.5
7
  */
8
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion {
9
  padding: 30px 80px;
10
  }
11
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion h3 {
12
  margin: 0 0 20px;
13
  }
14
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-inner-contanier {
15
  border: 2px dashed #8bc34a;
16
  background: #fff;
17
  padding: 20px;
18
  }
19
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-activate-premium {
20
  display: inline-block;
21
  cursor: pointer;
22
  line-height: 16px;
35
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
36
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
37
  }
38
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-activate-premium:active {
39
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
40
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
41
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
42
  }
43
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-activate-premium:focus {
44
  outline: none;
45
  border: 0;
46
  }
47
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-purchase-premium {
48
  display: inline-block;
49
  cursor: pointer;
50
  line-height: 16px;
63
  -moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
64
  -webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
65
  }
66
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-purchase-premium:active {
67
  box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
68
  -moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
69
  -webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
70
  }
71
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-suggetion .wbcr-factory-purchase-premium:focus {
72
  outline: none;
73
  border: 0;
74
  }
75
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion {
76
  background: #fff;
77
  color: #353535;
78
  font-weight: 600;
79
  border: 2px dashed #8bc34a;
80
  }
81
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion h3 {
82
  margin: 0 0 20px;
83
  padding: 10px 0;
84
  text-align: center;
89
  vertical-align: middle;
90
  text-transform: uppercase;
91
  }
92
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul {
93
  position: relative;
94
  margin-bottom: 20px;
95
  }
96
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul li {
97
  font-size: 15px;
98
  padding: 7px;
99
  padding-left: 20px;
100
  }
101
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul li:before {
102
  content: " ";
103
  display: inline-block;
104
  width: 0.4em;
112
  -o-transform: rotate(45deg);
113
  transform: rotate(45deg);
114
  }
115
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion .wbcr-factory-purchase-premium {
116
  display: block;
117
  cursor: pointer;
118
  line-height: 16px;
131
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
132
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
133
  }
134
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion .wbcr-factory-purchase-premium:active {
135
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
136
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
137
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
138
  }
139
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion .wbcr-factory-purchase-premium:focus {
140
  outline: none;
141
  border: 0;
142
  }
143
  @media screen and (max-width: 1550px) {
144
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-clearfy-227-multisite-pro-suggetion {
145
  padding: 10px 80px;
146
  }
147
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion {
148
  padding: 10px;
149
  }
150
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion h3 {
151
  margin: 0 0 20px;
152
  padding: 10px 0;
153
  font-size: 13px;
154
  font-weight: 600;
155
  }
156
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul {
157
  margin-bottom: 20px;
158
  }
159
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul li {
160
  font-size: 13px;
161
  padding: 2px;
162
  padding-left: 10px;
163
  }
164
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion ul li:before {
165
  width: 0.4em;
166
  height: 0.7em;
167
  border-width: 0 0.2em 0.2em 0;
168
  left: 0;
169
  margin-right: 10px;
170
  }
171
+ #WBCR .wbcr-factory-pages-435-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-227-pro-suggettion .wbcr-factory-purchase-premium {
172
  font-weight: 700;
173
  line-height: 16px;
174
  font-size: 12px;
libs/factory/clearfy/assets/css/components.css ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Page components
3
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
+ * @copyright Alex Kovalev 30.09.2017
5
+ */
6
+ #WBCR .wbc-factory-clearfy-227-components {
7
+ padding: 0 20px 20px;
8
+ text-align: center;
9
+ }
10
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card {
11
+ position: relative;
12
+ display: inline-block;
13
+ width: 32.7%;
14
+ height: 250px;
15
+ margin-left: 0;
16
+ margin-right: 0;
17
+ text-align: left;
18
+ float: none;
19
+ vertical-align: top;
20
+ }
21
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card:first-child {
22
+ margin-left: 0;
23
+ }
24
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .plugin-card-bottom {
25
+ position: absolute;
26
+ bottom: 0;
27
+ right: 0;
28
+ left: 0;
29
+ }
30
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .plugin-card-top {
31
+ min-height: 163px;
32
+ }
33
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .desc,
34
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .name {
35
+ margin-right: 0 !important;
36
+ }
37
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .name h3 {
38
+ font-size: 17px;
39
+ margin-top: 0 !important;
40
+ }
41
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .install-now {
42
+ float: right;
43
+ }
44
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .delete-now {
45
+ float: right;
46
+ margin-left: 5px;
47
+ }
48
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .delete-now .dashicons,
49
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .delete-now .dashicons-before:before {
50
+ font-size: 16px !important;
51
+ line-height: 1.5 !important;
52
+ color: #62696f;
53
+ }
54
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card a.open-plugin-details-modal {
55
+ color: #5c5d5f;
56
+ text-decoration: none;
57
+ font-weight: 600;
58
+ font-size: 15px;
59
+ }
60
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .plugin-card-premium-ribbon {
61
+ position: absolute;
62
+ bottom: 60px;
63
+ right: 0;
64
+ height: 30px;
65
+ width: 120px;
66
+ border-radius: 3px 0 0 3px;
67
+ background-color: #f7dea9;
68
+ color: #67532f;
69
+ text-align: center;
70
+ font-size: 12px;
71
+ font-weight: 600;
72
+ line-height: 2.4;
73
+ text-transform: uppercase;
74
+ z-index: 1;
75
+ }
76
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .plugin-card-free-ribbon {
77
+ position: absolute;
78
+ bottom: 60px;
79
+ right: 0;
80
+ height: 30px;
81
+ width: 120px;
82
+ border-radius: 3px 0 0 3px;
83
+ background-color: #cccccc;
84
+ color: #6b6b6b;
85
+ text-align: center;
86
+ font-size: 12px;
87
+ font-weight: 600;
88
+ line-height: 2.4;
89
+ text-transform: uppercase;
90
+ z-index: 1;
91
+ }
92
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card .plugin-card-freemium-ribbon {
93
+ position: absolute;
94
+ bottom: 60px;
95
+ right: 0;
96
+ height: 30px;
97
+ width: 120px;
98
+ border-radius: 3px 0 0 3px;
99
+ background-color: #cae2b3;
100
+ color: #546742;
101
+ text-align: center;
102
+ font-size: 12px;
103
+ font-weight: 600;
104
+ line-height: 2.4;
105
+ text-transform: uppercase;
106
+ z-index: 1;
107
+ }
108
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.premium {
109
+ border-color: #e8d7b2;
110
+ background-color: #fff9eb;
111
+ }
112
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.plugin-status-deactive {
113
+ background-color: #f1f1f1;
114
+ }
115
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.plugin-status-deactive a.open-plugin-details-modal {
116
+ color: #ababab;
117
+ text-decoration: none;
118
+ font-weight: 600;
119
+ font-size: 15px;
120
+ }
121
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.plugin-status-deactive .plugin-icon {
122
+ opacity: 0.3;
123
+ }
124
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.plugin-status-deactive .desc {
125
+ color: #afafaf;
126
+ }
127
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card.plugin-status-deactive.premium {
128
+ background-color: #f9f2f1;
129
+ }
130
+ @media screen and (max-width: 1750px) {
131
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card {
132
+ width: 49%;
133
+ }
134
+ }
135
+ @media screen and (max-width: 1350px) {
136
+ #WBCR .wbc-factory-clearfy-227-components .plugin-card {
137
+ width: 100%;
138
+ }
139
+ }
140
+ /*# sourceMappingURL=components.css.map */
libs/factory/clearfy/assets/css/components.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["components.less"],"names":[],"mappings":";;;;;AAMA,KAkBE;EACE,oBAAA;EACA,kBAAA;;AApBJ,KAkBE,oCAIE;EACE,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,WAAA;EACA,mBAAA;;AAEA,KAfJ,oCAIE,aAWG;EACC,cAAA;;AAlCR,KAkBE,oCAIE,aAeE;EACE,kBAAA;EACA,SAAA;EACA,QAAA;EACA,OAAA;;AAzCR,KAkBE,oCAIE,aAsBE;EACE,iBAAA;;AA7CR,KAkBE,oCAIE,aA0BE;AAhDN,KAkBE,oCAIE,aA0BS;EACL,0BAAA;;AAjDR,KAkBE,oCAIE,aA8BE,MACE;EACE,eAAA;EACA,wBAAA;;AAvDV,KAkBE,oCAIE,aAqCE;EACE,YAAA;;AA5DR,KAkBE,oCAIE,aAyCE;EACE,YAAA;EACA,gBAAA;;AAjER,KAkBE,oCAIE,aAyCE,YAIE;AAnER,KAkBE,oCAIE,aAyCE,YAIc,kBAAiB;EAC3B,0BAAA;EACA,gBAAA;EACA,cAAA;;AAtEV,KAkBE,oCAIE,aAoDE,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AA9ER,KAkBE,oCAIE,aA4DE;EAhFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,oCAIE,aAiEE;EArFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,oCAIE,aAsEE;EA1FF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAiFE,KA9EJ,oCAIE,aA0EG;EACC,qBAAA;EACA,yBAAA;;AAGF,KAnFJ,oCAIE,aA+EG;EACC,yBAAA;;AADF,KAnFJ,oCAIE,aA+EG,uBAIC,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AARJ,KAnFJ,oCAIE,aA+EG,uBAWC;EACE,YAAA;;AAZJ,KAnFJ,oCAIE,aA+EG,uBAeC;EACE,cAAA;;AAGF,KAtGN,oCAIE,aA+EG,uBAmBE;EACC,yBAAA;;AAOV,mBAAsC;EACpC,KACE,oCACE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,oCACE;IACE,WAAA","file":"components.css"}
libs/factory/clearfy/assets/css/components.less ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Page components
3
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
+ * @copyright Alex Kovalev 30.09.2017
5
+ */
6
+
7
+ #WBCR {
8
+ .card-ribbon(@bgColor:#f7dea9, @color:#67532f) {
9
+ position: absolute;
10
+ bottom: 60px;
11
+ right: 0;
12
+ height: 30px;
13
+ width: 120px;
14
+ border-radius: 3px 0 0 3px;
15
+ background-color: @bgColor;
16
+ color: @color;
17
+ text-align: center;
18
+ font-size: 12px;
19
+ font-weight: 600;
20
+ line-height: 2.4;
21
+ text-transform: uppercase;
22
+ z-index: 1;
23
+ }
24
+
25
+ .wbc-factory-clearfy-000-components {
26
+ padding: 0 20px 20px;
27
+ text-align: center;
28
+
29
+ .plugin-card {
30
+ position: relative;
31
+ display: inline-block;
32
+ width: 32.7%;
33
+ height: 250px;
34
+ margin-left: 0;
35
+ margin-right: 0;
36
+ text-align: left;
37
+ float: none;
38
+ vertical-align: top;
39
+
40
+ &:first-child {
41
+ margin-left: 0;
42
+ }
43
+
44
+ .plugin-card-bottom {
45
+ position: absolute;
46
+ bottom: 0;
47
+ right: 0;
48
+ left: 0;
49
+ }
50
+
51
+ .plugin-card-top {
52
+ min-height: 163px;
53
+ }
54
+
55
+ .desc, .name {
56
+ margin-right: 0 !important;
57
+ }
58
+
59
+ .name {
60
+ h3 {
61
+ font-size: 17px;
62
+ margin-top: 0 !important;
63
+ }
64
+ }
65
+
66
+ .install-now {
67
+ float: right;
68
+ }
69
+
70
+ .delete-now {
71
+ float: right;
72
+ margin-left: 5px;
73
+
74
+ .dashicons, .dashicons-before:before {
75
+ font-size: 16px !important;
76
+ line-height: 1.5 !important;
77
+ color: #62696f;
78
+ }
79
+ }
80
+
81
+ a.open-plugin-details-modal {
82
+ color: #5c5d5f;
83
+ text-decoration: none;
84
+ font-weight: 600;
85
+ font-size: 15px;
86
+ }
87
+
88
+ // Premium
89
+ .plugin-card-premium-ribbon {
90
+ .card-ribbon();
91
+ }
92
+
93
+ // Free
94
+ .plugin-card-free-ribbon {
95
+ .card-ribbon(#cccccc, #6b6b6b);
96
+ }
97
+
98
+ // Freemium
99
+ .plugin-card-freemium-ribbon {
100
+ .card-ribbon(#cae2b3, #546742);
101
+ }
102
+
103
+ &.premium {
104
+ border-color: #e8d7b2;
105
+ background-color: #fff9eb;
106
+ }
107
+
108
+ &.plugin-status-deactive {
109
+ background-color: #f1f1f1;
110
+ //background-color: #f9f2f1;
111
+
112
+ a.open-plugin-details-modal {
113
+ color: #ababab;
114
+ text-decoration: none;
115
+ font-weight: 600;
116
+ font-size: 15px;
117
+ }
118
+
119
+ .plugin-icon {
120
+ opacity: 0.3;
121
+ }
122
+
123
+ .desc {
124
+ color: #afafaf;
125
+ }
126
+
127
+ &.premium {
128
+ background-color: #f9f2f1;
129
+ }
130
+ }
131
+ }
132
+ }
133
+ }
134
+
135
+ @media screen and (max-width: 1750px) {
136
+ #WBCR {
137
+ .wbc-factory-clearfy-000-components {
138
+ .plugin-card {
139
+ width: 49%;
140
+ }
141
+ }
142
+ }
143
+ }
144
+
145
+ @media screen and (max-width: 1350px) {
146
+ #WBCR {
147
+ .wbc-factory-clearfy-000-components {
148
+ .plugin-card {
149
+ width: 100%;
150
+ }
151
+ }
152
+ }
153
+ }
libs/factory/clearfy/assets/css/libs/autocomplete.css CHANGED
@@ -5,39 +5,39 @@
5
  *
6
  * @since 2.2.0
7
  */
8
- #wbcr-factory-clearfy-224__search_options_form #wbcr-factory-clearfy-224__autocomplete {
9
  width: 100%;
10
  box-sizing: border-box;
11
  border-color: #d6d4d4;
12
  }
13
- #wbcr-factory-clearfy-224__search_options_form.wbcr-factory-clearfy-224__autocomplete-wrap {
14
  padding: 10px;
15
  }
16
- #wbcr-factory-clearfy-224__search_options_form .wbcr-factory-clearfy-224__autocomplete-label {
17
  display: block !important;
18
  }
19
- .wbcr-factory-clearfy-224__autocomplete-suggestions {
20
  border: 1px solid #999;
21
  background: #FFF;
22
  overflow: auto;
23
  }
24
- .wbcr-factory-clearfy-224__autocomplete-suggestion {
25
  padding: 2px 5px;
26
  white-space: nowrap;
27
  overflow: hidden;
28
  cursor: pointer;
29
  }
30
- .wbcr-factory-clearfy-224__autocomplete-selected {
31
  background: #F0F0F0;
32
  }
33
- .wbcr-factory-clearfy-224__autocomplete-suggestions strong {
34
  font-weight: normal;
35
  color: #3399FF;
36
  }
37
- .wbcr-factory-clearfy-224__autocomplete-group {
38
  padding: 2px 5px;
39
  }
40
- .wbcr-factory-clearfy-224__autocomplete-group strong {
41
  display: block;
42
  border-bottom: 1px solid #000;
43
  }
5
  *
6
  * @since 2.2.0
7
  */
8
+ #wbcr-factory-clearfy-227__search_options_form #wbcr-factory-clearfy-227__autocomplete {
9
  width: 100%;
10
  box-sizing: border-box;
11
  border-color: #d6d4d4;
12
  }
13
+ #wbcr-factory-clearfy-227__search_options_form.wbcr-factory-clearfy-227__autocomplete-wrap {
14
  padding: 10px;
15
  }
16
+ #wbcr-factory-clearfy-227__search_options_form .wbcr-factory-clearfy-227__autocomplete-label {
17
  display: block !important;
18
  }
19
+ .wbcr-factory-clearfy-227__autocomplete-suggestions {
20
  border: 1px solid #999;
21
  background: #FFF;
22
  overflow: auto;
23
  }
24
+ .wbcr-factory-clearfy-227__autocomplete-suggestion {
25
  padding: 2px 5px;
26
  white-space: nowrap;
27
  overflow: hidden;
28
  cursor: pointer;
29
  }
30
+ .wbcr-factory-clearfy-227__autocomplete-selected {
31
  background: #F0F0F0;
32
  }
33
+ .wbcr-factory-clearfy-227__autocomplete-suggestions strong {
34
  font-weight: normal;
35
  color: #3399FF;
36
  }
37
+ .wbcr-factory-clearfy-227__autocomplete-group {
38
  padding: 2px 5px;
39
  }
40
+ .wbcr-factory-clearfy-227__autocomplete-group strong {
41
  display: block;
42
  border-bottom: 1px solid #000;
43
  }
libs/factory/clearfy/assets/css/page-setup.css ADDED
@@ -0,0 +1,454 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #WBCR {
2
+ margin: 0;
3
+ padding: 0;
4
+ }
5
+ .w-factory-clearfy-227__form-buttons {
6
+ text-align: right;
7
+ padding: 10px;
8
+ background: #f7f7f7;
9
+ border-top: 1px solid #e8e8e8;
10
+ }
11
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__skip-button {
12
+ background-color: #e7e7e7;
13
+ border-color: #e7e7e7;
14
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #e7e7e7;
15
+ text-shadow: 0 -1px 1px #e7e7e7, 1px 0 1px #e7e7e7, 0 1px 1px #e7e7e7, -1px 0 1px #e7e7e7;
16
+ margin: 0;
17
+ color: #8a8a8a;
18
+ }
19
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__skip-button:active,
20
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__skip-button:hover,
21
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__skip-button:focus {
22
+ background: #dddddd;
23
+ border-color: #dddddd;
24
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #dddddd;
25
+ color: #8a8a8a;
26
+ }
27
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__continue-button {
28
+ background-color: #f57d4f;
29
+ border-color: #f77d50;
30
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
31
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
32
+ margin: 0;
33
+ }
34
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__continue-button:active,
35
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__continue-button:hover,
36
+ .w-factory-clearfy-227__form-buttons .w-factory-clearfy-227__continue-button:focus {
37
+ background: #f86b3b;
38
+ border-color: #f86b3b;
39
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f86b3b;
40
+ }
41
+ .w-factory-clearfy-227-setup {
42
+ text-align: center;
43
+ max-width: 900px;
44
+ margin: 65px auto 24px;
45
+ box-shadow: none;
46
+ background: #f1f1f1;
47
+ padding: 0;
48
+ }
49
+ .w-factory-clearfy-227-setup__inner-wrap,
50
+ .w-factory-clearfy-227__setup-form .factory-form-layout {
51
+ padding: 30px;
52
+ }
53
+ .w-factory-clearfy-227-setup-steps {
54
+ padding: 0 0 24px;
55
+ margin: 0;
56
+ list-style: none outside;
57
+ overflow: hidden;
58
+ color: #ccc;
59
+ width: 100%;
60
+ display: -webkit-inline-box;
61
+ display: inline-flex;
62
+ }
63
+ .w-factory-clearfy-227-setup-steps li {
64
+ width: 100%;
65
+ float: left;
66
+ padding: 0 0 0.8em;
67
+ margin: 0;
68
+ text-align: center;
69
+ position: relative;
70
+ border-bottom: 4px solid #ccc;
71
+ line-height: 1.4;
72
+ }
73
+ .w-factory-clearfy-227-setup-steps li::before {
74
+ content: "";
75
+ border: 4px solid #ccc;
76
+ border-radius: 100%;
77
+ width: 4px;
78
+ height: 4px;
79
+ position: absolute;
80
+ bottom: 0;
81
+ left: 50%;
82
+ margin-left: -6px;
83
+ margin-bottom: -8px;
84
+ background: #fff;
85
+ }
86
+ .w-factory-clearfy-227-setup-steps li.active {
87
+ border-color: #ff1c40 !important;
88
+ color: #222;
89
+ font-weight: 700;
90
+ }
91
+ .w-factory-clearfy-227-setup-steps li.active::before {
92
+ border-color: #ff1c40 !important;
93
+ }
94
+ .w-factory-clearfy-227-setup-steps li a {
95
+ color: #a16696;
96
+ text-decoration: none;
97
+ padding: 1.5em;
98
+ margin: -1.5em;
99
+ position: relative;
100
+ z-index: 1;
101
+ }
102
+ .w-factory-clearfy-227-setup-steps li a:focus,
103
+ .w-factory-clearfy-227-setup-steps li a:hover {
104
+ color: #111;
105
+ text-decoration: underline;
106
+ }
107
+ /*.w-factory-clearfy-227-setup-steps li.done {
108
+ border-color: #f57d4f;
109
+ color: #f57d4f
110
+ }
111
+
112
+ .w-factory-clearfy-227-setup-steps li.done::before {
113
+ border-color: #f57d4f;
114
+ background: #f57d4f
115
+ }*/
116
+ .w-factory-clearfy-227-setup .w-factory-clearfy-227-setup-actions {
117
+ overflow: hidden;
118
+ margin: 20px 0 0;
119
+ position: relative;
120
+ }
121
+ .w-factory-clearfy-227-setup-content p:last-child {
122
+ margin-bottom: 0;
123
+ }
124
+ .w-factory-clearfy-227-setup-content p.store-setup {
125
+ margin-top: 0;
126
+ }
127
+ .w-factory-clearfy-227-setup-footer-links {
128
+ font-size: 0.85em;
129
+ color: #7b7b7b;
130
+ margin: 1.18em auto;
131
+ display: inline-block;
132
+ text-align: center;
133
+ }
134
+ .w-factory-clearfy-227-logo {
135
+ text-align: center;
136
+ }
137
+ .w-factory-clearfy-227-logo img {
138
+ max-width: 250px;
139
+ }
140
+ .w-factory-clearfy-227-setup-content {
141
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
142
+ margin: 0 0 20px;
143
+ background: #fff;
144
+ zoom: 1;
145
+ text-align: left;
146
+ }
147
+ .w-factory-clearfy-227-setup-content table {
148
+ font-size: 1em;
149
+ line-height: 1.75;
150
+ color: #666;
151
+ }
152
+ .w-factory-clearfy-227-setup-content table thead {
153
+ background: #f1f1f1;
154
+ }
155
+ .w-factory-clearfy-227-setup-content table th,
156
+ .w-factory-clearfy-227-setup-content table td {
157
+ padding: 10px 15px;
158
+ }
159
+ .w-factory-clearfy-227-setup-content h1,
160
+ .w-factory-clearfy-227-setup-content h2,
161
+ .w-factory-clearfy-227-setup-content h3,
162
+ .w-factory-clearfy-227-setup-content table {
163
+ margin: 0 0 20px;
164
+ border: 0;
165
+ padding: 0;
166
+ color: #666;
167
+ clear: none;
168
+ font-weight: 500;
169
+ }
170
+ .w-factory-clearfy-227-setup-content p {
171
+ margin: 20px 0;
172
+ font-size: 1.15em;
173
+ line-height: 1.75;
174
+ color: #666;
175
+ text-align: center;
176
+ }
177
+ .w-factory-clearfy-227-setup-step__new_onboarding-welcome {
178
+ font-size: 22px !important;
179
+ }
180
+ .w-factory-clearfy-227-setup-content a {
181
+ color: #f57d4f;
182
+ }
183
+ .w-factory-clearfy-227-setup-content a:focus,
184
+ .w-factory-clearfy-227-setup-content a:hover {
185
+ color: #111;
186
+ }
187
+ .w-factory-clearfy-227-setup-content table.tax-rates {
188
+ width: 100%;
189
+ font-size: 0.92em;
190
+ }
191
+ .w-factory-clearfy-227-setup-content table.tax-rates th {
192
+ padding: 0;
193
+ text-align: center;
194
+ width: auto;
195
+ vertical-align: middle;
196
+ }
197
+ .w-factory-clearfy-227-setup-content table.tax-rates td {
198
+ border: 1px solid #f5f5f5;
199
+ padding: 6px;
200
+ text-align: center;
201
+ vertical-align: middle;
202
+ }
203
+ .w-factory-clearfy-227-setup-content table.tax-rates td input {
204
+ outline: 0;
205
+ border: 0;
206
+ padding: 0;
207
+ box-shadow: none;
208
+ text-align: center;
209
+ width: 100%;
210
+ }
211
+ .w-factory-clearfy-227-setup-content table.tax-rates td.sort {
212
+ cursor: move;
213
+ color: #ccc;
214
+ }
215
+ .w-factory-clearfy-227-setup-content table.tax-rates td.sort::before {
216
+ content: "\f333";
217
+ font-family: dashicons;
218
+ }
219
+ .w-factory-clearfy-227-setup-content table.tax-rates td.readonly {
220
+ background: #f5f5f5;
221
+ }
222
+ .w-factory-clearfy-227-setup-content table.tax-rates .add {
223
+ padding: 1em 0 0 1em;
224
+ line-height: 1;
225
+ font-size: 1em;
226
+ width: 0;
227
+ margin: 6px 0 0;
228
+ height: 0;
229
+ overflow: hidden;
230
+ position: relative;
231
+ display: inline-block;
232
+ }
233
+ .w-factory-clearfy-227-setup-content table.tax-rates .add::before {
234
+ content: "\f502";
235
+ font-family: dashicons;
236
+ position: absolute;
237
+ left: 0;
238
+ top: 0;
239
+ }
240
+ .w-factory-clearfy-227-setup-content table.tax-rates .remove {
241
+ padding: 1em 0 0 1em;
242
+ line-height: 1;
243
+ font-size: 1em;
244
+ width: 0;
245
+ margin: 0;
246
+ height: 0;
247
+ overflow: hidden;
248
+ position: relative;
249
+ display: inline-block;
250
+ }
251
+ .w-factory-clearfy-227-setup-content table.tax-rates .remove::before {
252
+ content: "\f182";
253
+ font-family: dashicons;
254
+ position: absolute;
255
+ left: 0;
256
+ top: 0;
257
+ }
258
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages {
259
+ width: 100%;
260
+ border-top: 1px solid #eee;
261
+ }
262
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages thead th {
263
+ display: none;
264
+ }
265
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages .page-name {
266
+ width: 30%;
267
+ font-weight: 700;
268
+ }
269
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages td,
270
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages th {
271
+ padding: 14px 0;
272
+ border-bottom: 1px solid #eee;
273
+ }
274
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages td:first-child,
275
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages th:first-child {
276
+ padding-right: 9px;
277
+ }
278
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages th {
279
+ padding-top: 0;
280
+ }
281
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages .page-options p {
282
+ color: #777;
283
+ margin: 6px 0 0 24px;
284
+ line-height: 1.75;
285
+ }
286
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages .page-options p input {
287
+ vertical-align: middle;
288
+ margin: 1px 0 0;
289
+ height: 1.75em;
290
+ width: 1.75em;
291
+ line-height: 1.75;
292
+ }
293
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-pages .page-options p label {
294
+ line-height: 1;
295
+ }
296
+ @media screen and (max-width: 782px) {
297
+ .w-factory-clearfy-227-setup-content .form-table tbody th {
298
+ width: auto;
299
+ }
300
+ }
301
+ .w-factory-clearfy-227-setup-content .twitter-share-button {
302
+ float: right;
303
+ }
304
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps {
305
+ overflow: hidden;
306
+ margin: 0 0 24px;
307
+ padding-bottom: 2px;
308
+ }
309
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps h2 {
310
+ margin-bottom: 12px;
311
+ }
312
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps .w-factory-clearfy-227-setup-next-steps-first {
313
+ float: left;
314
+ width: 50%;
315
+ box-sizing: border-box;
316
+ }
317
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps .w-factory-clearfy-227-setup-next-steps-last {
318
+ float: right;
319
+ width: 50%;
320
+ box-sizing: border-box;
321
+ }
322
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul {
323
+ padding: 0 2em 0 0;
324
+ list-style: none outside;
325
+ margin: 0;
326
+ }
327
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul li a {
328
+ display: block;
329
+ padding: 0 0 0.75em;
330
+ }
331
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button {
332
+ background-color: #f7f7f7;
333
+ border-color: #ccc;
334
+ color: #23282d;
335
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #ccc;
336
+ text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
337
+ font-size: 1em;
338
+ height: auto;
339
+ line-height: 1.75;
340
+ margin: 0 0 0.75em;
341
+ opacity: 1;
342
+ padding: 1em;
343
+ text-align: center;
344
+ }
345
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button:active,
346
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button:focus,
347
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button:hover {
348
+ background: #f5f5f5;
349
+ border-color: #aaa;
350
+ }
351
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button-primary {
352
+ color: #fff;
353
+ background-color: #f19570;
354
+ border-color: #f77d50;
355
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
356
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
357
+ }
358
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button-primary:active,
359
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button-primary:focus,
360
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .setup-product a.button-primary:hover {
361
+ color: #fff;
362
+ background: #f77d50;
363
+ border-color: #f77d50;
364
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
365
+ }
366
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul li a::before {
367
+ color: #82878c;
368
+ font: 400 20px/1 dashicons;
369
+ speak: none;
370
+ display: inline-block;
371
+ padding: 0 10px 0 0;
372
+ top: 1px;
373
+ position: relative;
374
+ text-decoration: none !important;
375
+ vertical-align: top;
376
+ }
377
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .learn-more a::before {
378
+ content: "\f105";
379
+ }
380
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .video-walkthrough a::before {
381
+ content: "\f126";
382
+ }
383
+ .w-factory-clearfy-227-setup-content .w-factory-clearfy-227-setup-next-steps ul .newsletter a::before {
384
+ content: "\f465";
385
+ }
386
+ .w-factory-clearfy-227-setup-content .updated,
387
+ .w-factory-clearfy-227-setup-content .woocommerce-newsletter {
388
+ padding: 24px 24px 0;
389
+ margin: 0 0 24px;
390
+ overflow: hidden;
391
+ background: #f5f5f5;
392
+ }
393
+ .w-factory-clearfy-227-setup-content .updated p,
394
+ .w-factory-clearfy-227-setup-content .woocommerce-newsletter p {
395
+ padding: 0;
396
+ margin: 0 0 12px;
397
+ }
398
+ .w-factory-clearfy-227-setup-content .updated form,
399
+ .w-factory-clearfy-227-setup-content .updated p:last-child,
400
+ .w-factory-clearfy-227-setup-content .woocommerce-newsletter form,
401
+ .w-factory-clearfy-227-setup-content .woocommerce-newsletter p:last-child {
402
+ margin: 0 0 24px;
403
+ }
404
+ .w-factory-clearfy-227-setup-content .checkbox input[type=checkbox] {
405
+ opacity: 0;
406
+ position: absolute;
407
+ left: -9999px;
408
+ }
409
+ .w-factory-clearfy-227-setup-content .checkbox label {
410
+ position: relative;
411
+ display: inline-block;
412
+ padding-left: 28px;
413
+ }
414
+ .w-factory-clearfy-227-setup-content .checkbox label::after,
415
+ .w-factory-clearfy-227-setup-content .checkbox label::before {
416
+ position: absolute;
417
+ content: "";
418
+ display: inline-block;
419
+ }
420
+ .w-factory-clearfy-227-setup-content .checkbox label::before {
421
+ height: 16px;
422
+ width: 16px;
423
+ left: 0;
424
+ top: 3px;
425
+ border: 1px solid #aaa;
426
+ background-color: #fff;
427
+ border-radius: 3px;
428
+ }
429
+ .w-factory-clearfy-227-setup-content .checkbox label::after {
430
+ height: 5px;
431
+ width: 9px;
432
+ border-left: 2px solid;
433
+ border-bottom: 2px solid;
434
+ -webkit-transform: rotate(-45deg);
435
+ -ms-transform: rotate(-45deg);
436
+ transform: rotate(-45deg);
437
+ left: 4px;
438
+ top: 7px;
439
+ color: #fff;
440
+ }
441
+ .w-factory-clearfy-227-setup-content .checkbox input[type=checkbox] + label::after {
442
+ content: none;
443
+ }
444
+ .w-factory-clearfy-227-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
+ content: "";
446
+ }
447
+ .w-factory-clearfy-227-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
+ outline: #3b99fc auto 5px;
449
+ }
450
+ .w-factory-clearfy-227-setup-content .checkbox input[type=checkbox]:checked + label::before {
451
+ background: #935687;
452
+ border-color: #935687;
453
+ }
454
+ /*# sourceMappingURL=page-setup.css.map */
libs/factory/clearfy/assets/css/page-setup.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["page-setup.less"],"names":[],"mappings":"AAAA;EACE,SAAA;EACA,UAAA;;AAGF;EACE,iBAAA;EACA,aAAA;EACA,mBAAA;EAEA,6BAAA;;AALF,oCAOE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;EACA,cAAA;;AAEA,oCARF,oCAQG;AAAS,oCARZ,oCAQa;AAAQ,oCARrB,oCAQsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;EACA,cAAA;;AAnBN,oCAuBE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;;AAEA,oCAPF,wCAOG;AAAS,oCAPZ,wCAOa;AAAQ,oCAPrB,wCAOsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAKN;EACE,kBAAA;EACA,gBAAA;EACA,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,UAAA;;AAGF;AAA0C,kCAAmC;EAC3E,aAAA;;AAGF;EACE,iBAAA;EACA,SAAA;EACA,wBAAA;EACA,gBAAA;EACA,WAAA;EACA,WAAA;EACA,2BAAA;EACA,oBAAA;;AAGF,kCAAmC;EACjC,WAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,kBAAA;EACA,kBAAA;EACA,6BAAA;EACA,gBAAA;;AAEA,kCAViC,GAUhC;EACC,SAAS,EAAT;EACA,sBAAA;EACA,mBAAA;EACA,UAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,SAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;;AAGF,kCAxBiC,GAwBhC;EACC,qBAAA;EACA,WAAA;EACA,gBAAA;;AAEA,kCA7B+B,GAwBhC,OAKE;EACC,qBAAA;;AAKN,kCAAmC,GAAG;EACpC,cAAA;EACA,qBAAA;EACA,cAAA;EACA,cAAA;EACA,kBAAA;EACA,UAAA;;AAGF,kCAAmC,GAAG,EAAC;AAAQ,kCAAmC,GAAG,EAAC;EACpF,WAAA;EACA,0BAAA;;;;;;;;;;;AAcF,4BAA6B;EAC3B,gBAAA;EACA,gBAAA;EACA,kBAAA;;AAGF,oCAAqC,EAAC;EACpC,gBAAA;;AAGF,oCAAqC,EAAC;EACpC,aAAA;;AAGF;EACE,iBAAA;EACA,cAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF;EACE,kBAAA;;AADF,2BAGE;EACE,gBAAA;;AAKJ;EACE,yCAAA;EAEA,gBAAA;EACA,gBAAA;EAEA,OAAA;EACA,gBAAA;;AAEA,oCAAE;EACA,cAAA;EACA,iBAAA;EACA,WAAA;;AAHF,oCAAE,MAKA;EACE,mBAAA;;AANJ,oCAAE,MASA;AATF,oCAAE,MASI;EACF,kBAAA;;AAKN,oCAAqC;AAAI,oCAAqC;AAAI,oCAAqC;AAAI,oCAAqC;EAC9J,gBAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;EACA,WAAA;EACA,gBAAA;;AAGF,oCAAqC;EACnC,cAAA;EACA,iBAAA;EACA,iBAAA;EACA,WAAA;EACA,kBAAA;;AAGF;EACE,0BAAA;;AAIF,oCAAqC;EACnC,cAAA;;AAGF,oCAAqC,EAAC;AAAQ,oCAAqC,EAAC;EAClF,WAAA;;AAIF,oCAAqC,MAAK;EACxC,WAAA;EACA,iBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,UAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,yBAAA;EACA,YAAA;EACA,kBAAA;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAG;EACtD,UAAA;EACA,SAAA;EACA,UAAA;EACA,gBAAA;EACA,kBAAA;EACA,WAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE;EACrD,YAAA;EACA,WAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE,KAAK;EAC1D,SAAS,OAAT;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE;EACrD,mBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,oCAAqC,MAAK,UAAW,KAAI;EACvD,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,SAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,oCAAqC,MAAK,UAAW,QAAO;EAC1D,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,oCAAqC;EACnC,WAAA;EACA,0BAAA;;AAGF,oCAAqC,mCAAmC,MAAM;EAC5E,aAAA;;AAGF,oCAAqC,mCAAmC;EACtE,UAAA;EACA,gBAAA;;AAGF,oCAAqC,mCAAmC;AAAI,oCAAqC,mCAAmC;EAClJ,eAAA;EACA,6BAAA;;AAGF,oCAAqC,mCAAmC,GAAE;AAAc,oCAAqC,mCAAmC,GAAE;EAChK,kBAAA;;AAGF,oCAAqC,mCAAmC;EACtE,cAAA;;AAGF,oCAAqC,mCAAmC,cAAc;EACpF,WAAA;EACA,oBAAA;EACA,iBAAA;;AAGF,oCAAqC,mCAAmC,cAAc,EAAE;EACtF,sBAAA;EACA,eAAA;EACA,cAAA;EACA,aAAA;EACA,iBAAA;;AAGF,oCAAqC,mCAAmC,cAAc,EAAE;EACtF,cAAA;;AAGF,mBAAqC;EACnC,oCAAqC,YAAY,MAAM;IACrD,WAAA;;;AAIJ,oCAAqC;EACnC,YAAA;;AAGF,oCAAqC;EACnC,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,mBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,WAAA;EACA,UAAA;EACA,sBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,YAAA;EACA,UAAA;EACA,sBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,kBAAA;EACA,wBAAA;EACA,SAAA;;AAGF,oCAAqC,wCAAwC,GAAG,GAAG;EACjF,cAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC;EAC9F,yBAAA;EACA,kBAAA;EACA,cAAA;EACA,iEAAA;EACA,2CAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,kBAAA;EACA,UAAA;EACA,YAAA;EACA,kBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;AAAS,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;AAAQ,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;EACpU,mBAAA;EACA,kBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC;EAC9F,WAAA;EACA,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;AAAS,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;AAAQ,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;EAC5V,WAAA;EACA,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAGF,oCAAqC,wCAAwC,GAAG,GAAG,EAAC;EAClF,cAAA;EACA,0BAAA;EACA,WAAA;EACA,qBAAA;EACA,mBAAA;EACA,QAAA;EACA,kBAAA;EACA,gCAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,YAAY,EAAC;EAC3F,SAAS,OAAT;;AAGF,oCAAqC,wCAAwC,GAAG,mBAAmB,EAAC;EAClG,SAAS,OAAT;;AAGF,oCAAqC,wCAAwC,GAAG,YAAY,EAAC;EAC3F,SAAS,OAAT;;AAGF,oCAAqC;AAAU,oCAAqC;EAClF,oBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,oCAAqC,SAAS;AAAG,oCAAqC,wBAAwB;EAC5G,UAAA;EACA,gBAAA;;AAGF,oCAAqC,SAAS;AAAM,oCAAqC,SAAS,EAAC;AAAa,oCAAqC,wBAAwB;AAAM,oCAAqC,wBAAwB,EAAC;EAC/O,gBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,UAAA;EACA,kBAAA;EACA,aAAA;;AAGF,oCAAqC,UAAU;EAC7C,kBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF,oCAAqC,UAAU,MAAK;AAAS,oCAAqC,UAAU,MAAK;EAC/G,kBAAA;EACA,SAAS,EAAT;EACA,qBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,YAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,sBAAA;EACA,sBAAA;EACA,kBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,WAAA;EACA,UAAA;EACA,sBAAA;EACA,wBAAA;EACA,mBAAmB,cAAnB;EACA,eAAe,cAAf;EACA,WAAW,cAAX;EACA,SAAA;EACA,QAAA;EACA,WAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAgB,QAAO;EACzE,aAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAe,QAAS,QAAO;EACjF,SAAS,EAAT;;AAGF,oCAAqC,UAAU,MAAK,eAAe,MAAO,QAAO;EAC/E,yBAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAe,QAAS,QAAO;EACjF,mBAAA;EACA,qBAAA","file":"page-setup.css"}
libs/factory/clearfy/assets/css/page-setup.less ADDED
@@ -0,0 +1,515 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #WBCR {
2
+ margin: 0;
3
+ padding: 0;
4
+ }
5
+
6
+ .w-factory-clearfy-000__form-buttons {
7
+ text-align: right;
8
+ padding: 10px;
9
+ background: #f7f7f7;
10
+
11
+ border-top: 1px solid #e8e8e8;
12
+
13
+ .w-factory-clearfy-000__skip-button {
14
+ background-color: #e7e7e7;
15
+ border-color: #e7e7e7;
16
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #e7e7e7;
17
+ text-shadow: 0 -1px 1px #e7e7e7, 1px 0 1px #e7e7e7, 0 1px 1px #e7e7e7, -1px 0 1px #e7e7e7;
18
+ margin: 0;
19
+ color: #8a8a8a;
20
+
21
+ &:active, &:hover, &:focus {
22
+ background: #dddddd;
23
+ border-color: #dddddd;
24
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #dddddd;
25
+ color: #8a8a8a;
26
+ }
27
+ }
28
+
29
+ .w-factory-clearfy-000__continue-button {
30
+ background-color: #f57d4f;
31
+ border-color: #f77d50;
32
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50;
33
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
34
+ margin: 0;
35
+
36
+ &:active, &:hover, &:focus {
37
+ background: #f86b3b;
38
+ border-color: #f86b3b;
39
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f86b3b
40
+ }
41
+ }
42
+ }
43
+
44
+ .w-factory-clearfy-000-setup {
45
+ text-align: center;
46
+ max-width: 900px;
47
+ margin: 65px auto 24px;
48
+ box-shadow: none;
49
+ background: #f1f1f1;
50
+ padding: 0;
51
+ }
52
+
53
+ .w-factory-clearfy-000-setup__inner-wrap, .w-factory-clearfy-000__setup-form .factory-form-layout {
54
+ padding: 30px;
55
+ }
56
+
57
+ .w-factory-clearfy-000-setup-steps {
58
+ padding: 0 0 24px;
59
+ margin: 0;
60
+ list-style: none outside;
61
+ overflow: hidden;
62
+ color: #ccc;
63
+ width: 100%;
64
+ display: -webkit-inline-box;
65
+ display: inline-flex;
66
+ }
67
+
68
+ .w-factory-clearfy-000-setup-steps li {
69
+ width: 100%;
70
+ float: left;
71
+ padding: 0 0 .8em;
72
+ margin: 0;
73
+ text-align: center;
74
+ position: relative;
75
+ border-bottom: 4px solid #ccc;
76
+ line-height: 1.4;
77
+
78
+ &::before {
79
+ content: "";
80
+ border: 4px solid #ccc;
81
+ border-radius: 100%;
82
+ width: 4px;
83
+ height: 4px;
84
+ position: absolute;
85
+ bottom: 0;
86
+ left: 50%;
87
+ margin-left: -6px;
88
+ margin-bottom: -8px;
89
+ background: #fff
90
+ }
91
+
92
+ &.active {
93
+ border-color: #ff1c40 !important;
94
+ color: #222;
95
+ font-weight: 700;
96
+
97
+ &::before {
98
+ border-color: #ff1c40 !important;
99
+ }
100
+ }
101
+ }
102
+
103
+ .w-factory-clearfy-000-setup-steps li a {
104
+ color: #a16696;
105
+ text-decoration: none;
106
+ padding: 1.5em;
107
+ margin: -1.5em;
108
+ position: relative;
109
+ z-index: 1
110
+ }
111
+
112
+ .w-factory-clearfy-000-setup-steps li a:focus, .w-factory-clearfy-000-setup-steps li a:hover {
113
+ color: #111;
114
+ text-decoration: underline
115
+ }
116
+
117
+
118
+ /*.w-factory-clearfy-000-setup-steps li.done {
119
+ border-color: #f57d4f;
120
+ color: #f57d4f
121
+ }
122
+
123
+ .w-factory-clearfy-000-setup-steps li.done::before {
124
+ border-color: #f57d4f;
125
+ background: #f57d4f
126
+ }*/
127
+
128
+ .w-factory-clearfy-000-setup .w-factory-clearfy-000-setup-actions {
129
+ overflow: hidden;
130
+ margin: 20px 0 0;
131
+ position: relative
132
+ }
133
+
134
+ .w-factory-clearfy-000-setup-content p:last-child {
135
+ margin-bottom: 0
136
+ }
137
+
138
+ .w-factory-clearfy-000-setup-content p.store-setup {
139
+ margin-top: 0
140
+ }
141
+
142
+ .w-factory-clearfy-000-setup-footer-links {
143
+ font-size: .85em;
144
+ color: #7b7b7b;
145
+ margin: 1.18em auto;
146
+ display: inline-block;
147
+ text-align: center
148
+ }
149
+
150
+ .w-factory-clearfy-000-logo {
151
+ text-align: center;
152
+
153
+ img {
154
+ max-width: 250px;
155
+ }
156
+ }
157
+
158
+
159
+ .w-factory-clearfy-000-setup-content {
160
+ box-shadow: 0 1px 3px rgba(0, 0, 0, .13);
161
+ //padding: 2em;
162
+ margin: 0 0 20px;
163
+ background: #fff;
164
+ //overflow: hidden;
165
+ zoom: 1;
166
+ text-align: left;
167
+
168
+ & table {
169
+ font-size: 1em;
170
+ line-height: 1.75;
171
+ color: #666;
172
+
173
+ thead {
174
+ background: #f1f1f1;
175
+ }
176
+
177
+ th, td {
178
+ padding: 10px 15px;
179
+ }
180
+ }
181
+ }
182
+
183
+ .w-factory-clearfy-000-setup-content h1, .w-factory-clearfy-000-setup-content h2, .w-factory-clearfy-000-setup-content h3, .w-factory-clearfy-000-setup-content table {
184
+ margin: 0 0 20px;
185
+ border: 0;
186
+ padding: 0;
187
+ color: #666;
188
+ clear: none;
189
+ font-weight: 500
190
+ }
191
+
192
+ .w-factory-clearfy-000-setup-content p {
193
+ margin: 20px 0;
194
+ font-size: 1.15em;
195
+ line-height: 1.75;
196
+ color: #666;
197
+ text-align: center;
198
+ }
199
+
200
+ .w-factory-clearfy-000-setup-step__new_onboarding-welcome {
201
+ font-size: 22px !important;
202
+ }
203
+
204
+
205
+ .w-factory-clearfy-000-setup-content a {
206
+ color: #f57d4f
207
+ }
208
+
209
+ .w-factory-clearfy-000-setup-content a:focus, .w-factory-clearfy-000-setup-content a:hover {
210
+ color: #111
211
+ }
212
+
213
+
214
+ .w-factory-clearfy-000-setup-content table.tax-rates {
215
+ width: 100%;
216
+ font-size: .92em
217
+ }
218
+
219
+ .w-factory-clearfy-000-setup-content table.tax-rates th {
220
+ padding: 0;
221
+ text-align: center;
222
+ width: auto;
223
+ vertical-align: middle
224
+ }
225
+
226
+ .w-factory-clearfy-000-setup-content table.tax-rates td {
227
+ border: 1px solid #f5f5f5;
228
+ padding: 6px;
229
+ text-align: center;
230
+ vertical-align: middle
231
+ }
232
+
233
+ .w-factory-clearfy-000-setup-content table.tax-rates td input {
234
+ outline: 0;
235
+ border: 0;
236
+ padding: 0;
237
+ box-shadow: none;
238
+ text-align: center;
239
+ width: 100%
240
+ }
241
+
242
+ .w-factory-clearfy-000-setup-content table.tax-rates td.sort {
243
+ cursor: move;
244
+ color: #ccc
245
+ }
246
+
247
+ .w-factory-clearfy-000-setup-content table.tax-rates td.sort::before {
248
+ content: "\f333";
249
+ font-family: dashicons
250
+ }
251
+
252
+ .w-factory-clearfy-000-setup-content table.tax-rates td.readonly {
253
+ background: #f5f5f5
254
+ }
255
+
256
+ .w-factory-clearfy-000-setup-content table.tax-rates .add {
257
+ padding: 1em 0 0 1em;
258
+ line-height: 1;
259
+ font-size: 1em;
260
+ width: 0;
261
+ margin: 6px 0 0;
262
+ height: 0;
263
+ overflow: hidden;
264
+ position: relative;
265
+ display: inline-block
266
+ }
267
+
268
+ .w-factory-clearfy-000-setup-content table.tax-rates .add::before {
269
+ content: "\f502";
270
+ font-family: dashicons;
271
+ position: absolute;
272
+ left: 0;
273
+ top: 0
274
+ }
275
+
276
+ .w-factory-clearfy-000-setup-content table.tax-rates .remove {
277
+ padding: 1em 0 0 1em;
278
+ line-height: 1;
279
+ font-size: 1em;
280
+ width: 0;
281
+ margin: 0;
282
+ height: 0;
283
+ overflow: hidden;
284
+ position: relative;
285
+ display: inline-block
286
+ }
287
+
288
+ .w-factory-clearfy-000-setup-content table.tax-rates .remove::before {
289
+ content: "\f182";
290
+ font-family: dashicons;
291
+ position: absolute;
292
+ left: 0;
293
+ top: 0
294
+ }
295
+
296
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages {
297
+ width: 100%;
298
+ border-top: 1px solid #eee
299
+ }
300
+
301
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages thead th {
302
+ display: none
303
+ }
304
+
305
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-name {
306
+ width: 30%;
307
+ font-weight: 700
308
+ }
309
+
310
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages td, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th {
311
+ padding: 14px 0;
312
+ border-bottom: 1px solid #eee
313
+ }
314
+
315
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages td:first-child, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th:first-child {
316
+ padding-right: 9px
317
+ }
318
+
319
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th {
320
+ padding-top: 0
321
+ }
322
+
323
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p {
324
+ color: #777;
325
+ margin: 6px 0 0 24px;
326
+ line-height: 1.75
327
+ }
328
+
329
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p input {
330
+ vertical-align: middle;
331
+ margin: 1px 0 0;
332
+ height: 1.75em;
333
+ width: 1.75em;
334
+ line-height: 1.75
335
+ }
336
+
337
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p label {
338
+ line-height: 1
339
+ }
340
+
341
+ @media screen and (max-width: 782px) {
342
+ .w-factory-clearfy-000-setup-content .form-table tbody th {
343
+ width: auto
344
+ }
345
+ }
346
+
347
+ .w-factory-clearfy-000-setup-content .twitter-share-button {
348
+ float: right
349
+ }
350
+
351
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps {
352
+ overflow: hidden;
353
+ margin: 0 0 24px;
354
+ padding-bottom: 2px
355
+ }
356
+
357
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps h2 {
358
+ margin-bottom: 12px
359
+ }
360
+
361
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps .w-factory-clearfy-000-setup-next-steps-first {
362
+ float: left;
363
+ width: 50%;
364
+ box-sizing: border-box
365
+ }
366
+
367
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps .w-factory-clearfy-000-setup-next-steps-last {
368
+ float: right;
369
+ width: 50%;
370
+ box-sizing: border-box
371
+ }
372
+
373
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul {
374
+ padding: 0 2em 0 0;
375
+ list-style: none outside;
376
+ margin: 0
377
+ }
378
+
379
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul li a {
380
+ display: block;
381
+ padding: 0 0 .75em
382
+ }
383
+
384
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button {
385
+ background-color: #f7f7f7;
386
+ border-color: #ccc;
387
+ color: #23282d;
388
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #ccc;
389
+ text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
390
+ font-size: 1em;
391
+ height: auto;
392
+ line-height: 1.75;
393
+ margin: 0 0 .75em;
394
+ opacity: 1;
395
+ padding: 1em;
396
+ text-align: center
397
+ }
398
+
399
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:active, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:focus, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:hover {
400
+ background: #f5f5f5;
401
+ border-color: #aaa
402
+ }
403
+
404
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary {
405
+ color: #fff;
406
+ background-color: #f19570;
407
+ border-color: #f77d50;
408
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50;
409
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50
410
+ }
411
+
412
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:active, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:focus, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:hover {
413
+ color: #fff;
414
+ background: #f77d50;
415
+ border-color: #f77d50;
416
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50
417
+ }
418
+
419
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul li a::before {
420
+ color: #82878c;
421
+ font: 400 20px/1 dashicons;
422
+ speak: none;
423
+ display: inline-block;
424
+ padding: 0 10px 0 0;
425
+ top: 1px;
426
+ position: relative;
427
+ text-decoration: none !important;
428
+ vertical-align: top
429
+ }
430
+
431
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .learn-more a::before {
432
+ content: "\f105"
433
+ }
434
+
435
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .video-walkthrough a::before {
436
+ content: "\f126"
437
+ }
438
+
439
+ .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .newsletter a::before {
440
+ content: "\f465"
441
+ }
442
+
443
+ .w-factory-clearfy-000-setup-content .updated, .w-factory-clearfy-000-setup-content .woocommerce-newsletter {
444
+ padding: 24px 24px 0;
445
+ margin: 0 0 24px;
446
+ overflow: hidden;
447
+ background: #f5f5f5
448
+ }
449
+
450
+ .w-factory-clearfy-000-setup-content .updated p, .w-factory-clearfy-000-setup-content .woocommerce-newsletter p {
451
+ padding: 0;
452
+ margin: 0 0 12px
453
+ }
454
+
455
+ .w-factory-clearfy-000-setup-content .updated form, .w-factory-clearfy-000-setup-content .updated p:last-child, .w-factory-clearfy-000-setup-content .woocommerce-newsletter form, .w-factory-clearfy-000-setup-content .woocommerce-newsletter p:last-child {
456
+ margin: 0 0 24px
457
+ }
458
+
459
+ .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox] {
460
+ opacity: 0;
461
+ position: absolute;
462
+ left: -9999px
463
+ }
464
+
465
+ .w-factory-clearfy-000-setup-content .checkbox label {
466
+ position: relative;
467
+ display: inline-block;
468
+ padding-left: 28px
469
+ }
470
+
471
+ .w-factory-clearfy-000-setup-content .checkbox label::after, .w-factory-clearfy-000-setup-content .checkbox label::before {
472
+ position: absolute;
473
+ content: "";
474
+ display: inline-block
475
+ }
476
+
477
+ .w-factory-clearfy-000-setup-content .checkbox label::before {
478
+ height: 16px;
479
+ width: 16px;
480
+ left: 0;
481
+ top: 3px;
482
+ border: 1px solid #aaa;
483
+ background-color: #fff;
484
+ border-radius: 3px
485
+ }
486
+
487
+ .w-factory-clearfy-000-setup-content .checkbox label::after {
488
+ height: 5px;
489
+ width: 9px;
490
+ border-left: 2px solid;
491
+ border-bottom: 2px solid;
492
+ -webkit-transform: rotate(-45deg);
493
+ -ms-transform: rotate(-45deg);
494
+ transform: rotate(-45deg);
495
+ left: 4px;
496
+ top: 7px;
497
+ color: #fff
498
+ }
499
+
500
+ .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox] + label::after {
501
+ content: none
502
+ }
503
+
504
+ .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:checked + label::after {
505
+ content: ""
506
+ }
507
+
508
+ .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:focus + label::before {
509
+ outline: #3b99fc auto 5px
510
+ }
511
+
512
+ .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:checked + label::before {
513
+ background: #935687;
514
+ border-color: #935687
515
+ }
libs/factory/clearfy/assets/js/clearfy-globals.js ADDED
@@ -0,0 +1,221 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
+ * и самого Clearfy.
4
+ *
5
+ * $.wbcr_factory_clearfy_227.app - методы для работы с приложением. Скрыть, показать уведомления.
6
+ * $.wbcr_factory_clearfy_227.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
+ *
8
+ * Copyright 2018, Webcraftic, http://webcraftic.com
9
+ *
10
+ * @since 2.0.5
11
+ * @pacakge clearfy
12
+ */
13
+ (function($) {
14
+ 'use strict';
15
+
16
+ if( !$.wbcr_factory_clearfy_227 ) {
17
+ $.wbcr_factory_clearfy_227 = {};
18
+ }
19
+
20
+ //todo: Переопредление для совместимости со старыми версиями плагинов.
21
+ $.wbcr_factory_clearfy_227.filters = $.wbcr_factory_clearfy_227.filters || $.wfactory_436.filters;
22
+ //todo: Переопредление для совместимости со старыми версиями плагинов.
23
+ $.wbcr_factory_clearfy_227.hooks = $.wbcr_factory_clearfy_227.hooks || $.wfactory_436.hooks;
24
+
25
+ $.wbcr_factory_clearfy_227.app = $.wbcr_factory_clearfy_227.app || {
26
+ /**
27
+ * Создает и показывает уведомление внутри интерфейса Clearfy
28
+ *
29
+ * @param {string} message - сообщение об ошибке или предупреждение
30
+ * @param {string} type - тип уведомления (error, warning, success)
31
+ */
32
+ showNotice: function(message, type) {
33
+ var noticeContanier = $('<div></div>'),
34
+ noticeInnerWrap = $('<p></p>'),
35
+ dashicon = $('<span></span>'),
36
+ dashiconClass,
37
+ noticeId = this.makeid();
38
+
39
+ if( !type ) {
40
+ type = 'warning';
41
+ }
42
+
43
+ noticeContanier.addClass('alert', 'wbcr-factory-warning-notice')
44
+ .addClass('alert-' + type).addClass('wbcr-factory-' + type + '-notice');
45
+
46
+ noticeContanier.append(noticeInnerWrap);
47
+ noticeContanier.attr('id', 'uq-' + noticeId);
48
+
49
+ if( 'success' === type ) {
50
+ dashiconClass = 'dashicons-plus';
51
+ } else if( 'error' === type ) {
52
+ dashiconClass = 'dashicons-no';
53
+ } else {
54
+ dashiconClass = 'dashicons-warning';
55
+ }
56
+
57
+ dashicon.addClass('dashicons').addClass(dashiconClass);
58
+ noticeInnerWrap.prepend(dashicon);
59
+ dashicon.after(message);
60
+
61
+ $([document.documentElement, document.body]).animate({
62
+ scrollTop: $('.wbcr-factory-content').offset().top - 100
63
+ }, 300, function() {
64
+ noticeContanier.hide();
65
+ $('.wbcr-factory-content').prepend(noticeContanier);
66
+ noticeContanier.fadeIn();
67
+
68
+ /**
69
+ * Хук выполняет проивольную функцию, после того как уведомление отображено
70
+ * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
+ * Пример регистрации хука $.wfactory_436.hooks.add('wbcr/factory_clearfy_227/updated',
72
+ * function(noticeId) {});
73
+ * @param {string} noticeId - id уведомления
74
+ */
75
+ $.wfactory_436.hooks.run('wbcr/factory_clearfy_227/showed_notice', [noticeId]);
76
+ $.wfactory_436.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
77
+ });
78
+
79
+ return noticeId;
80
+ },
81
+
82
+ /**
83
+ * Удаляет уведомление из интерфейса Clearfy
84
+ *
85
+ * @param {string} noticeId - id уведомления
86
+ */
87
+ hideNotice: function(noticeId) {
88
+ var el;
89
+ if( !noticeId ) {
90
+ el = $('.wbcr-factory-content').find('.alert');
91
+ } else {
92
+ el = $('#uq-' + noticeId);
93
+ }
94
+
95
+ el.fadeOut(500, function(e) {
96
+ $(e).remove();
97
+
98
+ /**
99
+ * Хук выполняет проивольную функцию, после того как уведомление скрыто
100
+ * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
101
+ * Пример регистрации хука $.wfactory_436.hooks.add('wbcr/factory_clearfy_227/updated',
102
+ * function(noticeId)
103
+ * {});
104
+ * @param {string} noticeId - id уведомления
105
+ */
106
+ $.wfactory_436.hooks.run('wbcr/factory_clearfy_227/hidded_notice', [noticeId]);
107
+ $.wfactory_436.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
+ });
109
+ },
110
+
111
+ makeid: function() {
112
+ var text = "";
113
+ var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
114
+
115
+ for( var i = 0; i < 32; i++ ) {
116
+ text += possible.charAt(Math.floor(Math.random() * possible.length));
117
+ }
118
+
119
+ return text;
120
+ }
121
+
122
+ };
123
+
124
+ $.wfactory_436.hooks.add('core/components/pre_activate', function(button) {
125
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
+ if( !$('#WBCR').length ) {
127
+ return false;
128
+ }
129
+
130
+ if( button.closest('.alert').length ) {
131
+ button.closest('.alert').remove();
132
+ }
133
+
134
+ if( button.closest('.plugin-card').length ) {
135
+ button.closest('.plugin-card').removeClass('plugin-status-deactive');
136
+ button.closest('.plugin-card').find('.delete-now').remove();
137
+ }
138
+ });
139
+
140
+ $.wfactory_436.hooks.add('core/components/deactivated', function(button, data, response) {
141
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
+ if( !$('#WBCR').length ) {
143
+ return false;
144
+ }
145
+
146
+ if( button.closest('.plugin-card').length ) {
147
+ button.closest('.plugin-card').addClass('plugin-status-deactive');
148
+
149
+ if( response.data['delete_button'] && response.data['delete_button'] !== '' ) {
150
+ button.before($(response.data['delete_button']).addClass('delete-now'));
151
+ }
152
+ }
153
+
154
+ if( button.closest('.wbcr-hide-after-action').length ) {
155
+ button.closest('.wbcr-hide-after-action').remove();
156
+ }
157
+ });
158
+
159
+ $.wfactory_436.hooks.add('core/components/deleted', function(button) {
160
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
+ if( !$('#WBCR').length ) {
162
+ return false;
163
+ }
164
+
165
+ let button_i18n = button.data('i18n');
166
+
167
+ button.closest('.plugin-card').find('.install-now').data('plugin-action', 'install');
168
+ button.closest('.plugin-card').find('.install-now').attr('data-plugin-action', 'install');
169
+ button.closest('.plugin-card').find('.install-now').removeClass('button-primary').addClass('button-default');
170
+ button.closest('.plugin-card').find('.install-now').text(button_i18n.install);
171
+
172
+ if( button.closest('.plugin-card').length ) {
173
+ button.closest('.plugin-card').addClass('plugin-status-deactive');
174
+ button.remove();
175
+ }
176
+ });
177
+
178
+ $.wfactory_436.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_227) ) {
181
+ return false;
182
+ }
183
+
184
+ button.closest('.plugin-card').addClass('plugin-status-deactive');
185
+
186
+ if( response.data && response.data.error_message ) {
187
+ $.wbcr_factory_clearfy_227.app.showNotice(response.data.error_message, 'danger');
188
+ }
189
+ });
190
+
191
+ $.wfactory_436.hooks.add('core/components/update_error', function(button, data, response) {
192
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_227) ) {
194
+ return false;
195
+ }
196
+
197
+ if( response.data && response.data.error_message ) {
198
+ $.wbcr_factory_clearfy_227.app.showNotice(response.data.error_message, 'danger');
199
+ }
200
+
201
+ });
202
+
203
+ $.wfactory_436.hooks.add('core/components/activated', function(button, data, response) {
204
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
205
+ if( !$('#WBCR').length ) {
206
+ return false;
207
+ }
208
+
209
+ button.closest('.plugin-card').removeClass('plugin-status-deactive');
210
+ });
211
+
212
+ $.wfactory_436.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
+ // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_227) ) {
215
+ return false;
216
+ }
217
+
218
+ $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
219
+ });
220
+
221
+ })(jQuery);
libs/factory/clearfy/assets/js/{license-manager.js → clearfy-license-manager.js} RENAMED
@@ -20,7 +20,7 @@ jQuery(function($) {
20
  licenseAction = $(this).data('action');
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
- $.wbcr_factory_clearfy_224.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
@@ -53,7 +53,7 @@ jQuery(function($) {
53
 
54
  if( response.data ) {
55
  console.log(response.data.error_message);
56
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
57
  allNotices.push(noticeId);
58
  } else {
59
  console.log(response);
@@ -63,7 +63,7 @@ jQuery(function($) {
63
  }
64
 
65
  if( response.data && response.data.message ) {
66
- noticeId = $.wbcr_factory_clearfy_224.app.showNotice(response.data.message, 'success');
67
  allNotices.push(noticeId);
68
 
69
  // todo: доработать генерацию формы, вместо перезагрузки страницы
@@ -80,7 +80,7 @@ jQuery(function($) {
80
  console.log(xhr.responseText);
81
  console.log(thrownError);
82
 
83
- var noticeId = $.wbcr_factory_clearfy_224.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
20
  licenseAction = $(this).data('action');
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
+ $.wbcr_factory_clearfy_227.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
53
 
54
  if( response.data ) {
55
  console.log(response.data.error_message);
56
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
57
  allNotices.push(noticeId);
58
  } else {
59
  console.log(response);
63
  }
64
 
65
  if( response.data && response.data.message ) {
66
+ noticeId = $.wbcr_factory_clearfy_227.app.showNotice(response.data.message, 'success');
67
  allNotices.push(noticeId);
68
 
69
  // todo: доработать генерацию формы, вместо перезагрузки страницы
80
  console.log(xhr.responseText);
81
  console.log(thrownError);
82
 
83
+ var noticeId = $.wbcr_factory_clearfy_227.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
libs/factory/clearfy/assets/js/{search-options.js → clearfy-search-options.js} RENAMED
@@ -28,10 +28,10 @@
28
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
29
  }
30
 
31
- $('#wbcr-factory-clearfy-224__autocomplete').wfactory_clearfy_autocomplete({
32
  lookup: wfactory_clearfy_search_options,
33
  onSelect: function(suggestion) {
34
- $('#wbcr-factory-clearfy-224__autocomplete').prop("disabled", true);
35
  window.location.href = suggestion.data.page_url;
36
  }
37
  });
28
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
29
  }
30
 
31
+ $('#wbcr-factory-clearfy-227__autocomplete').wfactory_clearfy_autocomplete({
32
  lookup: wfactory_clearfy_search_options,
33
  onSelect: function(suggestion) {
34
+ $('#wbcr-factory-clearfy-227__autocomplete').prop("disabled", true);
35
  window.location.href = suggestion.data.page_url;
36
  }
37
  });
libs/factory/clearfy/assets/js/globals.js DELETED
@@ -1,203 +0,0 @@
1
- /*!
2
- * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
- * и самого Clearfy.
4
- *
5
- * $.wbcr_factory_clearfy_224.app - методы для работы с приложением. Скрыть, показать уведомления.
6
- * $.wbcr_factory_clearfy_224.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
- *
8
- * Copyright 2018, Webcraftic, http://webcraftic.com
9
- *
10
- * @since 2.0.5
11
- * @pacakge clearfy
12
- */
13
- (function($) {
14
- 'use strict';
15
-
16
- if( !$.wbcr_factory_clearfy_224 ) {
17
- $.wbcr_factory_clearfy_224 = {};
18
- }
19
-
20
- $.wbcr_factory_clearfy_224.app = $.wbcr_factory_clearfy_224.app || {
21
- /**
22
- * Создает и показывает уведомление внутри интерфейса Clearfy
23
- *
24
- * @param {string} message - сообщение об ошибке или предупреждение
25
- * @param {string} type - тип уведомления (error, warning, success)
26
- */
27
- showNotice: function(message, type) {
28
- var noticeContanier = $('<div></div>'),
29
- noticeInnerWrap = $('<p></p>'),
30
- dashicon = $('<span></span>'),
31
- dashiconClass,
32
- noticeId = this.makeid();
33
-
34
- if( !type ) {
35
- type = 'warning';
36
- }
37
-
38
- noticeContanier.addClass('alert', 'wbcr-factory-warning-notice')
39
- .addClass('alert-' + type).addClass('wbcr-factory-' + type + '-notice');
40
-
41
- noticeContanier.append(noticeInnerWrap);
42
- noticeContanier.attr('id', 'uq-' + noticeId);
43
-
44
- if( type == 'success' ) {
45
- dashiconClass = 'dashicons-plus';
46
- } else if( type == 'error' ) {
47
- dashiconClass = 'dashicons-no';
48
- } else {
49
- dashiconClass = 'dashicons-warning';
50
- }
51
-
52
- dashicon.addClass('dashicons').addClass(dashiconClass);
53
- noticeInnerWrap.prepend(dashicon);
54
- dashicon.after(message);
55
-
56
- $([document.documentElement, document.body]).animate({
57
- scrollTop: $('.wbcr-factory-content').offset().top - 100
58
- }, 300, function() {
59
- noticeContanier.hide();
60
- $('.wbcr-factory-content').prepend(noticeContanier);
61
- noticeContanier.fadeIn();
62
-
63
- /**
64
- * Хук выполняет проивольную функцию, после того как уведомление отображено
65
- * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
66
- * Пример регистрации хука $.wbcr_factory_clearfy_224.hooks.add('wbcr/factory_clearfy_224/updated',
67
- * function(noticeId) {});
68
- * @param {string} noticeId - id уведомления
69
- */
70
- $.wbcr_factory_clearfy_224.hooks.run('wbcr/factory_clearfy_224/showed_notice', [noticeId]);
71
- $.wbcr_factory_clearfy_224.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
72
- });
73
-
74
- return noticeId;
75
- },
76
-
77
- /**
78
- * Удаляет уведомление из интерфейса Clearfy
79
- *
80
- * @param {string} noticeId - id уведомления
81
- */
82
- hideNotice: function(noticeId) {
83
- var el;
84
- if( !noticeId ) {
85
- el = $('.wbcr-factory-content').find('.alert');
86
- } else {
87
- el = $('#uq-' + noticeId);
88
- }
89
-
90
- el.fadeOut(500, function(e) {
91
- $(e).remove();
92
-
93
- /**
94
- * Хук выполняет проивольную функцию, после того как уведомление скрыто
95
- * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
96
- * Пример регистрации хука $.wbcr_factory_clearfy_224.hooks.add('wbcr/factory_clearfy_224/updated',
97
- * function(noticeId)
98
- * {});
99
- * @param {string} noticeId - id уведомления
100
- */
101
- $.wbcr_factory_clearfy_224.hooks.run('wbcr/factory_clearfy_224/hidded_notice', [noticeId]);
102
- $.wbcr_factory_clearfy_224.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
103
- });
104
- },
105
-
106
- makeid: function() {
107
- var text = "";
108
- var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
109
-
110
- for( var i = 0; i < 32; i++ ) {
111
- text += possible.charAt(Math.floor(Math.random() * possible.length));
112
- }
113
-
114
- return text;
115
- }
116
-
117
- };
118
-
119
- $.wbcr_factory_clearfy_224.filters = $.wbcr_factory_clearfy_224.filters || {
120
-
121
- /**
122
- * A set of registered filters.
123
- */
124
- _items: {},
125
-
126
- /**
127
- * A set of priorities of registered filters.
128
- */
129
- _priorities: {},
130
-
131
- /**
132
- * Applies filters to a given input value.
133
- */
134
- run: function(filterName, args) {
135
- var input = args && args.length > 0 ? args[0] : null;
136
- if( !this._items[filterName] ) {
137
- return input;
138
- }
139
-
140
- for( var i in this._priorities[filterName] ) {
141
- if( !this._priorities[filterName].hasOwnProperty(i) ) {
142
- continue;
143
- }
144
-
145
- var priority = this._priorities[filterName][i];
146
-
147
- for( var k = 0; k < this._items[filterName][priority].length; k++ ) {
148
- var f = this._items[filterName][priority][k];
149
- input = f.apply(f, args);
150
- }
151
- }
152
-
153
- return input;
154
- },
155
-
156
- /**
157
- * Registers a new filter.
158
- */
159
- add: function(filterName, callback, priority) {
160
-
161
- if( !priority ) {
162
- priority = 10;
163
- }
164
-
165
- if( !this._items[filterName] ) {
166
- this._items[filterName] = {};
167
- }
168
- if( !this._items[filterName][priority] ) {
169
- this._items[filterName][priority] = [];
170
- }
171
- this._items[filterName][priority].push(callback);
172
-
173
- if( !this._priorities[filterName] ) {
174
- this._priorities[filterName] = [];
175
- }
176
- if( $.inArray(priority, this._priorities[filterName]) === -1 ) {
177
- this._priorities[filterName].push(priority);
178
- }
179
-
180
- this._priorities[filterName].sort(function(a, b) {
181
- return a - b;
182
- });
183
- }
184
- };
185
-
186
- $.wbcr_factory_clearfy_224.hooks = $.wbcr_factory_clearfy_224.hooks || {
187
-
188
- /**
189
- * Applies filters to a given input value.
190
- */
191
- run: function(filterName, args) {
192
- $.wbcr_factory_clearfy_224.filters.run(filterName, args);
193
- },
194
-
195
- /**
196
- * Registers a new filter.
197
- */
198
- add: function(filterName, callback, priority) {
199
- $.wbcr_factory_clearfy_224.filters.add(filterName, callback, priority);
200
- }
201
- };
202
-
203
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js CHANGED
@@ -5,4 +5,4 @@
5
  * Ajax Autocomplete for jQuery is freely distributable under the terms of an MIT-style license.
6
  * For details, see the web site: https://github.com/devbridge/jQuery-Autocomplete
7
  */
8
- !function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports&&"function"==typeof require?require("jquery"):jQuery)}(function(a){"use strict";function b(c,d){var e=this;e.element=c,e.el=a(c),e.suggestions=[],e.badQueries=[],e.selectedIndex=-1,e.currentValue=e.element.value,e.timeoutId=null,e.cachedResponse={},e.onChangeTimeout=null,e.onChange=null,e.isLocal=!1,e.suggestionsContainer=null,e.noSuggestionsContainer=null,e.options=a.extend(!0,{},b.defaults,d),e.classes={selected:"wbcr-factory-clearfy-224__autocomplete-selected",suggestion:"wbcr-factory-clearfy-224__autocomplete-suggestion"},e.hint=null,e.hintValue="",e.selection=null,e.initialize(),e.setOptions(d)}function c(a,b,c){return a.value.toLowerCase().indexOf(c)!==-1}function d(b){return"string"==typeof b?a.parseJSON(b):b}function e(a,b){if(!b)return a.value;var c="("+g.escapeRegExChars(b)+")";return a.value.replace(new RegExp(c,"gi"),"<strong>$1</strong>").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/&lt;(\/?strong)&gt;/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-clearfy-224__autocomplete-group">'+b+"</div>"}var g=function(){return{escapeRegExChars:function(a){return a.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")},createNode:function(a){var b=document.createElement("div");return b.className=a,b.style.position="absolute",b.style.display="none",b}}}(),h={ESC:27,TAB:9,RETURN:13,LEFT:37,UP:38,RIGHT:39,DOWN:40},i=a.noop;b.utils=g,a.Autocomplete=b,b.defaults={ajaxSettings:{},autoSelectFirst:!1,appendTo:"body",serviceUrl:null,lookup:null,onSelect:null,width:"auto",minChars:1,maxHeight:300,deferRequestBy:0,params:{},formatResult:e,formatGroup:f,delimiter:null,zIndex:9999,type:"GET",noCache:!1,onSearchStart:i,onSearchComplete:i,onSearchError:i,preserveInput:!1,containerClass:"wbcr-factory-clearfy-224__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
5
  * Ajax Autocomplete for jQuery is freely distributable under the terms of an MIT-style license.
6
  * For details, see the web site: https://github.com/devbridge/jQuery-Autocomplete
7
  */
8
+ !function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports&&"function"==typeof require?require("jquery"):jQuery)}(function(a){"use strict";function b(c,d){var e=this;e.element=c,e.el=a(c),e.suggestions=[],e.badQueries=[],e.selectedIndex=-1,e.currentValue=e.element.value,e.timeoutId=null,e.cachedResponse={},e.onChangeTimeout=null,e.onChange=null,e.isLocal=!1,e.suggestionsContainer=null,e.noSuggestionsContainer=null,e.options=a.extend(!0,{},b.defaults,d),e.classes={selected:"wbcr-factory-clearfy-227__autocomplete-selected",suggestion:"wbcr-factory-clearfy-227__autocomplete-suggestion"},e.hint=null,e.hintValue="",e.selection=null,e.initialize(),e.setOptions(d)}function c(a,b,c){return a.value.toLowerCase().indexOf(c)!==-1}function d(b){return"string"==typeof b?a.parseJSON(b):b}function e(a,b){if(!b)return a.value;var c="("+g.escapeRegExChars(b)+")";return a.value.replace(new RegExp(c,"gi"),"<strong>$1</strong>").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/&lt;(\/?strong)&gt;/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-clearfy-227__autocomplete-group">'+b+"</div>"}var g=function(){return{escapeRegExChars:function(a){return a.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")},createNode:function(a){var b=document.createElement("div");return b.className=a,b.style.position="absolute",b.style.display="none",b}}}(),h={ESC:27,TAB:9,RETURN:13,LEFT:37,UP:38,RIGHT:39,DOWN:40},i=a.noop;b.utils=g,a.Autocomplete=b,b.defaults={ajaxSettings:{},autoSelectFirst:!1,appendTo:"body",serviceUrl:null,lookup:null,onSelect:null,width:"auto",minChars:1,maxHeight:300,deferRequestBy:0,params:{},formatResult:e,formatGroup:f,delimiter:null,zIndex:9999,type:"GET",noCache:!1,onSearchStart:i,onSearchComplete:i,onSearchError:i,preserveInput:!1,containerClass:"wbcr-factory-clearfy-227__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
libs/factory/clearfy/boot.php CHANGED
@@ -10,71 +10,80 @@
10
  */
11
 
12
  // Exit if accessed directly
13
- if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- if ( defined( 'FACTORY_CLEARFY_224_LOADED' ) ) {
18
  return;
19
  }
20
 
21
- define( 'FACTORY_CLEARFY_224_LOADED', true );
22
 
23
- define( 'FACTORY_CLEARFY_224', '2.2.4' );
24
 
25
- define( 'FACTORY_CLEARFY_224_DIR', dirname( __FILE__ ) );
26
- define( 'FACTORY_CLEARFY_224_URL', plugins_url( null, __FILE__ ) );
27
 
28
- load_plugin_textdomain( 'wbcr_factory_clearfy_224', false, dirname( plugin_basename( __FILE__ ) ) . '/langs' );
29
 
30
- require( FACTORY_CLEARFY_224_DIR . '/includes/ajax-handlers.php' );
31
- require( FACTORY_CLEARFY_224_DIR . '/includes/class-helpers.php' );
32
- require( FACTORY_CLEARFY_224_DIR . '/includes/class-configurate.php' );
33
 
34
  // module provides function only for the admin area
35
- if ( is_admin() ) {
36
  /**
37
  * Подключаем скрипты для установки компонентов Clearfy
38
  * на все страницы админпанели.
39
  */
40
- add_action( 'admin_enqueue_scripts', function () {
41
- wp_enqueue_script( 'wbcr-factory-clearfy-224-global', FACTORY_CLEARFY_224_URL . '/assets/js/globals.js', [ 'jquery' ], FACTORY_CLEARFY_224 );
 
 
 
42
 
43
- require_once FACTORY_CLEARFY_224_DIR . '/includes/class-search-options.php';
44
- $all_options = \WBCR\Factory_Clearfy_224\Search_Options::get_all_options();
45
 
46
- if ( empty( $all_options ) ) {
47
  return;
48
  }
49
 
50
  $allow_print_data = false;
51
  $formated_options = [];
52
 
53
- foreach ( $all_options as $option ) {
54
- if ( ! $allow_print_data && isset( $_GET['page'] ) && $option['page_id'] === $_GET['page'] ) {
55
  $allow_print_data = true;
56
  }
57
 
58
  $formated_options[] = [
59
  'value' => $option['title'],
60
- 'data' => [
61
  //'hint' => isset($option['hint']) ? $option['hint'] : '',
62
  'page_url' => $option['page_url'],
63
- 'page_id' => $option['page_id']
64
  ]
65
  ];
66
  }
67
 
68
- if ( ! $allow_print_data ) {
69
  return;
70
  }
71
 
72
- wp_localize_script( 'wbcr-factory-clearfy-224-global', 'wfactory_clearfy_search_options', $formated_options );
73
- } );
74
 
75
- if ( defined( 'FACTORY_PAGES_432_LOADED' ) ) {
76
- require( FACTORY_CLEARFY_224_DIR . '/pages/class-pages.php' );
77
- require( FACTORY_CLEARFY_224_DIR . '/pages/class-page-more-features.php' );
78
- require( FACTORY_CLEARFY_224_DIR . '/pages/class-page-license.php' );
 
 
 
 
 
 
79
  }
80
  }
10
  */
11
 
12
  // Exit if accessed directly
13
+ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_CLEARFY_227_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_CLEARFY_227_LOADED', true);
22
 
23
+ define('FACTORY_CLEARFY_227', '2.2.7');
24
 
25
+ define('FACTORY_CLEARFY_227_DIR', dirname(__FILE__));
26
+ define('FACTORY_CLEARFY_227_URL', plugins_url(null, __FILE__));
27
 
28
+ load_plugin_textdomain('wbcr_factory_clearfy_227', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
+ require(FACTORY_CLEARFY_227_DIR . '/includes/ajax-handlers.php');
31
+ require(FACTORY_CLEARFY_227_DIR . '/includes/class-helpers.php');
32
+ require(FACTORY_CLEARFY_227_DIR . '/includes/class-configurate.php');
33
 
34
  // module provides function only for the admin area
35
+ if( is_admin() ) {
36
  /**
37
  * Подключаем скрипты для установки компонентов Clearfy
38
  * на все страницы админпанели.
39
  */
40
+ add_action('admin_enqueue_scripts', function () {
41
+ wp_enqueue_script('wbcr-factory-clearfy-227-global', FACTORY_CLEARFY_227_URL . '/assets/js/clearfy-globals.js', [
42
+ 'jquery',
43
+ 'wfactory-436-core-general'
44
+ ], FACTORY_CLEARFY_227);
45
 
46
+ require_once FACTORY_CLEARFY_227_DIR . '/includes/class-search-options.php';
47
+ $all_options = \WBCR\Factory_Clearfy_227\Search_Options::get_all_options();
48
 
49
+ if( empty($all_options) ) {
50
  return;
51
  }
52
 
53
  $allow_print_data = false;
54
  $formated_options = [];
55
 
56
+ foreach($all_options as $option) {
57
+ if( !$allow_print_data && isset($_GET['page']) && $option['page_id'] === $_GET['page'] ) {
58
  $allow_print_data = true;
59
  }
60
 
61
  $formated_options[] = [
62
  'value' => $option['title'],
63
+ 'data' => [
64
  //'hint' => isset($option['hint']) ? $option['hint'] : '',
65
  'page_url' => $option['page_url'],
66
+ 'page_id' => $option['page_id']
67
  ]
68
  ];
69
  }
70
 
71
+ if( !$allow_print_data ) {
72
  return;
73
  }
74
 
75
+ wp_localize_script('wbcr-factory-clearfy-227-global', 'wfactory_clearfy_search_options', $formated_options);
76
+ });
77
 
78
+ if( defined('FACTORY_PAGES_435_LOADED') ) {
79
+ require(FACTORY_CLEARFY_227_DIR . '/pages/class-pages.php');
80
+ require(FACTORY_CLEARFY_227_DIR . '/pages/class-page-more-features.php');
81
+ require(FACTORY_CLEARFY_227_DIR . '/pages/class-page-license.php');
82
+ require(FACTORY_CLEARFY_227_DIR . '/pages/class-pages-components.php');
83
+
84
+ require(FACTORY_CLEARFY_227_DIR . '/pages/setup-parts/class-step.php');
85
+ require(FACTORY_CLEARFY_227_DIR . '/pages/setup-parts/class-step-form.php');
86
+ require(FACTORY_CLEARFY_227_DIR . '/pages/setup-parts/class-step-custom.php');
87
+ require(FACTORY_CLEARFY_227_DIR . '/pages/class-page-setup.php');
88
  }
89
  }
libs/factory/clearfy/includes/ajax-handlers.php CHANGED
@@ -17,10 +17,10 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  *
18
  * @since 2.0.7
19
  *
20
- * @param Wbcr_Factory432_Plugin $plugin_instance
21
  *
22
  */
23
- function wbcr_factory_clearfy_224_check_license( $plugin_instance ) {
24
 
25
  $plugin_name = $plugin_instance->request->post( 'plugin_name', null, true );
26
 
@@ -34,7 +34,7 @@ function wbcr_factory_clearfy_224_check_license( $plugin_instance ) {
34
  check_admin_referer( "clearfy_activate_license_for_{$plugin_name}" );
35
 
36
  if ( empty( $action ) || ! in_array( $action, [ 'activate', 'deactivate', 'sync', 'unsubscribe' ] ) ) {
37
- wp_send_json_error( [ 'error_message' => __( 'Licensing action not passed or this action is prohibited!', 'wbcr_factory_clearfy_224' ) ] );
38
  die();
39
  }
40
 
@@ -45,23 +45,23 @@ function wbcr_factory_clearfy_224_check_license( $plugin_instance ) {
45
  switch ( $action ) {
46
  case 'activate':
47
  if ( empty( $license_key ) || strlen( $license_key ) > 32 ) {
48
- wp_send_json_error( [ 'error_message' => __( 'License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_clearfy_224' ) ] );
49
  } else {
50
  $plugin_instance->premium->activate( $license_key );
51
- $success_message = __( 'Your license has been successfully activated', 'wbcr_factory_clearfy_224' );
52
  }
53
  break;
54
  case 'deactivate':
55
  $plugin_instance->premium->deactivate();
56
- $success_message = __( 'The license is deactivated', 'wbcr_factory_clearfy_224' );
57
  break;
58
  case 'sync':
59
  $plugin_instance->premium->sync();
60
- $success_message = __( 'The license has been updated', 'wbcr_factory_clearfy_224' );
61
  break;
62
  case 'unsubscribe':
63
  $plugin_instance->premium->cancel_paid_subscription();
64
- $success_message = __( 'Subscription success cancelled', 'wbcr_factory_clearfy_224' );
65
  break;
66
  }
67
  } catch( Exception $e ) {
17
  *
18
  * @since 2.0.7
19
  *
20
+ * @param Wbcr_Factory436_Plugin $plugin_instance
21
  *
22
  */
23
+ function wbcr_factory_clearfy_227_check_license( $plugin_instance ) {
24
 
25
  $plugin_name = $plugin_instance->request->post( 'plugin_name', null, true );
26
 
34
  check_admin_referer( "clearfy_activate_license_for_{$plugin_name}" );
35
 
36
  if ( empty( $action ) || ! in_array( $action, [ 'activate', 'deactivate', 'sync', 'unsubscribe' ] ) ) {
37
+ wp_send_json_error( [ 'error_message' => __( 'Licensing action not passed or this action is prohibited!', 'wbcr_factory_clearfy_227' ) ] );
38
  die();
39
  }
40
 
45
  switch ( $action ) {
46
  case 'activate':
47
  if ( empty( $license_key ) || strlen( $license_key ) > 32 ) {
48
+ wp_send_json_error( [ 'error_message' => __( 'License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_clearfy_227' ) ] );
49
  } else {
50
  $plugin_instance->premium->activate( $license_key );
51
+ $success_message = __( 'Your license has been successfully activated', 'wbcr_factory_clearfy_227' );
52
  }
53
  break;
54
  case 'deactivate':
55
  $plugin_instance->premium->deactivate();
56
+ $success_message = __( 'The license is deactivated', 'wbcr_factory_clearfy_227' );
57
  break;
58
  case 'sync':
59
  $plugin_instance->premium->sync();
60
+ $success_message = __( 'The license has been updated', 'wbcr_factory_clearfy_227' );
61
  break;
62
  case 'unsubscribe':
63
  $plugin_instance->premium->cancel_paid_subscription();
64
+ $success_message = __( 'Subscription success cancelled', 'wbcr_factory_clearfy_227' );
65
  break;
66
  }
67
  } catch( Exception $e ) {
libs/factory/clearfy/includes/class-configurate.php CHANGED
@@ -13,12 +13,12 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  * @copyright (c) 2018, Webcraftic Ltd
14
  *
15
  */
16
- abstract class Wbcr_FactoryClearfy224_Configurate {
17
 
18
  /**
19
- * @param Wbcr_Factory432_Plugin $plugin
20
  */
21
- public function __construct( Wbcr_Factory432_Plugin $plugin ) {
22
  $this->plugin = $plugin;
23
  $this->registerActionsAndFilters();
24
  }
13
  * @copyright (c) 2018, Webcraftic Ltd
14
  *
15
  */
16
+ abstract class Wbcr_FactoryClearfy227_Configurate {
17
 
18
  /**
19
+ * @param Wbcr_Factory436_Plugin $plugin
20
  */
21
+ public function __construct( Wbcr_Factory436_Plugin $plugin ) {
22
  $this->plugin = $plugin;
23
  $this->registerActionsAndFilters();
24
  }
libs/factory/clearfy/includes/class-helpers.php CHANGED
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  * @copyright (c) 2018, Webcraftic Ltd
15
  *
16
  */
17
- class WbcrFactoryClearfy224_Helpers {
18
 
19
  /**
20
  * Recursive sanitation for an array
14
  * @copyright (c) 2018, Webcraftic Ltd
15
  *
16
  */
17
+ class WbcrFactoryClearfy227_Helpers {
18
 
19
  /**
20
  * Recursive sanitation for an array
libs/factory/clearfy/includes/class-search-options.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Clearfy_224;
4
 
5
  /**
6
  * Class Search options
1
  <?php
2
 
3
+ namespace WBCR\Factory_Clearfy_227;
4
 
5
  /**
6
  * Class Search options
libs/factory/clearfy/langs/{wbcr_factory_clearfy_224-ru_RU.mo → wbcr_factory_clearfy_225-ru_RU.mo} RENAMED
File without changes
libs/factory/clearfy/langs/{wbcr_factory_clearfy_224-ru_RU.po → wbcr_factory_clearfy_225-ru_RU.po} RENAMED
File without changes
libs/factory/clearfy/langs/wbcr_factory_clearfy_226-ru_RU.mo ADDED
Binary file
libs/factory/clearfy/langs/wbcr_factory_clearfy_226-ru_RU.po ADDED
@@ -0,0 +1,307 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: clearfy\n"
4
+ "POT-Creation-Date: 2018-10-16 22:37+0300\n"
5
+ "PO-Revision-Date: 2018-10-16 22:41+0300\n"
6
+ "Last-Translator: alex.kovalevv@gmail.com <alex.kovalevv@gmail.com>\n"
7
+ "Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
8
+ "Language: ru_RU\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 2.1.1\n"
13
+ "X-Poedit-Basepath: ..\n"
14
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
15
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
18
+ "X-Poedit-SearchPath-0: .\n"
19
+
20
+ #: includes/check-clearfy-compatibility.php:265
21
+ msgid "Clearfy warning"
22
+ msgstr "Clearfy предупреждение"
23
+
24
+ #: includes/check-clearfy-compatibility.php:266
25
+ #, php-format
26
+ msgid "The %s component"
27
+ msgstr "Работа компонента %s"
28
+
29
+ #: includes/check-clearfy-compatibility.php:268
30
+ msgid "warning"
31
+ msgstr "предупреждение"
32
+
33
+ #: includes/check-clearfy-compatibility.php:269
34
+ #, php-format
35
+ msgid "The %s plugin"
36
+ msgstr "Работа плагина %s"
37
+
38
+ #: includes/check-clearfy-compatibility.php:272
39
+ msgid "has stopped."
40
+ msgstr "была остановлена."
41
+
42
+ #: includes/check-clearfy-compatibility.php:273
43
+ msgid "Possible reasons:"
44
+ msgstr "Возможные причины:"
45
+
46
+ #: includes/check-clearfy-compatibility.php:279
47
+ #, php-format
48
+ msgid "You need to update the PHP version to %s or higher!"
49
+ msgstr "Вам нужно обновить версию PHP до %s или выше!"
50
+
51
+ #: includes/check-clearfy-compatibility.php:284
52
+ #, php-format
53
+ msgid "You need to update WordPress to %s or higher!"
54
+ msgstr "Вам нужно обновить WordPress до %s или выше!"
55
+
56
+ #: includes/check-clearfy-compatibility.php:289
57
+ #, php-format
58
+ msgid "You need to update the Clearfy plugin version to %s or higher!"
59
+ msgstr "Вам нужно обновить версию плагина Clearfy до %s или выше!"
60
+
61
+ #: includes/check-clearfy-compatibility.php:294
62
+ msgid "This plugin is already activated, you are trying to activate it again."
63
+ msgstr "Этот плагин уже активирован, вы пытаетесь активировать его снова."
64
+
65
+ #: includes/check-clearfy-compatibility.php:299
66
+ #, php-format
67
+ msgid ""
68
+ "Clearfy has the features of the %s plugin. Please, deactivate %s to avoid "
69
+ "conflicts of plugins!"
70
+ msgstr ""
71
+ "Плагин Clearfy уже включает в себя функции плагина %s. Пожалуйста, "
72
+ "деактивируйте плагин %s, чтобы не создавать конфликтов!"
73
+
74
+ #: pages/class.pages.php:212
75
+ msgid "Upgrade to Clearfy Business"
76
+ msgstr "Перейти на Clearfy Бизнес"
77
+
78
+ #: pages/class.pages.php:213
79
+ msgid "Oops... Sorry for the inconvenience caused!"
80
+ msgstr "Упс... Мы приносим свои извинения за неудобства!"
81
+
82
+ #: pages/class.pages.php:214
83
+ msgid ""
84
+ "Complete multisite support is available in Clearfy Business and Clearfy "
85
+ "Business Revolution packages only!"
86
+ msgstr ""
87
+ "Полная поддержка мультисайтов доступна только в пакете Clearfy Бизнес и "
88
+ "Clearfy Бизнес Революция!"
89
+
90
+ #: pages/class.pages.php:215
91
+ msgid ""
92
+ "You can activate the plugin on each website and use it with zero "
93
+ "limitations. But you can’t save the plugin’s settings under the Super "
94
+ "Administrator role!"
95
+ msgstr ""
96
+ "Вы можете активировать плагин отдельно для каждого сайта и использовать его "
97
+ "без ограничений, но в режиме суперадминистратора, вы не можете сохранять "
98
+ "настройки плагина!"
99
+
100
+ #: pages/class.pages.php:217
101
+ msgid "Activate license "
102
+ msgstr "Активировать лицензию "
103
+
104
+ #: pages/class.pages.php:218
105
+ #, php-format
106
+ msgid "Upgrade to Clearfy Business for $%d"
107
+ msgstr "Обновить до Clearfy Бизнес за $%d"
108
+
109
+ #: pages/class.pages.php:273
110
+ msgid "MORE IN CLEARFY <span>BUSINESS</span>"
111
+ msgstr "ЛУЧШЕЕ В CLEARFY <span>БИЗНЕС</span>"
112
+
113
+ #: pages/class.pages.php:275
114
+ msgid "4 premium components now;"
115
+ msgstr "4 премиум компонента сейчас;"
116
+
117
+ #: pages/class.pages.php:276
118
+ msgid "40 new premium components within a year for the single price;"
119
+ msgstr "40 новых премиум компонентов в год по одной цене;"
120
+
121
+ #: pages/class.pages.php:277
122
+ msgid "Multisite support;"
123
+ msgstr "Поддержка мультисайтов;"
124
+
125
+ #: pages/class.pages.php:278
126
+ msgid "Advanced settings;"
127
+ msgstr "Дополнительные настройки;"
128
+
129
+ #: pages/class.pages.php:279
130
+ msgid "No ads;"
131
+ msgstr "Нет рекламы;"
132
+
133
+ #: pages/class.pages.php:280
134
+ msgid "Perfect support."
135
+ msgstr "Лучшая поддержка."
136
+
137
+ #: pages/class.pages.php:283
138
+ #, php-format
139
+ msgid "Upgrade for $%s"
140
+ msgstr "Обновиться за $%s"
141
+
142
+ #: pages/class.pages.php:299
143
+ msgid ""
144
+ "A neutral setting that can not harm your site, but you must be sure that you "
145
+ "need to use it."
146
+ msgstr ""
147
+ "Нейтральная настройка, которая не может нанести вред вашему сайту, но вы "
148
+ "должны быть уверены, что вам нужно ее использовать."
149
+
150
+ #: pages/class.pages.php:305
151
+ msgid ""
152
+ "When set this option, you must be careful. Plugins and themes may depend on "
153
+ "this function. You must be sure that you can disable this feature for the "
154
+ "site."
155
+ msgstr ""
156
+ "При включении этой настройки, вы должны быть осторожны. Некоторые плагины и "
157
+ "темы могут зависеть от этой функции. Вы должны быть уверены, что эту функцию "
158
+ "можно отключить для сайта."
159
+
160
+ #: pages/class.pages.php:311
161
+ msgid "Absolutely safe setting, We recommend to use."
162
+ msgstr "Абсолютно безопасная настройка, рекомендуем использовать."
163
+
164
+ #: pages/class.pages.php:316
165
+ msgid "Hover to the icon to get help for the feature you selected."
166
+ msgstr ""
167
+ "Наведите указатель мыши на значок, чтобы получить справку по выбранной "
168
+ "функции."
169
+
170
+ #: pages/class.pages.php:334
171
+ msgid "Do you want the plugin to improved and update?"
172
+ msgstr "Вы хотите, чтобы плагин улучшался и обновлялся?"
173
+
174
+ #: pages/class.pages.php:337
175
+ msgid ""
176
+ "Help the author, leave a review on wordpress.org. Thanks to feedback, I will "
177
+ "know that the plugin is really useful to you and is needed."
178
+ msgstr ""
179
+ "Помогите автору, оставьте отзыв на wordpress.org. Благодаря отзывам, я буду "
180
+ "знать, что плагин действительно полезен для вас и необходим."
181
+
182
+ #: pages/class.pages.php:339
183
+ msgid "And also write your ideas on how to extend or improve the plugin."
184
+ msgstr "А также напишите свои идеи о том, как расширить или улучшить плагин."
185
+
186
+ #: pages/class.pages.php:344
187
+ msgid "Go rate us and push ideas"
188
+ msgstr "Оставить отзыв или поделиться идеей"
189
+
190
+ #: pages/class.pages.php:356
191
+ msgid "Donation for plugin development"
192
+ msgstr "Пожертвования на развитие плагина"
193
+
194
+ #: pages/more-features.php:31
195
+ msgid "More features (<b>free</b>)"
196
+ msgstr "Дополнительно"
197
+
198
+ #: pages/more-features.php:40
199
+ msgid "install the ultimate version of the plugin for free!"
200
+ msgstr "установите полную версию плагина бесплатно!"
201
+
202
+ #: pages/more-features.php:51
203
+ msgid "Code cleaning"
204
+ msgstr "Очищает код"
205
+
206
+ #: pages/more-features.php:53
207
+ msgid "Clears the source code of the page from unused code."
208
+ msgstr "Очищает исходный код страницы от неиспользуемого кода."
209
+
210
+ #: pages/more-features.php:60
211
+ msgid "Improve SEO"
212
+ msgstr "Улучшает SEO"
213
+
214
+ #: pages/more-features.php:62
215
+ msgid ""
216
+ "Removes duplicate pages, closes external links, changes the headers of the "
217
+ "server."
218
+ msgstr ""
219
+ "Удаляет дубликаты страниц, закрывает внешние ссылки, изменяет заголовки "
220
+ "сервера."
221
+
222
+ #: pages/more-features.php:69
223
+ msgid "Site protection"
224
+ msgstr "Защита сайта"
225
+
226
+ #: pages/more-features.php:71
227
+ msgid "Enables and disables features that improve the protection of your site."
228
+ msgstr "Включает и отключает функции, которые улучшают защиту вашего сайта."
229
+
230
+ #: pages/more-features.php:78
231
+ msgid "Disable comments"
232
+ msgstr "Отключает комментарии"
233
+
234
+ #: pages/more-features.php:80
235
+ msgid "Disables comments on the entire site or on specific pages."
236
+ msgstr "Отключает комментарии на всем сайте или у определенных страниц."
237
+
238
+ #: pages/more-features.php:87
239
+ msgid "Manage updates"
240
+ msgstr "Менеджер обновлений"
241
+
242
+ #: pages/more-features.php:89
243
+ msgid ""
244
+ "Enables or disables automatically updates for plugins, themes and core. It "
245
+ "is also possible\n"
246
+ "\t\t\t\t\t\t\tto disable all updates."
247
+ msgstr ""
248
+ "Включает или отключает автоматические обновление плагинов, тем и ядра. Также "
249
+ "возможно\n"
250
+ "отключение всех обновлений."
251
+
252
+ #: pages/more-features.php:97
253
+ msgid "Manage widgets"
254
+ msgstr "Управление виджетами"
255
+
256
+ #: pages/more-features.php:99
257
+ msgid "Allows you to remove unused widgets."
258
+ msgstr "Позволяет удалить неиспользуемые виджеты."
259
+
260
+ #: pages/more-features.php:106
261
+ msgid "Speed Optimization"
262
+ msgstr "Оптимизация производительности"
263
+
264
+ #: pages/more-features.php:108
265
+ msgid ""
266
+ "Increases performance by disabling unused functions and reducing the number "
267
+ "of requests."
268
+ msgstr ""
269
+ "Повышает производительность, отключая неиспользуемые функции и уменьшая "
270
+ "количество запросов."
271
+
272
+ #: pages/more-features.php:115
273
+ msgid "Site privacy"
274
+ msgstr "Конфиденциальность сайта"
275
+
276
+ #: pages/more-features.php:117
277
+ msgid ""
278
+ "Allows you to hide the version of the site and plugins. Allows you to hide "
279
+ "your\n"
280
+ "\t\t\t\t\t\t\tWordPress."
281
+ msgstr ""
282
+ "Позволяет скрыть версию сайта и плагинов. Позволяет скрыть ваш\n"
283
+ "WordPress."
284
+
285
+ #: pages/more-features.php:125
286
+ msgid "Easy setup"
287
+ msgstr "Простая настройка"
288
+
289
+ #: pages/more-features.php:127
290
+ msgid ""
291
+ "In quick mode, you can easily configure the plugin according to your needs."
292
+ msgstr ""
293
+ "В быстром режиме вы можете легко настроить плагин в соответствии с вашими "
294
+ "потребностями."
295
+
296
+ #: pages/more-features.php:142
297
+ msgid "Get the ultimate plugin 100% FREE"
298
+ msgstr "Получить полную версию бесплатно на 100%."
299
+
300
+ #~ msgid "component"
301
+ #~ msgstr "компонент"
302
+
303
+ #~ msgid "plugin"
304
+ #~ msgstr "плагин"
305
+
306
+ #~ msgid "Site ptotection"
307
+ #~ msgstr "Защищает ваш сайт"
libs/factory/clearfy/langs/wbcr_factory_clearfy_227-ru_RU.mo ADDED
Binary file
libs/factory/clearfy/langs/wbcr_factory_clearfy_227-ru_RU.po ADDED
@@ -0,0 +1,307 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: clearfy\n"
4
+ "POT-Creation-Date: 2018-10-16 22:37+0300\n"
5
+ "PO-Revision-Date: 2018-10-16 22:41+0300\n"
6
+ "Last-Translator: alex.kovalevv@gmail.com <alex.kovalevv@gmail.com>\n"
7
+ "Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
8
+ "Language: ru_RU\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 2.1.1\n"
13
+ "X-Poedit-Basepath: ..\n"
14
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
15
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
16
+ "X-Poedit-SourceCharset: UTF-8\n"
17
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
18
+ "X-Poedit-SearchPath-0: .\n"
19
+
20
+ #: includes/check-clearfy-compatibility.php:265
21
+ msgid "Clearfy warning"
22
+ msgstr "Clearfy предупреждение"
23
+
24
+ #: includes/check-clearfy-compatibility.php:266
25
+ #, php-format
26
+ msgid "The %s component"
27
+ msgstr "Работа компонента %s"
28
+
29
+ #: includes/check-clearfy-compatibility.php:268
30
+ msgid "warning"
31
+ msgstr "предупреждение"
32
+
33
+ #: includes/check-clearfy-compatibility.php:269
34
+ #, php-format
35
+ msgid "The %s plugin"
36
+ msgstr "Работа плагина %s"
37
+
38
+ #: includes/check-clearfy-compatibility.php:272
39
+ msgid "has stopped."
40
+ msgstr "была остановлена."
41
+
42
+ #: includes/check-clearfy-compatibility.php:273
43
+ msgid "Possible reasons:"
44
+ msgstr "Возможные причины:"
45
+
46
+ #: includes/check-clearfy-compatibility.php:279
47
+ #, php-format
48
+ msgid "You need to update the PHP version to %s or higher!"
49
+ msgstr "Вам нужно обновить версию PHP до %s или выше!"
50
+
51
+ #: includes/check-clearfy-compatibility.php:284
52
+ #, php-format
53
+ msgid "You need to update WordPress to %s or higher!"
54
+ msgstr "Вам нужно обновить WordPress до %s или выше!"
55
+
56
+ #: includes/check-clearfy-compatibility.php:289
57
+ #, php-format
58
+ msgid "You need to update the Clearfy plugin version to %s or higher!"
59
+ msgstr "Вам нужно обновить версию плагина Clearfy до %s или выше!"
60
+
61
+ #: includes/check-clearfy-compatibility.php:294
62
+ msgid "This plugin is already activated, you are trying to activate it again."
63
+ msgstr "Этот плагин уже активирован, вы пытаетесь активировать его снова."
64
+
65
+ #: includes/check-clearfy-compatibility.php:299
66
+ #, php-format
67
+ msgid ""
68
+ "Clearfy has the features of the %s plugin. Please, deactivate %s to avoid "
69
+ "conflicts of plugins!"
70
+ msgstr ""
71
+ "Плагин Clearfy уже включает в себя функции плагина %s. Пожалуйста, "
72
+ "деактивируйте плагин %s, чтобы не создавать конфликтов!"
73
+
74
+ #: pages/class.pages.php:212
75
+ msgid "Upgrade to Clearfy Business"
76
+ msgstr "Перейти на Clearfy Бизнес"
77
+
78
+ #: pages/class.pages.php:213
79
+ msgid "Oops... Sorry for the inconvenience caused!"
80
+ msgstr "Упс... Мы приносим свои извинения за неудобства!"
81
+
82
+ #: pages/class.pages.php:214
83
+ msgid ""
84
+ "Complete multisite support is available in Clearfy Business and Clearfy "
85
+ "Business Revolution packages only!"
86
+ msgstr ""
87
+ "Полная поддержка мультисайтов доступна только в пакете Clearfy Бизнес и "
88
+ "Clearfy Бизнес Революция!"
89
+
90
+ #: pages/class.pages.php:215
91
+ msgid ""
92
+ "You can activate the plugin on each website and use it with zero "
93
+ "limitations. But you can’t save the plugin’s settings under the Super "
94
+ "Administrator role!"
95
+ msgstr ""
96
+ "Вы можете активировать плагин отдельно для каждого сайта и использовать его "
97
+ "без ограничений, но в режиме суперадминистратора, вы не можете сохранять "
98
+ "настройки плагина!"
99
+
100
+ #: pages/class.pages.php:217
101
+ msgid "Activate license "
102
+ msgstr "Активировать лицензию "
103
+
104
+ #: pages/class.pages.php:218
105
+ #, php-format
106
+ msgid "Upgrade to Clearfy Business for $%d"
107
+ msgstr "Обновить до Clearfy Бизнес за $%d"
108
+
109
+ #: pages/class.pages.php:273
110
+ msgid "MORE IN CLEARFY <span>BUSINESS</span>"
111
+ msgstr "ЛУЧШЕЕ В CLEARFY <span>БИЗНЕС</span>"
112
+
113
+ #: pages/class.pages.php:275
114
+ msgid "4 premium components now;"
115
+ msgstr "4 премиум компонента сейчас;"
116
+
117
+ #: pages/class.pages.php:276
118
+ msgid "40 new premium components within a year for the single price;"
119
+ msgstr "40 новых премиум компонентов в год по одной цене;"
120
+
121
+ #: pages/class.pages.php:277
122
+ msgid "Multisite support;"
123
+ msgstr "Поддержка мультисайтов;"
124
+
125
+ #: pages/class.pages.php:278
126
+ msgid "Advanced settings;"
127
+ msgstr "Дополнительные настройки;"
128
+
129
+ #: pages/class.pages.php:279
130
+ msgid "No ads;"
131
+ msgstr "Нет рекламы;"
132
+
133
+ #: pages/class.pages.php:280
134
+ msgid "Perfect support."
135
+ msgstr "Лучшая поддержка."
136
+
137
+ #: pages/class.pages.php:283
138
+ #, php-format
139
+ msgid "Upgrade for $%s"
140
+ msgstr "Обновиться за $%s"
141
+
142
+ #: pages/class.pages.php:299
143
+ msgid ""
144
+ "A neutral setting that can not harm your site, but you must be sure that you "
145
+ "need to use it."
146
+ msgstr ""
147
+ "Нейтральная настройка, которая не может нанести вред вашему сайту, но вы "
148
+ "должны быть уверены, что вам нужно ее использовать."
149
+
150
+ #: pages/class.pages.php:305
151
+ msgid ""
152
+ "When set this option, you must be careful. Plugins and themes may depend on "
153
+ "this function. You must be sure that you can disable this feature for the "
154
+ "site."
155
+ msgstr ""
156
+ "При включении этой настройки, вы должны быть осторожны. Некоторые плагины и "
157
+ "темы могут зависеть от этой функции. Вы должны быть уверены, что эту функцию "
158
+ "можно отключить для сайта."
159
+
160
+ #: pages/class.pages.php:311
161
+ msgid "Absolutely safe setting, We recommend to use."
162
+ msgstr "Абсолютно безопасная настройка, рекомендуем использовать."
163
+
164
+ #: pages/class.pages.php:316
165
+ msgid "Hover to the icon to get help for the feature you selected."
166
+ msgstr ""
167
+ "Наведите указатель мыши на значок, чтобы получить справку по выбранной "
168
+ "функции."
169
+
170
+ #: pages/class.pages.php:334
171
+ msgid "Do you want the plugin to improved and update?"
172
+ msgstr "Вы хотите, чтобы плагин улучшался и обновлялся?"
173
+
174
+ #: pages/class.pages.php:337
175
+ msgid ""
176
+ "Help the author, leave a review on wordpress.org. Thanks to feedback, I will "
177
+ "know that the plugin is really useful to you and is needed."
178
+ msgstr ""
179
+ "Помогите автору, оставьте отзыв на wordpress.org. Благодаря отзывам, я буду "
180
+ "знать, что плагин действительно полезен для вас и необходим."
181
+
182
+ #: pages/class.pages.php:339
183
+ msgid "And also write your ideas on how to extend or improve the plugin."
184
+ msgstr "А также напишите свои идеи о том, как расширить или улучшить плагин."
185
+
186
+ #: pages/class.pages.php:344
187
+ msgid "Go rate us and push ideas"
188
+ msgstr "Оставить отзыв или поделиться идеей"
189
+
190
+ #: pages/class.pages.php:356
191
+ msgid "Donation for plugin development"
192
+ msgstr "Пожертвования на развитие плагина"
193
+
194
+ #: pages/more-features.php:31
195
+ msgid "More features (<b>free</b>)"
196
+ msgstr "Дополнительно"
197
+
198
+ #: pages/more-features.php:40
199
+ msgid "install the ultimate version of the plugin for free!"
200
+ msgstr "установите полную версию плагина бесплатно!"
201
+
202
+ #: pages/more-features.php:51
203
+ msgid "Code cleaning"
204
+ msgstr "Очищает код"
205
+
206
+ #: pages/more-features.php:53
207
+ msgid "Clears the source code of the page from unused code."
208
+ msgstr "Очищает исходный код страницы от неиспользуемого кода."
209
+
210
+ #: pages/more-features.php:60
211
+ msgid "Improve SEO"
212
+ msgstr "Улучшает SEO"
213
+
214
+ #: pages/more-features.php:62
215
+ msgid ""
216
+ "Removes duplicate pages, closes external links, changes the headers of the "
217
+ "server."
218
+ msgstr ""
219
+ "Удаляет дубликаты страниц, закрывает внешние ссылки, изменяет заголовки "
220
+ "сервера."
221
+
222
+ #: pages/more-features.php:69
223
+ msgid "Site protection"
224
+ msgstr "Защита сайта"
225
+
226
+ #: pages/more-features.php:71
227
+ msgid "Enables and disables features that improve the protection of your site."
228
+ msgstr "Включает и отключает функции, которые улучшают защиту вашего сайта."
229
+
230
+ #: pages/more-features.php:78
231
+ msgid "Disable comments"
232
+ msgstr "Отключает комментарии"
233
+
234
+ #: pages/more-features.php:80
235
+ msgid "Disables comments on the entire site or on specific pages."
236
+ msgstr "Отключает комментарии на всем сайте или у определенных страниц."
237
+
238
+ #: pages/more-features.php:87
239
+ msgid "Manage updates"
240
+ msgstr "Менеджер обновлений"
241
+
242
+ #: pages/more-features.php:89
243
+ msgid ""
244
+ "Enables or disables automatically updates for plugins, themes and core. It "
245
+ "is also possible\n"
246
+ "\t\t\t\t\t\t\tto disable all updates."
247
+ msgstr ""
248
+ "Включает или отключает автоматические обновление плагинов, тем и ядра. Также "
249
+ "возможно\n"
250
+ "отключение всех обновлений."
251
+
252
+ #: pages/more-features.php:97
253
+ msgid "Manage widgets"
254
+ msgstr "Управление виджетами"
255
+
256
+ #: pages/more-features.php:99
257
+ msgid "Allows you to remove unused widgets."
258
+ msgstr "Позволяет удалить неиспользуемые виджеты."
259
+
260
+ #: pages/more-features.php:106
261
+ msgid "Speed Optimization"
262
+ msgstr "Оптимизация производительности"
263
+
264
+ #: pages/more-features.php:108
265
+ msgid ""
266
+ "Increases performance by disabling unused functions and reducing the number "
267
+ "of requests."
268
+ msgstr ""
269
+ "Повышает производительность, отключая неиспользуемые функции и уменьшая "
270
+ "количество запросов."
271
+
272
+ #: pages/more-features.php:115
273
+ msgid "Site privacy"
274
+ msgstr "Конфиденциальность сайта"
275
+
276
+ #: pages/more-features.php:117
277
+ msgid ""
278
+ "Allows you to hide the version of the site and plugins. Allows you to hide "
279
+ "your\n"
280
+ "\t\t\t\t\t\t\tWordPress."
281
+ msgstr ""
282
+ "Позволяет скрыть версию сайта и плагинов. Позволяет скрыть ваш\n"
283
+ "WordPress."
284
+
285
+ #: pages/more-features.php:125
286
+ msgid "Easy setup"
287
+ msgstr "Простая настройка"
288
+
289
+ #: pages/more-features.php:127
290
+ msgid ""
291
+ "In quick mode, you can easily configure the plugin according to your needs."
292
+ msgstr ""
293
+ "В быстром режиме вы можете легко настроить плагин в соответствии с вашими "
294
+ "потребностями."
295
+
296
+ #: pages/more-features.php:142
297
+ msgid "Get the ultimate plugin 100% FREE"
298
+ msgstr "Получить полную версию бесплатно на 100%."
299
+
300
+ #~ msgid "component"
301
+ #~ msgstr "компонент"
302
+
303
+ #~ msgid "plugin"
304
+ #~ msgstr "плагин"
305
+
306
+ #~ msgid "Site ptotection"
307
+ #~ msgstr "Защищает ваш сайт"
libs/factory/clearfy/pages/class-page-license.php CHANGED
@@ -11,7 +11,7 @@ if( !defined('ABSPATH') ) {
11
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
12
  * @since 2.0.7
13
  */
14
- class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase {
15
 
16
  /**
17
  * {@inheritdoc}
@@ -80,7 +80,7 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
80
 
81
  /**
82
  * @since 2.0.7
83
- * @var \WBCR\Factory_432\Premium\Provider
84
  */
85
  protected $premium;
86
 
@@ -98,7 +98,7 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
98
 
99
  /**
100
  * @since 2.0.7
101
- * @var \WBCR\Factory_432\Premium\Interfaces\License
102
  */
103
  protected $premium_license;
104
 
@@ -107,9 +107,9 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
107
 
108
  /**
109
  * {@inheritdoc}
110
- * @param Wbcr_Factory432_Plugin $plugin
111
  */
112
- public function __construct(Wbcr_Factory432_Plugin $plugin)
113
  {
114
  $this->plugin = $plugin;
115
 
@@ -136,8 +136,8 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
136
  {
137
  parent::assets($scripts, $styles);
138
 
139
- $this->styles->add(FACTORY_CLEARFY_224_URL . '/assets/css/license-manager.css');
140
- $this->scripts->add(FACTORY_CLEARFY_224_URL . '/assets/js/license-manager.js');
141
  }
142
 
143
  /**
@@ -147,7 +147,7 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
147
  */
148
  public function ajax_handler()
149
  {
150
- wbcr_factory_clearfy_224_check_license($this->plugin);
151
  }
152
 
153
  /**
@@ -157,7 +157,7 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
157
  {
158
  ?>
159
  <div id="wcl-license-wrapper"
160
- data-loader="<?php echo FACTORY_CLEARFY_224_URL . '/assets/img/loader.gif'; ?>"
161
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
162
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
163
  <?php $this->show_license_form(); ?>
@@ -263,11 +263,11 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
263
  if( $this->is_premium ):
264
  ?>
265
  <p style="margin-top: 10px;">
266
- <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_clearfy_224'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
267
  </p>
268
  <?php else: ?>
269
  <p style="margin-top: 10px;">
270
- <?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_clearfy_224'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
271
  </p>
272
  <?php endif;
273
  }
@@ -279,16 +279,16 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
279
  {
280
  ?>
281
  <div id="license-manager"
282
- class="factory-bootstrap-433 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
283
  <div>
284
- <h3><?php printf(__('Activate %s', 'wbcr_factory_clearfy_224'), $this->plan_name) ?></h3>
285
  <?php echo $this->get_plan_description() ?>
286
  </div>
287
  <br>
288
  <?php if( is_wp_error($notice) ) : ?>
289
  <div class="license-message <?= $this->get_license_type() ?>-license-message">
290
  <div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
291
- <h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_clearfy_224') ?></h4>
292
  </div>
293
  </div>
294
  <?php endif; ?>
@@ -298,20 +298,20 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
298
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
299
  class="purchase-premium" target="_blank" rel="noopener">
300
  <span class="btn btn-gold btn-inner-wrap">
301
- <?php _e('Upgrade to Premium', 'wbcr_factory_clearfy_224') ?>
302
  </span>
303
  </a>
304
- <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_clearfy_224'), $this->plugin->getPluginTitle()) ?></p>
305
  <?php endif; ?>
306
  <div class="license-details-block <?= $this->get_license_type() ?>-details-block">
307
  <?php if( $this->is_premium ): ?>
308
  <a data-action="deactivate" href="#"
309
  class="btn btn-default btn-small license-delete-button wcl-control-btn">
310
- <?php _e('Delete Key', 'wbcr_factory_clearfy_224') ?>
311
  </a>
312
  <a data-action="sync" href="#"
313
  class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
314
- <?php _e('Synchronization', 'wbcr_factory_clearfy_224') ?>
315
  </a>
316
  <?php endif; ?>
317
  <h3>
@@ -330,19 +330,19 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
330
  <?php endif; ?>
331
  <div class="license-key-description">
332
  <?php if( !$this->is_premium ): ?>
333
- <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_clearfy_224') ?></p>
334
  <?php else: ?>
335
- <p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_clearfy_224') ?></p>
336
  <?php endif; ?>
337
  <?php if( $this->is_premium && $this->premium_has_subscription ): ?>
338
  <p class="activate-trial-hint">
339
- <?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_clearfy_224') ?>
340
  </p>
341
  <?php endif; ?>
342
 
343
  <?php if( $this->get_license_type() == 'trial' ): ?>
344
  <p class="activate-error-hint">
345
- <?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_clearfy_224'), '') ?>
346
  </p>
347
  <?php endif; ?>
348
  </div>
@@ -350,19 +350,19 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
350
  <tr>
351
  <!--<td class="license-param license-param-domain">
352
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
353
- <span class="license-value-name"><?php _e('domain', 'wbcr_factory_clearfy_224') ?></span>
354
  </td>-->
355
  <td class="license-param license-param-days">
356
  <span class="license-value"><?= $this->get_plan() ?></span>
357
- <span class="license-value-name"><?php _e('plan', 'wbcr_factory_clearfy_224') ?></span>
358
  </td>
359
  <?php if( $this->is_premium ) : ?>
360
  <td class="license-param license-param-sites">
361
  <span class="license-value">
362
  <?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
363
- <?php _e('of', 'wbcr_factory_clearfy_224') ?>
364
  <?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
365
- <span class="license-value-name"><?php _e('active sites', 'wbcr_factory_clearfy_224') ?></span>
366
  </td>
367
  <?php endif; ?>
368
  <td class="license-param license-param-version">
@@ -372,8 +372,8 @@ class Wbcr_FactoryClearfy224_LicensePage extends Wbcr_FactoryClearfy224_PageBase
372
  <?php if( $this->is_premium ): ?>
373
  <td class="license-param license-param-days">
374
 
11
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
12
  * @since 2.0.7
13
  */
14
+ class Wbcr_FactoryClearfy227_LicensePage extends Wbcr_FactoryClearfy227_PageBase {
15
 
16
  /**
17
  * {@inheritdoc}
80
 
81
  /**
82
  * @since 2.0.7
83
+ * @var \WBCR\Factory_436\Premium\Provider
84
  */
85
  protected $premium;
86
 
98
 
99
  /**
100
  * @since 2.0.7
101
+ * @var \WBCR\Factory_436\Premium\Interfaces\License
102
  */
103
  protected $premium_license;
104
 
107
 
108
  /**
109
  * {@inheritdoc}
110
+ * @param Wbcr_Factory436_Plugin $plugin
111
  */
112
+ public function __construct(Wbcr_Factory436_Plugin $plugin)
113
  {
114
  $this->plugin = $plugin;
115
 
136
  {
137
  parent::assets($scripts, $styles);
138
 
139
+ $this->styles->add(FACTORY_CLEARFY_227_URL . '/assets/css/license-manager.css');
140
+ $this->scripts->add(FACTORY_CLEARFY_227_URL . '/assets/js/clearfy-license-manager.js');
141
  }
142
 
143
  /**
147
  */
148
  public function ajax_handler()
149
  {
150
+ wbcr_factory_clearfy_227_check_license($this->plugin);
151
  }
152
 
153
  /**
157
  {
158
  ?>
159
  <div id="wcl-license-wrapper"
160
+ data-loader="<?php echo FACTORY_CLEARFY_227_URL . '/assets/img/loader.gif'; ?>"
161
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
162
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
163
  <?php $this->show_license_form(); ?>
263
  if( $this->is_premium ):
264
  ?>
265
  <p style="margin-top: 10px;">
266
+ <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_clearfy_227'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
267
  </p>
268
  <?php else: ?>
269
  <p style="margin-top: 10px;">
270
+ <?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_clearfy_227'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
271
  </p>
272
  <?php endif;
273
  }
279
  {
280
  ?>
281
  <div id="license-manager"
282
+ class="factory-bootstrap-436 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
283
  <div>
284
+ <h3><?php printf(__('Activate %s', 'wbcr_factory_clearfy_227'), $this->plan_name) ?></h3>
285
  <?php echo $this->get_plan_description() ?>
286
  </div>
287
  <br>
288
  <?php if( is_wp_error($notice) ) : ?>
289
  <div class="license-message <?= $this->get_license_type() ?>-license-message">
290
  <div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
291
+ <h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_clearfy_227') ?></h4>
292
  </div>
293
  </div>
294
  <?php endif; ?>
298
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
299
  class="purchase-premium" target="_blank" rel="noopener">
300
  <span class="btn btn-gold btn-inner-wrap">
301
+ <?php _e('Upgrade to Premium', 'wbcr_factory_clearfy_227') ?>
302
  </span>
303
  </a>
304
+ <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_clearfy_227'), $this->plugin->getPluginTitle()) ?></p>
305
  <?php endif; ?>
306
  <div class="license-details-block <?= $this->get_license_type() ?>-details-block">
307
  <?php if( $this->is_premium ): ?>
308
  <a data-action="deactivate" href="#"
309
  class="btn btn-default btn-small license-delete-button wcl-control-btn">
310
+ <?php _e('Delete Key', 'wbcr_factory_clearfy_227') ?>
311
  </a>
312
  <a data-action="sync" href="#"
313
  class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
314
+ <?php _e('Synchronization', 'wbcr_factory_clearfy_227') ?>
315
  </a>
316
  <?php endif; ?>
317
  <h3>
330
  <?php endif; ?>
331
  <div class="license-key-description">
332
  <?php if( !$this->is_premium ): ?>
333
+ <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_clearfy_227') ?></p>
334
  <?php else: ?>
335
+ <p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_clearfy_227') ?></p>
336
  <?php endif; ?>
337
  <?php if( $this->is_premium && $this->premium_has_subscription ): ?>
338
  <p class="activate-trial-hint">
339
+ <?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_clearfy_227') ?>
340
  </p>
341
  <?php endif; ?>
342
 
343
  <?php if( $this->get_license_type() == 'trial' ): ?>
344
  <p class="activate-error-hint">
345
+ <?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_clearfy_227'), '') ?>
346
  </p>
347
  <?php endif; ?>
348
  </div>
350
  <tr>
351
  <!--<td class="license-param license-param-domain">
352
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
353
+ <span class="license-value-name"><?php _e('domain', 'wbcr_factory_clearfy_227') ?></span>
354
  </td>-->
355
  <td class="license-param license-param-days">
356
  <span class="license-value"><?= $this->get_plan() ?></span>
357
+ <span class="license-value-name"><?php _e('plan', 'wbcr_factory_clearfy_227') ?></span>
358
  </td>
359
  <?php if( $this->is_premium ) : ?>
360
  <td class="license-param license-param-sites">
361
  <span class="license-value">
362
  <?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
363
+ <?php _e('of', 'wbcr_factory_clearfy_227') ?>
364
  <?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
365
+ <span class="license-value-name"><?php _e('active sites', 'wbcr_factory_clearfy_227') ?></span>
366
  </td>
367
  <?php endif; ?>
368
  <td class="license-param license-param-version">
372
  <?php if( $this->is_premium ): ?>
373
  <td class="license-param license-param-days">
374