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

Version Description

(22.12.2020) = * Updated: subscription form will disappear from this moment if you have already subscribed. * Fixed: [Assets manager component] duplicate templates and scripts error when rendering html views of Assets manager.

Download this release

Release Info

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

Code changes from version 1.7.4 to 1.8.2

Files changed (177) hide show
  1. admin/activation.php +22 -19
  2. admin/ajax/configurate.php +1 -1
  3. admin/ajax/import-settings.php +2 -2
  4. admin/assets/css/general.css +2 -8
  5. admin/assets/css/general.css.map +0 -1
  6. admin/assets/css/setup/page-setup.css +99 -99
  7. admin/assets/css/setup/step-optimize-images.css +673 -673
  8. admin/assets/img/cache-icon-128x128.png +0 -0
  9. admin/assets/js/general.js +21 -17
  10. admin/assets/js/license-manager.js +4 -4
  11. admin/assets/js/widgets.js +37 -0
  12. admin/boot.php +11 -12
  13. admin/includes/compatibility.php +4 -4
  14. admin/includes/sidebar-widgets.php +81 -80
  15. admin/pages/class-page.php +8 -8
  16. admin/pages/class-pages-advanced.php +1 -1
  17. admin/pages/class-pages-clearfy-settings.php +2 -2
  18. admin/pages/class-pages-components-license.php +5 -5
  19. admin/pages/class-pages-components.php +10 -1
  20. admin/pages/class-pages-defence-titan.php +3 -3
  21. admin/pages/class-pages-defence.php +2 -2
  22. admin/pages/class-pages-hide-login-page.php +3 -3
  23. admin/pages/class-pages-image-optimization.php +3 -3
  24. admin/pages/class-pages-license.php +3 -3
  25. admin/pages/class-pages-performance-google.php +1 -1
  26. admin/pages/class-pages-performance.php +233 -227
  27. admin/pages/class-pages-quick-start.php +2 -2
  28. admin/pages/class-pages-seo-double-pages.php +1 -1
  29. admin/pages/class-pages-seo.php +1 -1
  30. admin/pages/class-pages-widgets.php +1 -1
  31. admin/pages/setup/class-pages-setup.php +11 -4
  32. admin/pages/setup/steps/class-step-congratulation.php +2 -2
  33. admin/pages/setup/steps/class-step-default.php +5 -5
  34. admin/pages/setup/steps/class-step-google-page-speed-after.php +2 -2
  35. admin/pages/setup/steps/class-step-google-page-speed-before.php +2 -2
  36. admin/pages/setup/steps/class-step-optimize-images.php +4 -4
  37. admin/pages/setup/steps/class-step-plugins.php +2 -2
  38. admin/pages/setup/steps/class-step-setting-seo-optimize.php +1 -1
  39. admin/pages/setup/steps/class-step-setting-speed-optimize.php +9 -2
  40. clearfy.php +17 -12
  41. components/assets-manager/admin/activation.php +2 -2
  42. components/assets-manager/admin/ajax/save-settings.php +1 -1
  43. components/assets-manager/admin/boot.php +52 -70
  44. components/assets-manager/admin/pages/class-pages-more-features.php +1 -1
  45. components/assets-manager/admin/pages/class-pages-settings.php +55 -50
  46. components/assets-manager/assets/css/assets-conditions.css +175 -174
  47. components/assets-manager/assets/css/assets-manager.css +1209 -1208
  48. components/assets-manager/gonzales.php +45 -44
  49. components/assets-manager/includes/class-plugin.php +3 -3
  50. components/assets-manager/includes/classes/class-assets-manager-global.php +514 -481
  51. components/assets-manager/includes/classes/class-views.php +4 -4
  52. components/assets-manager/migrations/010100.php +1 -1
  53. components/assets-manager/migrations/010108.php +1 -1
  54. components/assets-manager/migrations/020005.php +1 -1
  55. components/assets-manager/mu-plugins/assets-manager.php +1 -1
  56. components/assets-manager/readme.txt +8 -0
  57. components/comments-plus/admin/boot.php +1 -1
  58. components/comments-plus/admin/pages/class-page-comments.php +4 -3
  59. components/comments-plus/admin/pages/class-page-delete-comments.php +6 -6
  60. components/comments-plus/admin/pages/class-page-more-features.php +1 -1
  61. components/comments-plus/comments-plus.php +44 -42
  62. components/comments-plus/includes/class-plugin.php +3 -3
  63. components/comments-plus/includes/classes/class-configurate-comments.php +3 -3
  64. components/comments-plus/readme.txt +5 -1
  65. components/cyrlitera/admin/activation.php +2 -2
  66. components/cyrlitera/admin/boot.php +1 -1
  67. components/cyrlitera/admin/pages/class-page-cyrlitera.php +5 -4
  68. components/cyrlitera/admin/pages/class-page-more-features.php +1 -1
  69. components/cyrlitera/cyrlitera.php +45 -43
  70. components/cyrlitera/includes/class-plugin.php +3 -3
  71. components/cyrlitera/includes/classes/class-configurate-cyrlitera.php +2 -2
  72. components/cyrlitera/migrations/010004.php +1 -1
  73. components/cyrlitera/readme.txt +5 -1
  74. components/disable-admin-notices/admin/assets/css/general.css +50 -50
  75. components/disable-admin-notices/admin/assets/css/notifications-panel.css +77 -76
  76. components/disable-admin-notices/admin/assets/css/page.css +8 -8
  77. components/disable-admin-notices/admin/assets/css/settings.css +219 -219
  78. components/disable-admin-notices/admin/boot.php +1 -1
  79. components/disable-admin-notices/admin/class-page-basic.php +4 -4
  80. components/disable-admin-notices/admin/options.php +2 -2
  81. components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php +3 -3
  82. components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php +3 -3
  83. components/disable-admin-notices/admin/pages/class-pages-license.php +3 -3
  84. components/disable-admin-notices/admin/pages/class-pages-notices.php +3 -3
  85. components/disable-admin-notices/admin/pages/class-pages-settings.php +6 -6
  86. components/disable-admin-notices/disable-admin-notices.php +57 -51
  87. components/disable-admin-notices/includes/class-plugin.php +5 -4
  88. components/disable-admin-notices/includes/classes/class-configurate-notices.php +1 -1
  89. components/disable-admin-notices/languages/disable-admin-notices.pot +223 -0
  90. components/disable-admin-notices/migrations/010007.php +1 -1
  91. components/disable-admin-notices/readme.txt +5 -1
  92. components/ga-cache/admin/activation.php +2 -2
  93. components/ga-cache/admin/boot.php +102 -100
  94. components/ga-cache/admin/options.php +1 -1
  95. components/ga-cache/admin/pages/class-pages-general-settings.php +3 -3
  96. components/ga-cache/admin/pages/class-pages-more-features.php +1 -1
  97. components/ga-cache/includes/class-plugin.php +3 -3
  98. components/ga-cache/includes/classes/class-configurate-ga.php +1 -1
  99. components/ga-cache/migrations/030002.php +1 -1
  100. components/ga-cache/readme.txt +5 -1
  101. components/ga-cache/simple_google_analytics.php +43 -41
  102. components/html-minify/admin/pages/class-pages-settings.php +3 -3
  103. components/html-minify/html-minify.php +7 -7
  104. components/html-minify/includes/class-plugin.php +3 -3
  105. components/minify-and-combine/admin/pages/class-pages-settings.php +3 -3
  106. components/minify-and-combine/includes/class-plugin.php +3 -3
  107. components/minify-and-combine/includes/classes/class-cache.php +1 -1
  108. components/minify-and-combine/minify-and-combine.php +7 -7
  109. components/updates-manager/admin/activation.php +2 -2
  110. components/updates-manager/admin/assets/css/general.css +156 -155
  111. components/updates-manager/admin/assets/css/plugins.css +33 -32
  112. components/updates-manager/admin/assets/css/themes.css +21 -20
  113. components/updates-manager/admin/assets/js/ajax-components.js +4 -4
  114. components/updates-manager/admin/boot.php +1 -1
  115. components/updates-manager/admin/includes/class-abstract-filters.php +1 -1
  116. components/updates-manager/admin/pages/class-page-advanced.php +5 -5
  117. components/updates-manager/admin/pages/class-page-more-features.php +1 -1
  118. components/updates-manager/admin/pages/class-page-plugins.php +5 -5
  119. components/updates-manager/admin/pages/class-page-themes.php +4 -4
  120. components/updates-manager/admin/pages/class-page-updates.php +6 -5
  121. components/updates-manager/includes/class-plugin.php +3 -3
  122. components/updates-manager/includes/classes/class-configurate-updates.php +1 -1
  123. components/updates-manager/migrations/010008.php +1 -1
  124. components/updates-manager/readme.txt +5 -1
  125. components/updates-manager/webcraftic-updates-manager.php +44 -42
  126. includes/boot.php +117 -115
  127. includes/class.plugin.php +6 -5
  128. includes/classes/class.configurate-advanced.php +1 -1
  129. includes/classes/class.configurate-google-performance.php +1 -1
  130. includes/classes/class.configurate-performance.php +1 -1
  131. includes/classes/class.configurate-privacy.php +1 -1
  132. includes/classes/class.configurate-security.php +1 -1
  133. includes/classes/class.configurate-seo.php +1 -1
  134. libs/factory/adverts/boot.php +12 -12
  135. libs/factory/adverts/includes/class-base.php +6 -6
  136. libs/factory/adverts/includes/class-dashboard-widget.php +4 -4
  137. libs/factory/adverts/includes/class-rest-request.php +4 -4
  138. libs/factory/adverts/langs/{wbcr_factory_adverts_114-ru_RU.mo → wbcr_factory_adverts_119-ru_RU.mo} +0 -0
  139. libs/factory/adverts/langs/{wbcr_factory_adverts_114-ru_RU.po → wbcr_factory_adverts_119-ru_RU.po} +0 -0
  140. libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css +2 -2
  141. libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css +2 -2
  142. libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css +2 -2
  143. libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css +3 -3
  144. libs/factory/bootstrap/assets/css-min/bootstrap.datepicker.min.css +1 -1
  145. libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css +2 -2
  146. libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css +2 -2
  147. libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css +2 -2
  148. libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css +2 -2
  149. libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css +2 -2
  150. libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css +2 -2
  151. libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css +2 -2
  152. libs/factory/bootstrap/assets/css-min/control.checkbox.min.css +2 -2
  153. libs/factory/bootstrap/assets/css-min/control.dropdown.min.css +2 -2
  154. libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css +2 -2
  155. libs/factory/bootstrap/assets/css-min/holder.more-link.min.css +2 -2
  156. libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js +2 -2
  157. libs/factory/bootstrap/assets/js-min/bootstrap.tooltip.min.js +1 -1
  158. libs/factory/bootstrap/assets/js-min/control.checkbox.min.js +2 -2
  159. libs/factory/bootstrap/assets/js-min/control.dropdown.min.js +2 -2
  160. libs/factory/bootstrap/assets/js-min/control.list.min.js +2 -2
  161. libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js +2 -2
  162. libs/factory/bootstrap/boot.php +9 -9
  163. libs/factory/bootstrap/includes/functions.php +10 -10
  164. libs/factory/bootstrap/package-lock.json +1810 -0
  165. libs/factory/clearfy/assets/css/clearfy-base.css +103 -24
  166. libs/factory/clearfy/assets/css/clearfy-base.css.map +1 -1
  167. libs/factory/clearfy/assets/css/clearfy-base.less +96 -0
  168. libs/factory/clearfy/assets/css/components.css +24 -24
  169. libs/factory/clearfy/assets/css/libs/autocomplete.css +9 -9
  170. libs/factory/clearfy/assets/css/page-setup.css +102 -102
  171. libs/factory/clearfy/assets/js/clearfy-globals.js +26 -26
  172. libs/factory/clearfy/assets/js/clearfy-license-manager.js +4 -4
  173. libs/factory/clearfy/assets/js/clearfy-search-options.js +2 -2
  174. libs/factory/clearfy/assets/js/clearfy-widgets.js +62 -0
  175. libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js +1 -1
  176. libs/factory/clearfy/boot.php +25 -25
  177. libs/factory/clearfy/includes/ajax-handlers.php +67 -11
admin/activation.php CHANGED
@@ -4,25 +4,26 @@
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
 
11
  // Exit if accessed directly
12
- if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_Activation extends Wbcr_Factory436_Activator {
17
 
18
  /**
19
  * Runs activation actions.
20
  *
21
  * @since 1.0.0
22
  */
23
- public function activate() {
24
- if ( ! function_exists( 'is_plugin_active' ) ) {
25
- require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
 
26
  }
27
  // Deactivate components for code minification, if alternative plugins are installed
28
  // -------------
@@ -35,37 +36,37 @@ class WCL_Activation extends Wbcr_Factory436_Activator {
35
  ];
36
 
37
  $is_activate_minify_js = true;
38
- foreach ( $minify_js_plugins as $m_plugin ) {
39
 
40
- if ( is_plugin_active( $m_plugin ) ) {
41
  $is_activate_minify_js = false;
42
  }
43
  }
44
 
45
- if ( ! $is_activate_minify_js ) {
46
- WCL_Plugin::app()->deactivateComponent( 'minify_and_combine' );
47
- WCL_Plugin::app()->deactivateComponent( 'html_minify' );
48
  }
49
 
50
  // -------------
51
  // Deactivate yoast component features if it is not activated
52
  // -------------
53
 
54
- if ( ! defined( 'WPSEO_VERSION' ) ) {
55
- WCL_Plugin::app()->deactivateComponent( 'yoast_seo' );
56
  }
57
 
58
  // Deactivate cyrlitera component for all languages except selected
59
- if ( ! in_array( get_locale(), [ 'ru_RU', 'bel', 'kk', 'uk', 'bg', 'bg_BG', 'ka_GE' ] ) ) {
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
  */
68
- do_action( 'wbcr/clearfy/activated' );
69
  }
70
 
71
  /**
@@ -73,7 +74,9 @@ class WCL_Activation extends Wbcr_Factory436_Activator {
73
  *
74
  * @since 1.0.0
75
  */
76
- public function deactivate() {
 
 
77
  /*$dependent = 'clearfy_package/clearfy-package.php';
78
 
79
  require_once ABSPATH . '/wp-admin/includes/plugin.php';
@@ -85,7 +88,7 @@ class WCL_Activation extends Wbcr_Factory436_Activator {
85
  /**
86
  * @since 1.4.1
87
  */
88
- do_action( 'wbcr/clearfy/deactivated' );
89
  }
90
 
91
  /**
4
  *
5
  * @author Webcraftic <wordpress.webraftic@gmail.com>
6
  * @copyright (c) 09.09.2017, Webcraftic
7
+ * @see Factory441_Activator
8
  * @version 1.0
9
  */
10
 
11
  // Exit if accessed directly
12
+ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
+ class WCL_Activation extends Wbcr_Factory441_Activator {
17
 
18
  /**
19
  * Runs activation actions.
20
  *
21
  * @since 1.0.0
22
  */
23
+ public function activate()
24
+ {
25
+ if( !function_exists('is_plugin_active') ) {
26
+ require_once(ABSPATH . 'wp-admin/includes/plugin.php');
27
  }
28
  // Deactivate components for code minification, if alternative plugins are installed
29
  // -------------
36
  ];
37
 
38
  $is_activate_minify_js = true;
39
+ foreach($minify_js_plugins as $m_plugin) {
40
 
41
+ if( is_plugin_active($m_plugin) ) {
42
  $is_activate_minify_js = false;
43
  }
44
  }
45
 
46
+ if( !$is_activate_minify_js ) {
47
+ WCL_Plugin::app()->deactivateComponent('minify_and_combine');
48
+ WCL_Plugin::app()->deactivateComponent('html_minify');
49
  }
50
 
51
  // -------------
52
  // Deactivate yoast component features if it is not activated
53
  // -------------
54
 
55
+ if( !defined('WPSEO_VERSION') ) {
56
+ WCL_Plugin::app()->deactivateComponent('yoast_seo');
57
  }
58
 
59
  // Deactivate cyrlitera component for all languages except selected
60
+ if( !in_array(get_locale(), ['ru_RU', 'bel', 'kk', 'uk', 'bg', 'bg_BG', 'ka_GE']) ) {
61
+ WCL_Plugin::app()->deactivateComponent('cyrlitera');
62
  }
63
 
64
+ update_option($this->plugin->getOptionName('setup_wizard'), 1);
65
 
66
  /**
67
  * @since 1.4.1
68
  */
69
+ do_action('wbcr/clearfy/activated');
70
  }
71
 
72
  /**
74
  *
75
  * @since 1.0.0
76
  */
77
+ public function deactivate()
78
+ {
79
+
80
  /*$dependent = 'clearfy_package/clearfy-package.php';
81
 
82
  require_once ABSPATH . '/wp-admin/includes/plugin.php';
88
  /**
89
  * @since 1.4.1
90
  */
91
+ do_action('wbcr/clearfy/deactivated');
92
  }
93
 
94
  /**
admin/ajax/configurate.php CHANGED
@@ -57,7 +57,7 @@
57
  }
58
 
59
  if( !$flush_redirect ) {
60
- WbcrFactoryClearfy227_Helpers::flushPageCache();
61
  }
62
 
63
  do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
57
  }
58
 
59
  if( !$flush_redirect ) {
60
+ WbcrFactoryClearfy232_Helpers::flushPageCache();
61
  }
62
 
63
  do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
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 = 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,7 +140,7 @@
140
  //$send_data['update_notice'] = $package_plugin->getUpdateNotice();
141
 
142
  // Сбрасываем кеш для кеширующих плагинов
143
- WbcrFactoryClearfy227_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 = WbcrFactoryClearfy232_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
+ WbcrFactoryClearfy232_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-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,12 +325,6 @@
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
  }
33
  //float: right;
34
  }*/
35
  }
36
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-page-header {
37
  height: 80px !important;
38
  }
39
+ #WBCR .wbcr-factory-pages-440-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-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode:hover {
329
  background-color: #fddba8;
330
  }
admin/assets/css/general.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["general.less"],"names":[],"mappings":";;;;;AAMA;EACE,aAAA;EACA,kBAAA;EACA,MAAA;EACA,WAAA;EACA,QAAA;EACA,SAAA;EACA,oCAAA;EACA,UAAA;;AAGF;;;;;;;;;;;;;;;;;;;;AAAA,KAIE,iDACE;EACE,uBAAA;;AANN,KAIE,iDACE,0BAGE,0BACE;EACE,qBAAA;;AAVV,KAmBE;EACE,yBAAA;EACA,sBAAA;EACA,6BAAA;;AAEA,KALF,KAKI;EACA,yBAAA;EACA,qBAAA;;AA1BN,KA8BE;EACE,kBAAA;EACA,mBAAA;EACA,kBAAA;EACA,2CAAA;EACA,8CAAA;;AAEA,KAPF,qBAOG;EACC,SAAS,EAAT;EACA,cAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,YAAA;EACA,6EAAA;;AAGF,KAlBF,qBAkBG;EACC,cAAA;EACA,yBAAA;;AAGF,KAvBF,qBAuBG;EACC,cAAA;EACA,yBAAA;;AAvDN,KA2DE;AA3DF,KA2DyB;EACrB,qBAAA;EACA,mBAAA;;AA7DJ,KAgEE;EACE,WAAA;;AAjEJ,KA6EE,+BACE;EACE,kBAAA;EACA,qBAAA;EACA,iBAAA;EACA,mBAAA;EACA,UAAA;EACA,kBAAA;EACA,aAAA;EACA,gBAAA;EACA,2BAAA;;AAEA,KAZJ,+BACE,2BAWI;EACA,kBAAA;EACA,iBAAA;EACA,gBAAA;;AA5FR,KAqGE,kCACE;EACE,8BAAA;;AAvGN,KAqGE,kCAKE;EACE,8BAAA;;AA3GN,KAqGE,kCASE,yBACE;EACE,oBAAA;EACA,WAAA;;AAEA,KAdN,kCASE,yBACE,0BAII;EACA,WAAA;;AApHV,KA0HE;EACE,kBAAA;EACA,aAAA;EACA,mBAAA;EACA,cAAA;EACA,kBAAA;;AAEA,KAPF,6BAOG;AAAQ,KAPX,6BAOY;EACR,YAAA;EACA,UAAA;EACA,yBAAA;EACA,SAAS,GAAT;EACA,SAAA;EACA,QAAA;EACA,kBAAA;EACA,oBAAA;;AAGF,KAlBF,6BAkBG;EACC,oCAAA;EACA,4BAAA;EACA,kBAAA;;AAGF,KAxBF,6BAwBG;EACC,oCAAA;EACA,4BAAA;EACA,kBAAA;;AArJN,KAyJE;EACE,mBAAA;EACA,yBAAA;EACA,cAAA;EACA,sCAAA;;AAEA,KANF,2BAMG;EACC,aAAA;;AAhKN,KAyJE,2BAUE;EACE,eAAA;;AApKN,KAyJE,2BAcE;EACE,cAAA;EACA,eAAA;;AAzKN,KAsLE,+BAEE;EACE,gBAAA;;AAzLN,KA6LE,yCACE;EACE,kBAAA;EACA,YAAA;EACA,aAAA;;AAjMN,KA6LE,yCACE,0BAKE;EACE,UAAA;EACA,kBAAA;EACA,QAAA;EACA,SAAA;EACA,wBAAA;EACA,YAAA;EACA,YAAA;EACA,eAAA;EACA,iBAAA;EACA,kBAAA;EACA,cAAA;EACA,mBAAA;EACA,cAAA;EACA,gCAAA;EACA,4BAAA;EACA,2BAAA;EACA,yBAAA;EACA,kBAAA;EACA,aAAA;EAEA,kCAAA;EACA,+BAAA;EACA,6BAAA;EACA,0BAAA;;AAGF,KAjCJ,yCACE,0BAgCG,MAAO;EACN,cAAA;EACA,UAAA;;AAGF,KAtCJ,yCACE,0BAqCG,MAAO,6BAA6B;EACnC,YAAA;;AApOR,KA6LE,yCACE,0BAyCE,6BACE;EACE,WAAA;EAEA,iCAAA;EACA,8BAAA;EACA,4BAAA;EACA,yBAAA;;AA9OV,KAoPE;AApPF,KAoPwC;EACpC,aAAA;EACA,kBAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;;AA1PJ,KA6PE;EACE,mBAAA;EACA,gCAAA;EACA,cAAA;;AAhQJ,KAmQE;EACE,mBAAA;EACA,gCAAA;EACA,cAAA;;AAtQJ,KAyQE;EACE,oBAAA;;AA1QJ,KA6QE;EACE,eAAA;EACA,iBAAA;;AA/QJ,KA6QE,4BAIE;EACE,cAAA;EACA,WAAA;EACA,gBAAA;EACA,cAAA;;AArRN,KA6QE,4BAWE;EACE,WAAA;EACA,sBAAA;EACA,aAAA;EACA,oBAAA;EACA,SAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EACA,sBAAA;EACA,yBAAA;EACA,yBAAA;EACA,WAAA;EACA,6BAAA;EACA,wBAAA;;AAtSN,KA6QE,4BA4BE;EACE,qBAAA;EACA,gBAAA;;AA3SN,KAgTE;EAEE,aAAA;;AAlTJ,KAgTE,+BAIE;EACE,kBAAA;EACA,kBAAA;EACA,kBAAA;EACA,eAAA;EACA,yBAAA;EACA,mBAAA;EACA,cAAA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,wCAAA;EAEA,qCAAA;EACA,kCAAA;EACA,gCAAA;EACA,6BAAA;;;;;;;;;;;AAEA,KAvBJ,+BAIE,qBAmBG;EACC,cAAA;EACA,WAAA;;AAzUR,KAgTE,+BAIE,qBAwBE;AA5UN,KAgTE,+BAIE,qBAwBO;EAEH,eAAA;;AA9UR,KAgTE,+BAIE,qBA6BE;AAjVN,KAgTE,+BAIE,qBA6BO;AAjVX,KAgTE,+BAIE,qBA6BmB;EACf,qBAAA;;AAlVR,KAgTE,+BAIE,qBAiCE;EACE,iBAAA;EACA,eAAA;;AAGF,KA1CJ,+BAIE,qBAsCG;;;;;;;;;;;;AAAD,KA1CJ,+BAIE,qBAsCG,oBAYC;EACE,yBAAA;EACA,cAAA;EACA,eAAA;;AAIJ,KA7DJ,+BAIE,qBAyDG,+BACC;EACE,YAAA;;AAFJ,KA7DJ,+BAIE,qBAyDG,+BACC,kCAGE;EACE,YAAA;EACA,yBAAA;EACA,cAAA;;AAEA,KAtEV,+BAIE,qBAyDG,+BACC,kCAGE,mCAKG;EACC,yBAAA;;AAMR,KA7EJ,+BAIE,qBAyEG,qCACC;AADF,KA7EJ,+BAIE,qBAyEG,qCACM,WAAU;EACb,cAAA;;AAFJ,KA7EJ,+BAIE,qBAyEG,qCAKC;EACE,yBAAA;EACA,cAAA;;AAEA,KAtFR,+BAIE,qBAyEG,qCAKC,mCAIG;EACC,yBAAA;;AAeN,KAtGJ,+BAIE,qBAkGG,qBACC,kCACE;EACE,gBAAgB,wDAAhB;EACA,yBAAA;EACA,YAAA;EACA,0BAAA;;AA5ZZ,KAgTE,+BAIE,qBA6GE;EACE,kBAAA;EAGA,MAAA;EACA,WAAA;EACA,SAAA;EACA,YAAA;EAEA,iBAAA;EACA,qCAAA;EACA,kCAAA;EACA,gCAAA;EACA,6BAAA;;AA9aR,KAgTE,+BAIE,qBA6GE,kCAeE;EACE,qBAAA;EACA,YAAA;EACA,gBAAA;EACA,SAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;EACA,eAAA;EACA,kBAAA;EACA,aAAA;EACA,yBAAA;EACA,cAAA;;;;;;;;;;;;;;;;;;AAEA,KA9IR,+BAIE,qBA6GE,kCAeE,OAcG;EACC,yBAAA;;AAoBF,KAnKR,+BAIE,qBA6GE,kCAeE,OAmCG;EACC,8CAAA;;AApdZ,KA2dE;EACE,aAAA;EACA,eAAA;EACA,QAAA;EACA,SAAA;EACA,YAAA;EACA,aAAA;EACA,yBAAA;EACA,aAAA;EACA,qCAAA;EACA,sCAAA;EACA,2CAAA;EACA,WAAA;;AAveJ,KA2dE,4BAcE;EACE,eAAA;EACA,kBAAA;EACA,iBAAA;EACA,eAAA;;AA7eN,KA2dE,4BAqBE;EACE,aAAA;EACA,kBAAA;;AAlfN,KA2dE,4BA0BE;EACE,aAAA;EACA,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,mBAAA;EACA,cAAA;;AAOF,KAxCF,4BAwCG,qCACC;EACE,cAAA;;AAIJ,KA9CF,4BA8CG;EACC,aAAA;EACA,yBAAA;;AAFF,KA9CF,4BA8CG,mCAIC;EACE,cAAA;EACA,cAAA;;AA/gBR,KA2dE,4BAwDE;EACE,kBAAA;EACA,aAAA;;AArhBN,KA2dE,4BAwDE,4BAIE;EACE,qBAAA;EACA,iBAAA;EACA,gBAAA;EACA,SAAA;EACA,iBAAA;;AAEA,KAnEN,4BAwDE,4BAIE;AAOK,KAnET,4BAwDE,4BAIE,OAOM;EACF,qBAAA;EACA,2BAAA;;AAGF,KAxEN,4BAwDE,4BAIE,OAYG;EACC,mBAAA;EACA,cAAA;;AAGF,KA7EN,4BAwDE,4BAIE,OAiBG;EACC,mBAAA;EACA,cAAA;;AAQV,mBAAsC;EACpC,KACE;IACE,gBAAA;IACA,gBAAA;;EAHJ,KAME;EANF,KAMyB;IACrB,WAAA;;EAPJ,KAUE;IACE,gBAAA;;;AAKN,mBAAqC;EACnC,KACE;IACE,eAAA;;EAFJ,KAKE;EALF,KAKyB;IACrB,WAAA;;EANJ,KASE;IACE,WAAA;IACA,eAAA;;;AAKN,mBAAqC;EACnC,KACE,+BACE,qBAAqB;IACnB,uBAAA","file":"general.css"}
 
admin/assets/css/setup/page-setup.css CHANGED
@@ -1,99 +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
- }
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/step-optimize-images.css CHANGED
@@ -1,673 +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
- }*/
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/img/cache-icon-128x128.png ADDED
Binary file
admin/assets/js/general.js CHANGED
@@ -13,7 +13,7 @@
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;
@@ -29,14 +29,14 @@
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
  });*/
@@ -115,13 +115,13 @@
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,12 +138,12 @@
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');
@@ -211,12 +211,12 @@
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,7 +231,7 @@
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,15 +268,15 @@
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
  }
@@ -285,10 +285,10 @@
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,14 +303,18 @@
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
  }
310
  };
311
 
 
312
  $(document).ready(function() {
313
  general.init();
314
  });
315
 
 
 
 
316
  })(jQuery);
13
  this.qickStartAssistent();
14
  this.importOptions();
15
 
16
+ /*$.wfactory_441.hooks.add('core/components/pre_activate', function(button) {
17
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
18
  if( !$('#WBCR').length ) {
19
  return false;
29
  }
30
  });*/
31
 
32
+ /*$.wfactory_441.hooks.add('core/components/updated', function(button, data, response) {
33
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
34
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_232) ) {
35
  return false;
36
  }
37
 
38
  if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
39
+ $.wbcr_factory_clearfy_232.app.showNotice(response.data.need_rewrite_rules, 'warning');
40
  }
41
 
42
  });*/
115
  * Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
116
  * результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
117
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
118
+ * $.wbcr_factory_clearfy_232.hooks.add('wbcr/factory_clearfy_232/updated',
119
  * function(noticeId) {});
120
  * @param {string} modeName - имя режима конфигурации
121
  * @param {object} data
122
  */
123
 
124
+ $.wbcr_factory_clearfy_232.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_232.hooks.add('wbcr/factory_clearfy_232/updated', function(noticeId)
142
  * {});
143
  * @param {string} modeName - имя режима конфигурации
144
  * @param {object} data
145
  */
146
+ $.wbcr_factory_clearfy_232.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
147
 
148
  if( modeName !== 'reset' ) {
149
  switcher.addClass('wbcr-clearfy-active');
211
  $this = $(this);
212
 
213
  if( !settings ) {
214
+ $.wbcr_factory_clearfy_232.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_232.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_232.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_232.app.showNotice(data.error_message, 'danger');
272
  } else {
273
  if( void 0 !== wbcr_clearfy_ajax ) {
274
+ noticeId = $.wbcr_factory_clearfy_232.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
275
  }
276
  }
277
 
278
  setTimeout(function() {
279
+ $.wbcr_factory_clearfy_232.app.hideNotice(noticeId);
280
  }, 5000);
281
  return;
282
  }
285
 
286
  if( !request_data.flush_redirect ) {
287
  if( void 0 !== wbcr_clearfy_ajax ) {
288
+ noticeId = $.wbcr_factory_clearfy_232.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
289
 
290
  setTimeout(function() {
291
+ $.wbcr_factory_clearfy_232.app.hideNotice(noticeId);
292
  }, 5000);
293
  }
294
  return;
303
  console.log(xhr.responseText);
304
  console.log(thrownError);
305
 
306
+ var noticeId = $.wbcr_factory_clearfy_232.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
307
  }
308
  });
309
  }
310
  };
311
 
312
+
313
  $(document).ready(function() {
314
  general.init();
315
  });
316
 
317
+
318
+
319
+
320
  })(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_227.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_227.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_227.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_227.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_232.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_232.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_232.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_232.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
86
 
87
  allNotices.push(noticeId);
88
  }
admin/assets/js/widgets.js ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(function($) {
2
+
3
+ function subscribeWidget() {
4
+ var form = $('#wbcr-factory-subscribe-widget-form');
5
+ form.submit(function(ev) {
6
+ ev.preventDefault();
7
+ var agree = form.find('[name=agree_terms]:checked');
8
+ if( agree.length === 0 ) {
9
+ return;
10
+ }
11
+
12
+ $.ajax({
13
+ method: "POST",
14
+ url: "https://clearfy.pro/wp-json/mailerlite/v1/subscribe/",
15
+ data: {email: $('.wbcr-factory-subscribe-widget-field').val()},
16
+ success: function(data) {
17
+ if( !data.message ) {
18
+ if( data.subscribed ) {
19
+ $(".wbcr-factory-subscribe-widget-msg.success").show();
20
+ } else {
21
+ $(".wbcr-factory-subscribe-widget-msg.success2").show();
22
+ }
23
+ } else {
24
+ alert('Something went wrong :(');
25
+ console.error(data.message);
26
+ }
27
+ },
28
+ error: function(error) {
29
+ console.log(error);
30
+ }
31
+ });
32
+ });
33
+ }
34
+
35
+ subscribeWidget();
36
+
37
+ });
admin/boot.php CHANGED
@@ -33,7 +33,7 @@ add_action('admin_init', function () {
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 ) {
@@ -67,8 +67,8 @@ add_action('wbcr/factory/pages/impressive/header', function ($plugin_name) {
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
  {
@@ -110,7 +110,7 @@ add_action('wbcr/factory/pages/impressive/plugin_title', 'wbcr_clearfy_branding'
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
 
@@ -119,7 +119,7 @@ add_action('wbcr/factory/pages/impressive/plugin_title', 'wbcr_clearfy_branding'
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,7 +144,7 @@ add_action('flush_rewrite_rules_hard', 'wbcr_clearfy_flush_rewrite_rules');
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,7 +167,7 @@ add_action('wbcr/factory/pages/impressive/after_form_save', 'wbcr_clearfy_after_
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) {
@@ -242,8 +242,7 @@ add_action('wp_dashboard_setup', function () {
242
  }
243
  }, 9999);
244
 
245
-
246
-
247
-
248
-
249
-
33
  if( WCL_Helper::is_need_show_setup_page() ) {
34
  try {
35
  $redirect_url = '';
36
+ if( class_exists('Wbcr_FactoryPages440') ) {
37
  $redirect_url = WCL_Plugin::app()->getPluginPageUrl('setup', ['wclearfy_setup_page_viewed' => 1]);
38
  }
39
  if( $redirect_url ) {
67
 
68
  /**
69
  * @param $form
70
+ * @param Wbcr_Factory441_Plugin $plugin
71
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $obj
72
  */
73
  function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
74
  {
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-232-global'
114
  ], WCL_Plugin::app()->getPluginVersion());
115
  });*/
116
 
119
  * Уведомление будет показано на всех страницах Clearfy и его компонентах.
120
  *
121
  * @param WCL_Plugin $plugin
122
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $obj
123
  */
124
  function wbcr_clearfy_print_notice_rewrite_rules($plugin, $obj)
125
  {
144
  * Обновить постоынные ссылки, после выполнения быстрых настроек
145
  *
146
  * @param WHM_Plugin $plugin
147
+ * @param Wbcr_FactoryPages440_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_Factory441_Plugin $plugin
171
  */
172
 
173
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
242
  }
243
  }, 9999);
244
 
245
+ // add widget scripts on all clearfy pages
246
+ add_action('wbcr/clearfy/page_assets', function ($id, $scripts, $styles) {
247
+ $scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/widgets.js', array('jquery'));
248
+ }, 10, 3);
 
admin/includes/compatibility.php CHANGED
@@ -22,8 +22,8 @@ add_action( 'plugins_loaded', function () {
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
- * @param Wbcr_Factory436_Plugin $plugin
26
- * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
@@ -52,8 +52,8 @@ add_action( 'plugins_loaded', function () {
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
- * @param Wbcr_Factory436_Plugin $plugin
56
- * @param Wbcr_FactoryPages435_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
+ * @param Wbcr_Factory441_Plugin $plugin
26
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
+ * @param Wbcr_Factory441_Plugin $plugin
56
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
admin/includes/sidebar-widgets.php CHANGED
@@ -1,84 +1,85 @@
1
  <?php
2
- /**
3
- * Sidebar widgets
4
- *
5
- * @author Webcraftic <wordpress.webraftic@gmail.com>
6
- * @copyright (c) 01.12.2018, Webcraftic
7
- * @version 1.0
8
- */
9
-
10
- /**
11
- * Return premium widget markup
12
- *
13
- * @return string
14
- */
15
- function wbcr_clearfy_get_sidebar_premium_widget() {
16
-
17
- $buy_premium_url = WCL_Plugin::app()->get_support()->get_pricing_url( true, 'license_page' );
18
-
19
- ob_start();
20
- ?>
21
- <div id="wbcr-clr-go-to-premium-widget" class="wbcr-factory-sidebar-widget">
22
- <p>
23
- <strong><?php _e( 'Activation Clearfy Business', 'clearfy' ); ?></strong>
24
- </p>
25
- <div class="wbcr-clr-go-to-premium-widget-body">
26
- <p><?php _e( '<b>Clearfy Business</b> is a paid package of components for the popular free WordPress plugin named Clearfy. You get access to all paid components at one price.', 'clearfy' ) ?></p>
27
- <p><?php _e( 'Paid license guarantees that you can download and update existing and future paid components of the plugin.', 'clearfy' ) ?></p>
28
- <a href="<?= $buy_premium_url ?>" class="wbcr-clr-purchase-premium" target="_blank" rel="noopener">
 
29
  <span class="btn btn-gold btn-inner-wrap">
30
- <i class="fa fa-star"></i> <?php _e( 'Upgrade to Clearfy Business', 'clearfy' ) ?>
31
  <i class="fa fa-star"></i>
32
  </span>
33
- </a>
34
- </div>
35
- </div>
36
- <?php
37
-
38
- $output = ob_get_contents();
39
-
40
- ob_end_clean();
41
-
42
- return $output;
43
- }
44
-
45
- /**
46
- * Return support widget markup
47
- *
48
- * @return string
49
- */
50
- function wbcr_clearfy_get_sidebar_support_widget() {
51
-
52
- $output = '';
53
-
54
- $free_support_url = WCL_Plugin::app()->get_support()->get_contacts_url( true, 'support_widget' );
55
- $page_hot_support_url = WCL_Plugin::app()->get_support()->get_tracking_page_url( 'hot-support', 'support_widget' );
56
-
57
- ob_start();
58
- ?>
59
- <div id="wbcr-clr-support-widget" class="wbcr-factory-sidebar-widget">
60
- <p><strong><?php _e( 'Having Issues?', 'clearfy' ); ?></strong></p>
61
- <div class="wbcr-clr-support-widget-body">
62
- <p>
63
- <?php _e( 'We provide free support for this plugin. If you are pushed with a problem, just create a new ticket. We will definitely help you!', 'clearfy' ); ?>
64
- </p>
65
- <ul>
66
- <li><span class="dashicons dashicons-sos"></span>
67
- <a href="<?= $free_support_url ?>" target="_blank"
68
- rel="noopener"><?php _e( 'Get starting free support', 'clearfy' ); ?></a>
69
- </li>
70
- <li style="margin-top: 15px;background: #fff4f1;padding: 10px;color: #a58074;">
71
- <span class="dashicons dashicons-warning"></span>
72
- <?php printf( __( 'If you find a php error or a vulnerability in plugin, you can <a href="%s" target="_blank" rel="noopener">create ticket</a> in hot support that we responded instantly.', 'clearfy' ), $page_hot_support_url ); ?>
73
- </li>
74
- </ul>
75
- </div>
76
- </div>
77
- <?php
78
-
79
- $output = ob_get_contents();
80
-
81
- ob_end_clean();
82
-
83
- return $output;
84
- }
1
  <?php
2
+ /**
3
+ * Sidebar widgets
4
+ *
5
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
6
+ * @copyright (c) 01.12.2018, Webcraftic
7
+ * @version 1.0
8
+ */
9
+
10
+ /**
11
+ * Return premium widget markup
12
+ *
13
+ * @return string
14
+ */
15
+ function wbcr_clearfy_get_sidebar_premium_widget()
16
+ {
17
+
18
+ $buy_premium_url = WCL_Plugin::app()->get_support()->get_pricing_url(true, 'license_page');
19
+
20
+ ob_start();
21
+ ?>
22
+ <div id="wbcr-clr-go-to-premium-widget" class="wbcr-factory-sidebar-widget">
23
+ <p>
24
+ <strong><?php _e('Activation Clearfy Business', 'clearfy'); ?></strong>
25
+ </p>
26
+ <div class="wbcr-clr-go-to-premium-widget-body">
27
+ <p><?php _e('<b>Clearfy Business</b> is a paid package of components for the popular free WordPress plugin named Clearfy. You get access to all paid components at one price.', 'clearfy') ?></p>
28
+ <p><?php _e('Paid license guarantees that you can download and update existing and future paid components of the plugin.', 'clearfy') ?></p>
29
+ <a href="<?= $buy_premium_url ?>" class="wbcr-clr-purchase-premium" target="_blank" rel="noopener">
30
  <span class="btn btn-gold btn-inner-wrap">
31
+ <i class="fa fa-star"></i> <?php _e('Upgrade to Clearfy Business', 'clearfy') ?>
32
  <i class="fa fa-star"></i>
33
  </span>
34
+ </a>
35
+ </div>
36
+ </div>
37
+ <?php
38
+
39
+ $output = ob_get_contents();
40
+
41
+ ob_end_clean();
42
+
43
+ return $output;
44
+ }
45
+
46
+ /**
47
+ * Return support widget markup
48
+ *
49
+ * @return string
50
+ */
51
+ function wbcr_clearfy_get_sidebar_support_widget()
52
+ {
53
+
54
+ $free_support_url = WCL_Plugin::app()->get_support()->get_contacts_url(true, 'support_widget');
55
+ $page_hot_support_url = WCL_Plugin::app()->get_support()->get_tracking_page_url('hot-support', 'support_widget');
56
+
57
+ ob_start();
58
+ ?>
59
+ <div id="wbcr-clr-support-widget" class="wbcr-factory-sidebar-widget">
60
+ <p><strong><?php _e('Having Issues?', 'clearfy'); ?></strong></p>
61
+ <div class="wbcr-clr-support-widget-body">
62
+ <p>
63
+ <?php _e('We provide free support for this plugin. If you are pushed with a problem, just create a new ticket. We will definitely help you!', 'clearfy'); ?>
64
+ </p>
65
+ <ul>
66
+ <li><span class="dashicons dashicons-sos"></span>
67
+ <a href="<?= $free_support_url ?>" target="_blank"
68
+ rel="noopener"><?php _e('Get starting free support', 'clearfy'); ?></a>
69
+ </li>
70
+ <li style="margin-top: 15px;background: #fff4f1;padding: 10px;color: #a58074;">
71
+ <span class="dashicons dashicons-warning"></span>
72
+ <?php printf(__('If you find a php error or a vulnerability in plugin, you can <a href="%s" target="_blank" rel="noopener">create ticket</a> in hot support that we responded instantly.', 'clearfy'), $page_hot_support_url); ?>
73
+ </li>
74
+ </ul>
75
+ </div>
76
+ </div>
77
+ <?php
78
+
79
+ $output = ob_get_contents();
80
+
81
+ ob_end_clean();
82
+
83
+ return $output;
84
+ }
85
+
admin/pages/class-page.php CHANGED
@@ -7,7 +7,7 @@
7
  * @version 1.0
8
  */
9
 
10
- class WCL_Page extends Wbcr_FactoryClearfy227_PageBase {
11
 
12
  /**
13
  * Действие выполняется для всех страниц Clearfy и его компонентах.
@@ -20,15 +20,15 @@ class WCL_Page extends Wbcr_FactoryClearfy227_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-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>';
7
  * @version 1.0
8
  */
9
 
10
+ class WCL_Page extends Wbcr_FactoryClearfy232_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-232-multisite-suggetion">';
24
  $html .= '<div class="wbcr-factory-inner-contanier">';
25
+ $html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_232') . '</h3>';
26
+ $html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_clearfy_232') . '</p>';
27
+ $html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_clearfy_232') . '</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_232') . '</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_232') . '</a> ';
31
+ $html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_232') . '</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 FactoryPages435_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 FactoryPages440_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 FactoryPages435_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 FactoryPages435_AdminPage
63
  *
64
  */
65
  public function assets($scripts, $styles)
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages440_AdminPage
23
  *
24
  * @var string
25
  */
59
  *
60
  * @return void
61
  * @since 1.0.0
62
+ * @see FactoryPages440_AdminPage
63
  *
64
  */
65
  public function assets($scripts, $styles)
admin/pages/class-pages-components-license.php CHANGED
@@ -55,12 +55,12 @@ class WCL_ComponentsLicensePage extends WCL_Page {
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');
@@ -74,7 +74,7 @@ class WCL_ComponentsLicensePage extends WCL_Page {
74
  *
75
  * @return void
76
  * @since 1.0.0
77
- * @see FactoryPages435_AdminPage
78
  *
79
  */
80
  public function assets($scripts, $styles)
@@ -84,8 +84,8 @@ class WCL_ComponentsLicensePage extends WCL_Page {
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
  *
55
  /**
56
  * WCL_LicensePage constructor.
57
  *
58
+ * @param \Wbcr_Factory441_Plugin $plugin
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
  */
63
+ public function __construct(Wbcr_Factory441_Plugin $plugin)
64
  {
65
  $this->menu_title = __('License', 'robin-image-optimizer');
66
  $this->page_menu_short_description = __('Product activation', 'robin-image-optimizer');
74
  *
75
  * @return void
76
  * @since 1.0.0
77
+ * @see FactoryPages440_AdminPage
78
  *
79
  */
80
  public function assets($scripts, $styles)
84
  $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
85
 
86
  /**
87
+ * @param Wbcr_Factory441_StyleList $styles
88
+ * @param Wbcr_Factory441_ScriptList $scripts
89
  *
90
  * @since 1.4.0
91
  *
admin/pages/class-pages-components.php CHANGED
@@ -13,7 +13,7 @@ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
- class WCL_ComponentsPage extends \WBCR\FactoryClearfy227\Pages\Components {
17
 
18
  public function get_components()
19
  {
@@ -21,6 +21,15 @@ class WCL_ComponentsPage extends \WBCR\FactoryClearfy227\Pages\Components {
21
 
22
  $components = [];
23
  $components = array_merge($components, [
 
 
 
 
 
 
 
 
 
24
  [
25
  'name' => 'hide_my_wp',
26
  'title' => __('Hide my wp', 'clearfy'),
13
  exit;
14
  }
15
 
16
+ class WCL_ComponentsPage extends \WBCR\FactoryClearfy232\Pages\Components {
17
 
18
  public function get_components()
19
  {
21
 
22
  $components = [];
23
  $components = array_merge($components, [
24
+ [
25
+ 'name' => 'cache',
26
+ 'title' => __('Cache', 'clearfy'),
27
+ 'type' => 'internal',
28
+ 'build' => 'premium',
29
+ 'url' => 'https://clearfy.pro/cache/',
30
+ 'icon' => WCL_PLUGIN_URL . '/admin/assets/img/cache-icon-128x128.png',
31
+ 'description' => __('A very fast caching engine for WordPress that produces static html files.', 'clearfy')
32
+ ],
33
  [
34
  'name' => 'hide_my_wp',
35
  'title' => __('Hide my wp', 'clearfy'),
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 FactoryPages435_AdminPage
23
  *
24
  * @var string
25
  */
@@ -83,7 +83,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
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');
@@ -96,7 +96,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
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>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages440_AdminPage
23
  *
24
  * @var string
25
  */
83
  ?>
84
  <script>
85
  jQuery(document).ready(function($) {
86
+ $.wfactory_441.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');
96
  });
97
  });
98
  </script>
99
+ <div class="wbcr-factory-clearfy-232-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>
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 FactoryPages435_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_436_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 FactoryPages440_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
132
  //'cssClass' => 'postbox'
133
  );
134
 
135
+ return wbcr_factory_441_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
@@ -17,7 +17,7 @@ class WCL_HideLoginPage extends WCL_Page {
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
@@ -78,7 +78,7 @@ class WCL_HideLoginPage extends WCL_Page {
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');
@@ -91,7 +91,7 @@ class WCL_HideLoginPage extends WCL_Page {
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
 
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages440_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
78
  ?>
79
  <script>
80
  jQuery(document).ready(function($) {
81
+ $.wfactory_441.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');
91
  });
92
  });
93
  </script>
94
+ <div class="wbcr-factory-clearfy-232-multisite-suggetion">
95
  <div class="wbcr-factory-inner-contanier">
96
  <h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
97
 
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 FactoryPages435_AdminPage
23
  *
24
  * @var string
25
  */
@@ -79,7 +79,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
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');
@@ -92,7 +92,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
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>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages440_AdminPage
23
  *
24
  * @var string
25
  */
79
  ?>
80
  <script>
81
  jQuery(document).ready(function($) {
82
+ $.wfactory_441.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');
92
  });
93
  });
94
  </script>
95
+ <div class="wbcr-factory-clearfy-232-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>
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_FactoryClearfy227_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@
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' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WCL_LicensePage extends Wbcr_FactoryClearfy232_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory441_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory441_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 FactoryPages435_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 FactoryPages440_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/class-pages-performance.php CHANGED
@@ -6,7 +6,7 @@
6
  */
7
 
8
  // Exit if accessed directly
9
- if ( ! defined( 'ABSPATH' ) ) {
10
  exit;
11
  }
12
 
@@ -43,54 +43,58 @@ class WCL_PerformancePage extends WCL_Page {
43
  /**
44
  * @param WCL_Plugin $plugin
45
  */
46
- public function __construct( WCL_Plugin $plugin ) {
47
- $this->menu_title = __( 'Performance', 'clearfy' );
48
- $this->page_menu_short_description = __( 'Optimization js, css, fonts', 'clearfy' );
 
49
 
50
- parent::__construct( $plugin );
51
 
52
  $this->plugin = $plugin;
53
  }
54
 
55
- public function afterFormSave() {
56
- if ( $this->getPopulateOption( 'disable_gravatars' ) ) {
57
- update_option( 'show_avatars', false );
 
58
  } else {
59
- update_option( 'show_avatars', true );
60
  }
61
  }
62
 
63
- public function warningNotice() {
 
64
  parent::warningNotice();
65
 
66
- if ( ! $this->plugin->getPopulateOption( 'revisions_disable' ) && $this->is_post_revision_constant() ) {
67
- $this->printWarningNotice( __( 'Warning! In the wp-config.php file, a constant WP_POST_REVISIONS is found, it determines the number of revisions. Delete it so you can change this value through the admin panel.', 'clearfy' ) );
68
  }
69
  }
70
 
71
  /**
72
  * Permalinks options.
73
  *
74
- * @since 1.0.0
75
  * @return mixed[]
 
76
  */
77
- public function getPageOptions() {
 
78
  $options = [];
79
 
80
  $options[] = [
81
  'type' => 'html',
82
- 'html' => '<div class="wbcr-factory-page-group-header">' . __( '<strong>Clear the unnecessary scripts</strong>', 'clearfy' ) . '<p>' . __( 'This set of settings will help you remove unnecessary links and code from the head section, as well as reduce your website\'s pages weight.', 'clearfy' ) . '</p></div>'
83
  ];
84
 
85
  $options[] = [
86
- 'type' => 'checkbox',
87
- 'way' => 'buttons',
88
- 'name' => 'disable_feed',
89
- 'title' => __( 'Disable RSS feeds', 'clearfy' ),
90
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
91
- 'hint' => __( 'By default, WordPress generates all types of different RSS feeds for your site. While RSS feeds can be useful if you are running a blog, businesses might not always utilize these. Not every site out there has a blog.', 'clearfy' ) . '<br><b>Clearfy: </b>' . sprintf( __( 'Removes a link to the RSS-feed from the %s section, closes and puts the redirect from all RSS-feeds.', 'clearfy' ), '&lt;head&gt;' ),
92
- 'default' => false,
93
- 'eventsOn' => [
94
  'show' => '.factory-control-disabled_feed_behaviour'
95
  ],
96
  'eventsOff' => [
@@ -99,28 +103,28 @@ class WCL_PerformancePage extends WCL_Page {
99
  ];
100
 
101
  $options[] = [
102
- 'type' => 'dropdown',
103
- 'way' => 'buttons',
104
- 'name' => 'disabled_feed_behaviour',
105
- 'data' => [
106
- [ 'redirect_301', __( 'Redirect 301', 'clearfy' ) ],
107
- [ 'redirect_404', __( 'Page 404', 'clearfy' ) ],
108
  ],
109
- 'title' => __( 'Redirect feed requests', 'clearfy' ),
110
- 'hint' => __( 'Forward all requests to page 404 or to the main page through 301 redirects.', 'clearfy' ),
111
  //'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
112
  'default' => 'redirect_301'
113
  ];
114
 
115
  $options[] = [
116
- 'type' => 'checkbox',
117
- 'way' => 'buttons',
118
- 'name' => 'disable_json_rest_api',
119
- 'title' => __( 'Remove REST API Links', 'clearfy' ),
120
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'red' ],
121
- 'hint' => __( 'The WordPress REST API provides API endpoints for WordPress data types that allow developers to interact with sites remotely by sending and receiving JSON (JavaScript Object Notation) objects. However, a lot of sites don’t use this, and therefore in most cases, it is just unnecessary code.', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Removes REST API link tag from the front end and the REST API header link from page requests.', 'clearfy' ),
122
- 'default' => false,
123
- 'eventsOn' => [
124
  'show' => '#wbcr-clearfy-rest-api-danger-message'
125
  ],
126
  'eventsOff' => [
@@ -130,36 +134,36 @@ class WCL_PerformancePage extends WCL_Page {
130
 
131
  $options[] = [
132
  'type' => 'html',
133
- 'html' => [ $this, 'restApiDangerMessage' ]
134
  ];
135
 
136
  $options[] = [
137
- 'type' => 'checkbox',
138
- 'way' => 'buttons',
139
- 'name' => 'disable_emoji',
140
- 'title' => __( 'Disable Emojis', 'clearfy' ),
141
- 'layout' => [ 'hint-type' => 'icon' ],
142
- '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' ),
143
  'default' => false
144
  ];
145
 
146
  $options[] = [
147
- 'type' => 'checkbox',
148
- 'way' => 'buttons',
149
- 'name' => 'remove_jquery_migrate',
150
- 'title' => __( 'Remove jQuery Migrate', 'clearfy' ),
151
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'red' ],
152
- 'hint' => __( 'They started adding jQuery migrate in WordPress 3.6. Most up-to-date frontend code and plugins don’t require jquery-migrate.min.js. In most cases, this simply adds unnecessary load to your site. You can see this running if you launch Chrome Devtools console.', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Removes jQuery Migrate JavaScript file (jquery-migrate.min.js).', 'clearfy' ) . '<br>--<br><span class="wbcr-factory-light-orange-color">' . __( 'Warning! If there is a broke on your site, disable this option!', 'clearfy' ) . '</span>',
153
  'default' => false
154
  ];
155
 
156
  $options[] = [
157
- 'type' => 'checkbox',
158
- 'way' => 'buttons',
159
- 'name' => 'disable_embeds',
160
- 'title' => __( 'Disable Embeds', 'clearfy' ),
161
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
162
- 'hint' => __( 'Embeds were released with WordPress 4.4. This is basically the magic that auto converts your YouTube videos, Tweets, and URLs into pretty previews while you are editing. However, this actually loads a JavaScript file (wp-embed.min.js) on every page of your website. If you don’t care about the auto converting preview (which we don’t), you can disable this across your site.', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Removes WordPress Embed JavaScript file (wp-embed.min.js)', 'clearfy' ),
163
  'default' => false
164
  ];
165
 
@@ -173,110 +177,110 @@ class WCL_PerformancePage extends WCL_Page {
173
  'default' => false
174
  );*/
175
  $options[] = [
176
- 'type' => 'checkbox',
177
- 'way' => 'buttons',
178
- 'name' => 'remove_rsd_link',
179
- 'title' => __( 'Remove RSD Link', 'clearfy' ),
180
- 'layout' => [ 'hint-type' => 'icon' ],
181
- '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' ),
182
  'default' => false
183
  ];
184
  $options[] = [
185
- 'type' => 'checkbox',
186
- 'way' => 'buttons',
187
- 'name' => 'remove_xfn_link',
188
- 'title' => __( 'Removing XFN (XHTML Friends Network) Profile Link', 'clearfy' ),
189
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
190
- 'hint' => __( 'The profile attribute specifies the metadata profile address. Usually, the browser recognizes the value of this attribute and executes some conventions related to the specified profile. Loading the document itself at the specified address does not really happen, moreover, it may not exist at all.
191
  In particular, the profile is used for the XFN microformat (XHTML Friends Network) - a way of representing relationships between people using links and rel attributes with different values. WordPress also actively uses profile in its templates.
192
- ', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Remove link tag', 'clearfy' ) . '<br><code>link rel="profile" href="http://gmpg.org/xfn/11"</code>',
193
  'default' => false
194
  ];
195
 
196
  $options[] = [
197
- 'type' => 'checkbox',
198
- 'way' => 'buttons',
199
- 'name' => 'remove_wlw_link',
200
- 'title' => __( 'Remove wlwmanifest Link', 'clearfy' ),
201
- 'layout' => [ 'hint-type' => 'icon' ],
202
- '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' ),
203
  'default' => false
204
  ];
205
 
206
  $options[] = [
207
- 'type' => 'checkbox',
208
- 'way' => 'buttons',
209
- 'name' => 'remove_shortlink_link',
210
- 'title' => __( 'Remove Shortlink', 'clearfy' ),
211
- 'layout' => [ 'hint-type' => 'icon' ],
212
- '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' ),
213
  'default' => false
214
  ];
215
 
216
  $options[] = [
217
- 'type' => 'checkbox',
218
- 'way' => 'buttons',
219
- 'name' => 'remove_adjacent_posts_link',
220
- 'title' => __( 'Remove links to previous, next post', 'clearfy' ),
221
- 'layout' => [ 'hint-type' => 'icon' ],
222
- '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' ),
223
  'default' => false
224
  ];
225
 
226
  $options[] = [
227
- 'type' => 'checkbox',
228
- 'way' => 'buttons',
229
- 'name' => 'remove_recent_comments_style',
230
- 'title' => __( 'Remove .recentcomments styles', 'clearfy' ),
231
- 'layout' => [ 'hint-type' => 'icon' ],
232
- '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' ),
233
  'default' => false
234
  ];
235
 
236
  $options[] = [
237
- 'type' => 'checkbox',
238
- 'way' => 'buttons',
239
- 'name' => 'lazy_load_font_awesome',
240
- 'title' => __( 'Font Awesome asynchronous', 'clearfy' ),
241
- 'layout' => [ 'hint-type' => 'icon' ],
242
- 'hint' => __( 'By default, WordPress loads Font Awesome icons synchronously, that is, your page will not be fully loaded until Font Awesome icons are loaded. This algorithm slows down the loading of your page and leads to errors when checking the site in Google Page Speed. Using this option, your Font Awesome icons will be loaded after your page is fully loaded. This method has a negative — you and visitors of your site will see changes while loading a page, from the placeholders to icons.', 'clearfy' ),
243
  'default' => false
244
  ];
245
 
246
  $options[] = [
247
- 'type' => 'checkbox',
248
- 'way' => 'buttons',
249
- 'name' => 'disable_dashicons',
250
- 'title' => __( 'Disable Dashicons', 'clearfy' ),
251
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
252
- 'hint' => __( 'Dashicons is the official icon font of the WordPress admin as of 3.8. Some of you have requested that we add a feature to remove Dashicons. Some themes and developers utilize this (dashicons.min.css) on the front-end of their sites.', 'clearfy' ),
253
  'default' => false
254
  ];
255
 
256
  $options[] = [
257
- 'type' => 'checkbox',
258
- 'way' => 'buttons',
259
- 'name' => 'disable_gravatars',
260
- 'title' => __( 'Disable gravatars', 'clearfy' ),
261
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
262
- 'hint' => __( 'This function that prevents the user’s gravatar being automatically obtained from gravatar.com based on their registered email. This would be useful for sites where users require an extra layer of privacy, or if you just want to prevent potentially silly or embarrasing avatar accidents.
263
  If you’re using Identicons or any other generated default avatar, the user should keep a consistent avatar unless they change their registered email.
264
- ', 'clearfy' ),
265
  'default' => false
266
  ];
267
 
268
  $options[] = [
269
  'type' => 'html',
270
- 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __( 'Classic editor and Gutenberg', 'clearfy' ) . '</strong>' . '<p>' . __( 'In this group of options, you can manage revisions and post autosave.', 'clearfy' ) . '</p>' . '</div>'
271
  ];
272
 
273
  $options[] = [
274
- 'type' => 'checkbox',
275
- 'way' => 'buttons',
276
- 'name' => 'revisions_disable',
277
- 'title' => __( 'Disable revision', 'clearfy' ),
278
- 'default' => false,
279
- 'eventsOn' => [
280
  'hide' => '.factory-control-revision_limit'
281
  ],
282
  'eventsOff' => [
@@ -285,74 +289,74 @@ In particular, the profile is used for the XFN microformat (XHTML Friends Networ
285
  ];
286
 
287
  $options[] = [
288
- 'type' => 'dropdown',
289
- 'name' => 'revision_limit',
290
- 'title' => __( 'Limit Post Revisions', 'clearfy' ),
291
- 'data' => [
292
- [ 'default', __( 'Wordpress default', 'clearfy' ) ],
293
- [ '15', '15 ' . __( 'revisions', 'clearfy' ) ],
294
- [ '20', '20 ' . __( 'revisions', 'clearfy' ) ],
295
- [ '25', '25 ' . __( 'revisions', 'clearfy' ) ],
296
- [ '30', '30 ' . __( 'revisions', 'clearfy' ) ],
297
- [ '35', '35 ' . __( 'revisions', 'clearfy' ) ],
298
- [ '40', '40 ' . __( 'revisions', 'clearfy' ) ],
299
- [ '45', '45 ' . __( 'revisions', 'clearfy' ) ],
300
- [ '50', '50 ' . __( 'revisions', 'clearfy' ) ],
301
- [ '55', '55 ' . __( 'revisions', 'clearfy' ) ],
302
- [ '60', '60 ' . __( 'revisions', 'clearfy' ) ]
303
  ],
304
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
305
- 'hint' => __( 'WordPress automatically saves revisions when you are working on posts and pages. These can begin to add up pretty quick. By default, there is no limit in place. We have seen posts with over 1,000 revisions. Multiply this by 50 pages and suddenly you have over 50,000 revisions sitting in your database. The problem with this is that you will most likely never use them and they can start slowing down your database as well as using disk space.
306
- So we recommend either disabling or limiting your revisions. ', 'clearfy' ),
307
  'default' => 'default'
308
  ];
309
 
310
- if ( version_compare( get_bloginfo( 'version' ), '5.0', '>=' ) ) {
311
  $options[] = [
312
- 'type' => 'checkbox',
313
- 'way' => 'buttons',
314
- 'name' => 'gutenberg_autosave_control',
315
- 'title' => __( 'Gutenberg autosave control', 'clearfy' ),
316
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
317
- 'hint' => __( 'By activating this option autosave feature in the Gutenberg editor will be disabled. Alternatively it also provides options in the editor to select a longer autosave interval time than the default 10 seconds.', 'clearfy' ),
318
  'default' => false
319
  ];
320
  } else {
321
  $options[] = [
322
- 'type' => 'checkbox',
323
- 'way' => 'buttons',
324
- 'name' => 'disable_post_autosave',
325
- 'title' => __( 'Disable autosave', 'clearfy' ),
326
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
327
- 'hint' => __( 'WordPress by default automatically saves a draft every 60 seconds (1 minute). There are reasons why you might want to change this.', 'clearfy' ) . '<br><b>Clearfy</b>: ' . __( 'Disables automatic saving of drafts.', 'clearfy' ),
328
  'default' => false
329
  ];
330
  }
331
 
332
  $options[] = [
333
  'type' => 'html',
334
- 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __( 'Remove query strings from static resources', 'clearfy' ) . '</strong>' . '<p>' . __( 'This funcitons will remove query strings from static resources like CSS & JS files inside the HTML <head> element to improve your speed scores in services like Pingdom, GTmetrix, PageSpeed and YSlow. <b style="color:#ff5722">Important:</b> This does not work for authorized users. To avoid problems after plugins update!', 'clearfy' ) . '</p>' . '</div>'
335
  ];
336
 
337
  $options[] = [
338
- 'type' => 'checkbox',
339
- 'way' => 'buttons',
340
- 'name' => 'remove_js_version',
341
- 'title' => __( 'Remove Version from Script', 'clearfy' ) . ' <span class="wbcr-clearfy-recomended-text">(' . __( 'Recommended', 'clearfy' ) . ')</span>',
342
- 'layout' => [ 'hint-type' => 'icon' ],
343
- 'hint' => __( 'To make it more difficult for others to hack your website you can remove the WordPress version number from your site, your css and js. Without that number it\'s not possible to see if you run not the current version to exploit bugs from the older versions. <br><br>
344
- Additionally it can improve the loading speed of your site, because without query strings in the URL the css and js files can be cached.', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Removes wordpress version number from scripts (not logged in user only).', 'clearfy' ),
345
  'default' => false
346
  ];
347
 
348
  $options[] = [
349
- 'type' => 'checkbox',
350
- 'way' => 'buttons',
351
- 'name' => 'remove_style_version',
352
- 'title' => __( 'Remove Version from Stylesheet', 'clearfy' ) . ' <span class="wbcr-clearfy-recomended-text">(' . __( 'Recommended', 'clearfy' ) . ')</span>',
353
- 'layout' => [ 'hint-type' => 'icon' ],
354
- 'hint' => __( 'To make it more difficult for others to hack your website you can remove the WordPress version number from your site, your css and js. Without that number it\'s not possible to see if you run not the current version to exploit bugs from the older versions. <br><br>
355
- Additionally it can improve the loading speed of your site, because without query strings in the URL the css and js files can be cached.', 'clearfy' ) . '<br><br><b>Clearfy: </b>' . __( 'Removes the wordpress version number from stylesheets (not logged in user only).', 'clearfy' ),
356
  'default' => false
357
  /*'eventsOn' => array(
358
  'show' => '.factory-control-disable_remove_style_version_for_auth_users'
@@ -372,43 +376,43 @@ So we recommend either disabling or limiting your revisions. ', 'clearfy' ),
372
  );*/
373
 
374
  $options[] = [
375
- 'type' => 'textarea',
376
- 'name' => 'remove_version_exclude',
377
  'height' => '120',
378
- 'title' => __( 'Exclude stylesheet/script file names', 'clearfy' ),
379
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
380
- 'hint' => __( 'Enter Stylesheet/Script file names to exclude from version removal (each exclude file starts with a new line)', 'clearfy' ) . '<br><br><b>' . __( 'Example', 'clearfy' ) . ':</b>' . ' http://testwp.dev/wp-includes/js/jquery/jquery.js',
381
  ];
382
 
383
  $options[] = [
384
  'type' => 'html',
385
- 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __( 'Heartbeat', 'clearfy' ) . '</strong>' . '<p>' . __( 'The WordPress Heartbeat API uses /wp-admin/admin-ajax.php to run AJAX calls from the web-browser. While this is great and all it can also cause high CPU usage and crazy amounts of PHP calls. For example, if you leave your dashboard open it will keep sending POST requests to this file on a regular interval, every 15 seconds. Here is an example below of it happening.', 'clearfy' ) . '</p>' . '</div>'
386
  ];
387
 
388
  $options[] = [
389
- 'type' => 'dropdown',
390
- 'name' => 'disable_heartbeat',
391
- 'way' => 'buttons',
392
- 'title' => __( 'Disable Heartbeat', 'clearfy' ),
393
- 'data' => [
394
- [ 'default', __( 'Default', 'clearfy' ) ],
395
- [ 'everywhere', __( 'Everywhere', 'clearfy' ) ],
396
- [ 'on_dashboard_page', __( 'On dashboard page', 'clearfy' ) ],
397
- [ 'allow_only_on_post_edit_pages', __( 'Only allow when editing Posts/Pages', 'clearfy' ) ]
398
  ],
399
  //'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
400
  //'hint' => __('You can disable all plugin updates or choose manual or automatic update mode.', 'clearfy'),
401
- 'events' => [
402
- 'default' => [
403
  'show' => '.factory-control-heartbeat_frequency'
404
  ],
405
- 'on_dashboard_page' => [
406
  'show' => '.factory-control-heartbeat_frequency'
407
  ],
408
  'allow_only_on_post_edit_pages' => [
409
  'show' => '.factory-control-heartbeat_frequency'
410
  ],
411
- 'everywhere' => [
412
  'hide' => '.factory-control-heartbeat_frequency'
413
  ]
414
  ],
@@ -416,58 +420,59 @@ So we recommend either disabling or limiting your revisions. ', 'clearfy' ),
416
  ];
417
 
418
  $options[] = [
419
- 'type' => 'dropdown',
420
- 'name' => 'heartbeat_frequency',
421
- 'title' => __( 'Heartbeat frequency', 'clearfy' ),
422
- 'data' => [
423
- [ 'default', __( 'Wordpress default', 'clearfy' ) ],
424
- [ '20', '20 ' . __( 'seconds', 'clearfy' ) ],
425
- [ '25', '25 ' . __( 'seconds', 'clearfy' ) ],
426
- [ '30', '30 ' . __( 'seconds', 'clearfy' ) ],
427
- [ '35', '35 ' . __( 'seconds', 'clearfy' ) ],
428
- [ '40', '40 ' . __( 'seconds', 'clearfy' ) ],
429
- [ '45', '45 ' . __( 'seconds', 'clearfy' ) ],
430
- [ '50', '50 ' . __( 'seconds', 'clearfy' ) ],
431
- [ '55', '55 ' . __( 'seconds', 'clearfy' ) ],
432
- [ '60', '60 ' . __( 'seconds', 'clearfy' ) ],
433
- [ '80', '80 ' . __( 'seconds', 'clearfy' ) ],
434
- [ '120', '120 ' . __( 'seconds', 'clearfy' ) ],
435
- [ '150', '150 ' . __( 'seconds', 'clearfy' ) ],
436
- [ '200', '200 ' . __( 'seconds', 'clearfy' ) ],
437
- [ '250', '250 ' . __( 'seconds', 'clearfy' ) ],
438
- [ '300', '300 ' . __( 'seconds', 'clearfy' ) ],
439
- [ '400', '400 ' . __( 'seconds', 'clearfy' ) ],
440
- [ '500', '500 ' . __( 'seconds', 'clearfy' ) ]
441
  ],
442
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
443
- 'hint' => __( 'Select the heartbeat frequency wordpress. We recommend you 60 seconds, default is 20 seconds.', 'clearfy' ),
444
  'default' => 'default'
445
  ];
446
 
447
  $form_options = [];
448
 
449
  $form_options[] = [
450
- 'type' => 'form-group',
451
  'items' => $options,
452
  //'cssClass' => 'postbox'
453
  ];
454
 
455
- return apply_filters( 'wbcr_clr_code_clean_form_options', $form_options, $this );
456
  }
457
 
458
  /**
459
  * Adds an html warning notification html markup.
460
  */
461
- public function restApiDangerMessage() {
 
462
  ?>
463
- <div class="form-group">
464
- <label class="col-sm-4 control-label"></label>
465
- <div class="control-group col-sm-8">
466
- <div id="wbcr-clearfy-rest-api-danger-message" class="wbcr-clearfy-danger-message">
467
- <?php _e( '<b>Use this option carefully!</b><br> Plugins like Contact form 7, Anycomments may have problems using this option.', 'clearfy' ) ?>
468
- </div>
469
- </div>
470
- </div>
471
  <?php
472
  }
473
 
@@ -476,15 +481,16 @@ So we recommend either disabling or limiting your revisions. ', 'clearfy' ),
476
  *
477
  * @return bool
478
  */
479
- protected function is_post_revision_constant() {
 
480
  $config_path = ABSPATH . '/wp-config.php';
481
 
482
- if ( file_exists( $config_path ) ) {
483
- $file = fopen( $config_path, 'r' );
484
- $content = fread( $file, filesize( $config_path ) );
485
- fclose( $file );
486
 
487
- if ( ! empty( $content ) && preg_match( '/define(.+?)WP_POST_REVISIONS/', $content ) ) {
488
  return true;
489
  }
490
  }
6
  */
7
 
8
  // Exit if accessed directly
9
+ if( !defined('ABSPATH') ) {
10
  exit;
11
  }
12
 
43
  /**
44
  * @param WCL_Plugin $plugin
45
  */
46
+ public function __construct(WCL_Plugin $plugin)
47
+ {
48
+ $this->menu_title = __('Performance', 'clearfy');
49
+ $this->page_menu_short_description = __('Optimization js, css, fonts', 'clearfy');
50
 
51
+ parent::__construct($plugin);
52
 
53
  $this->plugin = $plugin;
54
  }
55
 
56
+ public function afterFormSave()
57
+ {
58
+ if( $this->getPopulateOption('disable_gravatars') ) {
59
+ update_option('show_avatars', false);
60
  } else {
61
+ update_option('show_avatars', true);
62
  }
63
  }
64
 
65
+ public function warningNotice()
66
+ {
67
  parent::warningNotice();
68
 
69
+ if( !$this->plugin->getPopulateOption('revisions_disable') && $this->is_post_revision_constant() ) {
70
+ $this->printWarningNotice(__('Warning! In the wp-config.php file, a constant WP_POST_REVISIONS is found, it determines the number of revisions. Delete it so you can change this value through the admin panel.', 'clearfy'));
71
  }
72
  }
73
 
74
  /**
75
  * Permalinks options.
76
  *
 
77
  * @return mixed[]
78
+ * @since 1.0.0
79
  */
80
+ public function getPageOptions()
81
+ {
82
  $options = [];
83
 
84
  $options[] = [
85
  'type' => 'html',
86
+ 'html' => '<div class="wbcr-factory-page-group-header">' . __('<strong>Clear the unnecessary scripts</strong>', 'clearfy') . '<p>' . __('This set of settings will help you remove unnecessary links and code from the head section, as well as reduce your website\'s pages weight.', 'clearfy') . '</p></div>'
87
  ];
88
 
89
  $options[] = [
90
+ 'type' => 'checkbox',
91
+ 'way' => 'buttons',
92
+ 'name' => 'disable_feed',
93
+ 'title' => __('Disable RSS feeds', 'clearfy'),
94
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
95
+ 'hint' => __('By default, WordPress generates all types of different RSS feeds for your site. While RSS feeds can be useful if you are running a blog, businesses might not always utilize these. Not every site out there has a blog.', 'clearfy') . '<br><b>Clearfy: </b>' . sprintf(__('Removes a link to the RSS-feed from the %s section, closes and puts the redirect from all RSS-feeds.', 'clearfy'), '&lt;head&gt;'),
96
+ 'default' => false,
97
+ 'eventsOn' => [
98
  'show' => '.factory-control-disabled_feed_behaviour'
99
  ],
100
  'eventsOff' => [
103
  ];
104
 
105
  $options[] = [
106
+ 'type' => 'dropdown',
107
+ 'way' => 'buttons',
108
+ 'name' => 'disabled_feed_behaviour',
109
+ 'data' => [
110
+ ['redirect_301', __('Redirect 301', 'clearfy')],
111
+ ['redirect_404', __('Page 404', 'clearfy')],
112
  ],
113
+ 'title' => __('Redirect feed requests', 'clearfy'),
114
+ 'hint' => __('Forward all requests to page 404 or to the main page through 301 redirects.', 'clearfy'),
115
  //'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
116
  'default' => 'redirect_301'
117
  ];
118
 
119
  $options[] = [
120
+ 'type' => 'checkbox',
121
+ 'way' => 'buttons',
122
+ 'name' => 'disable_json_rest_api',
123
+ 'title' => __('Remove REST API Links', 'clearfy'),
124
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'red'],
125
+ 'hint' => __('The WordPress REST API provides API endpoints for WordPress data types that allow developers to interact with sites remotely by sending and receiving JSON (JavaScript Object Notation) objects. However, a lot of sites don’t use this, and therefore in most cases, it is just unnecessary code.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes REST API link tag from the front end and the REST API header link from page requests.', 'clearfy'),
126
+ 'default' => false,
127
+ 'eventsOn' => [
128
  'show' => '#wbcr-clearfy-rest-api-danger-message'
129
  ],
130
  'eventsOff' => [
134
 
135
  $options[] = [
136
  'type' => 'html',
137
+ 'html' => [$this, 'restApiDangerMessage']
138
  ];
139
 
140
  $options[] = [
141
+ 'type' => 'checkbox',
142
+ 'way' => 'buttons',
143
+ 'name' => 'disable_emoji',
144
+ 'title' => __('Disable Emojis', 'clearfy'),
145
+ 'layout' => ['hint-type' => 'icon'],
146
+ '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'),
147
  'default' => false
148
  ];
149
 
150
  $options[] = [
151
+ 'type' => 'checkbox',
152
+ 'way' => 'buttons',
153
+ 'name' => 'remove_jquery_migrate',
154
+ 'title' => __('Remove jQuery Migrate', 'clearfy'),
155
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'red'],
156
+ 'hint' => __('They started adding jQuery migrate in WordPress 3.6. Most up-to-date frontend code and plugins don’t require jquery-migrate.min.js. In most cases, this simply adds unnecessary load to your site. You can see this running if you launch Chrome Devtools console.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes jQuery Migrate JavaScript file (jquery-migrate.min.js).', 'clearfy') . '<br>--<br><span class="wbcr-factory-light-orange-color">' . __('Warning! If there is a broke on your site, disable this option!', 'clearfy') . '</span>',
157
  'default' => false
158
  ];
159
 
160
  $options[] = [
161
+ 'type' => 'checkbox',
162
+ 'way' => 'buttons',
163
+ 'name' => 'disable_embeds',
164
+ 'title' => __('Disable Embeds', 'clearfy'),
165
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
166
+ 'hint' => __('Embeds were released with WordPress 4.4. This is basically the magic that auto converts your YouTube videos, Tweets, and URLs into pretty previews while you are editing. However, this actually loads a JavaScript file (wp-embed.min.js) on every page of your website. If you don’t care about the auto converting preview (which we don’t), you can disable this across your site.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes WordPress Embed JavaScript file (wp-embed.min.js)', 'clearfy'),
167
  'default' => false
168
  ];
169
 
177
  'default' => false
178
  );*/
179
  $options[] = [
180
+ 'type' => 'checkbox',
181
+ 'way' => 'buttons',
182
+ 'name' => 'remove_rsd_link',
183
+ 'title' => __('Remove RSD Link', 'clearfy'),
184
+ 'layout' => ['hint-type' => 'icon'],
185
+ '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'),
186
  'default' => false
187
  ];
188
  $options[] = [
189
+ 'type' => 'checkbox',
190
+ 'way' => 'buttons',
191
+ 'name' => 'remove_xfn_link',
192
+ 'title' => __('Removing XFN (XHTML Friends Network) Profile Link', 'clearfy'),
193
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
194
+ 'hint' => __('The profile attribute specifies the metadata profile address. Usually, the browser recognizes the value of this attribute and executes some conventions related to the specified profile. Loading the document itself at the specified address does not really happen, moreover, it may not exist at all.
195
  In particular, the profile is used for the XFN microformat (XHTML Friends Network) - a way of representing relationships between people using links and rel attributes with different values. WordPress also actively uses profile in its templates.
196
+ ', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Remove link tag', 'clearfy') . '<br><code>link rel="profile" href="http://gmpg.org/xfn/11"</code>',
197
  'default' => false
198
  ];
199
 
200
  $options[] = [
201
+ 'type' => 'checkbox',
202
+ 'way' => 'buttons',
203
+ 'name' => 'remove_wlw_link',
204
+ 'title' => __('Remove wlwmanifest Link', 'clearfy'),
205
+ 'layout' => ['hint-type' => 'icon'],
206
+ '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'),
207
  'default' => false
208
  ];
209
 
210
  $options[] = [
211
+ 'type' => 'checkbox',
212
+ 'way' => 'buttons',
213
+ 'name' => 'remove_shortlink_link',
214
+ 'title' => __('Remove Shortlink', 'clearfy'),
215
+ 'layout' => ['hint-type' => 'icon'],
216
+ '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'),
217
  'default' => false
218
  ];
219
 
220
  $options[] = [
221
+ 'type' => 'checkbox',
222
+ 'way' => 'buttons',
223
+ 'name' => 'remove_adjacent_posts_link',
224
+ 'title' => __('Remove links to previous, next post', 'clearfy'),
225
+ 'layout' => ['hint-type' => 'icon'],
226
+ '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'),
227
  'default' => false
228
  ];
229
 
230
  $options[] = [
231
+ 'type' => 'checkbox',
232
+ 'way' => 'buttons',
233
+ 'name' => 'remove_recent_comments_style',
234
+ 'title' => __('Remove .recentcomments styles', 'clearfy'),
235
+ 'layout' => ['hint-type' => 'icon'],
236
+ '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'),
237
  'default' => false
238
  ];
239
 
240
  $options[] = [
241
+ 'type' => 'checkbox',
242
+ 'way' => 'buttons',
243
+ 'name' => 'lazy_load_font_awesome',
244
+ 'title' => __('Font Awesome asynchronous', 'clearfy'),
245
+ 'layout' => ['hint-type' => 'icon'],
246
+ 'hint' => __('By default, WordPress loads Font Awesome icons synchronously, that is, your page will not be fully loaded until Font Awesome icons are loaded. This algorithm slows down the loading of your page and leads to errors when checking the site in Google Page Speed. Using this option, your Font Awesome icons will be loaded after your page is fully loaded. This method has a negative — you and visitors of your site will see changes while loading a page, from the placeholders to icons.', 'clearfy'),
247
  'default' => false
248
  ];
249
 
250
  $options[] = [
251
+ 'type' => 'checkbox',
252
+ 'way' => 'buttons',
253
+ 'name' => 'disable_dashicons',
254
+ 'title' => __('Disable Dashicons', 'clearfy'),
255
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
256
+ 'hint' => __('Dashicons is the official icon font of the WordPress admin as of 3.8. Some of you have requested that we add a feature to remove Dashicons. Some themes and developers utilize this (dashicons.min.css) on the front-end of their sites.', 'clearfy'),
257
  'default' => false
258
  ];
259
 
260
  $options[] = [
261
+ 'type' => 'checkbox',
262
+ 'way' => 'buttons',
263
+ 'name' => 'disable_gravatars',
264
+ 'title' => __('Disable gravatars', 'clearfy'),
265
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
266
+ 'hint' => __('This function that prevents the user’s gravatar being automatically obtained from gravatar.com based on their registered email. This would be useful for sites where users require an extra layer of privacy, or if you just want to prevent potentially silly or embarrasing avatar accidents.
267
  If you’re using Identicons or any other generated default avatar, the user should keep a consistent avatar unless they change their registered email.
268
+ ', 'clearfy'),
269
  'default' => false
270
  ];
271
 
272
  $options[] = [
273
  'type' => 'html',
274
+ 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __('Classic editor and Gutenberg', 'clearfy') . '</strong>' . '<p>' . __('In this group of options, you can manage revisions and post autosave.', 'clearfy') . '</p>' . '</div>'
275
  ];
276
 
277
  $options[] = [
278
+ 'type' => 'checkbox',
279
+ 'way' => 'buttons',
280
+ 'name' => 'revisions_disable',
281
+ 'title' => __('Disable revision', 'clearfy'),
282
+ 'default' => false,
283
+ 'eventsOn' => [
284
  'hide' => '.factory-control-revision_limit'
285
  ],
286
  'eventsOff' => [
289
  ];
290
 
291
  $options[] = [
292
+ 'type' => 'dropdown',
293
+ 'name' => 'revision_limit',
294
+ 'title' => __('Limit Post Revisions', 'clearfy'),
295
+ 'data' => [
296
+ ['default', __('Wordpress default', 'clearfy')],
297
+ ['15', '15 ' . __('revisions', 'clearfy')],
298
+ ['20', '20 ' . __('revisions', 'clearfy')],
299
+ ['25', '25 ' . __('revisions', 'clearfy')],
300
+ ['30', '30 ' . __('revisions', 'clearfy')],
301
+ ['35', '35 ' . __('revisions', 'clearfy')],
302
+ ['40', '40 ' . __('revisions', 'clearfy')],
303
+ ['45', '45 ' . __('revisions', 'clearfy')],
304
+ ['50', '50 ' . __('revisions', 'clearfy')],
305
+ ['55', '55 ' . __('revisions', 'clearfy')],
306
+ ['60', '60 ' . __('revisions', 'clearfy')]
307
  ],
308
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
309
+ 'hint' => __('WordPress automatically saves revisions when you are working on posts and pages. These can begin to add up pretty quick. By default, there is no limit in place. We have seen posts with over 1,000 revisions. Multiply this by 50 pages and suddenly you have over 50,000 revisions sitting in your database. The problem with this is that you will most likely never use them and they can start slowing down your database as well as using disk space.
310
+ So we recommend either disabling or limiting your revisions. ', 'clearfy'),
311
  'default' => 'default'
312
  ];
313
 
314
+ if( version_compare(get_bloginfo('version'), '5.0', '>=') ) {
315
  $options[] = [
316
+ 'type' => 'checkbox',
317
+ 'way' => 'buttons',
318
+ 'name' => 'gutenberg_autosave_control',
319
+ 'title' => __('Gutenberg autosave control', 'clearfy'),
320
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
321
+ 'hint' => __('By activating this option autosave feature in the Gutenberg editor will be disabled. Alternatively it also provides options in the editor to select a longer autosave interval time than the default 10 seconds.', 'clearfy'),
322
  'default' => false
323
  ];
324
  } else {
325
  $options[] = [
326
+ 'type' => 'checkbox',
327
+ 'way' => 'buttons',
328
+ 'name' => 'disable_post_autosave',
329
+ 'title' => __('Disable autosave', 'clearfy'),
330
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
331
+ 'hint' => __('WordPress by default automatically saves a draft every 60 seconds (1 minute). There are reasons why you might want to change this.', 'clearfy') . '<br><b>Clearfy</b>: ' . __('Disables automatic saving of drafts.', 'clearfy'),
332
  'default' => false
333
  ];
334
  }
335
 
336
  $options[] = [
337
  'type' => 'html',
338
+ 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __('Remove query strings from static resources', 'clearfy') . '</strong>' . '<p>' . __('This funcitons will remove query strings from static resources like CSS & JS files inside the HTML <head> element to improve your speed scores in services like Pingdom, GTmetrix, PageSpeed and YSlow. <b style="color:#ff5722">Important:</b> This does not work for authorized users. To avoid problems after plugins update!', 'clearfy') . '</p>' . '</div>'
339
  ];
340
 
341
  $options[] = [
342
+ 'type' => 'checkbox',
343
+ 'way' => 'buttons',
344
+ 'name' => 'remove_js_version',
345
+ 'title' => __('Remove Version from Script', 'clearfy') . ' <span class="wbcr-clearfy-recomended-text">(' . __('Recommended', 'clearfy') . ')</span>',
346
+ 'layout' => ['hint-type' => 'icon'],
347
+ 'hint' => __('To make it more difficult for others to hack your website you can remove the WordPress version number from your site, your css and js. Without that number it\'s not possible to see if you run not the current version to exploit bugs from the older versions. <br><br>
348
+ Additionally it can improve the loading speed of your site, because without query strings in the URL the css and js files can be cached.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes wordpress version number from scripts (not logged in user only).', 'clearfy'),
349
  'default' => false
350
  ];
351
 
352
  $options[] = [
353
+ 'type' => 'checkbox',
354
+ 'way' => 'buttons',
355
+ 'name' => 'remove_style_version',
356
+ 'title' => __('Remove Version from Stylesheet', 'clearfy') . ' <span class="wbcr-clearfy-recomended-text">(' . __('Recommended', 'clearfy') . ')</span>',
357
+ 'layout' => ['hint-type' => 'icon'],
358
+ 'hint' => __('To make it more difficult for others to hack your website you can remove the WordPress version number from your site, your css and js. Without that number it\'s not possible to see if you run not the current version to exploit bugs from the older versions. <br><br>
359
+ Additionally it can improve the loading speed of your site, because without query strings in the URL the css and js files can be cached.', 'clearfy') . '<br><br><b>Clearfy: </b>' . __('Removes the wordpress version number from stylesheets (not logged in user only).', 'clearfy'),
360
  'default' => false
361
  /*'eventsOn' => array(
362
  'show' => '.factory-control-disable_remove_style_version_for_auth_users'
376
  );*/
377
 
378
  $options[] = [
379
+ 'type' => 'textarea',
380
+ 'name' => 'remove_version_exclude',
381
  'height' => '120',
382
+ 'title' => __('Exclude stylesheet/script file names', 'clearfy'),
383
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
384
+ 'hint' => __('Enter Stylesheet/Script file names to exclude from version removal (each exclude file starts with a new line)', 'clearfy') . '<br><br><b>' . __('Example', 'clearfy') . ':</b>' . ' http://testwp.dev/wp-includes/js/jquery/jquery.js',
385
  ];
386
 
387
  $options[] = [
388
  'type' => 'html',
389
+ 'html' => '<div class="wbcr-clearfy-group-header">' . '<strong>' . __('Heartbeat', 'clearfy') . '</strong>' . '<p>' . __('The WordPress Heartbeat API uses /wp-admin/admin-ajax.php to run AJAX calls from the web-browser. While this is great and all it can also cause high CPU usage and crazy amounts of PHP calls. For example, if you leave your dashboard open it will keep sending POST requests to this file on a regular interval, every 15 seconds. Here is an example below of it happening.', 'clearfy') . '</p>' . '</div>'
390
  ];
391
 
392
  $options[] = [
393
+ 'type' => 'dropdown',
394
+ 'name' => 'disable_heartbeat',
395
+ 'way' => 'buttons',
396
+ 'title' => __('Disable Heartbeat', 'clearfy'),
397
+ 'data' => [
398
+ ['default', __('Default', 'clearfy')],
399
+ ['everywhere', __('Everywhere', 'clearfy')],
400
+ ['on_dashboard_page', __('In admin panel', 'clearfy')],
401
+ ['allow_only_on_post_edit_pages', __('Only allow when editing Posts/Pages', 'clearfy')]
402
  ],
403
  //'layout' => array('hint-type' => 'icon', 'hint-icon-color' => 'grey'),
404
  //'hint' => __('You can disable all plugin updates or choose manual or automatic update mode.', 'clearfy'),
405
+ 'events' => [
406
+ 'default' => [
407
  'show' => '.factory-control-heartbeat_frequency'
408
  ],
409
+ 'on_dashboard_page' => [
410
  'show' => '.factory-control-heartbeat_frequency'
411
  ],
412
  'allow_only_on_post_edit_pages' => [
413
  'show' => '.factory-control-heartbeat_frequency'
414
  ],
415
+ 'everywhere' => [
416
  'hide' => '.factory-control-heartbeat_frequency'
417
  ]
418
  ],
420
  ];
421
 
422
  $options[] = [
423
+ 'type' => 'dropdown',
424
+ 'name' => 'heartbeat_frequency',
425
+ 'title' => __('Heartbeat frequency', 'clearfy'),
426
+ 'data' => [
427
+ ['default', __('Wordpress default', 'clearfy')],
428
+ ['20', '20 ' . __('seconds', 'clearfy')],
429
+ ['25', '25 ' . __('seconds', 'clearfy')],
430
+ ['30', '30 ' . __('seconds', 'clearfy')],
431
+ ['35', '35 ' . __('seconds', 'clearfy')],
432
+ ['40', '40 ' . __('seconds', 'clearfy')],
433
+ ['45', '45 ' . __('seconds', 'clearfy')],
434
+ ['50', '50 ' . __('seconds', 'clearfy')],
435
+ ['55', '55 ' . __('seconds', 'clearfy')],
436
+ ['60', '60 ' . __('seconds', 'clearfy')],
437
+ ['80', '80 ' . __('seconds', 'clearfy')],
438
+ ['120', '120 ' . __('seconds', 'clearfy')],
439
+ ['150', '150 ' . __('seconds', 'clearfy')],
440
+ ['200', '200 ' . __('seconds', 'clearfy')],
441
+ ['250', '250 ' . __('seconds', 'clearfy')],
442
+ ['300', '300 ' . __('seconds', 'clearfy')],
443
+ ['400', '400 ' . __('seconds', 'clearfy')],
444
+ ['500', '500 ' . __('seconds', 'clearfy')]
445
  ],
446
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
447
+ 'hint' => __('Select the heartbeat frequency wordpress. We recommend you 60 seconds, default is 20 seconds.', 'clearfy'),
448
  'default' => 'default'
449
  ];
450
 
451
  $form_options = [];
452
 
453
  $form_options[] = [
454
+ 'type' => 'form-group',
455
  'items' => $options,
456
  //'cssClass' => 'postbox'
457
  ];
458
 
459
+ return apply_filters('wbcr_clr_code_clean_form_options', $form_options, $this);
460
  }
461
 
462
  /**
463
  * Adds an html warning notification html markup.
464
  */
465
+ public function restApiDangerMessage()
466
+ {
467
  ?>
468
+ <div class="form-group">
469
+ <label class="col-sm-4 control-label"></label>
470
+ <div class="control-group col-sm-8">
471
+ <div id="wbcr-clearfy-rest-api-danger-message" class="wbcr-clearfy-danger-message">
472
+ <?php _e('<b>Use this option carefully!</b><br> Plugins like Contact form 7, Anycomments may have problems using this option.', 'clearfy') ?>
473
+ </div>
474
+ </div>
475
+ </div>
476
  <?php
477
  }
478
 
481
  *
482
  * @return bool
483
  */
484
+ protected function is_post_revision_constant()
485
+ {
486
  $config_path = ABSPATH . '/wp-config.php';
487
 
488
+ if( file_exists($config_path) ) {
489
+ $file = fopen($config_path, 'r');
490
+ $content = fread($file, filesize($config_path));
491
+ fclose($file);
492
 
493
+ if( !empty($content) && preg_match('/define(.+?)WP_POST_REVISIONS/', $content) ) {
494
  return true;
495
  }
496
  }
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 FactoryPages435_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 FactoryPages435_AdminPage
85
  *
86
  */
87
  public function assets($scripts, $styles)
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages440_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
81
  *
82
  * @return void
83
  * @since 1.0.0
84
+ * @see FactoryPages440_AdminPage
85
  *
86
  */
87
  public function assets($scripts, $styles)
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 FactoryPages435_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 FactoryPages440_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 FactoryPages435_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 FactoryPages440_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 FactoryPages435_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 FactoryPages440_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/setup/class-pages-setup.php CHANGED
@@ -11,12 +11,12 @@ 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
 
@@ -24,18 +24,25 @@ class WCL_Setup extends WBCR\FactoryClearfy227\Pages\Setup {
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
  }
@@ -46,7 +53,7 @@ class WCL_Setup extends WBCR\FactoryClearfy227\Pages\Setup {
46
  *
47
  * @return void
48
  * @since 1.0.0
49
- * @see FactoryPages435_AdminPage
50
  *
51
  */
52
  public function assets($scripts, $styles)
11
  exit;
12
  }
13
 
14
+ class WCL_Setup extends WBCR\FactoryClearfy232\Pages\Setup {
15
 
16
  /**
17
+ * @param \Wbcr_Factory441_Plugin $plugin
18
  */
19
+ public function __construct(\Wbcr_Factory441_Plugin $plugin)
20
  {
21
  parent::__construct($plugin);
22
 
24
 
25
  #Step 1
26
  $this->register_step($path . '/class-step-default.php', '\WBCR\Clearfy\Pages\Step_Default');
27
+
28
  #Step 2
29
  $this->register_step($path . '/class-step-google-page-speed-before.php', '\WBCR\Clearfy\Pages\Step_Google_Page_Speed_Before');
30
+
31
  #Step 3
32
  $this->register_step($path . '/class-step-plugins.php', '\WBCR\Clearfy\Pages\Step_Plugins');
33
+
34
  #Step 4
35
  $this->register_step($path . '/class-step-setting-speed-optimize.php', '\WBCR\Clearfy\Pages\Step_Setting_Speed_Optimize');
36
+
37
  #Step 5
38
  $this->register_step($path . '/class-step-setting-seo-optimize.php', '\WBCR\Clearfy\Pages\Step_Setting_Seo');
39
+
40
  #Step 6
41
  $this->register_step($path . '/class-step-optimize-images.php', '\WBCR\Clearfy\Pages\Step_Optimize_Images');
42
+
43
  #Step 7
44
  $this->register_step($path . '/class-step-google-page-speed-after.php', '\WBCR\Clearfy\Pages\Step_Google_Page_Speed_After');
45
+
46
  #Step 8
47
  $this->register_step($path . '/class-step-congratulation.php', '\WBCR\Clearfy\Pages\Step_Congratulation');
48
  }
53
  *
54
  * @return void
55
  * @since 1.0.0
56
+ * @see FactoryPages440_AdminPage
57
  *
58
  */
59
  public function assets($scripts, $styles)
admin/pages/setup/steps/class-step-congratulation.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -24,7 +24,7 @@ class Step_Congratulation extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
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'); ?>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Congratulation extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step6';
14
  protected $id = 'step7';
24
  {
25
  $pricing_page_url = $this->plugin->get_support()->get_pricing_url(true, 'setup_wizard');
26
  ?>
27
+ <div class="w-factory-clearfy-232-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'); ?>
admin/pages/setup/steps/class-step-default.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -21,10 +21,10 @@ class Step_Default extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
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>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Default extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $id = 'step0';
14
  protected $next_id = 'step1';
21
  public function html()
22
  {
23
  ?>
24
+ <div class="w-factory-clearfy-232-setup__inner-wrap">
25
+ <div class="w-factory-clearfy-232-setup-step__new_onboarding-wrapper">
26
+ <p class="w-factory-clearfy-232-setup-step__new_onboarding-welcome">Welcome to</p>
27
+ <h1 class="w-factory-clearfy-232-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>
admin/pages/setup/steps/class-step-google-page-speed-after.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -28,7 +28,7 @@ class Step_Google_Page_Speed_After extends \WBCR\FactoryClearfy227\Pages\Step_Cu
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
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Google_Page_Speed_After extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step5';
14
  protected $id = 'step6';
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-232-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
admin/pages/setup/steps/class-step-google-page-speed-before.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -27,7 +27,7 @@ class Step_Google_Page_Speed_Before extends \WBCR\FactoryClearfy227\Pages\Step_C
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
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Google_Page_Speed_Before extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step0';
14
  protected $id = 'step1';
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-232-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
admin/pages/setup/steps/class-step-optimize-images.php CHANGED
@@ -8,13 +8,13 @@ namespace WBCR\Clearfy\Pages;
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
  }
@@ -58,7 +58,7 @@ class Step_Optimize_Images extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
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"); ?>
@@ -165,7 +165,7 @@ class Step_Optimize_Images extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
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"); ?>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Optimize_Images extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step4';
14
  protected $id = 'step5';
15
  protected $next_id = 'step6';
16
 
17
+ public function __construct(\WBCR\FactoryClearfy232\Pages\Setup $page)
18
  {
19
  parent::__construct($page);
20
  }
58
  ];
59
  ?>
60
 
61
+ <div class="w-factory-clearfy-232-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"); ?>
165
  $install_robin_plugin_btn->add_class('wclearfy-setup__install-component-button');
166
 
167
  ?>
168
+ <div class="w-factory-clearfy-232-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"); ?>
admin/pages/setup/steps/class-step-plugins.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -26,7 +26,7 @@ class Step_Plugins extends \WBCR\FactoryClearfy227\Pages\Step_Custom {
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>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Plugins extends \WBCR\FactoryClearfy232\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step1';
14
  protected $id = 'step2';
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-232-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>
admin/pages/setup/steps/class-step-setting-seo-optimize.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Setting_Seo extends \WBCR\FactoryClearfy232\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step3';
14
  protected $id = 'step4';
admin/pages/setup/steps/class-step-setting-speed-optimize.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
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';
@@ -198,7 +198,7 @@ class Step_Setting_Speed_Optimize extends \WBCR\FactoryClearfy227\Pages\Step_For
198
  'default' => true
199
  ];
200
 
201
- return $options;
202
  }
203
 
204
  /**
@@ -240,4 +240,11 @@ class Step_Setting_Speed_Optimize extends \WBCR\FactoryClearfy227\Pages\Step_For
240
  $this->optimizationDangerMessage(4);
241
  }
242
 
 
 
 
 
 
 
 
243
  }
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Setting_Speed_Optimize extends \WBCR\FactoryClearfy232\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step2';
14
  protected $id = 'step3';
198
  'default' => true
199
  ];
200
 
201
+ return apply_filters('wclearfy/setup_wizard/speed_optimize_step/form_options', $options);
202
  }
203
 
204
  /**
240
  $this->optimizationDangerMessage(4);
241
  }
242
 
243
+ protected function continue_step($skip = false)
244
+ {
245
+ do_action('wclearfy/setup_wizard/speed_optimize_step/continue_step');
246
+
247
+ parent::continue_step();
248
+ }
249
+
250
  }
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: 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
@@ -32,6 +32,7 @@ $plugin_info = array(
32
  'prefix' => 'wbcr_clearfy_',
33
  'plugin_name' => 'wbcr_clearfy',
34
  'plugin_title' => __('Clearfy', 'clearfy'),
 
35
  // PLUGIN SUPPORT
36
  'support_details' => array(
37
  'url' => 'http://clearfy.pro',
@@ -62,6 +63,11 @@ $plugin_info = array(
62
  )
63
  )
64
  ),
 
 
 
 
 
65
  // PLUGIN ADVERTS
66
  'render_adverts' => true,
67
  'adverts_settings' => array(
@@ -71,12 +77,12 @@ $plugin_info = array(
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,7 +122,7 @@ $plugin_info = 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',
@@ -147,7 +153,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_436_VERSION');
151
 
152
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
153
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
@@ -184,4 +190,3 @@ try {
184
  add_action('network_admin_notices', $clearfy_plugin_error_func);
185
  }
186
  // @formatter:on
187
-
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.8.2
8
  * Text Domain: clearfy
9
  * Domain Path: /languages/
10
  * Author URI: http://clearfy.pro
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  // Exit if accessed directly
32
  'prefix' => 'wbcr_clearfy_',
33
  'plugin_name' => 'wbcr_clearfy',
34
  'plugin_title' => __('Clearfy', 'clearfy'),
35
+
36
  // PLUGIN SUPPORT
37
  'support_details' => array(
38
  'url' => 'http://clearfy.pro',
63
  )
64
  )
65
  ),
66
+
67
+ // PLUGIN SUBSCRIBE FORM
68
+ 'subscribe_widget' => true,
69
+ 'subscribe_settings' => ['group_id' => '105407119'],
70
+
71
  // PLUGIN ADVERTS
72
  'render_adverts' => true,
73
  'adverts_settings' => array(
77
  ),
78
  // FRAMEWORK MODULES
79
  'load_factory_modules' => array(
80
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
81
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
82
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
83
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
84
+ array('libs/factory/freemius', 'factory_freemius_128', 'all'),
85
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
86
  ),
87
  'load_plugin_components' => array(
88
  'disable_notices' => array(
122
 
123
 
124
 
125
+ $clearfy_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($plugin_info, array(
126
  'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
127
  'required_php_version' => '5.6',
128
  'required_wp_version' => '4.9.0',
153
 
154
  // Plugin version
155
  define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
156
+ define('WCL_FRAMEWORK_VER', 'FACTORY_441_VERSION');
157
 
158
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
159
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
190
  add_action('network_admin_notices', $clearfy_plugin_error_func);
191
  }
192
  // @formatter:on
 
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_Factory436_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGNZ_Activation extends Wbcr_Factory436_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_Factory441_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGNZ_Activation extends Wbcr_Factory441_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
- WbcrFactoryClearfy227_Helpers::flushPageCache();
207
  }
208
 
209
  wp_send_json_success( [
203
  wbcr_gnz_deploy_mu_plugin();
204
 
205
  // Flush cache for all cache plugins
206
+ WbcrFactoryClearfy232_Helpers::flushPageCache();
207
  }
208
 
209
  wp_send_json_success( [
components/assets-manager/admin/boot.php CHANGED
@@ -8,32 +8,11 @@
8
  */
9
 
10
  // Exit if accessed directly
11
- if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- /**
16
- * Печатает ошибки совместимости с похожими плагинами
17
- */
18
- add_action( 'wbcr/factory/admin_notices', function ( $notices, $plugin_name ) {
19
- if ( $plugin_name != WGZ_Plugin::app()->getPluginName() ) {
20
- return $notices;
21
- }
22
-
23
- $notice_text = __( 'We released great plugin upgrade! But, some plugin settings can\'t be migrated. Please check the disabled assets in the plugin, if they are configured incorrectly, you will need to fix the settings. Make sure the plugin works for you.', 'gonzales' );
24
-
25
- $notices[] = [
26
- 'id' => 'am-great-release-warning',
27
- 'type' => 'warning',
28
- 'dismissible' => true,
29
- 'dismiss_expires' => 0,
30
- 'text' => '<p><b>' . __( 'Assets manager', 'gonzales' ) . ': </b>' . $notice_text . '</p>'
31
- ];
32
-
33
- return $notices;
34
- }, 10, 2 );
35
-
36
- if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
37
 
38
  /**
39
  * Уведомление, которое сообщает о возможности импорта опций из плагина Assets manager в Clearfy
@@ -124,106 +103,109 @@ if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
124
  }
125
  } );*/
126
 
127
- function wbcr_gnz_group_options( $options ) {
 
128
  $options[] = [
129
- 'name' => 'disable_assets_manager',
130
- 'title' => __( 'Disable assets manager', 'gonzales' ),
131
- 'tags' => [],
132
  'values' => []
133
  ];
134
 
135
  $options[] = [
136
- 'name' => 'disable_assets_manager_panel',
137
- 'title' => __( 'Disable assets manager panel', 'gonzales' ),
138
- 'tags' => []
139
  ];
140
 
141
  $options[] = [
142
- 'name' => 'disable_assets_manager_on_front',
143
- 'title' => __( 'Disable assets manager on front', 'gonzales' ),
144
- 'tags' => []
145
  ];
146
 
147
  $options[] = [
148
- 'name' => 'disable_assets_manager_on_backend',
149
- 'title' => __( 'Disable assets manager on back-end', 'gonzales' ),
150
- 'tags' => []
151
  ];
152
 
153
  $options[] = [
154
- 'name' => 'manager_options',
155
- 'title' => __( 'Assets manager options', 'gonzales' ),
156
- 'tags' => []
157
  ];
158
 
159
  return $options;
160
  }
161
 
162
- add_filter( "wbcr_clearfy_group_options", 'wbcr_gnz_group_options' );
163
  } else {
164
 
165
  /**
166
  * Удаляем лишние виджеты в левом сайдбаре
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() ) {
174
- unset( $widgets['business_suggetion'] );
175
-
176
- if ( $position == 'right' ) {
177
- unset( $widgets['donate_widget'] );
178
- unset( $widgets['rating_widget'] );
179
- unset( $widgets['info_widget'] );
180
  }
181
  }
182
 
183
  return $widgets;
184
- }, 20, 3 );
185
 
186
  /**
187
  * Заменяем премиум возможности в бизнес виджете
188
  *
189
- * @param array $features
190
  * @param string $page_id
191
  * @param string $plugin
192
  */
193
- add_filter( 'wbcr/clearfy/pages/suggetion_features', function ( $features, $plugin_name, $page_id ) {
194
 
195
- if ( ! empty( $plugin_name ) && ( $plugin_name == WGZ_Plugin::app()->getPluginName() ) ) {
196
- $upgrade_feature = [];
197
- $upgrade_feature[] = __( 'Disable plugins (groups of scripts)', 'gonzales' );
198
- $upgrade_feature[] = __( 'Conditions by the link template', 'gonzales' );
199
- $upgrade_feature[] = __( 'Conditions by the regular expression', 'gonzales' );
200
- $upgrade_feature[] = __( 'Safe mode', 'gonzales' );
201
- $upgrade_feature[] = __( 'Statistics and optimization results', 'gonzales' );
202
 
203
  return $upgrade_feature;
204
  }
205
 
206
  return $features;
207
- }, 20, 3 );
208
 
209
- function wbcr_gnz_set_plugin_meta( $links, $file ) {
210
- if ( $file == WGZ_PLUGIN_BASE ) {
211
- $url = WGZ_Plugin::app()->get_support()->get_tracking_page_url( 'assets-manager', 'plugin_row' );
212
- $links[] = '<a href="' . $url . '" style="color: #FF5722;font-weight: bold;" target="_blank">' . __( 'Get premium', 'gonzales' ) . '</a>';
 
213
  }
214
 
215
  return $links;
216
  }
217
 
218
- add_filter( 'plugin_row_meta', 'wbcr_gnz_set_plugin_meta', 10, 2 );
219
 
220
- function wbcr_gnz_rating_widget_url( $page_url, $plugin_name ) {
221
- if ( ! defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) && ( $plugin_name == WGZ_Plugin::app()->getPluginName() ) ) {
 
222
  return 'https://goo.gl/zyNV6z';
223
  }
224
 
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
  }
8
  */
9
 
10
  // Exit if accessed directly
11
+ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
+ if( defined('LOADING_ASSETS_MANAGER_AS_ADDON') ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
  /**
18
  * Уведомление, которое сообщает о возможности импорта опций из плагина Assets manager в Clearfy
103
  }
104
  } );*/
105
 
106
+ function wbcr_gnz_group_options($options)
107
+ {
108
  $options[] = [
109
+ 'name' => 'disable_assets_manager',
110
+ 'title' => __('Disable assets manager', 'gonzales'),
111
+ 'tags' => [],
112
  'values' => []
113
  ];
114
 
115
  $options[] = [
116
+ 'name' => 'disable_assets_manager_panel',
117
+ 'title' => __('Disable assets manager panel', 'gonzales'),
118
+ 'tags' => []
119
  ];
120
 
121
  $options[] = [
122
+ 'name' => 'disable_assets_manager_on_front',
123
+ 'title' => __('Disable assets manager on front', 'gonzales'),
124
+ 'tags' => []
125
  ];
126
 
127
  $options[] = [
128
+ 'name' => 'disable_assets_manager_on_backend',
129
+ 'title' => __('Disable assets manager on back-end', 'gonzales'),
130
+ 'tags' => []
131
  ];
132
 
133
  $options[] = [
134
+ 'name' => 'manager_options',
135
+ 'title' => __('Assets manager options', 'gonzales'),
136
+ 'tags' => []
137
  ];
138
 
139
  return $options;
140
  }
141
 
142
+ add_filter("wbcr_clearfy_group_options", 'wbcr_gnz_group_options');
143
  } else {
144
 
145
  /**
146
  * Удаляем лишние виджеты в левом сайдбаре
147
  *
148
+ * @param array $widgets
149
+ * @param string $position
150
+ * @param Wbcr_Factory441_Plugin $plugin
151
  */
152
+ add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
153
+ if( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
154
+ unset($widgets['business_suggetion']);
155
+
156
+ if( $position == 'right' ) {
157
+ unset($widgets['donate_widget']);
158
+ unset($widgets['rating_widget']);
159
+ unset($widgets['info_widget']);
160
  }
161
  }
162
 
163
  return $widgets;
164
+ }, 20, 3);
165
 
166
  /**
167
  * Заменяем премиум возможности в бизнес виджете
168
  *
169
+ * @param array $features
170
  * @param string $page_id
171
  * @param string $plugin
172
  */
173
+ add_filter('wbcr/clearfy/pages/suggetion_features', function ($features, $plugin_name, $page_id) {
174
 
175
+ if( !empty($plugin_name) && ($plugin_name == WGZ_Plugin::app()->getPluginName()) ) {
176
+ $upgrade_feature = [];
177
+ $upgrade_feature[] = __('Disable plugins (groups of scripts)', 'gonzales');
178
+ $upgrade_feature[] = __('Conditions by the link template', 'gonzales');
179
+ $upgrade_feature[] = __('Conditions by the regular expression', 'gonzales');
180
+ $upgrade_feature[] = __('Safe mode', 'gonzales');
181
+ $upgrade_feature[] = __('Statistics and optimization results', 'gonzales');
182
 
183
  return $upgrade_feature;
184
  }
185
 
186
  return $features;
187
+ }, 20, 3);
188
 
189
+ function wbcr_gnz_set_plugin_meta($links, $file)
190
+ {
191
+ if( $file == WGZ_PLUGIN_BASE ) {
192
+ $url = WGZ_Plugin::app()->get_support()->get_tracking_page_url('assets-manager', 'plugin_row');
193
+ $links[] = '<a href="' . $url . '" style="color: #FF5722;font-weight: bold;" target="_blank">' . __('Get premium', 'gonzales') . '</a>';
194
  }
195
 
196
  return $links;
197
  }
198
 
199
+ add_filter('plugin_row_meta', 'wbcr_gnz_set_plugin_meta', 10, 2);
200
 
201
+ function wbcr_gnz_rating_widget_url($page_url, $plugin_name)
202
+ {
203
+ if( !defined('LOADING_ASSETS_MANAGER_AS_ADDON') && ($plugin_name == WGZ_Plugin::app()->getPluginName()) ) {
204
  return 'https://goo.gl/zyNV6z';
205
  }
206
 
207
  return $page_url;
208
  }
209
 
210
+ add_filter('wbcr_factory_pages_440_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2);
211
  }
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_FactoryClearfy227_MoreFeaturesPage {
21
 
22
  }
17
  *
18
  * @copyright (c) 2018 Webraftic Ltd
19
  */
20
+ class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy232_MoreFeaturesPage {
21
 
22
  }
components/assets-manager/admin/pages/class-pages-settings.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
  exit;
5
  }
6
 
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
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,7 +24,7 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy227_PageBase {
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
- * @see FactoryPages435_AdminPage
28
  *
29
  * @var string
30
  */
@@ -48,20 +48,22 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy227_PageBase {
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' ) ) {
57
- $this->internal = false;
58
- $this->menu_target = 'options-general.php';
59
  $this->add_link_to_plugin_actions = true;
 
60
  } else {
61
  $this->page_parent_page = 'performance';
62
  }
63
 
64
- parent::__construct( $plugin );
65
  }
66
 
67
  /**
@@ -69,97 +71,100 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy227_PageBase {
69
  *
70
  * @return string|void
71
  */
72
- public function getMenuTitle() {
73
- return defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ? __( 'General', 'hide-login-page' ) : __( 'Assets manager', 'gonzales' );
 
74
  }
75
 
76
  /**
77
  * @return string|void *
78
  */
79
- public function getPageTitle() {
80
- return defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ? __( 'Assets manager', 'gonzales' ) : __( 'General', 'hide-login-page' );
 
81
  }
82
 
83
  /**
84
  * Permalinks options.
85
  *
86
- * @since 1.0.0
87
  * @return mixed[]
 
88
  */
89
- public function getPageOptions() {
90
- $options = [];
 
91
  $options[] = [
92
  'type' => 'html',
93
- 'html' => '<div class="wbcr-factory-page-group-header"><strong>' . __( 'Disable unused scripts, styles, and fonts', 'gonzales' ) . '</strong><p>' . __( 'There is a button in the adminbar called "Script Manager". If you click on it you will see a list of loaded scripts, styles and fonts on the current page of your site. If you think that one of the assets is superfluous on this page, you can disable it individually, so that it does not create unnecessary queries when page loading. Use the script manager very carefull to non-corrupt your website. We recommend to test this function at a local server.', 'gonzales' ) . '</p></div>'
94
  ];
95
 
96
  $options[] = [
97
- 'type' => 'checkbox',
98
- 'way' => 'buttons',
99
- 'name' => 'disable_assets_manager',
100
- 'title' => __( 'Disable assets manager', 'gonzales' ),
101
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
102
- 'hint' => __( 'Full disable of the module.', 'gonzales' ),
103
- 'eventsOn' => [
104
  'hide' => '#wbcr-gnz-asset-manager-extend-options'
105
  ],
106
  'eventsOff' => [
107
  'show' => '#wbcr-gnz-asset-manager-extend-options'
108
  ],
109
- 'default' => false
110
  ];
111
 
112
  $options[] = [
113
- 'type' => 'div',
114
- 'id' => 'wbcr-gnz-asset-manager-extend-options',
115
  'items' => [
116
  [
117
- 'type' => 'separator',
118
  'cssClass' => 'factory-separator-dashed'
119
  ],
120
  [
121
- 'type' => 'checkbox',
122
- 'way' => 'buttons',
123
- 'name' => 'disable_assets_manager_panel',
124
- 'title' => __( 'Disable assets manager panel', 'gonzales' ),
125
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'green' ],
126
- 'hint' => __( 'By default in your admin bar there is a button for control the assets scripts and styles. With this option, you can turn off the script manager on front and back-end.', 'gonzales' ),
127
  'default' => false
128
  ],
129
  [
130
- 'type' => 'checkbox',
131
- 'way' => 'buttons',
132
- 'name' => 'disable_assets_manager_on_front',
133
- 'title' => __( 'Disable assets manager on front', 'gonzales' ),
134
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
135
- 'hint' => __( 'Disables assets manager initialization for frontend.', 'gonzales' ),
136
  'default' => false
137
  ],
138
  [
139
- 'type' => 'checkbox',
140
- 'way' => 'buttons',
141
- 'name' => 'disable_assets_manager_on_backend',
142
- 'title' => __( 'Disable assets manager on back-end', 'gonzales' ),
143
- 'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
144
- 'hint' => __( 'Disables assets manager initialization for backend.', 'gonzales' ),
145
  'default' => true
146
  ]
147
  ]
148
  ];
149
 
150
  $options[] = [
151
- 'type' => 'separator',
152
  'cssClass' => 'factory-separator-dashed'
153
  ];
154
 
155
  $formOptions = [];
156
 
157
  $formOptions[] = [
158
- 'type' => 'form-group',
159
  'items' => $options,
160
  //'cssClass' => 'postbox'
161
  ];
162
 
163
- return apply_filters( 'wbcr_gnz_assets_manager_options', $formOptions );
164
  }
165
  }
1
  <?php
2
  // Exit if accessed directly
3
+ if( !defined('ABSPATH') ) {
4
  exit;
5
  }
6
 
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy232_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 FactoryPages440_AdminPage
28
  *
29
  * @var string
30
  */
48
  public $available_for_multisite = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory441_Plugin $plugin
52
  */
53
+ public function __construct(Wbcr_Factory441_Plugin $plugin)
54
+ {
55
+ $this->menu_title = __('Assets manager', 'gonzales');
56
 
57
+ if( !defined('LOADING_ASSETS_MANAGER_AS_ADDON') ) {
58
+ $this->internal = false;
59
+ $this->menu_target = 'options-general.php';
60
  $this->add_link_to_plugin_actions = true;
61
+ $this->show_search_options_form = false;
62
  } else {
63
  $this->page_parent_page = 'performance';
64
  }
65
 
66
+ parent::__construct($plugin);
67
  }
68
 
69
  /**
71
  *
72
  * @return string|void
73
  */
74
+ public function getMenuTitle()
75
+ {
76
+ return defined('LOADING_ASSETS_MANAGER_AS_ADDON') ? __('General', 'hide-login-page') : __('Assets manager', 'gonzales');
77
  }
78
 
79
  /**
80
  * @return string|void *
81
  */
82
+ public function getPageTitle()
83
+ {
84
+ return defined('LOADING_ASSETS_MANAGER_AS_ADDON') ? __('Assets manager', 'gonzales') : __('General', 'hide-login-page');
85
  }
86
 
87
  /**
88
  * Permalinks options.
89
  *
 
90
  * @return mixed[]
91
+ * @since 1.0.0
92
  */
93
+ public function getPageOptions()
94
+ {
95
+ $options = [];
96
  $options[] = [
97
  'type' => 'html',
98
+ 'html' => '<div class="wbcr-factory-page-group-header"><strong>' . __('Disable unused scripts, styles, and fonts', 'gonzales') . '</strong><p>' . __('There is a button in the adminbar called "Script Manager". If you click on it you will see a list of loaded scripts, styles and fonts on the current page of your site. If you think that one of the assets is superfluous on this page, you can disable it individually, so that it does not create unnecessary queries when page loading. Use the script manager very carefull to non-corrupt your website. We recommend to test this function at a local server.', 'gonzales') . '</p></div>'
99
  ];
100
 
101
  $options[] = [
102
+ 'type' => 'checkbox',
103
+ 'way' => 'buttons',
104
+ 'name' => 'disable_assets_manager',
105
+ 'title' => __('Disable assets manager', 'gonzales'),
106
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
107
+ 'hint' => __('Full disable of the module.', 'gonzales'),
108
+ 'eventsOn' => [
109
  'hide' => '#wbcr-gnz-asset-manager-extend-options'
110
  ],
111
  'eventsOff' => [
112
  'show' => '#wbcr-gnz-asset-manager-extend-options'
113
  ],
114
+ 'default' => false
115
  ];
116
 
117
  $options[] = [
118
+ 'type' => 'div',
119
+ 'id' => 'wbcr-gnz-asset-manager-extend-options',
120
  'items' => [
121
  [
122
+ 'type' => 'separator',
123
  'cssClass' => 'factory-separator-dashed'
124
  ],
125
  [
126
+ 'type' => 'checkbox',
127
+ 'way' => 'buttons',
128
+ 'name' => 'disable_assets_manager_panel',
129
+ 'title' => __('Disable assets manager panel', 'gonzales'),
130
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'green'],
131
+ 'hint' => __('By default in your admin bar there is a button for control the assets scripts and styles. With this option, you can turn off the script manager on front and back-end.', 'gonzales'),
132
  'default' => false
133
  ],
134
  [
135
+ 'type' => 'checkbox',
136
+ 'way' => 'buttons',
137
+ 'name' => 'disable_assets_manager_on_front',
138
+ 'title' => __('Disable assets manager on front', 'gonzales'),
139
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
140
+ 'hint' => __('Disables assets manager initialization for frontend.', 'gonzales'),
141
  'default' => false
142
  ],
143
  [
144
+ 'type' => 'checkbox',
145
+ 'way' => 'buttons',
146
+ 'name' => 'disable_assets_manager_on_backend',
147
+ 'title' => __('Disable assets manager on back-end', 'gonzales'),
148
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
149
+ 'hint' => __('Disables assets manager initialization for backend.', 'gonzales'),
150
  'default' => true
151
  ]
152
  ]
153
  ];
154
 
155
  $options[] = [
156
+ 'type' => 'separator',
157
  'cssClass' => 'factory-separator-dashed'
158
  ];
159
 
160
  $formOptions = [];
161
 
162
  $formOptions[] = [
163
+ 'type' => 'form-group',
164
  'items' => $options,
165
  //'cssClass' => 'postbox'
166
  ];
167
 
168
+ return apply_filters('wbcr_gnz_assets_manager_options', $formOptions);
169
  }
170
  }
components/assets-manager/assets/css/assets-conditions.css CHANGED
@@ -1,174 +1,175 @@
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
- }
 
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 */
components/assets-manager/assets/css/assets-manager.css CHANGED
@@ -1,1208 +1,1209 @@
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
- }
 
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 */
components/assets-manager/gonzales.php CHANGED
@@ -4,15 +4,15 @@
4
  * Plugin URI: https://wordpress.org/plugins/gonzales/
5
  * Description: Increase the speed of the pages by disabling unused scripts (.JS) and styles (.CSS). Make your website REACTIVE!
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 2.0.5
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
15
- if ( ! defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
 
@@ -37,54 +37,57 @@ if ( ! defined( 'ABSPATH' ) ) {
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
41
 
42
  // @formatter:off
43
  $wgnz_plugin_info = array(
44
- 'prefix' => 'wbcr_gnz_',
45
- 'plugin_name' => 'wbcr_gonzales',
46
- 'plugin_title' => __( 'Webcraftic assets manager', 'gonzales' ),
47
 
48
  // PLUGIN SUPPORT
49
- 'support_details' => array(
50
- 'url' => 'https://clearfy.pro',
51
  'pages_map' => array(
52
- 'support' => 'support', // {site}/support
53
- 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
 
 
 
 
57
  // PLUGIN ADVERTS
58
  'render_adverts' => true,
59
- 'adverts_settings' => array(
60
  'dashboard_widget' => true, // show dashboard widget (default: false)
61
- 'right_sidebar' => true, // show adverts sidebar (default: false)
62
- 'notice' => true, // show notice message (default: false)
63
  ),
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',
79
  'required_clearfy_check_component' => false
80
- ) ) );
81
-
82
 
83
  /**
84
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
85
  * and the user will throw a warning.
86
  */
87
- if ( ! $wgnz_compatibility->check() ) {
88
  return;
89
  }
90
 
@@ -97,12 +100,11 @@ if ( ! $wgnz_compatibility->check() ) {
97
  */
98
 
99
  // This plugin is activated
100
- define( 'WGZ_PLUGIN_ACTIVE', true );
101
- define( 'WGZ_PLUGIN_VERSION', $wgnz_compatibility->get_plugin_version() );
102
- define( 'WGZ_PLUGIN_DIR', dirname( __FILE__ ) );
103
- define( 'WGZ_PLUGIN_BASE', plugin_basename( __FILE__ ) );
104
- define( 'WGZ_PLUGIN_URL', plugins_url( null, __FILE__ ) );
105
-
106
 
107
 
108
 
@@ -112,26 +114,25 @@ define( 'WGZ_PLUGIN_URL', plugins_url( null, __FILE__ ) );
112
  * -----------------------------------------------------------------------------
113
  */
114
 
115
- require_once ( WGZ_PLUGIN_DIR . '/libs/factory/core/boot.php' );
116
- require_once ( WGZ_PLUGIN_DIR . '/includes/functions.php' );
117
- require_once ( WGZ_PLUGIN_DIR . '/includes/class-plugin.php' );
118
-
119
 
120
  try {
121
- new WGZ_Plugin( __FILE__, array_merge( $wgnz_plugin_info, array(
122
- 'plugin_version' => WGZ_PLUGIN_VERSION,
123
  'plugin_text_domain' => $wgnz_compatibility->get_text_domain(),
124
- ) ) );
125
  } catch( Exception $e ) {
126
  // Plugin wasn't initialized due to an error
127
- define( 'WGZ_PLUGIN_THROW_ERROR', true );
128
 
129
- $wgnz_plugin_error_func = function () use ( $e ) {
130
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Assets Manager', $e->getMessage(), $e->getCode() );
131
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
132
  };
133
 
134
- add_action( 'admin_notices', $wgnz_plugin_error_func );
135
- add_action( 'network_admin_notices', $wgnz_plugin_error_func );
136
  }
137
  // @formatter:on
4
  * Plugin URI: https://wordpress.org/plugins/gonzales/
5
  * Description: Increase the speed of the pages by disabling unused scripts (.JS) and styles (.CSS). Make your website REACTIVE!
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 2.0.7
8
  * Text Domain: gonzales
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  // Exit if accessed directly
15
+ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
41
 
42
  // @formatter:off
43
  $wgnz_plugin_info = array(
44
+ 'prefix' => 'wbcr_gnz_',
45
+ 'plugin_name' => 'wbcr_gonzales',
46
+ 'plugin_title' => __('Webcraftic assets manager', 'gonzales'),
47
 
48
  // PLUGIN SUPPORT
49
+ 'support_details' => array(
50
+ 'url' => 'https://clearfy.pro',
51
  'pages_map' => array(
52
+ 'support' => 'support', // {site}/support
53
+ 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
57
+ // PLUGIN SUBSCRIBE FORM
58
+ 'subscribe_widget' => true,
59
+ 'subscribe_settings' => ['group_id' => '105408913'],
60
+
61
  // PLUGIN ADVERTS
62
  'render_adverts' => true,
63
+ 'adverts_settings' => array(
64
  'dashboard_widget' => true, // show dashboard widget (default: false)
65
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
66
+ 'notice' => true, // show notice message (default: false)
67
  ),
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
76
  )
77
  );
78
 
79
+ $wgnz_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($wgnz_plugin_info, array(
80
+ 'plugin_already_activate' => defined('WGZ_PLUGIN_ACTIVE'),
81
+ 'required_php_version' => '5.4',
82
+ 'required_wp_version' => '4.2.0',
83
  'required_clearfy_check_component' => false
84
+ )));
 
85
 
86
  /**
87
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
88
  * and the user will throw a warning.
89
  */
90
+ if( !$wgnz_compatibility->check() ) {
91
  return;
92
  }
93
 
100
  */
101
 
102
  // This plugin is activated
103
+ define('WGZ_PLUGIN_ACTIVE', true);
104
+ define('WGZ_PLUGIN_VERSION', $wgnz_compatibility->get_plugin_version());
105
+ define('WGZ_PLUGIN_DIR', dirname(__FILE__));
106
+ define('WGZ_PLUGIN_BASE', plugin_basename(__FILE__));
107
+ define('WGZ_PLUGIN_URL', plugins_url(null, __FILE__));
 
108
 
109
 
110
 
114
  * -----------------------------------------------------------------------------
115
  */
116
 
117
+ require_once(WGZ_PLUGIN_DIR . '/libs/factory/core/boot.php');
118
+ require_once(WGZ_PLUGIN_DIR . '/includes/functions.php');
119
+ require_once(WGZ_PLUGIN_DIR . '/includes/class-plugin.php');
 
120
 
121
  try {
122
+ new WGZ_Plugin(__FILE__, array_merge($wgnz_plugin_info, array(
123
+ 'plugin_version' => WGZ_PLUGIN_VERSION,
124
  'plugin_text_domain' => $wgnz_compatibility->get_text_domain(),
125
+ )));
126
  } catch( Exception $e ) {
127
  // Plugin wasn't initialized due to an error
128
+ define('WGZ_PLUGIN_THROW_ERROR', true);
129
 
130
+ $wgnz_plugin_error_func = function () use ($e) {
131
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Assets Manager', $e->getMessage(), $e->getCode());
132
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
133
  };
134
 
135
+ add_action('admin_notices', $wgnz_plugin_error_func);
136
+ add_action('network_admin_notices', $wgnz_plugin_error_func);
137
  }
138
  // @formatter:on
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_Factory436_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
- * @var Wbcr_Factory436_Plugin
19
  */
20
  private static $app;
21
 
@@ -53,7 +53,7 @@ class WGZ_Plugin extends Wbcr_Factory436_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory436_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_Factory441_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
+ * @var Wbcr_Factory441_Plugin
19
  */
20
  private static $app;
21
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory441_Plugin|\WGZ_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
components/assets-manager/includes/classes/class-assets-manager-global.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
  exit;
5
  }
6
 
@@ -20,10 +20,13 @@ class WGZ_Assets_Manager_Public {
20
  */
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();
@@ -34,78 +37,80 @@ class WGZ_Assets_Manager_Public {
34
  *
35
  * User must have administrator or super administrator permissions to use the plugin.
36
  *
37
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
38
- * @since 1.1.0
39
  * @return bool
 
 
40
  */
41
- protected function is_user_can() {
42
- return current_user_can( 'manage_options' ) || current_user_can( 'manage_network' );
 
43
  }
44
 
45
  /**
46
  * Initilize entire machine
47
  */
48
- protected function register_hooks() {
49
- if ( $this->plugin->getPopulateOption( 'disable_assets_manager', false ) ) {
 
50
  return;
51
  }
52
 
53
- $on_frontend = $this->plugin->getPopulateOption( 'disable_assets_manager_on_front' );
54
- $on_backend = $this->plugin->getPopulateOption( 'disable_assets_manager_on_backend', true );
55
- $is_panel = $this->plugin->getPopulateOption( 'disable_assets_manager_panel' );
56
 
57
- if ( ( ! is_admin() && ! $on_frontend ) || ( is_admin() && ! $on_backend ) ) {
58
- add_filter( 'script_loader_src', [ $this, 'filter_load_assets' ], 10, 2 );
59
- add_filter( 'style_loader_src', [ $this, 'filter_load_assets' ], 10, 2 );
60
  }
61
 
62
- if ( ! $is_panel && ( ( is_admin() && ! $on_backend ) || ( ! is_admin() && ! $on_frontend ) ) ) {
63
- if ( ! is_admin() ) {
64
- add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_plugin_scripts' ], - 100001 );
65
- add_action( 'wp_footer', [ $this, 'assets_manager_render_template' ], 100001 );
66
  } else {
67
- add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_plugin_scripts' ], - 100001 );
68
- add_action( 'admin_footer', [ $this, 'assets_manager_render_template' ], 100001 );
69
  }
70
 
71
- add_action( 'wam/views/safe_mode_checkbox', [ $this, 'print_save_mode_fake_checkbox' ] );
72
  }
73
 
74
- if ( ! is_admin() && ! $on_frontend ) {
75
- add_action( 'wp_head', [ $this, 'collect_assets' ], 10000 );
76
- add_action( 'wp_footer', [ $this, 'collect_assets' ], 10000 );
77
  }
78
 
79
- if ( is_admin() && ! $on_backend ) {
80
- add_action( 'admin_head', [ $this, 'collect_assets' ], 10000 );
81
- add_action( 'admin_footer', [ $this, 'collect_assets' ], 10000 );
82
  }
83
 
84
- if ( ! $is_panel && ( ( is_admin() && ! $on_backend ) || ( ! is_admin() && ! $on_frontend ) ) ) {
85
- if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
86
- add_action( 'wbcr/clearfy/adminbar_menu_items', [ $this, 'clearfy_admin_bar_menu_filter' ] );
87
  } else {
88
- add_action( 'admin_bar_menu', [ $this, 'assets_manager_add_admin_bar_menu' ], 1000 );
89
  }
90
  }
91
 
92
  # Reset plugin settings and clean source code
93
  //add_action( 'template_redirect', [ $this, 'redirects' ], 9999 );
94
- add_action( 'init', [ $this, 'redirects' ], 9999 );
95
 
96
  ##Login/Logout
97
- add_action( 'wp_login', [ $this, 'user_logged_in' ], 99, 2 );
98
- add_action( 'wp_logout', [ $this, 'user_logged_out' ] );
99
 
100
  // Stop optimizing scripts and caching the asset manager page.
101
  //add_action( 'plugins_loaded', [ $this, 'stop_caching_and_script_optimize' ] );
102
  $this->stop_caching_and_script_optimize();
103
 
104
  // Disable autoptimize on Assets manager page
105
- add_filter( 'autoptimize_filter_noptimize', [ $this, 'autoptimize_noptimize' ], 10, 0 );
106
- add_filter( 'wmac_filter_noptimize', [ $this, 'autoptimize_noptimize' ], 10, 0 );
107
 
108
- if ( wp_doing_ajax() ) {
109
  require_once WGZ_PLUGIN_DIR . '/admin/ajax/save-settings.php';
110
  }
111
  }
@@ -113,20 +118,21 @@ class WGZ_Assets_Manager_Public {
113
  /**
114
  * Render a fake checkbox to show for user, it is pro feature.
115
  *
116
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
117
  * @since 1.1
118
  *
119
- * @param array $data Temlate data
120
  */
121
- public function print_save_mode_fake_checkbox( $data ) {
122
- if ( defined( 'WGZP_PLUGIN_ACTIVE' ) ) {
 
123
  return;
124
  }
125
  ?>
126
- <label class="wam-float-panel__checkbox wam-tooltip wam-tooltip--bottom" data-tooltip="<?php _e( 'In test mode, you can experiment with disabling unused scripts safely for your site. The resources that you disabled will be visible only to you (the administrator), and all other users will receive an unoptimized version of the site, until you remove this tick', 'gonzales' ) ?>.">
127
- <input class="wam-float-panel__checkbox-input visually-hidden" type="checkbox"<?php checked( $data['save_mode'] ) ?>>
128
- <span class="wam-float-panel__checkbox-text-premium"><?php _e( 'Safe mode <b>PRO</b>', 'gonzales' ) ?></span>
129
- </label>
130
  <?php
131
  }
132
 
@@ -136,19 +142,20 @@ class WGZ_Assets_Manager_Public {
136
  * MU plugin will use cookie for identity user role. We can't use all wordpress
137
  * features before full wp load.
138
  *
 
 
139
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
140
  * @since 2.0.0
141
  *
142
- * @param string $login
143
- * @param string $user
144
  */
145
- public function user_logged_in( $login, $user = null ) {
146
- if ( is_null( $user ) ) {
 
147
  $user = wp_get_current_user();
148
  }
149
 
150
- foreach ( $user->roles as $key => $role ) {
151
- setcookie( 'wam_assigned_roles[' . $key . ']', $role, 0, "/" );
152
  }
153
  }
154
 
@@ -158,10 +165,11 @@ class WGZ_Assets_Manager_Public {
158
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
159
  * @since 2.0.0
160
  */
161
- public function user_logged_out() {
162
- if ( isset( $_COOKIE['wam_assigned_roles'] ) && is_array( $_COOKIE['wam_assigned_roles'] ) ) {
163
- foreach ( $_COOKIE['wam_assigned_roles'] as $key => $cookie_val ) {
164
- setcookie( 'wam_assigned_roles[' . $key . ']', '', time() - 999999, "/" );
 
165
  }
166
  }
167
  }
@@ -181,53 +189,55 @@ class WGZ_Assets_Manager_Public {
181
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
182
  * @since 1.0.8
183
  */
184
- public function stop_caching_and_script_optimize() {
185
- if ( ! isset( $_GET['wbcr_assets_manager'] ) ) {
 
186
  return;
187
  }
188
 
189
- if ( ! defined( 'DONOTCACHEPAGE' ) ) {
190
- define( 'DONOTCACHEPAGE', true );
191
  }
192
 
193
- if ( ! defined( 'DONOTCACHCEOBJECT' ) ) {
194
- define( 'DONOTCACHCEOBJECT', true );
195
  }
196
 
197
- if ( ! defined( 'DONOTMINIFY' ) ) {
198
- define( 'DONOTMINIFY', true );
199
  }
200
 
201
- if ( ! defined( 'DONOTROCKETOPTIMIZE' ) ) {
202
- define( 'DONOTROCKETOPTIMIZE', true );
203
  }
204
 
205
- if ( ! defined( 'DONOTMINIFYJS' ) ) {
206
- define( 'DONOTMINIFYJS', true );
207
  }
208
 
209
- if ( ! defined( 'DONOTASYNCCSS' ) ) {
210
- define( 'DONOTASYNCCSS', true );
211
  }
212
 
213
- if ( ! defined( 'DONOTMINIFYCSS' ) ) {
214
- define( 'DONOTMINIFYCSS', true );
215
  }
216
 
217
- if ( ! defined( 'WHM_DO_NOT_HIDE_WP' ) ) {
218
- define( 'WHM_DO_NOT_HIDE_WP', true );
219
  }
220
  }
221
 
222
  /**
223
  * Disable autoptimize on Assets manager page
224
  *
225
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
226
- * @since 1.0.8
227
  * @return bool
 
 
228
  */
229
- public function autoptimize_noptimize() {
230
- if ( ! isset( $_GET['wbcr_assets_manager'] ) ) {
 
231
  return false;
232
  }
233
 
@@ -242,8 +252,9 @@ class WGZ_Assets_Manager_Public {
242
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
243
  * @since 1.1.0
244
  */
245
- public function redirects() {
246
- if ( ! isset( $_GET['wbcr_assets_manager'] ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
 
247
  return;
248
  }
249
 
@@ -254,19 +265,20 @@ class WGZ_Assets_Manager_Public {
254
  /**
255
  * Adds a link in Clearfy admin bar menu to go to the Assets manager
256
  *
 
 
 
257
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
258
  * @since 1.1.0
259
  *
260
- * @param array $menu_items Array links of Clearfy menu
261
- *
262
- * @return mixed
263
  */
264
- public function clearfy_admin_bar_menu_filter( $menu_items ) {
265
- $current_url = add_query_arg( [ 'wbcr_assets_manager' => 1 ] );
 
266
 
267
  $menu_items['assets_manager_render_template'] = [
268
- 'title' => '<span class="dashicons dashicons-list-view"></span> ' . __( 'Assets Manager', 'gonzales' ),
269
- 'href' => $current_url
270
  ];
271
 
272
  return $menu_items;
@@ -275,20 +287,21 @@ class WGZ_Assets_Manager_Public {
275
  /**
276
  * Add Assets Manager menu to admin bar.
277
  *
278
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
279
  * @since 1.1.0
280
  *
281
- * @param WP_Admin_Bar $wp_admin_bar
282
  */
283
- public function assets_manager_add_admin_bar_menu( $wp_admin_bar ) {
284
- $current_url = add_query_arg( [ 'wbcr_assets_manager' => 1 ] );
 
285
 
286
  $args = [
287
- 'id' => 'assets_manager_render_template',
288
- 'title' => __( 'Assets Manager', 'gonzales' ),
289
- 'href' => $current_url
290
  ];
291
- $wp_admin_bar->add_node( $args );
292
  }
293
 
294
  /**
@@ -296,27 +309,30 @@ class WGZ_Assets_Manager_Public {
296
  *
297
  * This is callback function for admin_footer and wp_footer hooks.
298
  *
299
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
300
- * @since 2.0.0
301
  * @throws \Exception
 
 
302
  */
303
- public function assets_manager_render_template() {
304
- if ( ! $this->is_user_can() || ! isset( $_GET['wbcr_assets_manager'] ) ) {
 
305
  return;
306
  }
307
 
 
 
308
  $settings = $this->get_settings();
309
 
310
- $views = new WGZ_Views( WGZ_PLUGIN_DIR );
311
- $views->print_template( 'assets-manager', [
312
- 'save_mode' => isset( $settings['save_mode'] ) ? (bool) $settings['save_mode'] : false,
313
- 'collection' => $this->collection,
314
- 'loaded_plugins' => $this->get_loaded_plugins(),
315
- 'theme_assets' => $this->get_collected_assets( 'theme' ),
316
- 'misc_assets' => $this->get_collected_assets( 'misc' ),
317
- 'conditions_logic_params' => $this->get_conditions_login_params( true ),
318
- 'settings' => $settings
319
- ] );
320
 
321
  $this->print_plugin_scripts();
322
  }
@@ -326,52 +342,53 @@ class WGZ_Assets_Manager_Public {
326
  *
327
  * If enabled save mode or onened Assets Manager panel, assets will not be filtered. *
328
  *
329
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
330
- * @since 2.0.0
331
- *
332
  * @param string $src
333
  * @param string $handle
334
  *
335
  * @return bool
336
  * @throws \Exception
 
 
 
337
  */
338
- public function filter_load_assets( $src, $handle ) {
 
339
  $settings = $this->get_settings();
340
 
341
- if ( isset( $_GET['wbcr_assets_manager'] ) || empty( $settings ) || ( true === $settings['save_mode'] && ! $this->is_user_can() ) ) {
342
  return $src;
343
  }
344
 
345
  require_once WGZ_PLUGIN_DIR . '/includes/classes/class-check-conditions.php';
346
 
347
- $resource_type = ( current_filter() == 'script_loader_src' ) ? 'js' : 'css';
348
  $resource_visability = "";
349
 
350
- if ( ! empty( $settings['plugins'] ) ) {
351
- foreach ( (array) $settings['plugins'] as $plugin_name => $plugin ) {
352
- if ( ! empty( $plugin[ $resource_type ] ) && isset( $plugin[ $resource_type ][ $handle ] ) ) {
353
- if ( 'disable_assets' === $plugin['load_mode'] ) {
354
  $resource_visability = $plugin['visability'];
355
- } else if ( 'disable_plugin' === $plugin['load_mode'] ) {
356
  return $src;
357
  } else {
358
- $resource_visability = $plugin[ $resource_type ][ $handle ]['visability'];
359
  }
360
  break;
361
  }
362
  }
363
  }
364
 
365
- foreach ( [ 'theme', 'misc' ] as $group_name ) {
366
- if ( ! empty( $settings[ $group_name ] ) && ! empty( $settings[ $group_name ][ $resource_type ] ) && isset( $settings[ $group_name ][ $resource_type ][ $handle ] ) ) {
367
- $resource_visability = $settings[ $group_name ][ $resource_type ][ $handle ]['visability'];
368
  break;
369
  }
370
  }
371
 
372
- if ( ! empty( $resource_visability ) ) {
373
- $condition = new WGZ_Check_Conditions( $resource_visability );
374
- if ( $condition->validate() ) {
375
  return false;
376
  }
377
  }
@@ -384,13 +401,14 @@ class WGZ_Assets_Manager_Public {
384
  *
385
  * @return bool
386
  */
387
- public function collect_assets() {
388
- if ( ! isset( $_GET['wbcr_assets_manager'] ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
 
389
  return false;
390
  }
391
 
392
  $denied = [
393
- 'js' => [ 'wam-assets-manager', 'wam-assets-conditions', 'admin-bar', 'wam-pnotify' ],
394
  'css' => [
395
  'wam-pnotify',
396
  'wbcr-clearfy-adminbar-styles',
@@ -400,55 +418,55 @@ class WGZ_Assets_Manager_Public {
400
  'dashicons'
401
  ],
402
  ];
403
- $denied = apply_filters( 'wbcr_gnz_denied_assets', $denied );
404
 
405
  /**
406
  * Imitate full untouched list without dequeued assets
407
  * Appends part of original table. Safe approach.
408
  */
409
  $data_assets = [
410
- 'js' => wp_scripts(),
411
  'css' => wp_styles(),
412
  ];
413
 
414
- foreach ( $data_assets as $type => $data ) {
415
- foreach ( $data->done as $el ) {
416
- if ( isset( $data->registered[ $el ] ) ) {
417
 
418
- if ( ! in_array( $el, $denied[ $type ] ) ) {
419
- if ( isset( $data->registered[ $el ]->src ) ) {
420
- $url = $this->prepare_url( $data->registered[ $el ]->src );
421
- $url_short = str_replace( get_home_url(), '', $url );
422
 
423
- if ( false !== strpos( $url, get_theme_root_uri() ) ) {
424
  $resource_type = 'theme';
425
- } else if ( false !== strpos( $url, plugins_url() ) ) {
426
  $resource_type = 'plugins';
427
  } else {
428
  $resource_type = 'misc';
429
  }
430
 
431
- $collection = &$this->collection[ $resource_type ];
432
 
433
- if ( 'plugins' == $resource_type ) {
434
- $clean_url = str_replace( WP_PLUGIN_URL . '/', '', $url );
435
- $url_parts = explode( '/', $clean_url );
436
- $resource_name = ! empty( $url_parts[0] ) ? $url_parts[0] : null;
437
 
438
- if ( empty( $resource_name ) ) {
439
  continue;
440
  }
441
- $collection = &$this->collection[ $resource_type ][ $resource_name ];
442
  }
443
 
444
- if ( ! isset( $collection[ $type ][ $el ] ) ) {
445
- $collection[ $type ][ $el ] = [
446
- 'url_full' => $url,
447
  'url_short' => $url_short,
448
  //'state' => $this->get_visibility($type, $el),
449
- 'size' => $this->get_asset_size( $url ),
450
- 'ver' => $data->registered[ $el ]->ver,
451
- 'deps' => ( isset( $data->registered[ $el ]->deps ) ? $data->registered[ $el ]->deps : [] ),
452
  ];
453
 
454
  # Deregister scripts, styles so that they do not conflict with assets managers.
@@ -462,12 +480,12 @@ class WGZ_Assets_Manager_Public {
462
  'wam-jquery-migrate'
463
  ];
464
 
465
- if ( "js" == $type && ! in_array( $el, $no_js ) ) {
466
- wp_deregister_script( $el );
467
  }
468
 
469
- if ( "css" == $type ) {
470
- wp_deregister_style( $el );
471
  }
472
  #-------------------------------------------------
473
  }
@@ -486,13 +504,14 @@ class WGZ_Assets_Manager_Public {
486
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
487
  * @since 2.0.0
488
  */
489
- public function enqueue_plugin_scripts() {
490
- if ( $this->is_user_can() && isset( $_GET['wbcr_assets_manager'] ) ) {
 
491
  $plugin_ver = $this->plugin->getPluginVersion();
492
 
493
- wp_enqueue_style( 'wam-assets-manager', WGZ_PLUGIN_URL . '/assets/css/assets-manager.css', [], $plugin_ver );
494
- wp_enqueue_style( 'wam-assets-conditions', WGZ_PLUGIN_URL . '/assets/css/assets-conditions.css', [], $plugin_ver );
495
- wp_enqueue_style( 'wam-pnotify', WGZ_PLUGIN_URL . '/assets/css/PNotifyBrightTheme.css', [], $plugin_ver );
496
  }
497
  }
498
 
@@ -502,34 +521,35 @@ class WGZ_Assets_Manager_Public {
502
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
503
  * @since 2.0.0
504
  */
505
- public function print_plugin_scripts() {
 
506
  $scope = 'frontend';
507
 
508
- if ( $this->plugin->isNetworkActive() && $this->plugin->isNetworkAdmin() ) {
509
  $scope = 'networkadmin';
510
- } else if ( is_admin() ) {
511
  $scope = 'admin';
512
  }
513
  ?>
514
- <script>
515
- var wam_localize_data = <?php echo json_encode( [
516
- 'ajaxurl' => admin_url( 'admin-ajax.php', is_ssl() ? 'admin' : 'http' ),
517
- 'scope' => $scope,
518
- 'i18n' => [
519
- 'asset_canbe_required_title' => __( 'Warning', 'gonzales' ),
520
- 'asset_canbe_required_text' => __( 'The asset is required for %s. If you will disable the asset, other assets which in dependence on this asset also will disabled.', 'gonzales' ),
521
- 'reset_settings_warning_title' => __( 'Are you sure you want to reset all plugin settings?', 'gonzales' ),
522
- 'reset_settings_warning_text' => __( 'If you click OK, all conditions settings will be reset, including settings that you made on other pages and in the admin panel. ', 'gonzales' )
523
  ]
524
- ] ) ?>;
525
- </script>
526
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-jquery.js'; ?>'></script>
527
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-jquery-migrate.min.js'; ?>'></script>
528
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify.js'; ?>'></script>
529
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify-confirm.js'; ?>'></script>
530
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify-history.js'; ?>'></script>
531
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/wam-assets-conditions.js'; ?>'></script>
532
- <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/wam-assets-manager.js'; ?>'></script>
533
  <?php
534
  }
535
 
@@ -542,26 +562,27 @@ class WGZ_Assets_Manager_Public {
542
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
543
  * @since 1.0.8
544
  */
545
- private function clean_source_code() {
546
- ob_start( function ( $html ) {
 
547
 
548
  $raw_html = $html;
549
 
550
- $html = preg_replace( [
551
  "'<\s*style.*?<\s*/\s*style\s*>'is",
552
  ], [
553
  ""
554
- ], $html );
555
 
556
- $html = preg_replace_callback( [
557
  "'<\s*link.*?>'is",
558
- ], function ( $matches ) {
559
  $doc = new DOMDocument();
560
- $doc->loadHTML( $matches[0] );
561
- $imageTags = $doc->getElementsByTagName( 'link' );
562
 
563
- foreach ( $imageTags as $tag ) {
564
- $src = $tag->getAttribute( 'href' );
565
 
566
  $white_list_js = [
567
  'wp-includes/css/dashicons.min.css',
@@ -572,9 +593,9 @@ class WGZ_Assets_Manager_Public {
572
  'assets/css/PNotifyBrightTheme.css'
573
  ];
574
 
575
- if ( ! empty( $src ) ) {
576
- foreach ( $white_list_js as $js ) {
577
- if ( false !== strpos( $src, $js ) ) {
578
  return $matches[0];
579
  }
580
  }
@@ -582,24 +603,24 @@ class WGZ_Assets_Manager_Public {
582
 
583
  return '';
584
  }
585
- }, $html );
586
 
587
- $html = preg_replace_callback( [
588
  "'<\s*script.*?<\s*\/\s*script\s*>'is",
589
- ], function ( $matches ) {
590
- if ( false !== strpos( $matches[0], 'wam_localize_data' ) ) {
591
  return $matches[0];
592
  }
593
- if ( false !== strpos( $matches[0], 'wam-conditions-builder-template' ) ) {
594
  return $matches[0];
595
  }
596
 
597
  $doc = new DOMDocument();
598
- $doc->loadHTML( $matches[0] );
599
- $imageTags = $doc->getElementsByTagName( 'script' );
600
 
601
- foreach ( $imageTags as $tag ) {
602
- $src = $tag->getAttribute( 'src' );
603
 
604
  $white_list_js = [
605
  'wam-jquery.js',
@@ -615,9 +636,9 @@ class WGZ_Assets_Manager_Public {
615
 
616
  ];
617
 
618
- if ( ! empty( $src ) ) {
619
- foreach ( $white_list_js as $js ) {
620
- if ( false !== strpos( $src, $js ) ) {
621
  return $matches[0];
622
  }
623
  }
@@ -626,14 +647,14 @@ class WGZ_Assets_Manager_Public {
626
  return '';
627
  }
628
  //return $matches[0];
629
- }, $html );
630
 
631
- if ( empty( $html ) ) {
632
  return $raw_html;
633
  }
634
 
635
  return $html;
636
- } );
637
  }
638
 
639
  /**
@@ -644,76 +665,79 @@ class WGZ_Assets_Manager_Public {
644
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
645
  * @since 2.0.0
646
  */
647
- private function reset_plugin_settings_redirect() {
 
648
  // Reset settings
649
- if ( isset( $_GET['wbcr_assets_manager'] ) && isset( $_GET['wam_reset_settings'] ) ) {
650
- check_admin_referer( 'wam_reset_settings' );
651
- $this->plugin->updateOption( 'assets_states', [] );
652
- $this->plugin->updateOption( 'backend_assets_states', [] );
653
 
654
- if ( $this->plugin->isNetworkActive() ) {
655
- $this->plugin->updateNetworkOption( 'backend_assets_states', [] );
656
  }
657
 
658
- wp_redirect( remove_query_arg( [ 'wam_reset_settings', '_wpnonce' ] ) );
659
  die();
660
  }
661
  }
662
 
663
  /**
664
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
665
- * @since 2.0.0
666
- *
667
  * @param string $type
668
  *
669
  * @return array
670
  * @throws \Exception
 
 
 
671
  */
672
- private function get_collected_assets( $type ) {
 
673
  $assets = [];
674
 
675
- if ( empty( $this->collection ) ) {
676
  return $assets;
677
  }
678
 
679
- foreach ( (array) $this->collection as $resource_type => $resources ) {
680
- if ( $type == $resource_type ) {
681
- $assets = $this->get_parsed_asset_settings( $resources, $resource_type );
682
  }
683
  }
684
 
685
  return $assets;
686
  }
687
 
688
- private function get_asset_requires( $handle ) {
 
689
  $requires = [];
690
 
691
- if ( empty( $this->collection ) ) {
692
  return $requires;
693
  }
694
 
695
- foreach ( (array) $this->collection as $resource_type => $resources ) {
696
- if ( empty( $resources ) ) {
697
  continue;
698
  }
699
 
700
- if ( 'plugins' == $resource_type ) {
701
- foreach ( (array) $resources as $plugin_name => $plugin_types ) {
702
- if ( ! empty( $plugin_types ) ) {
703
- foreach ( (array) $plugin_types as $plugin_type_name => $plugin_resources ) {
704
- foreach ( (array) $plugin_resources as $plugin_resource_name => $plugin_resource ) {
705
- if ( ! empty( $plugin_resource['deps'] ) && in_array( $handle, $plugin_resource['deps'] ) ) {
706
- $requires[] = '<a class="js-wam-require-handle-tag" data-tag-handle="' . esc_attr( $plugin_resource_name . '-' . $plugin_type_name ) . '" href="#">' . esc_attr( $plugin_resource_name ) . '</a>';
707
  }
708
  }
709
  }
710
  }
711
  }
712
  } else {
713
- foreach ( (array) $resources as $other_type_name => $other_resources ) {
714
- foreach ( (array) $other_resources as $other_resource_name => $other_resource ) {
715
- if ( ! empty( $other_resource['deps'] ) && in_array( $handle, $other_resource['deps'] ) ) {
716
- $requires[] = '<a class="js-wam-require-handle-tag" data-tag-handle="' . esc_attr( $other_resource_name . '-' . $other_type_name ) . '" href="#">' . esc_attr( $other_resource_name ) . '</a>';
717
  }
718
  }
719
  }
@@ -729,27 +753,28 @@ class WGZ_Assets_Manager_Public {
729
  * Каждый элемент списка имеет собственные настройки, которые будут
730
  * переданы в шаблон для печати.
731
  *
732
- * @since 2.0.0
733
  * @return array
734
  * @throws \Exception
 
735
  */
736
- private function get_loaded_plugins() {
 
737
  $plugins = [];
738
 
739
- if ( empty( $this->collection ) ) {
740
  return $plugins;
741
  }
742
 
743
- foreach ( (array) $this->collection as $resource_type => $resources ) {
744
- foreach ( $resources as $resource_name => $types ) {
745
- if ( 'plugins' == $resource_type && ! empty( $resource_name ) ) {
746
- $plugins[ $resource_name ]['name'] = $resource_name;
747
- $plugins[ $resource_name ]['info'] = $this->get_plugin_data( $resource_name );
748
- $plugins[ $resource_name ]['assets'] = $this->get_parsed_asset_settings( $types, 'plugins', $resource_name );
749
- $plugins[ $resource_name ]['load_mode'] = $this->get_parsed_plugin_settings( $resource_name, 'load_mode' );
750
- $plugins[ $resource_name ]['visability'] = $this->get_parsed_plugin_settings( $resource_name, 'visability' );
751
- $plugins[ $resource_name ]['select_control_classes'] = $this->get_parsed_plugin_settings( $resource_name, 'select_control_classes' );
752
- $plugins[ $resource_name ]['settings_button_classes'] = $this->get_parsed_plugin_settings( $resource_name, 'settings_button_classes' );
753
  }
754
  }
755
  }
@@ -765,47 +790,48 @@ class WGZ_Assets_Manager_Public {
765
  * всегда будет существовать используемый элемент массива из настроек
766
  * плагина.
767
  *
768
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
769
- * @since 2.0.0
770
- *
771
- * @param string $plugin_name Имя плагина, для которого подготавливаются настройки
772
- * @param null $setting_name Имя настройки, заполняется, если нужно извлечь только
773
  * 1 конкретную настройку
774
  *
775
  * @return array|mixed
776
  * @throws \Exception
 
 
 
777
  */
778
- private function get_parsed_plugin_settings( $plugin_name, $setting_name = null ) {
779
- $settings = $this->get_settings();
 
780
  $default_settings = [
781
- 'load_mode' => 'enable',
782
- 'visability' => "",
783
- 'js' => [],
784
- 'css' => [],
785
- 'select_control_classes' => " js-wam-select--enable",
786
  'settings_button_classes' => " js-wam-button--hidden",
787
  ];
788
 
789
  $settings_formated = $default_settings;
790
 
791
- if ( ! empty( $settings['plugins'] ) && isset( $settings['plugins'][ $plugin_name ] ) ) {
792
- $plugin_settings = $settings['plugins'][ $plugin_name ];
793
- $settings_formated['load_mode'] = ! empty( $plugin_settings['load_mode'] ) ? $plugin_settings['load_mode'] : "enable";
794
- $settings_formated['visability'] = ! empty( $plugin_settings['visability'] ) ? stripslashes( $plugin_settings['visability'] ) : "";
795
- $settings_formated['js'] = ! empty( $plugin_settings['js'] ) ? $plugin_settings['js'] : "";
796
- $settings_formated['css'] = ! empty( $plugin_settings['css'] ) ? $plugin_settings['css'] : "";
797
 
798
- if ( "enable" === $settings_formated['load_mode'] ) {
799
- $settings_formated['select_control_classes'] = " js-wam-select--enable";
800
  $settings_formated['settings_button_classes'] = " js-wam-button--hidden";
801
  } else {
802
- $settings_formated['select_control_classes'] = " js-wam-select--disable";
803
  $settings_formated['settings_button_classes'] = "";
804
  }
805
  }
806
 
807
- if ( $setting_name && isset( $settings_formated[ $setting_name ] ) ) {
808
- return $settings_formated[ $setting_name ];
809
  }
810
 
811
  return $settings_formated;
@@ -819,50 +845,51 @@ class WGZ_Assets_Manager_Public {
819
  * всегда будет существовать используемый элемент массива из настроек
820
  * ресурсов.
821
  *
822
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
823
- * @since 2.0.0
824
- *
825
- * @param array $assets Массив с загружаемыми ресурсами, к которому будут
826
  * добавлены настройки по умолчанию и сохраненные настройки
827
- * @param string $plugin_name Имя плагина, если нужно сфокусироваться на группе ресурсов,
828
  * которые относятся к определенному плагину
829
  *
830
  * @return array
831
  * @throws \Exception
 
 
 
832
  */
833
- private function get_parsed_asset_settings( array $assets, $group_name, $plugin_name = null ) {
834
- $plugin_group = false;
 
835
  $settings_formated = [];
836
- $settings = $this->get_settings();
837
 
838
- if ( ! isset( $assets['js'] ) ) {
839
  $assets['js'] = [];
840
  }
841
- if ( ! isset( $assets['css'] ) ) {
842
  $assets['css'] = [];
843
  }
844
 
845
- if ( ! empty( $settings[ $group_name ] ) ) {
846
- if ( ! empty( $plugin_name ) ) {
847
- $settings = isset( $settings[ $group_name ][ $plugin_name ] ) ? $settings[ $group_name ][ $plugin_name ] : [];
848
  $plugin_group = true;
849
- } else if ( 'plugins' !== $group_name ) {
850
- $settings = $settings[ $group_name ];
851
  }
852
  }
853
 
854
- foreach ( (array) $assets as $type => $resources ) {
855
- $settings_formated[ $type ] = [];
856
 
857
- foreach ( (array) $resources as $name => $attrs ) {
858
- $s = &$settings_formated[ $type ][ $name ];
859
 
860
- if ( isset( $settings[ $type ] ) && isset( $settings[ $type ][ $name ] ) && ! empty( $settings[ $type ][ $name ]['visability'] ) ) {
861
- $s['load_mode'] = "disable";
862
- $s['visability'] = stripslashes( $settings[ $type ][ $name ]['visability'] );
863
  } else {
864
- if ( $plugin_group ) {
865
- $plugin_load_mode = ! empty( $settings['load_mode'] ) ? $settings['load_mode'] : 'enable';
866
 
867
  $s['load_mode'] = "enable" === $plugin_load_mode ? 'enable' : 'disable';
868
  } else {
@@ -871,22 +898,22 @@ class WGZ_Assets_Manager_Public {
871
  $s['visability'] = "";
872
  }
873
 
874
- if ( 'disable' === $s['load_mode'] ) {
875
- $s['row_classes'] = " js-wam-table__tr--disabled-section";
876
- $s['select_control_classes'] = " js-wam-select--disable";
877
  $s['settings_button_classes'] = "";
878
 
879
- if ( isset($plugin_load_mode) && 'enable' !== $plugin_load_mode ) {
880
  $s['settings_button_classes'] = " js-wam-button--hidden";
881
  }
882
  } else {
883
- $s['row_classes'] = "";
884
- $s['select_control_classes'] = " js-wam-select--enable";
885
  $s['settings_button_classes'] = " js-wam-button--hidden";
886
  }
887
 
888
- $s['requires'] = $this->get_asset_requires( $name );
889
- $s = array_merge( $s, $attrs );
890
  }
891
  }
892
 
@@ -900,19 +927,20 @@ class WGZ_Assets_Manager_Public {
900
  *
901
  * @return array
902
  */
903
- private function get_plugin_data( $name ) {
 
904
  $data = [];
905
 
906
- if ( $name ) {
907
- if ( ! function_exists( 'get_plugins' ) ) {
908
  // подключим файл с функцией get_plugins()
909
  require_once ABSPATH . 'wp-admin/includes/plugin.php';
910
  }
911
  $all_plugins = get_plugins();
912
- if ( ! empty( $all_plugins ) ) {
913
- foreach ( $all_plugins as $plugin_path => $plugin_data ) {
914
- if ( strpos( $plugin_path, $name . '/' ) !== false ) {
915
- $data = $plugin_data;
916
  $data['basename'] = $plugin_path;
917
  break;
918
  }
@@ -928,34 +956,36 @@ class WGZ_Assets_Manager_Public {
928
  *
929
  * If plugin loaded in admin area, the method will return settings for the admin area. *
930
  *
931
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
932
- * @since 2.0.1
933
  * @return array All plugin settings
934
  * @throws \Exception
 
 
935
  */
936
- private function get_settings() {
937
- if ( is_admin() ) {
938
- if ( $this->plugin->isNetworkActive() && $this->plugin->isNetworkAdmin() ) {
939
- return $this->plugin->getNetworkOption( 'backend_assets_states', [] );
 
940
  }
941
 
942
- return $this->plugin->getOption( 'backend_assets_states', [] );
943
  }
944
 
945
- return $this->plugin->getOption( 'assets_states', [] );
946
  }
947
 
948
  /**
949
  * Exception for address starting from "//example.com" instead of
950
  * "http://example.com". WooCommerce likes such a format
951
  *
952
- * @param string $url Incorrect URL.
953
  *
954
  * @return string Correct URL.
955
  */
956
- private function prepare_url( $url ) {
957
- if ( isset( $url[0] ) && isset( $url[1] ) && '/' == $url[0] && '/' == $url[1] ) {
958
- $out = ( is_ssl() ? 'https:' : 'http:' ) . $url;
 
959
  } else {
960
  $out = $url;
961
  }
@@ -968,381 +998,384 @@ class WGZ_Assets_Manager_Public {
968
  *
969
  * @return string
970
  */
971
- private function get_current_url_path() {
972
- if ( ! is_admin() ) {
973
- $url = explode( '?', $_SERVER['REQUEST_URI'], 2 );
974
- if ( strlen( $url[0] ) > 1 ) {
975
- $out = rtrim( $url[0], '/' );
 
976
  } else {
977
  $out = $url[0];
978
  }
979
 
980
- return "/" === $out ? "/" : untrailingslashit( $out );
981
  }
982
 
983
- $removeble_args = array_merge( [ 'wbcr_assets_manager' ], wp_removable_query_args() );
984
 
985
- $url = remove_query_arg( $removeble_args, $_SERVER['REQUEST_URI'] );
986
 
987
- return untrailingslashit( $url );
988
  }
989
 
990
  /**
991
  * Checks how heavy is file
992
  *
993
- * @param string $src URL.
994
  *
995
  * @return int Size in KB.
996
  */
997
- private function get_asset_size( $src ) {
 
998
  $weight = 0;
999
 
1000
  $home = get_theme_root() . '/../..';
1001
- $src = explode( '?', $src );
1002
 
1003
- if ( ! filter_var( $src[0], FILTER_VALIDATE_URL ) === false && strpos( $src[0], get_home_url() ) === false ) {
1004
  return 0;
1005
  }
1006
 
1007
- $src_relative = $home . str_replace( get_home_url(), '', $this->prepare_url( $src[0] ) );
1008
 
1009
- if ( file_exists( $src_relative ) ) {
1010
- $weight = round( filesize( $src_relative ) / 1024, 1 );
1011
  }
1012
 
1013
  return $weight;
1014
  }
1015
 
1016
- private function get_conditions_login_params( $group = false ) {
 
1017
  global $wp_roles, $wp;
1018
 
1019
  # Add User Roles
1020
  #---------------------------------------------------------------
1021
- $all_roles = $wp_roles->roles;
1022
- $editable_roles = apply_filters( 'editable_roles', $all_roles );
1023
  $roles_param_values = [
1024
  [
1025
  'value' => 'guest',
1026
- 'title' => __( 'Guest', 'gonzales' ),
1027
  ]
1028
  ];
1029
 
1030
- if ( ! empty( $editable_roles ) ) {
1031
- foreach ( $editable_roles as $role_ID => $role ) {
1032
- $roles_param_values[] = [ 'value' => $role_ID, 'title' => $role['name'] ];
1033
  }
1034
  }
1035
 
1036
  # Add Post Types
1037
  #---------------------------------------------------------------
1038
- $post_types = get_post_types( [
1039
  'public' => true
1040
- ], 'objects' );
1041
  $post_types_param_values = [];
1042
 
1043
- if ( ! empty( $post_types ) ) {
1044
- foreach ( $post_types as $type ) {
1045
- if ( isset( $type->name ) ) {
1046
- $post_types_param_values[] = [ 'value' => $type->name, 'title' => $type->label ];
1047
  }
1048
  }
1049
  }
1050
 
1051
  # Add Taxonomies
1052
  #---------------------------------------------------------------
1053
- $taxonomies = get_taxonomies( [
1054
  'public' => true
1055
- ], 'objects' );
1056
  $taxonomies_param_values = [];
1057
 
1058
- if ( ! empty( $taxonomies ) ) {
1059
- foreach ( $taxonomies as $tax ) {
1060
- $taxonomies_param_values[] = [ 'value' => $tax->name, 'title' => $tax->label ];
1061
  }
1062
  }
1063
 
1064
- $pro_label = ! defined( 'WGZP_PLUGIN_ACTIVE' ) ? ' (Pro)' : '';
1065
 
1066
  $location_items = [
1067
  [
1068
- 'id' => 'current-url',
1069
- 'title' => __( 'Current URL', 'gonzales' ),
1070
- 'type' => 'default',
1071
  'default_value' => $this->get_current_url_path(),
1072
- 'description' => __( 'Current Url', 'gonzales' )
1073
  ],
1074
  [
1075
- 'id' => 'location-page',
1076
- 'title' => __( 'Custom URL', 'gonzales' ) . $pro_label,
1077
- 'type' => 'text',
1078
- 'description' => __( 'An URL of the current page where a user who views your website is located. If you use the equals operator, paste in field the request url without the query string. For example: "/my-page" or "/my-page/subpage". If you use the "Contains" operator, use the request url part. For example: "page" will match 2 in the pages "/my-page/subpage" and "/my-page".', 'gonzales' ),
1079
- 'disabled' => ! defined( 'WGZP_PLUGIN_ACTIVE' )
1080
  ],
1081
  [
1082
- 'id' => 'regular-expression',
1083
- 'title' => __( 'Regular Expression', 'gonzales' ) . $pro_label,
1084
- 'type' => 'regexp',
1085
  'placeholder' => '^(about-page-[0-9]+|contacts-[0-9]{,2})',
1086
- 'description' => __( 'Regular expressions can be used by experts. This tool creates flexible conditions to disable the resource. For example, if you specify this expression: ^([A-z0-9]+-)?gifts? then the resource will be disabled at the following pages http://yoursite.test/get-gift/, http://yoursite.test/gift/, http://yoursite.test/get-gifts/, http://yoursite.test/gifts/. The plugin ignores the backslash at the beginning of the query string, so you can dismiss it. Check your regular expressions in here: https://regex101.com, this will prevent you from the mistakes. This feature is available at the paid version.', 'gonzales' ),
1087
- 'disabled' => ! defined( 'WGZP_PLUGIN_ACTIVE' )
1088
  ]
1089
  ];
1090
 
1091
- if ( ! is_admin() ) {
1092
  $location_items[] = [
1093
- 'id' => 'location-some-page',
1094
- 'title' => __( 'Page', 'gonzales' ),
1095
- 'type' => 'select',
1096
- 'params' => [
1097
- 'Basic' => [
1098
  [
1099
  'value' => 'base_web',
1100
- 'title' => __( 'Entire Website', 'gonzales' ),
1101
  ],
1102
  [
1103
  'value' => 'base_sing',
1104
- 'title' => __( 'All Singulars', 'gonzales' ),
1105
  ],
1106
  [
1107
  'value' => 'base_arch',
1108
- 'title' => __( 'All Archives', 'gonzales' ),
1109
  ],
1110
  ],
1111
  'Special Pages' => [
1112
  [
1113
  'value' => 'spec_404',
1114
- 'title' => __( '404 Page', 'gonzales' )
1115
  ],
1116
  [
1117
  'value' => 'spec_search',
1118
- 'title' => __( 'Search Page', 'gonzales' )
1119
  ],
1120
  [
1121
  'value' => 'spec_blog',
1122
- 'title' => __( 'Blog / Posts Page', 'gonzales' )
1123
  ],
1124
  [
1125
  'value' => 'spec_front',
1126
- 'title' => __( 'Front Page', 'gonzales' )
1127
  ],
1128
  [
1129
  'value' => 'spec_date',
1130
- 'title' => __( 'Date Archive', 'gonzales' )
1131
  ],
1132
  [
1133
  'value' => 'spec_auth',
1134
- 'title' => __( 'Author Archive', 'gonzales' )
1135
  ],
1136
  ],
1137
- 'Posts' => [
1138
  [
1139
  'value' => 'post_all',
1140
- 'title' => __( 'All Posts', 'gonzales' )
1141
  ],
1142
  [
1143
  'value' => 'post_arch',
1144
- 'title' => __( 'All Posts Archive', 'gonzales' )
1145
  ],
1146
  [
1147
  'value' => 'post_cat',
1148
- 'title' => __( 'All Categories Archive', 'gonzales' )
1149
  ],
1150
  [
1151
  'value' => 'post_tag',
1152
- 'title' => __( 'All Tags Archive', 'gonzales' )
1153
  ],
1154
  ],
1155
- 'Pages' => [
1156
  [
1157
  'value' => 'page_all',
1158
- 'title' => __( 'All Pages', 'gonzales' )
1159
  ],
1160
  [
1161
  'value' => 'page_arch',
1162
- 'title' => __( 'All Pages Archive', 'gonzales' )
1163
  ],
1164
  ],
1165
 
1166
  ],
1167
- 'description' => __( 'List of specific pages.', 'gonzales' )
1168
  ];
1169
  $location_items[] = [
1170
- 'id' => 'location-post-type',
1171
- 'title' => __( 'Post type', 'gonzales' ),
1172
- 'type' => 'select',
1173
- 'params' => $post_types_param_values,
1174
- 'description' => __( 'A post type of the current page.', 'gonzales' ),
1175
  ];
1176
  $location_items[] = [
1177
- 'id' => 'location-taxonomy',
1178
- 'title' => __( 'Taxonomy', 'gonzales' ),
1179
- 'type' => 'select',
1180
- 'params' => $taxonomies_param_values,
1181
- 'description' => __( 'A taxonomy of the current page.', 'gonzales' ),
1182
  ];
1183
  } else {
1184
  $location_items[] = [
1185
- 'id' => 'location-some-page',
1186
- 'title' => __( 'Page', 'gonzales' ),
1187
- 'type' => 'select',
1188
- 'params' => [
1189
- 'Basic' => [
1190
  [
1191
  'value' => 'all_admin_area',
1192
- 'title' => __( 'All Admin Pages', 'gonzales' ),
1193
  ],
1194
  [
1195
  'value' => 'posts_all',
1196
- 'title' => __( 'All Posts', 'gonzales' )
1197
  ],
1198
  [
1199
  'value' => 'posts_add_new',
1200
- 'title' => __( 'Add New Post', 'gonzales' )
1201
  ],
1202
  [
1203
  'value' => 'posts_taxonomies',
1204
- 'title' => __( 'All Taxonomies', 'gonzales' )
1205
  ]
1206
  ],
1207
- 'Dashboard' => [
1208
  [
1209
  'value' => 'dashboard_home',
1210
- 'title' => __( 'Home', 'gonzales' )
1211
  ],
1212
  [
1213
  'value' => 'dashboard_wordpress_updates',
1214
- 'title' => __( 'WordPress Updates', 'gonzales' )
1215
  ],
1216
  ],
1217
- 'Media' => [
1218
  [
1219
  'value' => 'media_library',
1220
- 'title' => __( 'Library', 'gonzales' )
1221
  ],
1222
  [
1223
  'value' => 'media_library_add_new',
1224
- 'title' => __( 'Add new', 'gonzales' )
1225
  ]
1226
  ],
1227
  'Appearance' => [
1228
  [
1229
  'value' => 'appearance_themes',
1230
- 'title' => __( 'Themes', 'gonzales' )
1231
  ],
1232
  [
1233
  'value' => 'appearance_customize',
1234
- 'title' => __( 'Customize', 'gonzales' )
1235
  ],
1236
  [
1237
  'value' => 'appearance_widgets',
1238
- 'title' => __( 'Widgets', 'gonzales' )
1239
  ],
1240
  [
1241
  'value' => 'appearance_menus',
1242
- 'title' => __( 'Menus', 'gonzales' )
1243
  ],
1244
  [
1245
  'value' => 'appearance_theme_editor',
1246
- 'title' => __( 'Theme Editor', 'gonzales' )
1247
  ]
1248
  ],
1249
- 'Plugins' => [
1250
  [
1251
  'value' => 'plugins_installed',
1252
- 'title' => __( 'Installed Plugins', 'gonzales' )
1253
  ],
1254
  [
1255
  'value' => 'plugins_add_new',
1256
- 'title' => __( 'Add New', 'gonzales' )
1257
  ],
1258
  [
1259
  'value' => 'plugins_editor',
1260
- 'title' => __( 'Plugin Editor', 'gonzales' )
1261
  ]
1262
  ],
1263
- 'Users' => [
1264
  [
1265
  'value' => 'users_all',
1266
- 'title' => __( 'All Users', 'gonzales' )
1267
  ],
1268
  [
1269
  'value' => 'users_add_new',
1270
- 'title' => __( 'Add New', 'gonzales' )
1271
  ],
1272
  [
1273
  'value' => 'users_your_profile',
1274
- 'title' => __( 'Your profile', 'gonzales' )
1275
  ]
1276
  ],
1277
- 'Tools' => [
1278
  [
1279
  'value' => 'tools_available',
1280
- 'title' => __( 'Available Tools', 'gonzales' )
1281
  ],
1282
  [
1283
  'value' => 'tools_import',
1284
- 'title' => __( 'Import', 'gonzales' )
1285
  ],
1286
  [
1287
  'value' => 'tools_export',
1288
- 'title' => __( 'Export', 'gonzales' )
1289
  ],
1290
  [
1291
  'value' => 'tools_site_health',
1292
- 'title' => __( 'Site Health', 'gonzales' )
1293
  ],
1294
  [
1295
  'value' => 'tools_export_personal_data',
1296
- 'title' => __( 'Export Personal Data', 'gonzales' )
1297
  ],
1298
  [
1299
  'value' => 'tools_erase_personal_data',
1300
- 'title' => __( 'Erase Personal Data', 'gonzales' )
1301
  ]
1302
  ],
1303
- 'Settings' => [
1304
  [
1305
  'value' => 'settings_general',
1306
- 'title' => __( 'General', 'gonzales' )
1307
  ],
1308
  [
1309
  'value' => 'settings_writing',
1310
- 'title' => __( 'Writing', 'gonzales' )
1311
  ],
1312
  [
1313
  'value' => 'settings_reading',
1314
- 'title' => __( 'Reading', 'gonzales' )
1315
  ],
1316
  [
1317
  'value' => 'settings_media',
1318
- 'title' => __( 'Media', 'gonzales' )
1319
  ],
1320
  [
1321
  'value' => 'settings_permalinks',
1322
- 'title' => __( 'Permalinks', 'gonzales' )
1323
  ],
1324
  [
1325
  'value' => 'settings_privacy',
1326
- 'title' => __( 'Privacy', 'gonzales' )
1327
  ]
1328
  ],
1329
  ],
1330
- 'description' => __( 'List of specific pages.', 'gonzales' )
1331
  ];
1332
  }
1333
 
1334
  $grouped_filter_params = [
1335
  [
1336
- 'id' => 'user',
1337
- 'title' => __( 'User', 'gonzales' ),
1338
  'items' => [
1339
  [
1340
- 'id' => 'user-role',
1341
- 'title' => __( 'Role', 'gonzales' ) . $pro_label,
1342
- 'type' => 'select',
1343
- 'params' => $roles_param_values,
1344
- 'description' => __( 'A role of the user who views your website. The role "guest" is applied to unregistered users.', 'gonzales' ),
1345
- 'disabled' => ! defined( 'WGZP_PLUGIN_ACTIVE' )
1346
  ],
1347
  /*[
1348
  'id' => 'user-registered',
@@ -1351,36 +1384,36 @@ class WGZ_Assets_Manager_Public {
1351
  'description' => __( 'The date when the user who views your website was registered. For unregistered users this date always equals to 1 Jan 1970.', 'gonzales' )
1352
  ],*/
1353
  [
1354
- 'id' => 'user-mobile',
1355
- 'title' => __( 'Mobile Device', 'gonzales' ) . $pro_label,
1356
- 'type' => 'select',
1357
- 'params' => [
1358
- [ 'value' => 'yes', 'title' => __( 'Yes', 'gonzales' ) ],
1359
- [ 'value' => 'no', 'title' => __( 'No', 'gonzales' ) ]
1360
  ],
1361
- 'description' => __( 'Determines whether the user views your website from mobile device or not.', 'gonzales' ),
1362
- 'disabled' => ! defined( 'WGZP_PLUGIN_ACTIVE' )
1363
  ],
1364
  [
1365
- 'id' => 'user-cookie-name',
1366
- 'title' => __( 'Cookie Name', 'gonzales' ) . $pro_label,
1367
- 'type' => 'text',
1368
  'only_equals' => true,
1369
- 'description' => __( 'Determines whether the user\'s browser has a cookie with a given name.', 'gonzales' ),
1370
- 'disabled' => ! defined( 'WGZP_PLUGIN_ACTIVE' )
1371
  ]
1372
  ]
1373
  ],
1374
  [
1375
- 'id' => 'location',
1376
- 'title' => __( 'Location', 'gonzales' ),
1377
  'items' => $location_items
1378
  ]
1379
  ];
1380
 
1381
  $filterParams = [];
1382
- foreach ( (array) $grouped_filter_params as $filter_group ) {
1383
- $filterParams = array_merge( $filterParams, $filter_group['items'] );
1384
  }
1385
 
1386
  return $group ? $grouped_filter_params : $filterParams;
1
  <?php
2
  // Exit if accessed directly
3
+ if( !defined('ABSPATH') ) {
4
  exit;
5
  }
6
 
20
  */
21
  public $collection = [];
22
 
23
+ public $template_rendered = false;
24
+
25
  /**
26
+ * @param Wbcr_Factory441_Plugin $plugin
27
  */
28
+ public function __construct(Wbcr_Factory441_Plugin $plugin)
29
+ {
30
  $this->plugin = $plugin;
31
 
32
  $this->register_hooks();
37
  *
38
  * User must have administrator or super administrator permissions to use the plugin.
39
  *
 
 
40
  * @return bool
41
+ * @since 1.1.0
42
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
43
  */
44
+ protected function is_user_can()
45
+ {
46
+ return current_user_can('manage_options') || current_user_can('manage_network');
47
  }
48
 
49
  /**
50
  * Initilize entire machine
51
  */
52
+ protected function register_hooks()
53
+ {
54
+ if( $this->plugin->getPopulateOption('disable_assets_manager', false) ) {
55
  return;
56
  }
57
 
58
+ $on_frontend = $this->plugin->getPopulateOption('disable_assets_manager_on_front');
59
+ $on_backend = $this->plugin->getPopulateOption('disable_assets_manager_on_backend', true);
60
+ $is_panel = $this->plugin->getPopulateOption('disable_assets_manager_panel');
61
 
62
+ if( (!is_admin() && !$on_frontend) || (is_admin() && !$on_backend) ) {
63
+ add_filter('script_loader_src', [$this, 'filter_load_assets'], 10, 2);
64
+ add_filter('style_loader_src', [$this, 'filter_load_assets'], 10, 2);
65
  }
66
 
67
+ if( !$is_panel && ((is_admin() && !$on_backend) || (!is_admin() && !$on_frontend)) ) {
68
+ if( !is_admin() ) {
69
+ add_action('wp_enqueue_scripts', [$this, 'enqueue_plugin_scripts'], -100001);
70
+ add_action('wp_footer', [$this, 'assets_manager_render_template'], 100001);
71
  } else {
72
+ add_action('admin_enqueue_scripts', [$this, 'enqueue_plugin_scripts'], -100001);
73
+ add_action('admin_footer', [$this, 'assets_manager_render_template'], 100001);
74
  }
75
 
76
+ add_action('wam/views/safe_mode_checkbox', [$this, 'print_save_mode_fake_checkbox']);
77
  }
78
 
79
+ if( !is_admin() && !$on_frontend ) {
80
+ add_action('wp_head', [$this, 'collect_assets'], 10000);
81
+ add_action('wp_footer', [$this, 'collect_assets'], 10000);
82
  }
83
 
84
+ if( is_admin() && !$on_backend ) {
85
+ add_action('admin_head', [$this, 'collect_assets'], 10000);
86
+ add_action('admin_footer', [$this, 'collect_assets'], 10000);
87
  }
88
 
89
+ if( !$is_panel && ((is_admin() && !$on_backend) || (!is_admin() && !$on_frontend)) ) {
90
+ if( defined('LOADING_ASSETS_MANAGER_AS_ADDON') ) {
91
+ add_action('wbcr/clearfy/adminbar_menu_items', [$this, 'clearfy_admin_bar_menu_filter']);
92
  } else {
93
+ add_action('admin_bar_menu', [$this, 'assets_manager_add_admin_bar_menu'], 1000);
94
  }
95
  }
96
 
97
  # Reset plugin settings and clean source code
98
  //add_action( 'template_redirect', [ $this, 'redirects' ], 9999 );
99
+ add_action('init', [$this, 'redirects'], 9999);
100
 
101
  ##Login/Logout
102
+ add_action('wp_login', [$this, 'user_logged_in'], 99, 2);
103
+ add_action('wp_logout', [$this, 'user_logged_out']);
104
 
105
  // Stop optimizing scripts and caching the asset manager page.
106
  //add_action( 'plugins_loaded', [ $this, 'stop_caching_and_script_optimize' ] );
107
  $this->stop_caching_and_script_optimize();
108
 
109
  // Disable autoptimize on Assets manager page
110
+ add_filter('autoptimize_filter_noptimize', [$this, 'autoptimize_noptimize'], 10, 0);
111
+ add_filter('wmac_filter_noptimize', [$this, 'autoptimize_noptimize'], 10, 0);
112
 
113
+ if( wp_doing_ajax() ) {
114
  require_once WGZ_PLUGIN_DIR . '/admin/ajax/save-settings.php';
115
  }
116
  }
118
  /**
119
  * Render a fake checkbox to show for user, it is pro feature.
120
  *
121
+ * @param array $data Temlate data
122
  * @since 1.1
123
  *
124
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
125
  */
126
+ public function print_save_mode_fake_checkbox($data)
127
+ {
128
+ if( defined('WGZP_PLUGIN_ACTIVE') ) {
129
  return;
130
  }
131
  ?>
132
+ <label class="wam-float-panel__checkbox wam-tooltip wam-tooltip--bottom" data-tooltip="<?php _e('In test mode, you can experiment with disabling unused scripts safely for your site. The resources that you disabled will be visible only to you (the administrator), and all other users will receive an unoptimized version of the site, until you remove this tick', 'gonzales') ?>.">
133
+ <input class="wam-float-panel__checkbox-input visually-hidden" type="checkbox"<?php checked($data['save_mode']) ?>>
134
+ <span class="wam-float-panel__checkbox-text-premium"><?php _e('Safe mode <b>PRO</b>', 'gonzales') ?></span>
135
+ </label>
136
  <?php
137
  }
138
 
142
  * MU plugin will use cookie for identity user role. We can't use all wordpress
143
  * features before full wp load.
144
  *
145
+ * @param string $login
146
+ * @param string $user
147
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
148
  * @since 2.0.0
149
  *
 
 
150
  */
151
+ public function user_logged_in($login, $user = null)
152
+ {
153
+ if( is_null($user) ) {
154
  $user = wp_get_current_user();
155
  }
156
 
157
+ foreach($user->roles as $key => $role) {
158
+ setcookie('wam_assigned_roles[' . $key . ']', $role, 0, "/");
159
  }
160
  }
161
 
165
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
166
  * @since 2.0.0
167
  */
168
+ public function user_logged_out()
169
+ {
170
+ if( isset($_COOKIE['wam_assigned_roles']) && is_array($_COOKIE['wam_assigned_roles']) ) {
171
+ foreach($_COOKIE['wam_assigned_roles'] as $key => $cookie_val) {
172
+ setcookie('wam_assigned_roles[' . $key . ']', '', time() - 999999, "/");
173
  }
174
  }
175
  }
189
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
190
  * @since 1.0.8
191
  */
192
+ public function stop_caching_and_script_optimize()
193
+ {
194
+ if( !isset($_GET['wbcr_assets_manager']) ) {
195
  return;
196
  }
197
 
198
+ if( !defined('DONOTCACHEPAGE') ) {
199
+ define('DONOTCACHEPAGE', true);
200
  }
201
 
202
+ if( !defined('DONOTCACHCEOBJECT') ) {
203
+ define('DONOTCACHCEOBJECT', true);
204
  }
205
 
206
+ if( !defined('DONOTMINIFY') ) {
207
+ define('DONOTMINIFY', true);
208
  }
209
 
210
+ if( !defined('DONOTROCKETOPTIMIZE') ) {
211
+ define('DONOTROCKETOPTIMIZE', true);
212
  }
213
 
214
+ if( !defined('DONOTMINIFYJS') ) {
215
+ define('DONOTMINIFYJS', true);
216
  }
217
 
218
+ if( !defined('DONOTASYNCCSS') ) {
219
+ define('DONOTASYNCCSS', true);
220
  }
221
 
222
+ if( !defined('DONOTMINIFYCSS') ) {
223
+ define('DONOTMINIFYCSS', true);
224
  }
225
 
226
+ if( !defined('WHM_DO_NOT_HIDE_WP') ) {
227
+ define('WHM_DO_NOT_HIDE_WP', true);
228
  }
229
  }
230
 
231
  /**
232
  * Disable autoptimize on Assets manager page
233
  *
 
 
234
  * @return bool
235
+ * @since 1.0.8
236
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
237
  */
238
+ public function autoptimize_noptimize()
239
+ {
240
+ if( !isset($_GET['wbcr_assets_manager']) ) {
241
  return false;
242
  }
243
 
252
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
253
  * @since 1.1.0
254
  */
255
+ public function redirects()
256
+ {
257
+ if( !isset($_GET['wbcr_assets_manager']) || (defined('DOING_AJAX') && DOING_AJAX) ) {
258
  return;
259
  }
260
 
265
  /**
266
  * Adds a link in Clearfy admin bar menu to go to the Assets manager
267
  *
268
+ * @param array $menu_items Array links of Clearfy menu
269
+ *
270
+ * @return mixed
271
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
272
  * @since 1.1.0
273
  *
 
 
 
274
  */
275
+ public function clearfy_admin_bar_menu_filter($menu_items)
276
+ {
277
+ $current_url = add_query_arg(['wbcr_assets_manager' => 1]);
278
 
279
  $menu_items['assets_manager_render_template'] = [
280
+ 'title' => '<span class="dashicons dashicons-list-view"></span> ' . __('Assets Manager', 'gonzales'),
281
+ 'href' => $current_url
282
  ];
283
 
284
  return $menu_items;
287
  /**
288
  * Add Assets Manager menu to admin bar.
289
  *
290
+ * @param WP_Admin_Bar $wp_admin_bar
291
  * @since 1.1.0
292
  *
293
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
294
  */
295
+ public function assets_manager_add_admin_bar_menu($wp_admin_bar)
296
+ {
297
+ $current_url = add_query_arg(['wbcr_assets_manager' => 1]);
298
 
299
  $args = [
300
+ 'id' => 'assets_manager_render_template',
301
+ 'title' => __('Assets Manager', 'gonzales'),
302
+ 'href' => $current_url
303
  ];
304
+ $wp_admin_bar->add_node($args);
305
  }
306
 
307
  /**
309
  *
310
  * This is callback function for admin_footer and wp_footer hooks.
311
  *
 
 
312
  * @throws \Exception
313
+ * @since 2.0.0
314
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
315
  */
316
+ public function assets_manager_render_template()
317
+ {
318
+ if( !$this->is_user_can() || !isset($_GET['wbcr_assets_manager']) || $this->template_rendered ) {
319
  return;
320
  }
321
 
322
+ $this->template_rendered = true;
323
+
324
  $settings = $this->get_settings();
325
 
326
+ $views = new WGZ_Views(WGZ_PLUGIN_DIR);
327
+ $views->print_template('assets-manager', [
328
+ 'save_mode' => isset($settings['save_mode']) ? (bool)$settings['save_mode'] : false,
329
+ 'collection' => $this->collection,
330
+ 'loaded_plugins' => $this->get_loaded_plugins(),
331
+ 'theme_assets' => $this->get_collected_assets('theme'),
332
+ 'misc_assets' => $this->get_collected_assets('misc'),
333
+ 'conditions_logic_params' => $this->get_conditions_login_params(true),
334
+ 'settings' => $settings
335
+ ]);
336
 
337
  $this->print_plugin_scripts();
338
  }
342
  *
343
  * If enabled save mode or onened Assets Manager panel, assets will not be filtered. *
344
  *
 
 
 
345
  * @param string $src
346
  * @param string $handle
347
  *
348
  * @return bool
349
  * @throws \Exception
350
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
351
+ * @since 2.0.0
352
+ *
353
  */
354
+ public function filter_load_assets($src, $handle)
355
+ {
356
  $settings = $this->get_settings();
357
 
358
+ if( isset($_GET['wbcr_assets_manager']) || empty($settings) || (true === $settings['save_mode'] && !$this->is_user_can()) ) {
359
  return $src;
360
  }
361
 
362
  require_once WGZ_PLUGIN_DIR . '/includes/classes/class-check-conditions.php';
363
 
364
+ $resource_type = (current_filter() == 'script_loader_src') ? 'js' : 'css';
365
  $resource_visability = "";
366
 
367
+ if( !empty($settings['plugins']) ) {
368
+ foreach((array)$settings['plugins'] as $plugin_name => $plugin) {
369
+ if( !empty($plugin[$resource_type]) && isset($plugin[$resource_type][$handle]) ) {
370
+ if( 'disable_assets' === $plugin['load_mode'] ) {
371
  $resource_visability = $plugin['visability'];
372
+ } else if( 'disable_plugin' === $plugin['load_mode'] ) {
373
  return $src;
374
  } else {
375
+ $resource_visability = $plugin[$resource_type][$handle]['visability'];
376
  }
377
  break;
378
  }
379
  }
380
  }
381
 
382
+ foreach(['theme', 'misc'] as $group_name) {
383
+ if( !empty($settings[$group_name]) && !empty($settings[$group_name][$resource_type]) && isset($settings[$group_name][$resource_type][$handle]) ) {
384
+ $resource_visability = $settings[$group_name][$resource_type][$handle]['visability'];
385
  break;
386
  }
387
  }
388
 
389
+ if( !empty($resource_visability) ) {
390
+ $condition = new WGZ_Check_Conditions($resource_visability);
391
+ if( $condition->validate() ) {
392
  return false;
393
  }
394
  }
401
  *
402
  * @return bool
403
  */
404
+ public function collect_assets()
405
+ {
406
+ if( !isset($_GET['wbcr_assets_manager']) || (defined('DOING_AJAX') && DOING_AJAX) ) {
407
  return false;
408
  }
409
 
410
  $denied = [
411
+ 'js' => ['wam-assets-manager', 'wam-assets-conditions', 'admin-bar', 'wam-pnotify'],
412
  'css' => [
413
  'wam-pnotify',
414
  'wbcr-clearfy-adminbar-styles',
418
  'dashicons'
419
  ],
420
  ];
421
+ $denied = apply_filters('wbcr_gnz_denied_assets', $denied);
422
 
423
  /**
424
  * Imitate full untouched list without dequeued assets
425
  * Appends part of original table. Safe approach.
426
  */
427
  $data_assets = [
428
+ 'js' => wp_scripts(),
429
  'css' => wp_styles(),
430
  ];
431
 
432
+ foreach($data_assets as $type => $data) {
433
+ foreach($data->done as $el) {
434
+ if( isset($data->registered[$el]) ) {
435
 
436
+ if( !in_array($el, $denied[$type]) ) {
437
+ if( isset($data->registered[$el]->src) ) {
438
+ $url = $this->prepare_url($data->registered[$el]->src);
439
+ $url_short = str_replace(get_home_url(), '', $url);
440
 
441
+ if( false !== strpos($url, get_theme_root_uri()) ) {
442
  $resource_type = 'theme';
443
+ } else if( false !== strpos($url, plugins_url()) ) {
444
  $resource_type = 'plugins';
445
  } else {
446
  $resource_type = 'misc';
447
  }
448
 
449
+ $collection = &$this->collection[$resource_type];
450
 
451
+ if( 'plugins' == $resource_type ) {
452
+ $clean_url = str_replace(WP_PLUGIN_URL . '/', '', $url);
453
+ $url_parts = explode('/', $clean_url);
454
+ $resource_name = !empty($url_parts[0]) ? $url_parts[0] : null;
455
 
456
+ if( empty($resource_name) ) {
457
  continue;
458
  }
459
+ $collection = &$this->collection[$resource_type][$resource_name];
460
  }
461
 
462
+ if( !isset($collection[$type][$el]) ) {
463
+ $collection[$type][$el] = [
464
+ 'url_full' => $url,
465
  'url_short' => $url_short,
466
  //'state' => $this->get_visibility($type, $el),
467
+ 'size' => $this->get_asset_size($url),
468
+ 'ver' => $data->registered[$el]->ver,
469
+ 'deps' => (isset($data->registered[$el]->deps) ? $data->registered[$el]->deps : []),
470
  ];
471
 
472
  # Deregister scripts, styles so that they do not conflict with assets managers.
480
  'wam-jquery-migrate'
481
  ];
482
 
483
+ if( "js" == $type && !in_array($el, $no_js) ) {
484
+ wp_deregister_script($el);
485
  }
486
 
487
+ if( "css" == $type ) {
488
+ wp_deregister_style($el);
489
  }
490
  #-------------------------------------------------
491
  }
504
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
505
  * @since 2.0.0
506
  */
507
+ public function enqueue_plugin_scripts()
508
+ {
509
+ if( $this->is_user_can() && isset($_GET['wbcr_assets_manager']) ) {
510
  $plugin_ver = $this->plugin->getPluginVersion();
511
 
512
+ wp_enqueue_style('wam-assets-manager', WGZ_PLUGIN_URL . '/assets/css/assets-manager.css', [], $plugin_ver);
513
+ wp_enqueue_style('wam-assets-conditions', WGZ_PLUGIN_URL . '/assets/css/assets-conditions.css', [], $plugin_ver);
514
+ wp_enqueue_style('wam-pnotify', WGZ_PLUGIN_URL . '/assets/css/PNotifyBrightTheme.css', [], $plugin_ver);
515
  }
516
  }
517
 
521
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
522
  * @since 2.0.0
523
  */
524
+ public function print_plugin_scripts()
525
+ {
526
  $scope = 'frontend';
527
 
528
+ if( $this->plugin->isNetworkActive() && $this->plugin->isNetworkAdmin() ) {
529
  $scope = 'networkadmin';
530
+ } else if( is_admin() ) {
531
  $scope = 'admin';
532
  }
533
  ?>
534
+ <script>
535
+ var wam_localize_data = <?php echo json_encode([
536
+ 'ajaxurl' => admin_url('admin-ajax.php', is_ssl() ? 'admin' : 'http'),
537
+ 'scope' => $scope,
538
+ 'i18n' => [
539
+ 'asset_canbe_required_title' => __('Warning', 'gonzales'),
540
+ 'asset_canbe_required_text' => __('The asset is required for %s. If you will disable the asset, other assets which in dependence on this asset also will disabled.', 'gonzales'),
541
+ 'reset_settings_warning_title' => __('Are you sure you want to reset all plugin settings?', 'gonzales'),
542
+ 'reset_settings_warning_text' => __('If you click OK, all conditions settings will be reset, including settings that you made on other pages and in the admin panel. ', 'gonzales')
543
  ]
544
+ ]) ?>;
545
+ </script>
546
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-jquery.js'; ?>'></script>
547
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-jquery-migrate.min.js'; ?>'></script>
548
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify.js'; ?>'></script>
549
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify-confirm.js'; ?>'></script>
550
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/libs/wam-pnotify-history.js'; ?>'></script>
551
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/wam-assets-conditions.js'; ?>'></script>
552
+ <script type='text/javascript' src='<?php echo WGZ_PLUGIN_URL . '/assets/js/wam-assets-manager.js'; ?>'></script>
553
  <?php
554
  }
555
 
562
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
563
  * @since 1.0.8
564
  */
565
+ private function clean_source_code()
566
+ {
567
+ ob_start(function ($html) {
568
 
569
  $raw_html = $html;
570
 
571
+ $html = preg_replace([
572
  "'<\s*style.*?<\s*/\s*style\s*>'is",
573
  ], [
574
  ""
575
+ ], $html);
576
 
577
+ $html = preg_replace_callback([
578
  "'<\s*link.*?>'is",
579
+ ], function ($matches) {
580
  $doc = new DOMDocument();
581
+ $doc->loadHTML($matches[0]);
582
+ $imageTags = $doc->getElementsByTagName('link');
583
 
584
+ foreach($imageTags as $tag) {
585
+ $src = $tag->getAttribute('href');
586
 
587
  $white_list_js = [
588
  'wp-includes/css/dashicons.min.css',
593
  'assets/css/PNotifyBrightTheme.css'
594
  ];
595
 
596
+ if( !empty($src) ) {
597
+ foreach($white_list_js as $js) {
598
+ if( false !== strpos($src, $js) ) {
599
  return $matches[0];
600
  }
601
  }
603
 
604
  return '';
605
  }
606
+ }, $html);
607
 
608
+ $html = preg_replace_callback([
609
  "'<\s*script.*?<\s*\/\s*script\s*>'is",
610
+ ], function ($matches) {
611
+ if( false !== strpos($matches[0], 'wam_localize_data') ) {
612
  return $matches[0];
613
  }
614
+ if( false !== strpos($matches[0], 'wam-conditions-builder-template') ) {
615
  return $matches[0];
616
  }
617
 
618
  $doc = new DOMDocument();
619
+ $doc->loadHTML($matches[0]);
620
+ $imageTags = $doc->getElementsByTagName('script');
621
 
622
+ foreach($imageTags as $tag) {
623
+ $src = $tag->getAttribute('src');
624
 
625
  $white_list_js = [
626
  'wam-jquery.js',
636
 
637
  ];
638
 
639
+ if( !empty($src) ) {
640
+ foreach($white_list_js as $js) {
641
+ if( false !== strpos($src, $js) ) {
642
  return $matches[0];
643
  }
644
  }
647
  return '';
648
  }
649
  //return $matches[0];
650
+ }, $html);
651
 
652
+ if( empty($html) ) {
653
  return $raw_html;
654
  }
655
 
656
  return $html;
657
+ });
658
  }
659
 
660
  /**
665
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
666
  * @since 2.0.0
667
  */
668
+ private function reset_plugin_settings_redirect()
669
+ {
670
  // Reset settings
671
+ if( isset($_GET['wbcr_assets_manager']) && isset($_GET['wam_reset_settings']) ) {
672
+ check_admin_referer('wam_reset_settings');
673
+ $this->plugin->updateOption('assets_states', []);
674
+ $this->plugin->updateOption('backend_assets_states', []);
675
 
676
+ if( $this->plugin->isNetworkActive() ) {
677
+ $this->plugin->updateNetworkOption('backend_assets_states', []);
678
  }
679
 
680
+ wp_redirect(remove_query_arg(['wam_reset_settings', '_wpnonce']));
681
  die();
682
  }
683
  }
684
 
685
  /**
 
 
 
686
  * @param string $type
687
  *
688
  * @return array
689
  * @throws \Exception
690
+ * @since 2.0.0
691
+ *
692
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
693
  */
694
+ private function get_collected_assets($type)
695
+ {
696
  $assets = [];
697
 
698
+ if( empty($this->collection) ) {
699
  return $assets;
700
  }
701
 
702
+ foreach((array)$this->collection as $resource_type => $resources) {
703
+ if( $type == $resource_type ) {
704
+ $assets = $this->get_parsed_asset_settings($resources, $resource_type);
705
  }
706
  }
707
 
708
  return $assets;
709
  }
710
 
711
+ private function get_asset_requires($handle)
712
+ {
713
  $requires = [];
714
 
715
+ if( empty($this->collection) ) {
716
  return $requires;
717
  }
718
 
719
+ foreach((array)$this->collection as $resource_type => $resources) {
720
+ if( empty($resources) ) {
721
  continue;
722
  }
723
 
724
+ if( 'plugins' == $resource_type ) {
725
+ foreach((array)$resources as $plugin_name => $plugin_types) {
726
+ if( !empty($plugin_types) ) {
727
+ foreach((array)$plugin_types as $plugin_type_name => $plugin_resources) {
728
+ foreach((array)$plugin_resources as $plugin_resource_name => $plugin_resource) {
729
+ if( !empty($plugin_resource['deps']) && in_array($handle, $plugin_resource['deps']) ) {
730
+ $requires[] = '<a class="js-wam-require-handle-tag" data-tag-handle="' . esc_attr($plugin_resource_name . '-' . $plugin_type_name) . '" href="#">' . esc_attr($plugin_resource_name) . '</a>';
731
  }
732
  }
733
  }
734
  }
735
  }
736
  } else {
737
+ foreach((array)$resources as $other_type_name => $other_resources) {
738
+ foreach((array)$other_resources as $other_resource_name => $other_resource) {
739
+ if( !empty($other_resource['deps']) && in_array($handle, $other_resource['deps']) ) {
740
+ $requires[] = '<a class="js-wam-require-handle-tag" data-tag-handle="' . esc_attr($other_resource_name . '-' . $other_type_name) . '" href="#">' . esc_attr($other_resource_name) . '</a>';
741
  }
742
  }
743
  }
753
  * Каждый элемент списка имеет собственные настройки, которые будут
754
  * переданы в шаблон для печати.
755
  *
 
756
  * @return array
757
  * @throws \Exception
758
+ * @since 2.0.0
759
  */
760
+ private function get_loaded_plugins()
761
+ {
762
  $plugins = [];
763
 
764
+ if( empty($this->collection) ) {
765
  return $plugins;
766
  }
767
 
768
+ foreach((array)$this->collection as $resource_type => $resources) {
769
+ foreach($resources as $resource_name => $types) {
770
+ if( 'plugins' == $resource_type && !empty($resource_name) ) {
771
+ $plugins[$resource_name]['name'] = $resource_name;
772
+ $plugins[$resource_name]['info'] = $this->get_plugin_data($resource_name);
773
+ $plugins[$resource_name]['assets'] = $this->get_parsed_asset_settings($types, 'plugins', $resource_name);
774
+ $plugins[$resource_name]['load_mode'] = $this->get_parsed_plugin_settings($resource_name, 'load_mode');
775
+ $plugins[$resource_name]['visability'] = $this->get_parsed_plugin_settings($resource_name, 'visability');
776
+ $plugins[$resource_name]['select_control_classes'] = $this->get_parsed_plugin_settings($resource_name, 'select_control_classes');
777
+ $plugins[$resource_name]['settings_button_classes'] = $this->get_parsed_plugin_settings($resource_name, 'settings_button_classes');
778
  }
779
  }
780
  }
790
  * всегда будет существовать используемый элемент массива из настроек
791
  * плагина.
792
  *
793
+ * @param string $plugin_name Имя плагина, для которого подготавливаются настройки
794
+ * @param null $setting_name Имя настройки, заполняется, если нужно извлечь только
 
 
 
795
  * 1 конкретную настройку
796
  *
797
  * @return array|mixed
798
  * @throws \Exception
799
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
800
+ * @since 2.0.0
801
+ *
802
  */
803
+ private function get_parsed_plugin_settings($plugin_name, $setting_name = null)
804
+ {
805
+ $settings = $this->get_settings();
806
  $default_settings = [
807
+ 'load_mode' => 'enable',
808
+ 'visability' => "",
809
+ 'js' => [],
810
+ 'css' => [],
811
+ 'select_control_classes' => " js-wam-select--enable",
812
  'settings_button_classes' => " js-wam-button--hidden",
813
  ];
814
 
815
  $settings_formated = $default_settings;
816
 
817
+ if( !empty($settings['plugins']) && isset($settings['plugins'][$plugin_name]) ) {
818
+ $plugin_settings = $settings['plugins'][$plugin_name];
819
+ $settings_formated['load_mode'] = !empty($plugin_settings['load_mode']) ? $plugin_settings['load_mode'] : "enable";
820
+ $settings_formated['visability'] = !empty($plugin_settings['visability']) ? stripslashes($plugin_settings['visability']) : "";
821
+ $settings_formated['js'] = !empty($plugin_settings['js']) ? $plugin_settings['js'] : "";
822
+ $settings_formated['css'] = !empty($plugin_settings['css']) ? $plugin_settings['css'] : "";
823
 
824
+ if( "enable" === $settings_formated['load_mode'] ) {
825
+ $settings_formated['select_control_classes'] = " js-wam-select--enable";
826
  $settings_formated['settings_button_classes'] = " js-wam-button--hidden";
827
  } else {
828
+ $settings_formated['select_control_classes'] = " js-wam-select--disable";
829
  $settings_formated['settings_button_classes'] = "";
830
  }
831
  }
832
 
833
+ if( $setting_name && isset($settings_formated[$setting_name]) ) {
834
+ return $settings_formated[$setting_name];
835
  }
836
 
837
  return $settings_formated;
845
  * всегда будет существовать используемый элемент массива из настроек
846
  * ресурсов.
847
  *
848
+ * @param array $assets Массив с загружаемыми ресурсами, к которому будут
 
 
 
849
  * добавлены настройки по умолчанию и сохраненные настройки
850
+ * @param string $plugin_name Имя плагина, если нужно сфокусироваться на группе ресурсов,
851
  * которые относятся к определенному плагину
852
  *
853
  * @return array
854
  * @throws \Exception
855
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
856
+ * @since 2.0.0
857
+ *
858
  */
859
+ private function get_parsed_asset_settings(array $assets, $group_name, $plugin_name = null)
860
+ {
861
+ $plugin_group = false;
862
  $settings_formated = [];
863
+ $settings = $this->get_settings();
864
 
865
+ if( !isset($assets['js']) ) {
866
  $assets['js'] = [];
867
  }
868
+ if( !isset($assets['css']) ) {
869
  $assets['css'] = [];
870
  }
871
 
872
+ if( !empty($settings[$group_name]) ) {
873
+ if( !empty($plugin_name) ) {
874
+ $settings = isset($settings[$group_name][$plugin_name]) ? $settings[$group_name][$plugin_name] : [];
875
  $plugin_group = true;
876
+ } else if( 'plugins' !== $group_name ) {
877
+ $settings = $settings[$group_name];
878
  }
879
  }
880
 
881
+ foreach((array)$assets as $type => $resources) {
882
+ $settings_formated[$type] = [];
883
 
884
+ foreach((array)$resources as $name => $attrs) {
885
+ $s = &$settings_formated[$type][$name];
886
 
887
+ if( isset($settings[$type]) && isset($settings[$type][$name]) && !empty($settings[$type][$name]['visability']) ) {
888
+ $s['load_mode'] = "disable";
889
+ $s['visability'] = stripslashes($settings[$type][$name]['visability']);
890
  } else {
891
+ if( $plugin_group ) {
892
+ $plugin_load_mode = !empty($settings['load_mode']) ? $settings['load_mode'] : 'enable';
893
 
894
  $s['load_mode'] = "enable" === $plugin_load_mode ? 'enable' : 'disable';
895
  } else {
898
  $s['visability'] = "";
899
  }
900
 
901
+ if( 'disable' === $s['load_mode'] ) {
902
+ $s['row_classes'] = " js-wam-table__tr--disabled-section";
903
+ $s['select_control_classes'] = " js-wam-select--disable";
904
  $s['settings_button_classes'] = "";
905
 
906
+ if( isset($plugin_load_mode) && 'enable' !== $plugin_load_mode ) {
907
  $s['settings_button_classes'] = " js-wam-button--hidden";
908
  }
909
  } else {
910
+ $s['row_classes'] = "";
911
+ $s['select_control_classes'] = " js-wam-select--enable";
912
  $s['settings_button_classes'] = " js-wam-button--hidden";
913
  }
914
 
915
+ $s['requires'] = $this->get_asset_requires($name);
916
+ $s = array_merge($s, $attrs);
917
  }
918
  }
919
 
927
  *
928
  * @return array
929
  */
930
+ private function get_plugin_data($name)
931
+ {
932
  $data = [];
933
 
934
+ if( $name ) {
935
+ if( !function_exists('get_plugins') ) {
936
  // подключим файл с функцией get_plugins()
937
  require_once ABSPATH . 'wp-admin/includes/plugin.php';
938
  }
939
  $all_plugins = get_plugins();
940
+ if( !empty($all_plugins) ) {
941
+ foreach($all_plugins as $plugin_path => $plugin_data) {
942
+ if( strpos($plugin_path, $name . '/') !== false ) {
943
+ $data = $plugin_data;
944
  $data['basename'] = $plugin_path;
945
  break;
946
  }
956
  *
957
  * If plugin loaded in admin area, the method will return settings for the admin area. *
958
  *
 
 
959
  * @return array All plugin settings
960
  * @throws \Exception
961
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
962
+ * @since 2.0.1
963
  */
964
+ private function get_settings()
965
+ {
966
+ if( is_admin() ) {
967
+ if( $this->plugin->isNetworkActive() && $this->plugin->isNetworkAdmin() ) {
968
+ return $this->plugin->getNetworkOption('backend_assets_states', []);
969
  }
970
 
971
+ return $this->plugin->getOption('backend_assets_states', []);
972
  }
973
 
974
+ return $this->plugin->getOption('assets_states', []);
975
  }
976
 
977
  /**
978
  * Exception for address starting from "//example.com" instead of
979
  * "http://example.com". WooCommerce likes such a format
980
  *
981
+ * @param string $url Incorrect URL.
982
  *
983
  * @return string Correct URL.
984
  */
985
+ private function prepare_url($url)
986
+ {
987
+ if( isset($url[0]) && isset($url[1]) && '/' == $url[0] && '/' == $url[1] ) {
988
+ $out = (is_ssl() ? 'https:' : 'http:') . $url;
989
  } else {
990
  $out = $url;
991
  }
998
  *
999
  * @return string
1000
  */
1001
+ private function get_current_url_path()
1002
+ {
1003
+ if( !is_admin() ) {
1004
+ $url = explode('?', $_SERVER['REQUEST_URI'], 2);
1005
+ if( strlen($url[0]) > 1 ) {
1006
+ $out = rtrim($url[0], '/');
1007
  } else {
1008
  $out = $url[0];
1009
  }
1010
 
1011
+ return "/" === $out ? "/" : untrailingslashit($out);
1012
  }
1013
 
1014
+ $removeble_args = array_merge(['wbcr_assets_manager'], wp_removable_query_args());
1015
 
1016
+ $url = remove_query_arg($removeble_args, $_SERVER['REQUEST_URI']);
1017
 
1018
+ return untrailingslashit($url);
1019
  }
1020
 
1021
  /**
1022
  * Checks how heavy is file
1023
  *
1024
+ * @param string $src URL.
1025
  *
1026
  * @return int Size in KB.
1027
  */
1028
+ private function get_asset_size($src)
1029
+ {
1030
  $weight = 0;
1031
 
1032
  $home = get_theme_root() . '/../..';
1033
+ $src = explode('?', $src);
1034
 
1035
+ if( !filter_var($src[0], FILTER_VALIDATE_URL) === false && strpos($src[0], get_home_url()) === false ) {
1036
  return 0;
1037
  }
1038
 
1039
+ $src_relative = $home . str_replace(get_home_url(), '', $this->prepare_url($src[0]));
1040
 
1041
+ if( file_exists($src_relative) ) {
1042
+ $weight = round(filesize($src_relative) / 1024, 1);
1043
  }
1044
 
1045
  return $weight;
1046
  }
1047
 
1048
+ private function get_conditions_login_params($group = false)
1049
+ {
1050
  global $wp_roles, $wp;
1051
 
1052
  # Add User Roles
1053
  #---------------------------------------------------------------
1054
+ $all_roles = $wp_roles->roles;
1055
+ $editable_roles = apply_filters('editable_roles', $all_roles);
1056
  $roles_param_values = [
1057
  [
1058
  'value' => 'guest',
1059
+ 'title' => __('Guest', 'gonzales'),
1060
  ]
1061
  ];
1062
 
1063
+ if( !empty($editable_roles) ) {
1064
+ foreach($editable_roles as $role_ID => $role) {
1065
+ $roles_param_values[] = ['value' => $role_ID, 'title' => $role['name']];
1066
  }
1067
  }
1068
 
1069
  # Add Post Types
1070
  #---------------------------------------------------------------
1071
+ $post_types = get_post_types([
1072
  'public' => true
1073
+ ], 'objects');
1074
  $post_types_param_values = [];
1075
 
1076
+ if( !empty($post_types) ) {
1077
+ foreach($post_types as $type) {
1078
+ if( isset($type->name) ) {
1079
+ $post_types_param_values[] = ['value' => $type->name, 'title' => $type->label];
1080
  }
1081
  }
1082
  }
1083
 
1084
  # Add Taxonomies
1085
  #---------------------------------------------------------------
1086
+ $taxonomies = get_taxonomies([
1087
  'public' => true
1088
+ ], 'objects');
1089
  $taxonomies_param_values = [];
1090
 
1091
+ if( !empty($taxonomies) ) {
1092
+ foreach($taxonomies as $tax) {
1093
+ $taxonomies_param_values[] = ['value' => $tax->name, 'title' => $tax->label];
1094
  }
1095
  }
1096
 
1097
+ $pro_label = !defined('WGZP_PLUGIN_ACTIVE') ? ' (Pro)' : '';
1098
 
1099
  $location_items = [
1100
  [
1101
+ 'id' => 'current-url',
1102
+ 'title' => __('Current URL', 'gonzales'),
1103
+ 'type' => 'default',
1104
  'default_value' => $this->get_current_url_path(),
1105
+ 'description' => __('Current Url', 'gonzales')
1106
  ],
1107
  [
1108
+ 'id' => 'location-page',
1109
+ 'title' => __('Custom URL', 'gonzales') . $pro_label,
1110
+ 'type' => 'text',
1111
+ 'description' => __('An URL of the current page where a user who views your website is located. If you use the equals operator, paste in field the request url without the query string. For example: "/my-page" or "/my-page/subpage". If you use the "Contains" operator, use the request url part. For example: "page" will match 2 in the pages "/my-page/subpage" and "/my-page".', 'gonzales'),
1112
+ 'disabled' => !defined('WGZP_PLUGIN_ACTIVE')
1113
  ],
1114
  [
1115
+ 'id' => 'regular-expression',
1116
+ 'title' => __('Regular Expression', 'gonzales') . $pro_label,
1117
+ 'type' => 'regexp',
1118
  'placeholder' => '^(about-page-[0-9]+|contacts-[0-9]{,2})',
1119
+ 'description' => __('Regular expressions can be used by experts. This tool creates flexible conditions to disable the resource. For example, if you specify this expression: ^([A-z0-9]+-)?gifts? then the resource will be disabled at the following pages http://yoursite.test/get-gift/, http://yoursite.test/gift/, http://yoursite.test/get-gifts/, http://yoursite.test/gifts/. The plugin ignores the backslash at the beginning of the query string, so you can dismiss it. Check your regular expressions in here: https://regex101.com, this will prevent you from the mistakes. This feature is available at the paid version.', 'gonzales'),
1120
+ 'disabled' => !defined('WGZP_PLUGIN_ACTIVE')
1121
  ]
1122
  ];
1123
 
1124
+ if( !is_admin() ) {
1125
  $location_items[] = [
1126
+ 'id' => 'location-some-page',
1127
+ 'title' => __('Page', 'gonzales'),
1128
+ 'type' => 'select',
1129
+ 'params' => [
1130
+ 'Basic' => [
1131
  [
1132
  'value' => 'base_web',
1133
+ 'title' => __('Entire Website', 'gonzales'),
1134
  ],
1135
  [
1136
  'value' => 'base_sing',
1137
+ 'title' => __('All Singulars', 'gonzales'),
1138
  ],
1139
  [
1140
  'value' => 'base_arch',
1141
+ 'title' => __('All Archives', 'gonzales'),
1142
  ],
1143
  ],
1144
  'Special Pages' => [
1145
  [
1146
  'value' => 'spec_404',
1147
+ 'title' => __('404 Page', 'gonzales')
1148
  ],
1149
  [
1150
  'value' => 'spec_search',
1151
+ 'title' => __('Search Page', 'gonzales')
1152
  ],
1153
  [
1154
  'value' => 'spec_blog',
1155
+ 'title' => __('Blog / Posts Page', 'gonzales')
1156
  ],
1157
  [
1158
  'value' => 'spec_front',
1159
+ 'title' => __('Front Page', 'gonzales')
1160
  ],
1161
  [
1162
  'value' => 'spec_date',
1163
+ 'title' => __('Date Archive', 'gonzales')
1164
  ],
1165
  [
1166
  'value' => 'spec_auth',
1167
+ 'title' => __('Author Archive', 'gonzales')
1168
  ],
1169
  ],
1170
+ 'Posts' => [
1171
  [
1172
  'value' => 'post_all',
1173
+ 'title' => __('All Posts', 'gonzales')
1174
  ],
1175
  [
1176
  'value' => 'post_arch',
1177
+ 'title' => __('All Posts Archive', 'gonzales')
1178
  ],
1179
  [
1180
  'value' => 'post_cat',
1181
+ 'title' => __('All Categories Archive', 'gonzales')
1182
  ],
1183
  [
1184
  'value' => 'post_tag',
1185
+ 'title' => __('All Tags Archive', 'gonzales')
1186
  ],
1187
  ],
1188
+ 'Pages' => [
1189
  [
1190
  'value' => 'page_all',
1191
+ 'title' => __('All Pages', 'gonzales')
1192
  ],
1193
  [
1194
  'value' => 'page_arch',
1195
+ 'title' => __('All Pages Archive', 'gonzales')
1196
  ],
1197
  ],
1198
 
1199
  ],
1200
+ 'description' => __('List of specific pages.', 'gonzales')
1201
  ];
1202
  $location_items[] = [
1203
+ 'id' => 'location-post-type',
1204
+ 'title' => __('Post type', 'gonzales'),
1205
+ 'type' => 'select',
1206
+ 'params' => $post_types_param_values,
1207
+ 'description' => __('A post type of the current page.', 'gonzales'),
1208
  ];
1209
  $location_items[] = [
1210
+ 'id' => 'location-taxonomy',
1211
+ 'title' => __('Taxonomy', 'gonzales'),
1212
+ 'type' => 'select',
1213
+ 'params' => $taxonomies_param_values,
1214
+ 'description' => __('A taxonomy of the current page.', 'gonzales'),
1215
  ];
1216
  } else {
1217
  $location_items[] = [
1218
+ 'id' => 'location-some-page',
1219
+ 'title' => __('Page', 'gonzales'),
1220
+ 'type' => 'select',
1221
+ 'params' => [
1222
+ 'Basic' => [
1223
  [
1224
  'value' => 'all_admin_area',
1225
+ 'title' => __('All Admin Pages', 'gonzales'),
1226
  ],
1227
  [
1228
  'value' => 'posts_all',
1229
+ 'title' => __('All Posts', 'gonzales')
1230
  ],
1231
  [
1232
  'value' => 'posts_add_new',
1233
+ 'title' => __('Add New Post', 'gonzales')
1234
  ],
1235
  [
1236
  'value' => 'posts_taxonomies',
1237
+ 'title' => __('All Taxonomies', 'gonzales')
1238
  ]
1239
  ],
1240
+ 'Dashboard' => [
1241
  [
1242
  'value' => 'dashboard_home',
1243
+ 'title' => __('Home', 'gonzales')
1244
  ],
1245
  [
1246
  'value' => 'dashboard_wordpress_updates',
1247
+ 'title' => __('WordPress Updates', 'gonzales')
1248
  ],
1249
  ],
1250
+ 'Media' => [
1251
  [
1252
  'value' => 'media_library',
1253
+ 'title' => __('Library', 'gonzales')
1254
  ],
1255
  [
1256
  'value' => 'media_library_add_new',
1257
+ 'title' => __('Add new', 'gonzales')
1258
  ]
1259
  ],
1260
  'Appearance' => [
1261
  [
1262
  'value' => 'appearance_themes',
1263
+ 'title' => __('Themes', 'gonzales')
1264
  ],
1265
  [
1266
  'value' => 'appearance_customize',
1267
+ 'title' => __('Customize', 'gonzales')
1268
  ],
1269
  [
1270
  'value' => 'appearance_widgets',
1271
+ 'title' => __('Widgets', 'gonzales')
1272
  ],
1273
  [
1274
  'value' => 'appearance_menus',
1275
+ 'title' => __('Menus', 'gonzales')
1276
  ],
1277
  [
1278
  'value' => 'appearance_theme_editor',
1279
+ 'title' => __('Theme Editor', 'gonzales')
1280
  ]
1281
  ],
1282
+ 'Plugins' => [
1283
  [
1284
  'value' => 'plugins_installed',
1285
+ 'title' => __('Installed Plugins', 'gonzales')
1286
  ],
1287
  [
1288
  'value' => 'plugins_add_new',
1289
+ 'title' => __('Add New', 'gonzales')
1290
  ],
1291
  [
1292
  'value' => 'plugins_editor',
1293
+ 'title' => __('Plugin Editor', 'gonzales')
1294
  ]
1295
  ],
1296
+ 'Users' => [
1297
  [
1298
  'value' => 'users_all',
1299
+ 'title' => __('All Users', 'gonzales')
1300
  ],
1301
  [
1302
  'value' => 'users_add_new',
1303
+ 'title' => __('Add New', 'gonzales')
1304
  ],
1305
  [
1306
  'value' => 'users_your_profile',
1307
+ 'title' => __('Your profile', 'gonzales')
1308
  ]
1309
  ],
1310
+ 'Tools' => [
1311
  [
1312
  'value' => 'tools_available',
1313
+ 'title' => __('Available Tools', 'gonzales')
1314
  ],
1315
  [
1316
  'value' => 'tools_import',
1317
+ 'title' => __('Import', 'gonzales')
1318
  ],
1319
  [
1320
  'value' => 'tools_export',
1321
+ 'title' => __('Export', 'gonzales')
1322
  ],
1323
  [
1324
  'value' => 'tools_site_health',
1325
+ 'title' => __('Site Health', 'gonzales')
1326
  ],
1327
  [
1328
  'value' => 'tools_export_personal_data',
1329
+ 'title' => __('Export Personal Data', 'gonzales')
1330
  ],
1331
  [
1332
  'value' => 'tools_erase_personal_data',
1333
+ 'title' => __('Erase Personal Data', 'gonzales')
1334
  ]
1335
  ],
1336
+ 'Settings' => [
1337
  [
1338
  'value' => 'settings_general',
1339
+ 'title' => __('General', 'gonzales')
1340
  ],
1341
  [
1342
  'value' => 'settings_writing',
1343
+ 'title' => __('Writing', 'gonzales')
1344
  ],
1345
  [
1346
  'value' => 'settings_reading',
1347
+ 'title' => __('Reading', 'gonzales')
1348
  ],
1349
  [
1350
  'value' => 'settings_media',
1351
+ 'title' => __('Media', 'gonzales')
1352
  ],
1353
  [
1354
  'value' => 'settings_permalinks',
1355
+ 'title' => __('Permalinks', 'gonzales')
1356
  ],
1357
  [
1358
  'value' => 'settings_privacy',
1359
+ 'title' => __('Privacy', 'gonzales')
1360
  ]
1361
  ],
1362
  ],
1363
+ 'description' => __('List of specific pages.', 'gonzales')
1364
  ];
1365
  }
1366
 
1367
  $grouped_filter_params = [
1368
  [
1369
+ 'id' => 'user',
1370
+ 'title' => __('User', 'gonzales'),
1371
  'items' => [
1372
  [
1373
+ 'id' => 'user-role',
1374
+ 'title' => __('Role', 'gonzales') . $pro_label,
1375
+ 'type' => 'select',
1376
+ 'params' => $roles_param_values,
1377
+ 'description' => __('A role of the user who views your website. The role "guest" is applied to unregistered users.', 'gonzales'),
1378
+ 'disabled' => !defined('WGZP_PLUGIN_ACTIVE')
1379
  ],
1380
  /*[
1381
  'id' => 'user-registered',
1384
  'description' => __( 'The date when the user who views your website was registered. For unregistered users this date always equals to 1 Jan 1970.', 'gonzales' )
1385
  ],*/
1386
  [
1387
+ 'id' => 'user-mobile',
1388
+ 'title' => __('Mobile Device', 'gonzales') . $pro_label,
1389
+ 'type' => 'select',
1390
+ 'params' => [
1391
+ ['value' => 'yes', 'title' => __('Yes', 'gonzales')],
1392
+ ['value' => 'no', 'title' => __('No', 'gonzales')]
1393
  ],
1394
+ 'description' => __('Determines whether the user views your website from mobile device or not.', 'gonzales'),
1395
+ 'disabled' => !defined('WGZP_PLUGIN_ACTIVE')
1396
  ],
1397
  [
1398
+ 'id' => 'user-cookie-name',
1399
+ 'title' => __('Cookie Name', 'gonzales') . $pro_label,
1400
+ 'type' => 'text',
1401
  'only_equals' => true,
1402
+ 'description' => __('Determines whether the user\'s browser has a cookie with a given name.', 'gonzales'),
1403
+ 'disabled' => !defined('WGZP_PLUGIN_ACTIVE')
1404
  ]
1405
  ]
1406
  ],
1407
  [
1408
+ 'id' => 'location',
1409
+ 'title' => __('Location', 'gonzales'),
1410
  'items' => $location_items
1411
  ]
1412
  ];
1413
 
1414
  $filterParams = [];
1415
+ foreach((array)$grouped_filter_params as $filter_group) {
1416
+ $filterParams = array_merge($filterParams, $filter_group['items']);
1417
  }
1418
 
1419
  return $group ? $grouped_filter_params : $filterParams;
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_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,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_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
  }
63
  *
64
  * @param string $template The template name.
65
  * @param mixed $data Some data to pass to the template.
66
+ * @param Wbcr_FactoryClearfy232_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_FactoryClearfy232_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_FactoryClearfy232_PageBase $page
96
  */
97
+ public function print_template( $template, $data = [], Wbcr_FactoryClearfy232_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_Factory436_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_Factory441_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_Factory436_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_Factory441_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_Factory436_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_Factory441_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_436_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_441_VERSION
7
  */
8
 
9
  // todo: проверить, как работает кеширование
components/assets-manager/readme.txt CHANGED
@@ -59,6 +59,14 @@ We invite you to check out a few other related free plugins that our team has al
59
  2. Assets manager
60
 
61
  == Changelog ==
 
 
 
 
 
 
 
 
62
  = 2.0.5 (12.02.2020) =
63
  * Fixed: Minor bug
64
 
59
  2. Assets manager
60
 
61
  == Changelog ==
62
+ = 2.0.7 (21.12.2020) =
63
+ * Disabled search by options for a single plugin.
64
+ * Fixed: duplicate templates and scripts error when rendering html views of Assets manager.
65
+
66
+ = 2.0.6 (15.12.2020) =
67
+ * Added: Subscribe form
68
+ * Fixed: Minor bug
69
+
70
  = 2.0.5 (12.02.2020) =
71
  * Fixed: Minor bug
72
 
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_435_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_440_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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy227_PageBase {
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
 
@@ -62,6 +62,7 @@ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy227_PageBase {
62
  $this->internal = false;
63
  $this->menu_target = 'options-general.php';
64
  $this->add_link_to_plugin_actions = true;
 
65
  }
66
 
67
  parent::__construct( $plugin );
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory441_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory441_Plugin $plugin ) {
58
  $this->menu_title = __( 'Disable comments', 'comments-plus' );
59
  $this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
60
 
62
  $this->internal = false;
63
  $this->menu_target = 'options-general.php';
64
  $this->add_link_to_plugin_actions = true;
65
+ $this->show_search_options_form = false;
66
  }
67
 
68
  parent::__construct( $plugin );
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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy227_PageBase {
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,10 +78,10 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy227_PageBase {
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,7 +200,7 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy227_PageBase {
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();
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory441_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory441_Plugin $plugin ) {
72
  $this->menu_title = __( 'Comments cleaner', 'comments-plus' );
73
 
74
  parent::__construct( $plugin );
78
  * {@inheritDoc}
79
  *
80
  * @param $notices
81
+ * @param Wbcr_Factory441_Plugin $plugin
82
  *
83
  * @return array
84
+ * @see libs\factory\pages\themplates\FactoryPages440_ImpressiveThemplate
85
  */
86
  public function getActionNotices( $notices ) {
87
 
200
  /**
201
  * Prints the content of the page
202
  *
203
+ * @see libs\factory\pages\themplates\FactoryPages440_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_FactoryClearfy227_MoreFeaturesPage {
23
 
24
  }
19
  *
20
  * @copyright (c) 2018 Webraftic Ltd
21
  */
22
+ class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy232_MoreFeaturesPage {
23
 
24
  }
components/comments-plus/comments-plus.php CHANGED
@@ -4,15 +4,15 @@
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Allows administrators to globally disable comments on their site. Comments can be disabled for individual record types.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.1.1
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
15
- if ( ! defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
 
@@ -37,54 +37,57 @@ if ( ! defined( 'ABSPATH' ) ) {
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
41
 
42
  // @formatter:off
43
  $wcm_plugin_info = array(
44
- 'prefix' => 'wbcr_comments_plus_', // wbcr_cmp
45
- 'plugin_name' => 'wbcr_comments_plus',
46
- 'plugin_title' => __( 'Webcraftic Disable comments', 'comments-plus' ),
47
 
48
  // PLUGIN SUPPORT
49
- 'support_details' => array(
50
- 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
- 'support' => 'support', // {site}/support
53
- 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
 
 
 
 
57
  // PLUGIN ADVERTS
58
  'render_adverts' => true,
59
- 'adverts_settings' => array(
60
  'dashboard_widget' => true, // show dashboard widget (default: false)
61
- 'right_sidebar' => true, // show adverts sidebar (default: false)
62
- 'notice' => true, // show notice message (default: false)
63
  ),
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',
79
  'required_clearfy_check_component' => false
80
- ) ) );
81
-
82
 
83
  /**
84
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
85
  * and the user will throw a warning.
86
  */
87
- if ( ! $wcm_compatibility->check() ) {
88
  return;
89
  }
90
 
@@ -97,12 +100,11 @@ if ( ! $wcm_compatibility->check() ) {
97
  */
98
 
99
  // This plugin is activated
100
- define( 'WCM_PLUGIN_ACTIVE', true );
101
- define( 'WCM_PLUGIN_VERSION', $wcm_compatibility->get_plugin_version() );
102
- define( 'WCM_PLUGIN_DIR', dirname( __FILE__ ) );
103
- define( 'WCM_PLUGIN_BASE', plugin_basename( __FILE__ ) );
104
- define( 'WCM_PLUGIN_URL', plugins_url( null, __FILE__ ) );
105
-
106
 
107
 
108
 
@@ -112,24 +114,24 @@ define( 'WCM_PLUGIN_URL', plugins_url( null, __FILE__ ) );
112
  * -----------------------------------------------------------------------------
113
  */
114
 
115
- require_once( WCM_PLUGIN_DIR . '/libs/factory/core/boot.php' );
116
- require_once( WCM_PLUGIN_DIR . '/includes/class-plugin.php' );
117
 
118
  try {
119
- new WCM_Plugin( __FILE__, array_merge( $wcm_plugin_info, array(
120
- 'plugin_version' => WCM_PLUGIN_VERSION,
121
  'plugin_text_domain' => $wcm_compatibility->get_text_domain(),
122
- ) ) );
123
  } catch( Exception $e ) {
124
  // Plugin wasn't initialized due to an error
125
- define( 'WCM_PLUGIN_THROW_ERROR', true );
126
 
127
- $wcm_plugin_error_func = function () use ( $e ) {
128
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Disable Comments', $e->getMessage(), $e->getCode() );
129
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
130
  };
131
 
132
- add_action( 'admin_notices', $wcm_plugin_error_func );
133
- add_action( 'network_admin_notices', $wcm_plugin_error_func );
134
  }
135
  // @formatter:on
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Allows administrators to globally disable comments on their site. Comments can be disabled for individual record types.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 1.1.2
8
  * Text Domain: comments-plus
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  // Exit if accessed directly
15
+ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
41
 
42
  // @formatter:off
43
  $wcm_plugin_info = array(
44
+ 'prefix' => 'wbcr_comments_plus_', // wbcr_cmp
45
+ 'plugin_name' => 'wbcr_comments_plus',
46
+ 'plugin_title' => __('Webcraftic Disable comments', 'comments-plus'),
47
 
48
  // PLUGIN SUPPORT
49
+ 'support_details' => array(
50
+ 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
+ 'support' => 'support', // {site}/support
53
+ 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
57
+ // PLUGIN SUBSCRIBE FORM
58
+ 'subscribe_widget' => true,
59
+ 'subscribe_settings' => ['group_id' => '105408898'],
60
+
61
  // PLUGIN ADVERTS
62
  'render_adverts' => true,
63
+ 'adverts_settings' => array(
64
  'dashboard_widget' => true, // show dashboard widget (default: false)
65
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
66
+ 'notice' => true, // show notice message (default: false)
67
  ),
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
76
  )
77
  );
78
 
79
+ $wcm_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($wcm_plugin_info, array(
80
+ 'plugin_already_activate' => defined('WCM_PLUGIN_ACTIVE'),
81
+ 'required_php_version' => '5.4',
82
+ 'required_wp_version' => '4.2.0',
83
  'required_clearfy_check_component' => false
84
+ )));
 
85
 
86
  /**
87
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
88
  * and the user will throw a warning.
89
  */
90
+ if( !$wcm_compatibility->check() ) {
91
  return;
92
  }
93
 
100
  */
101
 
102
  // This plugin is activated
103
+ define('WCM_PLUGIN_ACTIVE', true);
104
+ define('WCM_PLUGIN_VERSION', $wcm_compatibility->get_plugin_version());
105
+ define('WCM_PLUGIN_DIR', dirname(__FILE__));
106
+ define('WCM_PLUGIN_BASE', plugin_basename(__FILE__));
107
+ define('WCM_PLUGIN_URL', plugins_url(null, __FILE__));
 
108
 
109
 
110
 
114
  * -----------------------------------------------------------------------------
115
  */
116
 
117
+ require_once(WCM_PLUGIN_DIR . '/libs/factory/core/boot.php');
118
+ require_once(WCM_PLUGIN_DIR . '/includes/class-plugin.php');
119
 
120
  try {
121
+ new WCM_Plugin(__FILE__, array_merge($wcm_plugin_info, array(
122
+ 'plugin_version' => WCM_PLUGIN_VERSION,
123
  'plugin_text_domain' => $wcm_compatibility->get_text_domain(),
124
+ )));
125
  } catch( Exception $e ) {
126
  // Plugin wasn't initialized due to an error
127
+ define('WCM_PLUGIN_THROW_ERROR', true);
128
 
129
+ $wcm_plugin_error_func = function () use ($e) {
130
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Disable Comments', $e->getMessage(), $e->getCode());
131
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
132
  };
133
 
134
+ add_action('admin_notices', $wcm_plugin_error_func);
135
+ add_action('network_admin_notices', $wcm_plugin_error_func);
136
  }
137
  // @formatter:on
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_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
@@ -59,7 +59,7 @@ class WCM_Plugin extends Wbcr_Factory436_Plugin {
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
- * @return \Wbcr_Factory436_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_Factory441_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory441_Plugin
18
  */
19
  private static $app;
20
 
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
+ * @return \Wbcr_Factory441_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_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
  }
12
  *
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
+ class WbcrCmp_ConfigComments extends Wbcr_FactoryClearfy232_Configurate {
16
 
17
  private $modified_types = [];
18
 
19
  /**
20
+ * @param Wbcr_Factory441_Plugin $plugin
21
  */
22
+ public function __construct( Wbcr_Factory441_Plugin $plugin ) {
23
  parent::__construct( $plugin );
24
  $this->plugin = $plugin;
25
  }
components/comments-plus/readme.txt CHANGED
@@ -3,7 +3,7 @@ Tags: disable comments, disable XML-RPC, remove comments, delete comments, no se
3
  Contributors: webcraftic, alexkovalevv, creativemotion
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
- Tested up to: 5.2
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
@@ -122,6 +122,10 @@ If you want to help with the translation, please contact me through this site or
122
  2. Control panel (Remove comments)
123
 
124
  == Changelog ==
 
 
 
 
125
  = 1.1.1 =
126
  * Added: Compatibility with Wordpress 4.2 - 5.x
127
  * Added: Multisite support
3
  Contributors: webcraftic, alexkovalevv, creativemotion
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
+ Tested up to: 5.6
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
122
  2. Control panel (Remove comments)
123
 
124
  == Changelog ==
125
+ = 1.1.2 (16.12.2020) =
126
+ * Added: Subscribe form
127
+ * Fixed: Minor bugs
128
+
129
  = 1.1.1 =
130
  * Added: Compatibility with Wordpress 4.2 - 5.x
131
  * Added: Multisite support
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_Factory436_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WCTR_Activation extends Wbcr_Factory436_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_Factory441_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WCTR_Activation extends Wbcr_Factory441_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_435_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_440_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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -59,9 +59,9 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy227_PageBase {
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' ) ) {
@@ -69,6 +69,7 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy227_PageBase {
69
  $this->menu_target = 'options-general.php';
70
  $this->add_link_to_plugin_actions = true;
71
  $this->page_parent_page = null;
 
72
  }
73
 
74
  parent::__construct( $plugin );
@@ -202,7 +203,7 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy227_PageBase {
202
  }
203
 
204
  /**
205
- * @param $html_builder Wbcr_FactoryForms433_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_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
+ * @param \Wbcr_Factory441_Plugin $plugin
63
  */
64
+ public function __construct( Wbcr_Factory441_Plugin $plugin ) {
65
  $this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
66
 
67
  if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
69
  $this->menu_target = 'options-general.php';
70
  $this->add_link_to_plugin_actions = true;
71
  $this->page_parent_page = null;
72
+ $this->show_search_options_form = false;
73
  }
74
 
75
  parent::__construct( $plugin );
203
  }
204
 
205
  /**
206
+ * @param $html_builder Wbcr_FactoryForms438_Html
207
  */
208
  public function rollbackButton( $html_builder ) {
209
  $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_FactoryClearfy227_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_FactoryClearfy232_MoreFeaturesPage {
22
 
23
  }
components/cyrlitera/cyrlitera.php CHANGED
@@ -4,15 +4,15 @@
4
  * Plugin URI: https://webcraftic.com
5
  * Description: The plugin converts Cyrillic, Georgian links, filenames into Latin. It is necessary for correct work of WordPress plugins and improve links readability.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.1.1
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
15
- if ( ! defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
 
@@ -37,54 +37,57 @@ if ( ! defined( 'ABSPATH' ) ) {
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
41
 
42
  // @formatter:off
43
  $wctr_plugin_info = array(
44
- 'prefix' => 'wbcr_cyrlitera_',
45
- 'plugin_name' => 'wbcr_cyrlitera',
46
- 'plugin_title' => __( 'Webcraftic Cyrlitera', 'cyrlitera' ),
47
 
48
  // PLUGIN SUPPORT
49
- 'support_details' => array(
50
- 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
- 'support' => 'support', // {site}/support
53
- 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
 
 
 
 
57
  // PLUGIN ADVERTS
58
  'render_adverts' => true,
59
- 'adverts_settings' => array(
60
  'dashboard_widget' => true, // show dashboard widget (default: false)
61
- 'right_sidebar' => true, // show adverts sidebar (default: false)
62
- 'notice' => true, // show notice message (default: false)
63
  ),
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',
79
  'required_clearfy_check_component' => false
80
- ) ) );
81
-
82
 
83
  /**
84
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
85
  * and the user will throw a warning.
86
  */
87
- if ( ! $wctr_compatibility->check() ) {
88
  return;
89
  }
90
 
@@ -97,12 +100,11 @@ if ( ! $wctr_compatibility->check() ) {
97
  */
98
 
99
  // This plugin is activated
100
- define( 'WCTR_PLUGIN_ACTIVE', true );
101
- define( 'WCTR_PLUGIN_VERSION', $wctr_compatibility->get_plugin_version() );
102
- define( 'WCTR_PLUGIN_DIR', dirname( __FILE__ ) );
103
- define( 'WCTR_PLUGIN_BASE', plugin_basename( __FILE__ ) );
104
- define( 'WCTR_PLUGIN_URL', plugins_url( null, __FILE__ ) );
105
-
106
 
107
 
108
 
@@ -112,25 +114,25 @@ define( 'WCTR_PLUGIN_URL', plugins_url( null, __FILE__ ) );
112
  * -----------------------------------------------------------------------------
113
  */
114
 
115
- require_once( WCTR_PLUGIN_DIR . '/libs/factory/core/boot.php' );
116
- require_once( WCTR_PLUGIN_DIR . '/includes/class-helpers.php' );
117
- require_once( WCTR_PLUGIN_DIR . '/includes/class-plugin.php' );
118
 
119
  try {
120
- new WCTR_Plugin( __FILE__, array_merge( $wctr_plugin_info, array(
121
- 'plugin_version' => WCTR_PLUGIN_VERSION,
122
  'plugin_text_domain' => $wctr_compatibility->get_text_domain(),
123
- ) ) );
124
  } catch( Exception $e ) {
125
  // Plugin wasn't initialized due to an error
126
- define( 'WCTR_PLUGIN_THROW_ERROR', true );
127
 
128
- $wctr_plugin_error_func = function () use ( $e ) {
129
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Cyrlitera', $e->getMessage(), $e->getCode() );
130
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
131
  };
132
 
133
- add_action( 'admin_notices', $wctr_plugin_error_func );
134
- add_action( 'network_admin_notices', $wctr_plugin_error_func );
135
  }
136
  // @formatter:on
4
  * Plugin URI: https://webcraftic.com
5
  * Description: The plugin converts Cyrillic, Georgian links, filenames into Latin. It is necessary for correct work of WordPress plugins and improve links readability.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 1.1.2
8
  * Text Domain: cyrlitera
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  // Exit if accessed directly
15
+ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
41
 
42
  // @formatter:off
43
  $wctr_plugin_info = array(
44
+ 'prefix' => 'wbcr_cyrlitera_',
45
+ 'plugin_name' => 'wbcr_cyrlitera',
46
+ 'plugin_title' => __('Webcraftic Cyrlitera', 'cyrlitera'),
47
 
48
  // PLUGIN SUPPORT
49
+ 'support_details' => array(
50
+ 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
+ 'support' => 'support', // {site}/support
53
+ 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
57
+ // PLUGIN SUBSCRIBE FORM
58
+ 'subscribe_widget' => true,
59
+ 'subscribe_settings' => ['group_id' => '105408892'],
60
+
61
  // PLUGIN ADVERTS
62
  'render_adverts' => true,
63
+ 'adverts_settings' => array(
64
  'dashboard_widget' => true, // show dashboard widget (default: false)
65
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
66
+ 'notice' => true, // show notice message (default: false)
67
  ),
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
76
  )
77
  );
78
 
79
+ $wctr_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($wctr_plugin_info, array(
80
+ 'plugin_already_activate' => defined('WCTR_PLUGIN_ACTIVE'),
81
+ 'required_php_version' => '5.4',
82
+ 'required_wp_version' => '4.2.0',
83
  'required_clearfy_check_component' => false
84
+ )));
 
85
 
86
  /**
87
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
88
  * and the user will throw a warning.
89
  */
90
+ if( !$wctr_compatibility->check() ) {
91
  return;
92
  }
93
 
100
  */
101
 
102
  // This plugin is activated
103
+ define('WCTR_PLUGIN_ACTIVE', true);
104
+ define('WCTR_PLUGIN_VERSION', $wctr_compatibility->get_plugin_version());
105
+ define('WCTR_PLUGIN_DIR', dirname(__FILE__));
106
+ define('WCTR_PLUGIN_BASE', plugin_basename(__FILE__));
107
+ define('WCTR_PLUGIN_URL', plugins_url(null, __FILE__));
 
108
 
109
 
110
 
114
  * -----------------------------------------------------------------------------
115
  */
116
 
117
+ require_once(WCTR_PLUGIN_DIR . '/libs/factory/core/boot.php');
118
+ require_once(WCTR_PLUGIN_DIR . '/includes/class-helpers.php');
119
+ require_once(WCTR_PLUGIN_DIR . '/includes/class-plugin.php');
120
 
121
  try {
122
+ new WCTR_Plugin(__FILE__, array_merge($wctr_plugin_info, array(
123
+ 'plugin_version' => WCTR_PLUGIN_VERSION,
124
  'plugin_text_domain' => $wctr_compatibility->get_text_domain(),
125
+ )));
126
  } catch( Exception $e ) {
127
  // Plugin wasn't initialized due to an error
128
+ define('WCTR_PLUGIN_THROW_ERROR', true);
129
 
130
+ $wctr_plugin_error_func = function () use ($e) {
131
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Cyrlitera', $e->getMessage(), $e->getCode());
132
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
133
  };
134
 
135
+ add_action('admin_notices', $wctr_plugin_error_func);
136
+ add_action('network_admin_notices', $wctr_plugin_error_func);
137
  }
138
  // @formatter:on
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_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WCTR_Plugin extends Wbcr_Factory436_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory436_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_Factory441_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory441_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory441_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_FactoryClearfy227_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
@@ -235,7 +235,7 @@ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy227_Configurate {
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
- if ( ! WbcrFactoryClearfy227_Helpers::isPermalink() ) {
239
  return;
240
  }
241
  $is404 = is_404();
12
  exit;
13
  }
14
 
15
+ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy232_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
+ if ( ! WbcrFactoryClearfy232_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_Factory436_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_Factory441_Update {
8
 
9
  public function install() {
10
  WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
components/cyrlitera/readme.txt CHANGED
@@ -3,7 +3,7 @@ Tags: translitera, cyrillic, latin, l10n, russian, rustolat, slugs, translations
3
  Contributors: webcraftic, creativemotion, alexkovalevv
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
- Tested up to: 5.2
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
@@ -89,6 +89,10 @@ There is a "Rollback changes" button in the plugin settings. This option works o
89
  2. Simple for filenames
90
 
91
  == Changelog ==
 
 
 
 
92
  = 1.1.1 =
93
  * Added: Compatibility with Wordpress 4.2 - 5.x
94
  * Added: Gutenberg support
3
  Contributors: webcraftic, creativemotion, alexkovalevv
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
+ Tested up to: 5.6
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
89
  2. Simple for filenames
90
 
91
  == Changelog ==
92
+ = 1.1.2 (15.12.2020) =
93
+ * Added: Subscribe form
94
+ * Fixed: Minor bugs
95
+
96
  = 1.1.1 =
97
  * Added: Compatibility with Wordpress 4.2 - 5.x
98
  * Added: Gutenberg support
components/disable-admin-notices/admin/assets/css/general.css CHANGED
@@ -1,50 +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
- }
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,76 +1,77 @@
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
- }
 
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
+ }
77
+ /*# sourceMappingURL=notifications-panel.css.map */
components/disable-admin-notices/admin/assets/css/page.css CHANGED
@@ -1,8 +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
- }
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,219 +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
- 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
- }
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/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_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
  }
44
  *
45
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
46
  */
47
+ add_filter( 'wbcr_factory_pages_440_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
48
  if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
49
  return 'https://goo.gl/68ucHp';
50
  }
components/disable-admin-notices/admin/class-page-basic.php CHANGED
@@ -19,16 +19,16 @@ if ( ! defined( 'ABSPATH' ) ) {
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 ) {
19
  exit;
20
  }
21
 
22
+ class WDN_Page extends Wbcr_FactoryClearfy232_PageBase {
23
 
24
  /**
25
  * Requests assets (js and css) for the page.
26
  *
27
+ * @param Wbcr_Factory441_ScriptList $scripts
28
+ * @param Wbcr_Factory441_StyleList $styles
29
  *
30
  * @return void
31
+ * @see Wbcr_FactoryPages440_AdminPage
32
  *
33
  */
34
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/options.php CHANGED
@@ -176,7 +176,7 @@ function wbcr_dan_is_active_clearfy_component() {
176
  * с настройками этого плагина, потому что это ухудшает юзабилити.
177
  *
178
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
179
- * @param Wbcr_FactoryPages435_ImpressiveThemplate $page Экземпляр страницы
180
  *
181
  * @return mixed Отсортированный массив с группой опций
182
  */
@@ -203,7 +203,7 @@ add_filter( 'wbcr_clr_additionally_form_options', 'wbcr_dan_additionally_form_op
203
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
204
  * через фреймворк.
205
  *
206
- * @param @param $html_builder Wbcr_FactoryForms433_Html
207
  *
208
  * @since 1.0
209
  *
176
  * с настройками этого плагина, потому что это ухудшает юзабилити.
177
  *
178
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
179
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $page Экземпляр страницы
180
  *
181
  * @return mixed Отсортированный массив с группой опций
182
  */
203
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
204
  * через фреймворк.
205
  *
206
+ * @param @param $html_builder Wbcr_FactoryForms438_Html
207
  *
208
  * @since 1.0
209
  *
components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php CHANGED
@@ -63,11 +63,11 @@ class WDAN_Edit_Admin_Bar extends WDN_Page {
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 ) {
63
  /**
64
  * Requests assets (js and css) for the page.
65
  *
66
+ * @param Wbcr_Factory441_ScriptList $scripts
67
+ * @param Wbcr_Factory441_StyleList $styles
68
  *
69
  * @return void
70
+ * @see Wbcr_FactoryPages440_AdminPage
71
  *
72
  */
73
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php CHANGED
@@ -61,11 +61,11 @@ class WDAN_Block_Ad_Redirects extends WDN_Page {
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 ) {
61
  /**
62
  * Requests assets (js and css) for the page.
63
  *
64
+ * @param Wbcr_Factory441_ScriptList $scripts
65
+ * @param Wbcr_Factory441_StyleList $styles
66
  *
67
  * @return void
68
+ * @see Wbcr_FactoryPages440_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_FactoryClearfy227_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@ class WDN_LicensePage extends Wbcr_FactoryClearfy227_LicensePage {
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' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WDN_LicensePage extends Wbcr_FactoryClearfy232_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory441_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory441_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 CHANGED
@@ -59,11 +59,11 @@ class WDAN_Notices extends WDN_Page {
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 ) {
59
  /**
60
  * Requests assets (js and css) for the page.
61
  *
62
+ * @param Wbcr_Factory441_ScriptList $scripts
63
+ * @param Wbcr_Factory441_StyleList $styles
64
  *
65
  * @return void
66
+ * @see Wbcr_FactoryPages440_AdminPage
67
  *
68
  */
69
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-settings.php CHANGED
@@ -66,9 +66,9 @@ class WDN_Settings_Page extends WDN_Page {
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,11 +88,11 @@ class WDN_Settings_Page extends WDN_Page {
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 ) {
@@ -122,7 +122,7 @@ class WDN_Settings_Page extends WDN_Page {
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;
66
 
67
 
68
  /**
69
+ * @param Wbcr_Factory441_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory441_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_Factory441_ScriptList $scripts
92
+ * @param Wbcr_Factory441_StyleList $styles
93
  *
94
  * @return void
95
+ * @see Wbcr_FactoryPages440_AdminPage
96
  *
97
  */
98
  public function assets( $scripts, $styles ) {
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_440')
126
  );*/
127
 
128
  return $notices;
components/disable-admin-notices/disable-admin-notices.php CHANGED
@@ -4,11 +4,11 @@
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
  /**
@@ -25,7 +25,7 @@
25
  */
26
 
27
  // Exit if accessed directly
28
- if ( ! defined( 'ABSPATH' ) ) {
29
  exit;
30
  }
31
 
@@ -37,64 +37,70 @@ if ( ! defined( 'ABSPATH' ) ) {
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
41
 
42
  // @formatter:off
43
  $wdan_plugin_info = array(
44
- 'prefix' => 'wbcr_dan_',
45
- 'plugin_name' => 'wbcr_dan',
46
- 'plugin_title' => __( 'Webcraftic disable admin notices', 'disable-admin-notices' ),
47
 
48
  // PLUGIN SUPPORT
49
- 'support_details' => array(
50
- 'url' => 'https://clearfy.pro/',
51
  'pages_map' => array(
52
  'support' => 'support', // {site}/support
53
- 'docs' => 'docs', // {site}/docs,
54
  'pricing' => 'disable-admin-notices'
55
  )
56
  ),
57
  // PLUGIN PREMIUM SETTINGS
58
- 'has_premium' => true,
59
- 'license_settings' => array(
60
- 'provider' => 'freemius',
61
- 'slug' => 'disable-admin-notices-premium',
62
- 'plugin_id' => '6456',
63
- 'public_key' => 'pk_0570ec3c1b4100b9c9a0cbfe80f9f',
64
- 'price' => 29,
65
- 'has_updates' => true,
66
  'updates_settings' => array(
67
- 'maybe_rollback' => true,
68
  'rollback_settings' => array(
69
  'prev_stable_version' => '0.0.0'
70
  )
71
  )
72
  ),
 
 
 
 
 
73
  // PLUGIN ADVERTS
74
- 'render_adverts' => true,
75
- 'adverts_settings' => array(
76
  'dashboard_widget' => false, // show dashboard widget (default: false)
77
- 'right_sidebar' => true, // show adverts sidebar (default: false)
78
- 'notice' => false, // show notice message (default: false)
79
  ),
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',
96
  'required_clearfy_check_component' => false
97
- ) ) );
98
 
99
 
100
 
@@ -102,7 +108,7 @@ $wdan_compatibility = new Wbcr_Factory436_Requirements( __FILE__, array_merge( $
102
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
103
  * and the user will throw a warning.
104
  */
105
- if ( ! $wdan_compatibility->check() ) {
106
  return;
107
  }
108
 
@@ -115,11 +121,11 @@ if ( ! $wdan_compatibility->check() ) {
115
  */
116
 
117
  // This plugin is activated
118
- define( 'WDN_PLUGIN_ACTIVE', true );
119
- define( 'WDN_PLUGIN_VERSION', $wdan_compatibility->get_plugin_version() );
120
- define( 'WDN_PLUGIN_DIR', dirname( __FILE__ ) );
121
- define( 'WDN_PLUGIN_BASE', plugin_basename( __FILE__ ) );
122
- define( 'WDN_PLUGIN_URL', plugins_url( null, __FILE__ ) );
123
 
124
 
125
 
@@ -129,25 +135,25 @@ define( 'WDN_PLUGIN_URL', plugins_url( null, __FILE__ ) );
129
  * -----------------------------------------------------------------------------
130
  */
131
 
132
- require_once( WDN_PLUGIN_DIR . '/libs/factory/core/boot.php' );
133
- require_once( WDN_PLUGIN_DIR . '/includes/functions.php' );
134
- require_once( WDN_PLUGIN_DIR . '/includes/class-plugin.php' );
135
 
136
  try {
137
- new WDN_Plugin( __FILE__, array_merge( $wdan_plugin_info, array(
138
- 'plugin_version' => WDN_PLUGIN_VERSION,
139
  'plugin_text_domain' => $wdan_compatibility->get_text_domain(),
140
- ) ) );
141
  } catch( Exception $e ) {
142
  // Plugin wasn't initialized due to an error
143
- define( 'WDN_PLUGIN_THROW_ERROR', true );
144
 
145
- $wdan_plugin_error_func = function () use ( $e ) {
146
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Disable Admin Notices', $e->getMessage(), $e->getCode() );
147
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
148
  };
149
 
150
- add_action( 'admin_notices', $wdan_plugin_error_func );
151
- add_action( 'network_admin_notices', $wdan_plugin_error_func );
152
  }
153
  // @formatter:on
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.4
8
  * Text Domain: disable-admin-notices
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  /**
25
  */
26
 
27
  // Exit if accessed directly
28
+ if( !defined('ABSPATH') ) {
29
  exit;
30
  }
31
 
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
41
 
42
  // @formatter:off
43
  $wdan_plugin_info = array(
44
+ 'prefix' => 'wbcr_dan_',
45
+ 'plugin_name' => 'wbcr_dan',
46
+ 'plugin_title' => __('Webcraftic disable admin notices', 'disable-admin-notices'),
47
 
48
  // PLUGIN SUPPORT
49
+ 'support_details' => array(
50
+ 'url' => 'https://clearfy.pro/',
51
  'pages_map' => array(
52
  'support' => 'support', // {site}/support
53
+ 'docs' => 'docs', // {site}/docs,
54
  'pricing' => 'disable-admin-notices'
55
  )
56
  ),
57
  // PLUGIN PREMIUM SETTINGS
58
+ 'has_premium' => true,
59
+ 'license_settings' => array(
60
+ 'provider' => 'freemius',
61
+ 'slug' => 'disable-admin-notices-premium',
62
+ 'plugin_id' => '6456',
63
+ 'public_key' => 'pk_0570ec3c1b4100b9c9a0cbfe80f9f',
64
+ 'price' => 29,
65
+ 'has_updates' => true,
66
  'updates_settings' => array(
67
+ 'maybe_rollback' => true,
68
  'rollback_settings' => array(
69
  'prev_stable_version' => '0.0.0'
70
  )
71
  )
72
  ),
73
+
74
+ // PLUGIN SUBSCRIBE FORM
75
+ 'subscribe_widget' => true,
76
+ 'subscribe_settings' => ['group_id' => '105407140'],
77
+
78
  // PLUGIN ADVERTS
79
+ 'render_adverts' => true,
80
+ 'adverts_settings' => array(
81
  'dashboard_widget' => false, // show dashboard widget (default: false)
82
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
83
+ 'notice' => false, // show notice message (default: false)
84
  ),
85
 
86
  // FRAMEWORK MODULES
87
  'load_factory_modules' => array(
88
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
89
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
90
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
91
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
92
+ array('libs/factory/freemius', 'factory_freemius_128', 'all'),
93
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin'),
94
+ //array('libs/factory/logger', 'factory_logger_000', 'all')
95
  )
96
  );
97
 
98
+ $wdan_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($wdan_plugin_info, array(
99
+ 'plugin_already_activate' => defined('WDN_PLUGIN_ACTIVE'),
100
+ 'required_php_version' => '5.4',
101
+ 'required_wp_version' => '4.2.0',
102
  'required_clearfy_check_component' => false
103
+ )));
104
 
105
 
106
 
108
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
109
  * and the user will throw a warning.
110
  */
111
+ if( !$wdan_compatibility->check() ) {
112
  return;
113
  }
114
 
121
  */
122
 
123
  // This plugin is activated
124
+ define('WDN_PLUGIN_ACTIVE', true);
125
+ define('WDN_PLUGIN_VERSION', $wdan_compatibility->get_plugin_version());
126
+ define('WDN_PLUGIN_DIR', dirname(__FILE__));
127
+ define('WDN_PLUGIN_BASE', plugin_basename(__FILE__));
128
+ define('WDN_PLUGIN_URL', plugins_url(null, __FILE__));
129
 
130
 
131
 
135
  * -----------------------------------------------------------------------------
136
  */
137
 
138
+ require_once(WDN_PLUGIN_DIR . '/libs/factory/core/boot.php');
139
+ require_once(WDN_PLUGIN_DIR . '/includes/functions.php');
140
+ require_once(WDN_PLUGIN_DIR . '/includes/class-plugin.php');
141
 
142
  try {
143
+ new WDN_Plugin(__FILE__, array_merge($wdan_plugin_info, array(
144
+ 'plugin_version' => WDN_PLUGIN_VERSION,
145
  'plugin_text_domain' => $wdan_compatibility->get_text_domain(),
146
+ )));
147
  } catch( Exception $e ) {
148
  // Plugin wasn't initialized due to an error
149
+ define('WDN_PLUGIN_THROW_ERROR', true);
150
 
151
+ $wdan_plugin_error_func = function () use ($e) {
152
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Disable Admin Notices', $e->getMessage(), $e->getCode());
153
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
154
  };
155
 
156
+ add_action('admin_notices', $wdan_plugin_error_func);
157
+ add_action('network_admin_notices', $wdan_plugin_error_func);
158
  }
159
  // @formatter:on
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_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,13 +44,14 @@ class WDN_Plugin extends Wbcr_Factory436_Plugin {
44
  }
45
 
46
  /**
47
- * @return Wbcr_Factory436_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
51
  }
52
 
53
  private function registerPages() {
 
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() ) ) {
9
  */
10
 
11
  // Exit if accessed directly
12
+ //use WBCR\Factory_Adverts_119\Base;
13
 
14
  if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
+ class WDN_Plugin extends Wbcr_Factory441_Plugin {
19
 
20
  /**
21
+ * @var Wbcr_Factory441_Plugin
22
  */
23
  private static $app;
24
  private $plugin_data;
44
  }
45
 
46
  /**
47
+ * @return Wbcr_Factory441_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
51
  }
52
 
53
  private function registerPages() {
54
+ //self::app()->registerPage( 'WDN_Log_Page', WDN_PLUGIN_DIR . '/admin/pages/class-pages-log.php' );
55
  self::app()->registerPage( 'WDN_Settings_Page', WDN_PLUGIN_DIR . '/admin/pages/class-pages-settings.php' );
56
 
57
  if ( ! ( $this->premium->is_activate() && $this->premium->is_install_package() ) ) {
components/disable-admin-notices/includes/classes/class-configurate-notices.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
- class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy227_Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
15
  exit;
16
  }
17
 
18
+ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy232_Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
components/disable-admin-notices/languages/disable-admin-notices.pot ADDED
@@ -0,0 +1,223 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #, fuzzy
2
+ msgid ""
3
+ msgstr ""
4
+ "Project-Id-Version: Webcraftic Disable Admin Notices Individually\n"
5
+ "Report-Msgid-Bugs-To: \n"
6
+ "POT-Creation-Date: 2020-08-27 12:50+0000\n"
7
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
+ "Language-Team: \n"
10
+ "Language: \n"
11
+ "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
12
+ "MIME-Version: 1.0\n"
13
+ "Content-Type: text/plain; charset=UTF-8\n"
14
+ "Content-Transfer-Encoding: 8bit\n"
15
+ "X-Generator: Loco https://localise.biz/\n"
16
+ "X-Loco-Version: 2.4.2; wp-5.5"
17
+
18
+ #: disable-admin-notices.php:46
19
+ msgid "Webcraftic disable admin notices"
20
+ msgstr ""
21
+
22
+ #: admin/boot.php:27
23
+ msgid "Get ultimate plugin free"
24
+ msgstr ""
25
+
26
+ #: admin/boot.php:82 admin/options.php:66
27
+ #: admin/pages/class-pages-settings.php:72
28
+ msgid "Hide admin notices"
29
+ msgstr ""
30
+
31
+ #: admin/boot.php:88 admin/options.php:148
32
+ msgid "Enable hidden notices in adminbar"
33
+ msgstr ""
34
+
35
+ #: admin/class-page-basic.php:41
36
+ msgid "Webcraftic Disable Admin Notices"
37
+ msgstr ""
38
+
39
+ #: admin/options.php:33
40
+ msgid "Admin notifications, Update nags"
41
+ msgstr ""
42
+
43
+ #: admin/options.php:33
44
+ msgid ""
45
+ "Do you know the situation, when some plugin offers you to update to premium, "
46
+ "to collect technical data and shows many annoying notices? You are close "
47
+ "these notices every now and again but they newly appears and interfere your "
48
+ "work with WordPress. Even worse, some plugin’s authors delete “close” button "
49
+ "from notices and they shows in your admin panel forever."
50
+ msgstr ""
51
+
52
+ #: admin/options.php:39
53
+ msgid "Don't hide"
54
+ msgstr ""
55
+
56
+ #: admin/options.php:40
57
+ msgid ""
58
+ "Do not hide notices and do not show “Hide notification forever” link for "
59
+ "admin."
60
+ msgstr ""
61
+
62
+ #: admin/options.php:44
63
+ msgid "All notices"
64
+ msgstr ""
65
+
66
+ #: admin/options.php:45
67
+ msgid "Hide all notices globally."
68
+ msgstr ""
69
+
70
+ #: admin/options.php:45 admin/options.php:50 admin/options.php:58
71
+ #, php-format
72
+ msgid ""
73
+ "Watch the <a href=\"%s\" target=\"_blank\">video</a> to find out how it "
74
+ "works ."
75
+ msgstr ""
76
+
77
+ #: admin/options.php:49
78
+ msgid "Only selected"
79
+ msgstr ""
80
+
81
+ #: admin/options.php:50
82
+ msgid ""
83
+ "Hide selected notices only. You will see the link \"Hide notification "
84
+ "forever\" in each notice. Push it and they will not bother you anymore."
85
+ msgstr ""
86
+
87
+ #: admin/options.php:57
88
+ msgid "Compact panel"
89
+ msgstr ""
90
+
91
+ #: admin/options.php:58
92
+ msgid ""
93
+ "Collapse all notifications in one line (panel with notification counters), "
94
+ "to see the notifications, you will need to click this panel."
95
+ msgstr ""
96
+
97
+ #: admin/options.php:69
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 "
101
+ "impossible), notices are shows again in some time. This option allows you to "
102
+ "control notices. Hide them all or each individually. Some plugins shows "
103
+ "notifications about premium version, data collecting or promote their "
104
+ "services. Even if you push close button (that sometimes are impossible), "
105
+ "notices are shows again in some time. This option allows you to control "
106
+ "notices. Hide them all or each individually."
107
+ msgstr ""
108
+
109
+ #: admin/options.php:92 admin/options.php:94
110
+ msgid "Disable plugins updates nags"
111
+ msgstr ""
112
+
113
+ #: admin/options.php:103 admin/options.php:105
114
+ msgid "Disable core updates nags"
115
+ msgstr ""
116
+
117
+ #: admin/options.php:150
118
+ msgid ""
119
+ "By default, the plugin hides all notices, which you specified. If you enable "
120
+ "this option, the plugin will collect all hidden notices and show them into "
121
+ "the top admin toolbar. It will not disturb you but will allow to look "
122
+ "notices at your convenience."
123
+ msgstr ""
124
+
125
+ #: admin/options.php:235
126
+ msgid "Reset hidden notices for"
127
+ msgstr ""
128
+
129
+ #: admin/options.php:238
130
+ msgid "Push reset hidden notices if you need to show hidden notices again."
131
+ msgstr ""
132
+
133
+ #: admin/options.php:249
134
+ msgid "current user"
135
+ msgstr ""
136
+
137
+ #: admin/options.php:253
138
+ msgid "all users"
139
+ msgstr ""
140
+
141
+ #: admin/options.php:257
142
+ msgid "Reset notices"
143
+ msgstr ""
144
+
145
+ #: admin/options.php:261 admin/pages/class-pages-settings.php:116
146
+ msgid "Hidden notices are successfully reset, now you can see them again!"
147
+ msgstr ""
148
+
149
+ #: admin/ajax/hide-notice.php:27 admin/ajax/restore-notice.php:24
150
+ msgid "Undefinded notice id."
151
+ msgstr ""
152
+
153
+ #: admin/ajax/hide-notice.php:59 admin/ajax/restore-notice.php:45
154
+ msgid "You don't have enough capability to edit this information."
155
+ msgstr ""
156
+
157
+ #: admin/pages/class-pages-edit-admin-bar.php:53
158
+ msgid "Hide adminbar items"
159
+ msgstr ""
160
+
161
+ #: admin/pages/class-pages-edit-admin-bar.php:54
162
+ msgid "You can hide an annoying adminbar menu"
163
+ msgstr ""
164
+
165
+ #: admin/pages/class-pages-edit-redirects.php:53
166
+ msgid "Block ad redirects"
167
+ msgstr ""
168
+
169
+ #: admin/pages/class-pages-edit-redirects.php:54
170
+ msgid "Break advertising redirects"
171
+ msgstr ""
172
+
173
+ #: admin/pages/class-pages-notices.php:51
174
+ msgid "Hidden notices"
175
+ msgstr ""
176
+
177
+ #: admin/pages/class-pages-notices.php:52
178
+ msgid "Manage hidden notices"
179
+ msgstr ""
180
+
181
+ #: admin/pages/class-pages-settings.php:73
182
+ msgid "General settings"
183
+ msgstr ""
184
+
185
+ #: admin/pages/class-pages-settings.php:85
186
+ msgid "Settings"
187
+ msgstr ""
188
+
189
+ #: includes/classes/class-configurate-notices.php:81
190
+ #, php-format
191
+ msgid "Notifications %s"
192
+ msgstr ""
193
+
194
+ #: includes/classes/class-configurate-notices.php:92
195
+ msgid "Hidden for you"
196
+ msgstr ""
197
+
198
+ #: includes/classes/class-configurate-notices.php:289
199
+ msgid "Hide <b>for me</b>"
200
+ msgstr ""
201
+
202
+ #: includes/classes/class-configurate-notices.php:293
203
+ msgid "Hide <b>for all</b>"
204
+ msgstr ""
205
+
206
+ #. Name of the plugin
207
+ msgid "Disable Admin Notices Individually"
208
+ msgstr ""
209
+
210
+ #. Description of the plugin
211
+ msgid ""
212
+ "Disable admin notices plugin gives you the option to hide updates warnings "
213
+ "and inline notices in the admin panel."
214
+ msgstr ""
215
+
216
+ #. URI of the plugin
217
+ #. Author URI of the plugin
218
+ msgid "https://webcraftic.com"
219
+ msgstr ""
220
+
221
+ #. Author of the plugin
222
+ msgid "Webcraftic <wordpress.webraftic@gmail.com>"
223
+ msgstr ""
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_Factory436_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_Factory441_Update {
8
 
9
  public function install()
10
  {
components/disable-admin-notices/readme.txt CHANGED
@@ -3,7 +3,7 @@ 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
@@ -62,6 +62,10 @@ If you want to help with the translation, please contact me through this site or
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
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.6
7
  Requires PHP: 5.6
8
  Stable tag: trunk
9
  License: GPLv2
62
  3. Notifications panel (optional)
63
 
64
  == Changelog ==
65
+ = 1.2.4 (16.12.2020)=
66
+ * Added: Subscribe widget
67
+ * Fixed: Minor bugs
68
+
69
  = 1.2.3 =
70
  * Fixed: Compatibility with other plugins
71
  * Fixed: Appearance of the list of hidden notifications in the adminbar
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 Factory436_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGA_Activation extends Wbcr_Factory436_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 Factory441_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGA_Activation extends Wbcr_Factory441_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/ga-cache/admin/boot.php CHANGED
@@ -12,7 +12,7 @@
12
  */
13
 
14
  // Exit if accessed directly
15
- if ( ! defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
 
@@ -21,138 +21,139 @@ if ( ! defined( 'ABSPATH' ) ) {
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
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
  }
36
 
37
- $ga_cache = WGA_Plugin::app()->getPopulateOption( 'ga_cache' );
38
 
39
- if ( $ga_cache ) {
40
- if ( ! wp_next_scheduled( 'wbcr/gac/update_analytic_library' ) ) {
41
- wp_schedule_event( time(), 'daily', 'wbcr/gac/update_analytic_library' );
42
  }
43
  } else {
44
- if ( wp_next_scheduled( 'wbcr/gac/update_analytic_library' ) ) {
45
- wp_clear_scheduled_hook( 'wbcr/gac/update_analytic_library' );
46
  }
47
  }
48
- }, 10, 2 );
49
 
50
- if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
51
  /**
52
  * Notice that the plugin has been seriously updated!
53
  *
54
- * @since 3.0.1
55
- *
56
  * @param string $plugin_name
57
  *
58
- * @param array $notices all registered notices
59
  *
60
  * @return array all notices
 
 
61
  */
62
- function wbcr_ga_admin_conflict_notices_error( $notices, $plugin_name ) {
63
- if ( $plugin_name != WGA_Plugin::app()->getPluginName() ) {
 
64
  return $notices;
65
  }
66
 
67
- $text = '<p>' . __( 'The <b>Simple Google Analytics</b> plugin has some major changes!', 'simple-google-analytics' ) . '</p>';
68
- $text .= '<p>' . __( 'Unfortunately, the old version of the plugin (2.2.2) is no longer supported, but you still can download it from the WordPress repository in case if the new release doesn’t work for you.', 'simple-google-analytics' ) . '</p>';
69
- $text .= '<p>' . __( 'We’ve updated the code and fixed the compatibility issue for the latest WordPress and PHP versions. We’ve also added additional feature of the Local Google Analytics – this way your website will load faster. The plugin’s name has been changed to Local Google Analytics, but all features remained the same.', 'simple-google-analytics' ) . '</p>';
70
- $text .= '<p>' . sprintf( __( 'Please, check <a href="%s">plugin settings</a> and its performance on your website. We do care about you and want to avoid any problems with the new version.', 'simple-google-analytics' ) . '</p>', admin_url( 'options-general.php?page=ga_cache-' . WGA_Plugin::app()->getPluginName() ) ) . '</p>';
71
- $text .= '<p>' . sprintf( __( 'We are aimed to pay more attention to the speed and security aspects of your website. That’s why you should definitely try our basic WordPress optimization plugin as well. Clearfy includes functionality of this plugin and has many additional features for the website optimization:
72
- <a href="%s">Donwload Clearfy for free</a>', 'simple-google-analytics' ), 'https://clearfy.pro?utm_source=wordpress.org&utm_campaign=' . WGA_Plugin::app()->getPluginName() ) . '</p>';
73
 
74
  $notices[] = [
75
- 'id' => 'ga_plugin_upgrade_notice1',
76
- 'type' => 'warning',
77
- 'dismissible' => true,
78
  'dismiss_expires' => 0,
79
- 'text' => $text
80
  ];
81
 
82
  return $notices;
83
  }
84
 
85
- add_filter( 'wbcr/factory/admin_notices', 'wbcr_ga_admin_conflict_notices_error', 10, 2 );
86
 
87
  /**
88
  * Migrate settings from the old plugin to the new one.
89
  *
90
- * @since 3.0.1
91
  * @return void
 
92
  */
93
- add_action( 'init', function () {
94
  global $wpdb;
95
 
96
- if ( defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
97
  return;
98
  }
99
 
100
- $is_migrate_up_to_230 = WGA_Plugin::app()->getPopulateOption( 'is_migrate_up_to_230', false );
101
 
102
- if ( ! $is_migrate_up_to_230 ) {
103
- $old_plugin_tracking_id = get_option( 'sga_analytics_id' );
104
- $old_plugin_code_location = get_option( 'sga_code_location' );
105
- $old_plugin_demographic_and_interest = (int) get_option( 'sga_demographic_and_interest' );
106
- $old_plugin_sga_render_when_loggedin = (int) get_option( 'sga_render_when_loggedin' );
107
 
108
- if ( ! empty( $old_plugin_tracking_id ) ) {
109
- WGA_Plugin::app()->updatePopulateOption( 'ga_cache', 1 );
110
- WGA_Plugin::app()->updatePopulateOption( 'ga_tracking_id', $old_plugin_tracking_id );
111
 
112
  $script_position = 'footer';
113
 
114
- if ( $old_plugin_code_location == 'head' ) {
115
  $script_position = 'header';
116
  }
117
 
118
- WGA_Plugin::app()->updatePopulateOption( 'ga_script_position', $script_position );
119
- WGA_Plugin::app()->updatePopulateOption( 'ga_anonymize_ip', $old_plugin_demographic_and_interest );
120
- WGA_Plugin::app()->updatePopulateOption( 'ga_track_admin', $old_plugin_sga_render_when_loggedin );
121
 
122
- $wpdb->query( "DELETE FROM {$wpdb->prefix}options WHERE option_name LIKE 'sga_%';" );
123
  }
124
 
125
- WGA_Plugin::app()->updatePopulateOption( 'is_migrate_up_to_230', 1 );
126
  }
127
- } );
128
 
129
  /**
130
  * Add a link to plugin meta. You can find this link in admin panel on
131
  * the page plugins.php. Look under plugin short description.
132
  *
133
- * @param array $links An array of the plugin's metadata, including the version,
134
  * author, author URI, and plugin URI.
135
- * @param string $file path to the plugin file, relative to the plugins directory.
136
  *
137
  * @return array
138
  */
139
 
140
- add_filter( 'plugin_row_meta', function ( $links, $file ) {
141
- if ( $file == WGA_PLUGIN_BASE ) {
142
 
143
  $url = 'https://clearfy.pro';
144
 
145
- if ( get_locale() == 'ru_RU' ) {
146
  $url = 'https://ru.clearfy.pro';
147
  }
148
 
149
  $url .= '?utm_source=wordpress.org&utm_campaign=' . WGA_Plugin::app()->getPluginName();
150
 
151
- $links[] = '<a href="' . $url . '" style="color: #FF5722;font-weight: bold;" target="_blank">' . __( 'Get ultimate plugin free', 'simple-google-analytics' ) . '</a>';
152
  }
153
 
154
  return $links;
155
- }, 10, 2 );
156
 
157
  /**
158
  * Rating widget url
@@ -162,13 +163,13 @@ if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
162
  *
163
  * @return string
164
  */
165
- add_filter( 'wbcr_factory_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
166
- if ( $plugin_name == WGA_Plugin::app()->getPluginName() ) {
167
  return 'https://wordpress.org/support/plugin/simple-google-analytics/reviews/#new-post';
168
  }
169
 
170
  return $page_url;
171
- }, 10, 2 );
172
 
173
  /**
174
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
@@ -177,45 +178,45 @@ if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
177
  * - Виджет с рейтингом
178
  * - Виджет с маркерами информации
179
  */
180
- add_filter( 'wbcr/factory/pages/impressive/widgets', function ( $widgets, $position, $plugin ) {
181
- if ( WGA_Plugin::app()->getPluginName() == $plugin->getPluginName() && 'right' == $position ) {
182
- unset( $widgets['business_suggetion'] );
183
- unset( $widgets['rating_widget'] );
184
- unset( $widgets['info_widget'] );
185
  }
186
 
187
  return $widgets;
188
- }, 20, 3 );
189
  } else {
190
  /**
191
  * This action is executed when the component of the Clearfy plugin
192
  * is activate and if this component is name ga_cache
193
  *
194
- * @since 3.0.1
195
  * @return void
 
196
  */
197
- add_action( 'wbcr/clearfy/activated_component', function ( $component_name ) {
198
- if ( $component_name == 'ga_cache' ) {
199
  require_once WGA_PLUGIN_DIR . '/admin/activation.php';
200
- $plugin = new WGA_Activation( WGA_Plugin::app() );
201
  $plugin->activate();
202
  }
203
- } );
204
 
205
  /**
206
  * This action is executed when the component of the Clearfy plugin
207
  * is deactivated and if this component is name ga_cache
208
  *
209
- * @since 3.0.1
210
  * @return void
 
211
  */
212
- add_action( 'wbcr_clearfy_pre_deactivate_component', function ( $component_name ) {
213
- if ( $component_name == 'ga_cache' ) {
214
  require_once WGA_PLUGIN_DIR . '/admin/activation.php';
215
- $plugin = new WGA_Activation( WGA_Plugin::app() );
216
  $plugin->deactivate();
217
  }
218
- } );
219
 
220
  /**
221
  * We register options of this plugin in global Clearfy options. Clearfy later can automatically
@@ -223,50 +224,51 @@ if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
223
  *
224
  * In more detail you can read about it here: wp-plugin-clearfy\admin\includes\options.php
225
  *
226
- * @param array $options all available component options plugin clearfy
227
  *
228
  * @return array
229
  */
230
- function wbcr_ga_group_options( $options ) {
 
231
  $options[] = [
232
- 'name' => 'ga_cache',
233
- 'title' => __( 'Google Analytics Cache', 'simple-google-analytics' ),
234
- 'tags' => []
235
  ];
236
 
237
  $options[] = [
238
- 'name' => 'ga_tracking_id',
239
- 'title' => __( 'Google analytic Code', 'clearfy' ),
240
- 'tags' => []
241
  ];
242
  $options[] = [
243
- 'name' => 'ga_adjusted_bounce_rate',
244
- 'title' => __( 'Use adjusted bounce rate?', 'clearfy' ),
245
- 'tags' => []
246
  ];
247
  $options[] = [
248
- 'name' => 'ga_enqueue_order',
249
- 'title' => __( 'Change enqueue order?', 'clearfy' ),
250
- 'tags' => []
251
  ];
252
  $options[] = [
253
- 'name' => 'ga_disable_display_features',
254
- 'title' => __( 'Disable all display features functionality?', 'clearfy' ),
255
- 'tags' => []
256
  ];
257
  $options[] = [
258
- 'name' => 'ga_anonymize_ip',
259
- 'title' => __( 'Use Anonymize IP? (Required by law for some countries)', 'clearfy' ),
260
- 'tags' => []
261
  ];
262
  $options[] = [
263
- 'name' => 'ga_track_admin',
264
- 'title' => __( 'Track logged in Administrators?', 'clearfy' ),
265
- 'tags' => []
266
  ];
267
 
268
  return $options;
269
  }
270
 
271
- add_filter( "wbcr_clearfy_group_options", 'wbcr_ga_group_options' );
272
  }
12
  */
13
 
14
  // Exit if accessed directly
15
+ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
23
  *
24
+ * @param Wbcr_FactoryPages440_ImpressiveThemplate $page
 
 
25
  *
26
+ * @param Wbcr_Factory441_Plugin $plugin
27
  *
28
  * @return void
29
+ * @since 3.0.1
30
+ *
31
  */
32
+ add_action('wbcr/factory/pages/impressive/after_form_save', function ($plugin, $page) {
33
+ if( WGA_Plugin::app()->getPluginName() != $plugin->getPluginName() ) {
34
  return;
35
  }
36
 
37
+ $ga_cache = WGA_Plugin::app()->getPopulateOption('ga_cache');
38
 
39
+ if( $ga_cache ) {
40
+ if( !wp_next_scheduled('wbcr/gac/update_analytic_library') ) {
41
+ wp_schedule_event(time(), 'daily', 'wbcr/gac/update_analytic_library');
42
  }
43
  } else {
44
+ if( wp_next_scheduled('wbcr/gac/update_analytic_library') ) {
45
+ wp_clear_scheduled_hook('wbcr/gac/update_analytic_library');
46
  }
47
  }
48
+ }, 10, 2);
49
 
50
+ if( !defined('LOADING_GA_CACHE_AS_ADDON') ) {
51
  /**
52
  * Notice that the plugin has been seriously updated!
53
  *
 
 
54
  * @param string $plugin_name
55
  *
56
+ * @param array $notices all registered notices
57
  *
58
  * @return array all notices
59
+ * @since 3.0.1
60
+ *
61
  */
62
+ function wbcr_ga_admin_conflict_notices_error($notices, $plugin_name)
63
+ {
64
+ if( $plugin_name != WGA_Plugin::app()->getPluginName() ) {
65
  return $notices;
66
  }
67
 
68
+ $text = '<p>' . __('The <b>Simple Google Analytics</b> plugin has some major changes!', 'simple-google-analytics') . '</p>';
69
+ $text .= '<p>' . __('Unfortunately, the old version of the plugin (2.2.2) is no longer supported, but you still can download it from the WordPress repository in case if the new release doesn’t work for you.', 'simple-google-analytics') . '</p>';
70
+ $text .= '<p>' . __('We’ve updated the code and fixed the compatibility issue for the latest WordPress and PHP versions. We’ve also added additional feature of the Local Google Analytics – this way your website will load faster. The plugin’s name has been changed to Local Google Analytics, but all features remained the same.', 'simple-google-analytics') . '</p>';
71
+ $text .= '<p>' . sprintf(__('Please, check <a href="%s">plugin settings</a> and its performance on your website. We do care about you and want to avoid any problems with the new version.', 'simple-google-analytics') . '</p>', admin_url('options-general.php?page=ga_cache-' . WGA_Plugin::app()->getPluginName())) . '</p>';
72
+ $text .= '<p>' . sprintf(__('We are aimed to pay more attention to the speed and security aspects of your website. That’s why you should definitely try our basic WordPress optimization plugin as well. Clearfy includes functionality of this plugin and has many additional features for the website optimization:
73
+ <a href="%s">Donwload Clearfy for free</a>', 'simple-google-analytics'), 'https://clearfy.pro?utm_source=wordpress.org&utm_campaign=' . WGA_Plugin::app()->getPluginName()) . '</p>';
74
 
75
  $notices[] = [
76
+ 'id' => 'ga_plugin_upgrade_notice1',
77
+ 'type' => 'warning',
78
+ 'dismissible' => true,
79
  'dismiss_expires' => 0,
80
+ 'text' => $text
81
  ];
82
 
83
  return $notices;
84
  }
85
 
86
+ add_filter('wbcr/factory/admin_notices', 'wbcr_ga_admin_conflict_notices_error', 10, 2);
87
 
88
  /**
89
  * Migrate settings from the old plugin to the new one.
90
  *
 
91
  * @return void
92
+ * @since 3.0.1
93
  */
94
+ add_action('init', function () {
95
  global $wpdb;
96
 
97
+ if( defined('LOADING_GA_CACHE_AS_ADDON') ) {
98
  return;
99
  }
100
 
101
+ $is_migrate_up_to_230 = WGA_Plugin::app()->getPopulateOption('is_migrate_up_to_230', false);
102
 
103
+ if( !$is_migrate_up_to_230 ) {
104
+ $old_plugin_tracking_id = get_option('sga_analytics_id');
105
+ $old_plugin_code_location = get_option('sga_code_location');
106
+ $old_plugin_demographic_and_interest = (int)get_option('sga_demographic_and_interest');
107
+ $old_plugin_sga_render_when_loggedin = (int)get_option('sga_render_when_loggedin');
108
 
109
+ if( !empty($old_plugin_tracking_id) ) {
110
+ WGA_Plugin::app()->updatePopulateOption('ga_cache', 1);
111
+ WGA_Plugin::app()->updatePopulateOption('ga_tracking_id', $old_plugin_tracking_id);
112
 
113
  $script_position = 'footer';
114
 
115
+ if( $old_plugin_code_location == 'head' ) {
116
  $script_position = 'header';
117
  }
118
 
119
+ WGA_Plugin::app()->updatePopulateOption('ga_script_position', $script_position);
120
+ WGA_Plugin::app()->updatePopulateOption('ga_anonymize_ip', $old_plugin_demographic_and_interest);
121
+ WGA_Plugin::app()->updatePopulateOption('ga_track_admin', $old_plugin_sga_render_when_loggedin);
122
 
123
+ $wpdb->query("DELETE FROM {$wpdb->prefix}options WHERE option_name LIKE 'sga_%';");
124
  }
125
 
126
+ WGA_Plugin::app()->updatePopulateOption('is_migrate_up_to_230', 1);
127
  }
128
+ });
129
 
130
  /**
131
  * Add a link to plugin meta. You can find this link in admin panel on
132
  * the page plugins.php. Look under plugin short description.
133
  *
134
+ * @param array $links An array of the plugin's metadata, including the version,
135
  * author, author URI, and plugin URI.
136
+ * @param string $file path to the plugin file, relative to the plugins directory.
137
  *
138
  * @return array
139
  */
140
 
141
+ add_filter('plugin_row_meta', function ($links, $file) {
142
+ if( $file == WGA_PLUGIN_BASE ) {
143
 
144
  $url = 'https://clearfy.pro';
145
 
146
+ if( get_locale() == 'ru_RU' ) {
147
  $url = 'https://ru.clearfy.pro';
148
  }
149
 
150
  $url .= '?utm_source=wordpress.org&utm_campaign=' . WGA_Plugin::app()->getPluginName();
151
 
152
+ $links[] = '<a href="' . $url . '" style="color: #FF5722;font-weight: bold;" target="_blank">' . __('Get ultimate plugin free', 'simple-google-analytics') . '</a>';
153
  }
154
 
155
  return $links;
156
+ }, 10, 2);
157
 
158
  /**
159
  * Rating widget url
163
  *
164
  * @return string
165
  */
166
+ add_filter('wbcr_factory_imppage_rating_widget_url', function ($page_url, $plugin_name) {
167
+ if( $plugin_name == WGA_Plugin::app()->getPluginName() ) {
168
  return 'https://wordpress.org/support/plugin/simple-google-analytics/reviews/#new-post';
169
  }
170
 
171
  return $page_url;
172
+ }, 10, 2);
173
 
174
  /**
175
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
178
  * - Виджет с рейтингом
179
  * - Виджет с маркерами информации
180
  */
181
+ add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
182
+ if( WGA_Plugin::app()->getPluginName() == $plugin->getPluginName() && 'right' == $position ) {
183
+ unset($widgets['business_suggetion']);
184
+ unset($widgets['rating_widget']);
185
+ unset($widgets['info_widget']);
186
  }
187
 
188
  return $widgets;
189
+ }, 20, 3);
190
  } else {
191
  /**
192
  * This action is executed when the component of the Clearfy plugin
193
  * is activate and if this component is name ga_cache
194
  *
 
195
  * @return void
196
+ * @since 3.0.1
197
  */
198
+ add_action('wbcr/clearfy/activated_component', function ($component_name) {
199
+ if( $component_name == 'ga_cache' ) {
200
  require_once WGA_PLUGIN_DIR . '/admin/activation.php';
201
+ $plugin = new WGA_Activation(WGA_Plugin::app());
202
  $plugin->activate();
203
  }
204
+ });
205
 
206
  /**
207
  * This action is executed when the component of the Clearfy plugin
208
  * is deactivated and if this component is name ga_cache
209
  *
 
210
  * @return void
211
+ * @since 3.0.1
212
  */
213
+ add_action('wbcr_clearfy_pre_deactivate_component', function ($component_name) {
214
+ if( $component_name == 'ga_cache' ) {
215
  require_once WGA_PLUGIN_DIR . '/admin/activation.php';
216
+ $plugin = new WGA_Activation(WGA_Plugin::app());
217
  $plugin->deactivate();
218
  }
219
+ });
220
 
221
  /**
222
  * We register options of this plugin in global Clearfy options. Clearfy later can automatically
224
  *
225
  * In more detail you can read about it here: wp-plugin-clearfy\admin\includes\options.php
226
  *
227
+ * @param array $options all available component options plugin clearfy
228
  *
229
  * @return array
230
  */
231
+ function wbcr_ga_group_options($options)
232
+ {
233
  $options[] = [
234
+ 'name' => 'ga_cache',
235
+ 'title' => __('Google Analytics Cache', 'simple-google-analytics'),
236
+ 'tags' => []
237
  ];
238
 
239
  $options[] = [
240
+ 'name' => 'ga_tracking_id',
241
+ 'title' => __('Google analytic Code', 'clearfy'),
242
+ 'tags' => []
243
  ];
244
  $options[] = [
245
+ 'name' => 'ga_adjusted_bounce_rate',
246
+ 'title' => __('Use adjusted bounce rate?', 'clearfy'),
247
+ 'tags' => []
248
  ];
249
  $options[] = [
250
+ 'name' => 'ga_enqueue_order',
251
+ 'title' => __('Change enqueue order?', 'clearfy'),
252
+ 'tags' => []
253
  ];
254
  $options[] = [
255
+ 'name' => 'ga_disable_display_features',
256
+ 'title' => __('Disable all display features functionality?', 'clearfy'),
257
+ 'tags' => []
258
  ];
259
  $options[] = [
260
+ 'name' => 'ga_anonymize_ip',
261
+ 'title' => __('Use Anonymize IP? (Required by law for some countries)', 'clearfy'),
262
+ 'tags' => []
263
  ];
264
  $options[] = [
265
+ 'name' => 'ga_track_admin',
266
+ 'title' => __('Track logged in Administrators?', 'clearfy'),
267
+ 'tags' => []
268
  ];
269
 
270
  return $options;
271
  }
272
 
273
+ add_filter("wbcr_clearfy_group_options", 'wbcr_ga_group_options');
274
  }
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_FactoryPages435_ImpressiveThemplate
121
  *
122
  * @return mixed
123
  */
117
 
118
  /**
119
  * @param $form
120
+ * @param $page Wbcr_FactoryPages440_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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -48,9 +48,9 @@ class WGA_CachePage extends Wbcr_FactoryClearfy227_PageBase {
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' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
+ class WGA_CachePage extends Wbcr_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory441_Plugin $plugin
52
  */
53
+ public function __construct( Wbcr_Factory441_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_FactoryClearfy227_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_FactoryClearfy232_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_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
@@ -58,7 +58,7 @@ class WGA_Plugin extends Wbcr_Factory436_Plugin {
58
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
59
  * классам.
60
  *
61
- * @return \Wbcr_Factory436_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_Factory441_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory441_Plugin
18
  */
19
  private static $app;
20
 
58
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
59
  * классам.
60
  *
61
+ * @return \Wbcr_Factory441_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_FactoryClearfy227_Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
12
  exit;
13
  }
14
 
15
+ class WGA_ConfigGACache extends Wbcr_FactoryClearfy232_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_Factory436_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_Factory441_Update {
8
 
9
  public function install() {
10
  /**
components/ga-cache/readme.txt CHANGED
@@ -3,7 +3,7 @@ Tags: analytics,google analytics,google analytics dashboard,google analytics plu
3
  Contributors: webcraftic, alexkovalevv, JeromeMeyer62, creativemotion
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
- Tested up to: 5.2
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
@@ -75,6 +75,10 @@ We invite you to check out a few other related free plugins that our team has al
75
  1. Control panel
76
 
77
  == Changelog ==
 
 
 
 
78
  = 3.1.2 =
79
  * Fixed: A bug with creating a local copy of the Google analytics library.
80
 
3
  Contributors: webcraftic, alexkovalevv, JeromeMeyer62, creativemotion
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
+ Tested up to: 5.6
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
75
  1. Control panel
76
 
77
  == Changelog ==
78
+ = 3.1.3 =
79
+ * Added: Subscribe form
80
+ * Fixed: Minor bugs
81
+
82
  = 3.1.2 =
83
  * Fixed: A bug with creating a local copy of the Google analytics library.
84
 
components/ga-cache/simple_google_analytics.php CHANGED
@@ -4,14 +4,14 @@
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Old plugin name: Simple Google Analytics. To improve Google Page Speed indicators Analytics caching is needed. However, it can also slightly increase your website loading speed, because Analytics js files will load locally. The second case that you might need these settings is the usual Google Analytics connection to your website. You do not need to do this with other plugins or insert the tracking code into your theme.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 3.1.2
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
11
  */
12
 
13
  // Exit if accessed directly
14
- if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
@@ -36,54 +36,57 @@ if ( ! defined( 'ABSPATH' ) ) {
36
  * -----------------------------------------------------------------------------
37
  */
38
 
39
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
40
 
41
  // @formatter:off
42
  $plugin_info = array(
43
- 'prefix' => 'wbcr_gac_',
44
- 'plugin_name' => 'wbcr_gac',
45
- 'plugin_title' => __( 'Webcraftic Local Google Analytics', 'simple-google-analytics' ),
46
 
47
  // PLUGIN SUPPORT
48
- 'support_details' => array(
49
- 'url' => 'https://webcraftic.com',
50
  'pages_map' => array(
51
- 'support' => 'support', // {site}/support
52
- 'docs' => 'docs' // {site}/docs
53
  )
54
  ),
55
 
56
  // PLUGIN ADVERTS
57
  'render_adverts' => true,
58
- 'adverts_settings' => array(
59
  'dashboard_widget' => true, // show dashboard widget (default: false)
60
- 'right_sidebar' => true, // show adverts sidebar (default: false)
61
- 'notice' => true, // show notice message (default: false)
62
  ),
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',
78
  'required_clearfy_check_component' => false
79
- ) ) );
80
-
81
 
82
  /**
83
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
84
  * and the user will throw a warning.
85
  */
86
- if ( ! $wga_compatibility->check() ) {
87
  return;
88
  }
89
 
@@ -96,12 +99,11 @@ if ( ! $wga_compatibility->check() ) {
96
  */
97
 
98
  // This plugin is activated
99
- define( 'WGA_PLUGIN_ACTIVE', true );
100
- define( 'WGA_PLUGIN_VERSION', $wga_compatibility->get_plugin_version() );
101
- define( 'WGA_PLUGIN_DIR', dirname( __FILE__ ) );
102
- define( 'WGA_PLUGIN_BASE', plugin_basename( __FILE__ ) );
103
- define( 'WGA_PLUGIN_URL', plugins_url( null, __FILE__ ) );
104
-
105
 
106
 
107
 
@@ -111,24 +113,24 @@ define( 'WGA_PLUGIN_URL', plugins_url( null, __FILE__ ) );
111
  * -----------------------------------------------------------------------------
112
  */
113
 
114
- require_once( WGA_PLUGIN_DIR . '/libs/factory/core/boot.php' );
115
- require_once( WGA_PLUGIN_DIR . '/includes/class-plugin.php' );
116
 
117
  try {
118
- new WGA_Plugin( __FILE__, array_merge( $plugin_info, array(
119
- 'plugin_version' => WGA_PLUGIN_VERSION,
120
  'plugin_text_domain' => $wga_compatibility->get_text_domain(),
121
- ) ) );
122
  } catch( Exception $e ) {
123
  // Plugin wasn't initialized due to an error
124
- define( 'WGA_PLUGIN_THROW_ERROR', true );
125
 
126
- $wga_plugin_error_func = function () use ( $e ) {
127
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Local Google Analytics', $e->getMessage(), $e->getCode() );
128
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
129
  };
130
 
131
- add_action( 'admin_notices', $wga_plugin_error_func );
132
- add_action( 'network_admin_notices', $wga_plugin_error_func );
133
  }
134
  // @formatter:on
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Old plugin name: Simple Google Analytics. To improve Google Page Speed indicators Analytics caching is needed. However, it can also slightly increase your website loading speed, because Analytics js files will load locally. The second case that you might need these settings is the usual Google Analytics connection to your website. You do not need to do this with other plugins or insert the tracking code into your theme.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 3.1.3
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
11
  */
12
 
13
  // Exit if accessed directly
14
+ if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
 
36
  * -----------------------------------------------------------------------------
37
  */
38
 
39
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
40
 
41
  // @formatter:off
42
  $plugin_info = array(
43
+ 'prefix' => 'wbcr_gac_',
44
+ 'plugin_name' => 'wbcr_gac',
45
+ 'plugin_title' => __('Webcraftic Local Google Analytics', 'simple-google-analytics'),
46
 
47
  // PLUGIN SUPPORT
48
+ 'support_details' => array(
49
+ 'url' => 'https://webcraftic.com',
50
  'pages_map' => array(
51
+ 'support' => 'support', // {site}/support
52
+ 'docs' => 'docs' // {site}/docs
53
  )
54
  ),
55
 
56
  // PLUGIN ADVERTS
57
  'render_adverts' => true,
58
+ 'adverts_settings' => array(
59
  'dashboard_widget' => true, // show dashboard widget (default: false)
60
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
61
+ 'notice' => true, // show notice message (default: false)
62
  ),
63
 
64
+ // PLUGIN SUBSCRIBE FORM
65
+ 'subscribe_widget' => true,
66
+ 'subscribe_settings' => ['group_id' => '105425989'],
67
+
68
  // FRAMEWORK MODULES
69
  'load_factory_modules' => array(
70
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
71
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
72
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
73
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
74
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
75
  )
76
  );
77
 
78
+ $wga_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($plugin_info, array(
79
+ 'plugin_already_activate' => defined('WGA_PLUGIN_ACTIVE'),
80
+ 'required_php_version' => '5.4',
81
+ 'required_wp_version' => '4.2.0',
82
  'required_clearfy_check_component' => false
83
+ )));
 
84
 
85
  /**
86
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
87
  * and the user will throw a warning.
88
  */
89
+ if( !$wga_compatibility->check() ) {
90
  return;
91
  }
92
 
99
  */
100
 
101
  // This plugin is activated
102
+ define('WGA_PLUGIN_ACTIVE', true);
103
+ define('WGA_PLUGIN_VERSION', $wga_compatibility->get_plugin_version());
104
+ define('WGA_PLUGIN_DIR', dirname(__FILE__));
105
+ define('WGA_PLUGIN_BASE', plugin_basename(__FILE__));
106
+ define('WGA_PLUGIN_URL', plugins_url(null, __FILE__));
 
107
 
108
 
109
 
113
  * -----------------------------------------------------------------------------
114
  */
115
 
116
+ require_once(WGA_PLUGIN_DIR . '/libs/factory/core/boot.php');
117
+ require_once(WGA_PLUGIN_DIR . '/includes/class-plugin.php');
118
 
119
  try {
120
+ new WGA_Plugin(__FILE__, array_merge($plugin_info, array(
121
+ 'plugin_version' => WGA_PLUGIN_VERSION,
122
  'plugin_text_domain' => $wga_compatibility->get_text_domain(),
123
+ )));
124
  } catch( Exception $e ) {
125
  // Plugin wasn't initialized due to an error
126
+ define('WGA_PLUGIN_THROW_ERROR', true);
127
 
128
+ $wga_plugin_error_func = function () use ($e) {
129
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Local Google Analytics', $e->getMessage(), $e->getCode());
130
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
131
  };
132
 
133
+ add_action('admin_notices', $wga_plugin_error_func);
134
+ add_action('network_admin_notices', $wga_plugin_error_func);
135
  }
136
  // @formatter:on
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_FactoryClearfy227_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WHTM_SettingsPage extends Wbcr_FactoryClearfy227_PageBase {
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
 
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WHTM_SettingsPage extends Wbcr_FactoryClearfy232_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory441_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory441_Plugin $plugin ) {
58
  // Заголовок страницы
59
  $this->menu_title = __( 'HTML Minify', 'html-minify' );
60
 
components/html-minify/html-minify.php CHANGED
@@ -8,7 +8,7 @@
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,15 +59,15 @@ $whtml_plugin_info = array(
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',
8
  * Text Domain: html-minify
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_441', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_438', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_440', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_clearfy_232', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_119', 'admin')
67
  )
68
  );
69
 
70
+ $whtml_compatibility = new Wbcr_Factory441_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_Factory436_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory436_Plugin
21
  */
22
  private static $app;
23
 
@@ -53,7 +53,7 @@ class WHTM_Plugin extends Wbcr_Factory436_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory436_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
13
  }
14
 
15
 
16
+ class WHTM_Plugin extends Wbcr_Factory441_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory441_Plugin
21
  */
22
  private static $app;
23
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory441_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
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_FactoryClearfy227_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -50,12 +50,12 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy227_PageBase
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' ) ) {
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy232_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
50
  /**
51
  * WMAC_MinifyAndCombineSettingsPage constructor.
52
  *
53
+ * @param \Wbcr_Factory441_Plugin $plugin
54
  *
55
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
56
  *
57
  */
58
+ public function __construct( Wbcr_Factory441_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_Factory436_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory436_Plugin
21
  */
22
  private static $app;
23
 
@@ -55,7 +55,7 @@ class WMAC_Plugin extends Wbcr_Factory436_Plugin {
55
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
56
  * классам.
57
  *
58
- * @return \Wbcr_Factory436_Plugin|\WCM_Plugin
59
  */
60
  public static function app() {
61
  return self::$app;
13
  }
14
 
15
 
16
+ class WMAC_Plugin extends Wbcr_Factory441_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory441_Plugin
21
  */
22
  private static $app;
23
 
55
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
56
  * классам.
57
  *
58
+ * @return \Wbcr_Factory441_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', [ 'WbcrFactoryClearfy227_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', [ 'WbcrFactoryClearfy232_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_436_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_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',
8
  * Text Domain: minify-and-combine
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_441', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_438', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_440', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_clearfy_232', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_119', 'admin')
67
  )
68
  );
69
 
70
+ $wmac_compatibility = new Wbcr_Factory441_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 Factory436_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_Factory436_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 Factory441_Activator
9
  */
10
 
11
  // Exit if accessed directly
13
  exit;
14
  }
15
 
16
+ class WUPM_Activation extends Wbcr_Factory441_Activator {
17
 
18
  /**
19
  * Runs activation actions.
components/updates-manager/admin/assets/css/general.css CHANGED
@@ -1,155 +1,156 @@
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
- }
 
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 */
components/updates-manager/admin/assets/css/plugins.css CHANGED
@@ -1,32 +1,33 @@
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
- }
 
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 */
components/updates-manager/admin/assets/css/themes.css CHANGED
@@ -1,20 +1,21 @@
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
- }*/
 
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 */
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_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,7 +75,7 @@ jQuery(function($) {
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
  });
59
 
60
  if( !response || !response.success ) {
61
  if( response.data.error_message ) {
62
+ $.wbcr_factory_clearfy_232.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
63
  }
64
  return false;
65
  }
66
 
67
+ /*var noticeId = $.wbcr_factory_clearfy_232.app.showNotice('Settings successfully updated', 'success');
68
 
69
  setTimeout(function() {
70
+ $.wbcr_factory_clearfy_232.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_232.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_435_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_440_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_Factory436_Plugin $plugin ) {
18
  $this->plugin = $plugin;
19
  $this->load();
20
  }
14
  protected $is_disable_translation_updates;
15
 
16
 
17
+ function __construct( Wbcr_Factory441_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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy227_PageBase {
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,8 +79,8 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy227_PageBase {
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 );
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_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory441_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory441_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_Factory441_ScriptList $scripts
83
+ * @param \Wbcr_Factory441_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_FactoryClearfy227_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_FactoryClearfy232_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_FactoryClearfy227_PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
@@ -83,9 +83,9 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy227_PageBase {
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,8 +121,8 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy227_PageBase {
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 );
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_PluginsPage extends Wbcr_FactoryClearfy232_PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
83
  *
84
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
85
  *
86
+ * @param \Wbcr_Factory441_Plugin $plugin
87
  */
88
+ public function __construct( Wbcr_Factory441_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_Factory441_ScriptList $scripts
125
+ * @param \Wbcr_Factory441_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_FactoryClearfy227_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -85,9 +85,9 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy227_PageBase {
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,7 +123,7 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy227_PageBase {
123
  *
124
  * @since 1.0.0
125
  * @return void
126
- * @see FactoryPages435_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_FactoryClearfy232_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
85
  private $themes_update_filters = [];
86
 
87
  /**
88
+ * @param Wbcr_Factory441_Plugin $plugin
89
  */
90
+ public function __construct( Wbcr_Factory441_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 FactoryPages440_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_FactoryClearfy227_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -51,9 +51,9 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy227_PageBase {
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
 
@@ -61,6 +61,7 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy227_PageBase {
61
  $this->internal = false;
62
  $this->menu_target = 'options-general.php';
63
  $this->add_link_to_plugin_actions = true;
 
64
  }
65
 
66
  parent::__construct( $plugin );
@@ -85,8 +86,8 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy227_PageBase {
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 );
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_FactoryClearfy232_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
51
  *
52
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
53
  *
54
+ * @param \Wbcr_Factory441_Plugin $plugin
55
  */
56
+ public function __construct( Wbcr_Factory441_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
 
61
  $this->internal = false;
62
  $this->menu_target = 'options-general.php';
63
  $this->add_link_to_plugin_actions = true;
64
+ $this->show_search_options_form = false;
65
  }
66
 
67
  parent::__construct( $plugin );
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com> *
88
  *
89
+ * @param \Wbcr_Factory441_ScriptList $scripts
90
+ * @param \Wbcr_Factory441_StyleList $styles
91
  */
92
  public function assets( $scripts, $styles ) {
93
  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_Factory436_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory436_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WUPM_Plugin extends Wbcr_Factory436_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory436_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_Factory441_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory441_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory441_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_FactoryClearfy227_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_FactoryClearfy232_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_Factory436_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_Factory441_Update {
8
 
9
  public function install()
10
  {
components/updates-manager/readme.txt CHANGED
@@ -3,7 +3,7 @@ Tags: disable updates, automatic updates, disable updates manager, easy updates
3
  Contributors: webcraftic, creativemotion, alexkovalevv
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
- Tested up to: 5.2
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
@@ -73,6 +73,10 @@ This section describes how to install the plugin and get it working.
73
  2. Control panel (Individualy updates)
74
 
75
  == Changelog ==
 
 
 
 
76
  = 1.1.1 =
77
  * Added: Improved plugin security
78
  * Added: Compatibility with Wordpress 4.2 - 5.x
3
  Contributors: webcraftic, creativemotion, alexkovalevv
4
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VDX7JNTQPNPFW
5
  Requires at least: 4.2
6
+ Tested up to: 5.6
7
  Requires PHP: 5.4
8
  Stable tag: trunk
9
  License: GPLv2
73
  2. Control panel (Individualy updates)
74
 
75
  == Changelog ==
76
+ = 1.1.2 (16.12.2020) =
77
+ * Added: Subscribe form
78
+ * Fixed: Minor bugs
79
+
80
  = 1.1.1 =
81
  * Added: Improved plugin security
82
  * Added: Compatibility with Wordpress 4.2 - 5.x
components/updates-manager/webcraftic-updates-manager.php CHANGED
@@ -4,15 +4,15 @@
4
  * Plugin URI: https://wordpress.org/plugins/webcraftic-updates-manager/
5
  * Description: Manage all your WordPress updates, automatic updates, logs, and loads more.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 1.1.1
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
15
- if ( ! defined( 'ABSPATH' ) ) {
16
  exit;
17
  }
18
 
@@ -37,54 +37,57 @@ if ( ! defined( 'ABSPATH' ) ) {
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
- require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-requirements.php' );
41
 
42
  // @formatter:off
43
  $wupm_plugin_info = array(
44
- 'prefix' => 'wbcr_updates_manager_',//wbcr_upm_
45
- 'plugin_name' => 'wbcr_updates_manager',
46
- 'plugin_title' => __( 'Webcraftic Updates Manager', 'webcraftic-updates-manager' ),
47
 
48
  // PLUGIN SUPPORT
49
- 'support_details' => array(
50
- 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
- 'support' => 'support', // {site}/support
53
- 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
 
 
 
 
57
  // PLUGIN ADVERTS
58
  'render_adverts' => true,
59
- 'adverts_settings' => array(
60
  'dashboard_widget' => true, // show dashboard widget (default: false)
61
- 'right_sidebar' => true, // show adverts sidebar (default: false)
62
- 'notice' => true, // show notice message (default: false)
63
  ),
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',
79
  'required_clearfy_check_component' => false
80
- ) ) );
81
-
82
 
83
  /**
84
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
85
  * and the user will throw a warning.
86
  */
87
- if ( ! $wupm_compatibility->check() ) {
88
  return;
89
  }
90
 
@@ -97,12 +100,11 @@ if ( ! $wupm_compatibility->check() ) {
97
  */
98
 
99
  // This plugin is activated
100
- define( 'WUPM_PLUGIN_ACTIVE', true );
101
- define( 'WUPM_PLUGIN_VERSION', $wupm_compatibility->get_plugin_version() );
102
- define( 'WUPM_PLUGIN_DIR', dirname( __FILE__ ) );
103
- define( 'WUPM_PLUGIN_BASE', plugin_basename( __FILE__ ) );
104
- define( 'WUPM_PLUGIN_URL', plugins_url( null, __FILE__ ) );
105
-
106
 
107
 
108
 
@@ -112,24 +114,24 @@ define( 'WUPM_PLUGIN_URL', plugins_url( null, __FILE__ ) );
112
  * -----------------------------------------------------------------------------
113
  */
114
 
115
- require_once( WUPM_PLUGIN_DIR . '/libs/factory/core/boot.php' );
116
- require_once( WUPM_PLUGIN_DIR . '/includes/class-plugin.php' );
117
 
118
  try {
119
- new WUPM_Plugin( __FILE__, array_merge( $wupm_plugin_info, array(
120
- 'plugin_version' => WUPM_PLUGIN_VERSION,
121
  'plugin_text_domain' => $wupm_compatibility->get_text_domain(),
122
- ) ) );
123
  } catch( Exception $e ) {
124
  // Plugin wasn't initialized due to an error
125
- define( 'WUPM_PLUGIN_THROW_ERROR', true );
126
 
127
- $wupm_plugin_error_func = function () use ( $e ) {
128
- $error = sprintf( "The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Updates manager', $e->getMessage(), $e->getCode() );
129
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
130
  };
131
 
132
- add_action( 'admin_notices', $wupm_plugin_error_func );
133
- add_action( 'network_admin_notices', $wupm_plugin_error_func );
134
  }
135
  // @formatter:on
4
  * Plugin URI: https://wordpress.org/plugins/webcraftic-updates-manager/
5
  * Description: Manage all your WordPress updates, automatic updates, logs, and loads more.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 1.1.2
8
  * Text Domain: webcraftic-updates-manager
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_441_VERSION
12
  */
13
 
14
  // Exit if accessed directly
15
+ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
37
  * -----------------------------------------------------------------------------
38
  */
39
 
40
+ require_once(dirname(__FILE__) . '/libs/factory/core/includes/class-factory-requirements.php');
41
 
42
  // @formatter:off
43
  $wupm_plugin_info = array(
44
+ 'prefix' => 'wbcr_updates_manager_',//wbcr_upm_
45
+ 'plugin_name' => 'wbcr_updates_manager',
46
+ 'plugin_title' => __('Webcraftic Updates Manager', 'webcraftic-updates-manager'),
47
 
48
  // PLUGIN SUPPORT
49
+ 'support_details' => array(
50
+ 'url' => 'https://webcraftic.com',
51
  'pages_map' => array(
52
+ 'support' => 'support', // {site}/support
53
+ 'docs' => 'docs' // {site}/docs
54
  )
55
  ),
56
 
57
+ // PLUGIN SUBSCRIBE FORM
58
+ 'subscribe_widget' => true,
59
+ 'subscribe_settings' => ['group_id' => '105408901'],
60
+
61
  // PLUGIN ADVERTS
62
  'render_adverts' => true,
63
+ 'adverts_settings' => array(
64
  'dashboard_widget' => true, // show dashboard widget (default: false)
65
+ 'right_sidebar' => true, // show adverts sidebar (default: false)
66
+ 'notice' => true, // show notice message (default: false)
67
  ),
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_441', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_438', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_440', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_clearfy_232', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_119', 'admin')
76
  )
77
  );
78
 
79
+ $wupm_compatibility = new Wbcr_Factory441_Requirements(__FILE__, array_merge($wupm_plugin_info, array(
80
+ 'plugin_already_activate' => defined('WUPM_PLUGIN_ACTIVE'),
81
+ 'required_php_version' => '5.4',
82
+ 'required_wp_version' => '4.2.0',
83
  'required_clearfy_check_component' => false
84
+ )));
 
85
 
86
  /**
87
  * If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
88
  * and the user will throw a warning.
89
  */
90
+ if( !$wupm_compatibility->check() ) {
91
  return;
92
  }
93
 
100
  */
101
 
102
  // This plugin is activated
103
+ define('WUPM_PLUGIN_ACTIVE', true);
104
+ define('WUPM_PLUGIN_VERSION', $wupm_compatibility->get_plugin_version());
105
+ define('WUPM_PLUGIN_DIR', dirname(__FILE__));
106
+ define('WUPM_PLUGIN_BASE', plugin_basename(__FILE__));
107
+ define('WUPM_PLUGIN_URL', plugins_url(null, __FILE__));
 
108
 
109
 
110
 
114
  * -----------------------------------------------------------------------------
115
  */
116
 
117
+ require_once(WUPM_PLUGIN_DIR . '/libs/factory/core/boot.php');
118
+ require_once(WUPM_PLUGIN_DIR . '/includes/class-plugin.php');
119
 
120
  try {
121
+ new WUPM_Plugin(__FILE__, array_merge($wupm_plugin_info, array(
122
+ 'plugin_version' => WUPM_PLUGIN_VERSION,
123
  'plugin_text_domain' => $wupm_compatibility->get_text_domain(),
124
+ )));
125
  } catch( Exception $e ) {
126
  // Plugin wasn't initialized due to an error
127
+ define('WUPM_PLUGIN_THROW_ERROR', true);
128
 
129
+ $wupm_plugin_error_func = function () use ($e) {
130
+ $error = sprintf("The %s plugin has stopped. <b>Error:</b> %s Code: %s", 'Webcraftic Updates manager', $e->getMessage(), $e->getCode());
131
  echo '<div class="notice notice-error"><p>' . $error . '</p></div>';
132
  };
133
 
134
+ add_action('admin_notices', $wupm_plugin_error_func);
135
+ add_action('network_admin_notices', $wupm_plugin_error_func);
136
  }
137
  // @formatter:on
includes/boot.php CHANGED
@@ -1,123 +1,125 @@
1
  <?php
2
- /**
3
- * Global boot file
4
- *
5
- * @author Webcraftic <wordpress.webraftic@gmail.com>
6
- * @copyright (c) 01.07.2018, Webcraftic
7
- * @version 1.0
8
- */
9
-
10
- // Exit if accessed directly
11
- if ( ! defined( 'ABSPATH' ) ) {
12
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  }
14
-
 
 
15
  /**
16
- * Подключает скрипты для дополнительного меню Clearfy, на всех страницах сайта.
17
- * Скрипты могут быть добавлены только, если пользователь администратор и в настройках Clearfy
18
- * не отключено дополнительное меню.
19
  */
20
- function wbcr_clr_enqueue_admin_bar_scripts() {
21
- $disable_menu = WCL_Plugin::app()->getPopulateOption( 'disable_clearfy_extra_menu', false );
22
-
23
- if ( ! WCL_Plugin::app()->currentUserCan() || $disable_menu ) {
24
- return;
25
- }
26
-
27
- wp_enqueue_style( 'wbcr-clearfy-adminbar-styles', WCL_PLUGIN_URL . '/assets/css/admin-bar.css', [], WCL_Plugin::app()->getPluginVersion() );
28
- }
29
-
30
- add_action( 'admin_enqueue_scripts', 'wbcr_clr_enqueue_admin_bar_scripts' );
31
- add_action( 'wp_enqueue_scripts', 'wbcr_clr_enqueue_admin_bar_scripts' );
32
-
33
  /**
34
- * Создает дополнительное меню Clearfy на верхней панели администратора.
35
- * По умолчанию выводятся пункты:
36
- * - Документация
37
- * - Нравится ли вам плагин?
38
- * - Обновится до премиум
39
- * Все остальные пункты меню могут быть получены с помощью фильтра wbcr/clearfy/adminbar_menu_items.
40
- * Меню может быть отключено опционально или если не имеет ни одного пукнта.
41
- *
42
- * @param WP_Admin_Bar $wp_admin_bar
43
  */
44
- function wbcr_clr_admin_bar_menu( $wp_admin_bar ) {
45
- $disable_menu = WCL_Plugin::app()->getPopulateOption( 'disable_clearfy_extra_menu', false );
46
-
47
- if ( ! WCL_Plugin::app()->currentUserCan() || $disable_menu ) {
48
- return;
49
- }
50
-
51
- $menu_items = [];
52
-
53
- /**
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 - добавлен
61
- * @since 1.1.4 - изменено имя
62
- */
63
- $menu_items = apply_filters( 'wbcr/clearfy/adminbar_menu_items', $menu_items );
64
-
65
- $menu_items['clearfy-docs'] = [
66
- 'id' => 'clearfy-docs',
67
- 'title' => '<span class="dashicons dashicons-book"></span> ' . __( 'Documentation', 'gonzales' ),
68
- 'href' => WCL_Plugin::app()->get_support()->get_docs_url( true, 'adminbar_menu' )
69
- ];
70
-
71
- $menu_items['clearfy-rating'] = [
72
- 'id' => 'clearfy-rating',
73
- 'title' => '<span class="dashicons dashicons-heart"></span> ' . __( 'Do you like our plugin?', 'gonzales' ),
74
- 'href' => 'https://wordpress.org/support/plugin/clearfy/reviews/'
75
  ];
76
- $menu_items['clearfy-support'] = [
77
- 'id' => 'clearfy-rating',
78
- 'title' => '<span class="dashicons dashicons-sos"></span> ' . __( 'Getting started free support', 'gonzales' ),
79
- 'href' => WCL_Plugin::app()->get_support()->get_contacts_url( true, 'support', 'adminbar_menu' )
80
- ];
81
-
82
- if ( ! WCL_Plugin::app()->premium->is_activate() ) {
83
- $menu_items['clearfy-premium'] = [
84
- 'id' => 'clearfy-premium',
85
- 'title' => '<span class="dashicons dashicons-star-filled"></span> ' . __( 'Upgrade to premium', 'gonzales' ),
86
- 'href' => WCL_Plugin::app()->get_support()->get_pricing_url( true, 'adminbar_menu' )
87
- ];
88
- }
89
-
90
- if ( empty( $menu_items ) ) {
91
- return;
92
- }
93
-
94
- if ( WCL_Plugin::app()->isNetworkActive() ) {
95
- $clearfy_settings_url = network_admin_url( 'settings.php' );
96
- } else {
97
- $clearfy_settings_url = admin_url( 'options-general.php' );
98
- }
99
-
100
- $clearfy_settings_url = $clearfy_settings_url . '?page=quick_start-' . WCL_Plugin::app()->getPluginName();
101
- $clearfy_extra_menu_title = apply_filters( 'wbcr/clearfy/adminbar_menu_title', __( 'Clearfy', 'clearfy' ) );
102
-
103
- $wp_admin_bar->add_menu( [
104
- 'id' => 'clearfy-menu',
105
- //'parent' => 'top-secondary',
106
- 'title' => '<span class="wbcr-clearfy-admin-bar-menu-icon"></span><span class="wbcr-clearfy-admin-bar-menu-title">' . $clearfy_extra_menu_title . ' <span class="dashicons dashicons-arrow-down"></span></span>',
107
- 'href' => $clearfy_settings_url
108
- ] );
109
-
110
- foreach ( (array) $menu_items as $id => $item ) {
111
- $wp_admin_bar->add_menu( [
112
- 'id' => $id,
113
- 'parent' => 'clearfy-menu',
114
- 'title' => $item['title'],
115
- 'href' => $item['href'],
116
- 'meta' => [
117
- 'class' => isset( $item['class'] ) ? $item['class'] : ''
118
- ]
119
- ] );
120
- }
121
  }
122
-
123
- add_action( 'admin_bar_menu', 'wbcr_clr_admin_bar_menu', 80 );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
+ /**
3
+ * Global boot file
4
+ *
5
+ * @author Webcraftic <wordpress.webraftic@gmail.com>
6
+ * @copyright (c) 01.07.2018, Webcraftic
7
+ * @version 1.0
8
+ */
9
+
10
+ // Exit if accessed directly
11
+ if( !defined('ABSPATH') ) {
12
+ exit;
13
+ }
14
+
15
+ /**
16
+ * Подключает скрипты для дополнительного меню Clearfy, на всех страницах сайта.
17
+ * Скрипты могут быть добавлены только, если пользователь администратор и в настройках Clearfy
18
+ * не отключено дополнительное меню.
19
+ */
20
+ function wbcr_clr_enqueue_admin_bar_scripts()
21
+ {
22
+ $disable_menu = WCL_Plugin::app()->getPopulateOption('disable_clearfy_extra_menu', false);
23
+
24
+ if( !WCL_Plugin::app()->currentUserCan() || $disable_menu ) {
25
+ return;
26
+ }
27
+
28
+ wp_enqueue_style('wbcr-clearfy-adminbar-styles', WCL_PLUGIN_URL . '/assets/css/admin-bar.css', [], WCL_Plugin::app()->getPluginVersion());
29
+ }
30
+
31
+ add_action('admin_enqueue_scripts', 'wbcr_clr_enqueue_admin_bar_scripts');
32
+ add_action('wp_enqueue_scripts', 'wbcr_clr_enqueue_admin_bar_scripts');
33
+
34
+ /**
35
+ * Создает дополнительное меню Clearfy на верхней панели администратора.
36
+ * По умолчанию выводятся пункты:
37
+ * - Документация
38
+ * - Нравится ли вам плагин?
39
+ * - Обновится до премиум
40
+ * Все остальные пункты меню могут быть получены с помощью фильтра wbcr/clearfy/adminbar_menu_items.
41
+ * Меню может быть отключено опционально или если не имеет ни одного пукнта.
42
+ *
43
+ * @param WP_Admin_Bar $wp_admin_bar
44
+ */
45
+ function wbcr_clr_admin_bar_menu($wp_admin_bar)
46
+ {
47
+ $disable_menu = WCL_Plugin::app()->getPopulateOption('disable_clearfy_extra_menu', false);
48
+
49
+ if( !WCL_Plugin::app()->currentUserCan() || $disable_menu ) {
50
+ return;
51
  }
52
+
53
+ $menu_items = [];
54
+
55
  /**
56
+ * @since 1.1.3 - добавлен
57
+ * @since 1.1.4 - является устаревшим
 
58
  */
59
+ $menu_items = wbcr_factory_441_apply_filters_deprecated('wbcr_clearfy_admin_bar_menu_items', [$menu_items], '1.4.0', 'wbcr/clearfy/adminbar_menu_items');
60
+
 
 
 
 
 
 
 
 
 
 
 
61
  /**
62
+ * @since 1.1.3 - добавлен
63
+ * @since 1.1.4 - изменено имя
 
 
 
 
 
 
 
64
  */
65
+ $menu_items = apply_filters('wbcr/clearfy/adminbar_menu_items', $menu_items);
66
+
67
+ $menu_items['clearfy-docs'] = [
68
+ 'id' => 'clearfy-docs',
69
+ 'title' => '<span class="dashicons dashicons-book"></span> ' . __('Documentation', 'clearfy'),
70
+ 'href' => WCL_Plugin::app()->get_support()->get_docs_url(true, 'adminbar_menu')
71
+ ];
72
+
73
+ $menu_items['clearfy-rating'] = [
74
+ 'id' => 'clearfy-rating',
75
+ 'title' => '<span class="dashicons dashicons-heart"></span> ' . __('Do you like our plugin?', 'clearfy'),
76
+ 'href' => 'https://wordpress.org/support/plugin/clearfy/reviews/'
77
+ ];
78
+ $menu_items['clearfy-support'] = [
79
+ 'id' => 'clearfy-rating',
80
+ 'title' => '<span class="dashicons dashicons-sos"></span> ' . __('Getting started free support', 'clearfy'),
81
+ 'href' => WCL_Plugin::app()->get_support()->get_contacts_url(true, 'support', 'adminbar_menu')
82
+ ];
83
+
84
+ if( !WCL_Plugin::app()->premium->is_activate() ) {
85
+ $menu_items['clearfy-premium'] = [
86
+ 'id' => 'clearfy-premium',
87
+ 'title' => '<span class="dashicons dashicons-star-filled"></span> ' . __('Upgrade to premium', 'clearfy'),
88
+ 'href' => WCL_Plugin::app()->get_support()->get_pricing_url(true, 'adminbar_menu')
 
 
 
 
 
 
 
89
  ];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
90
  }
91
+
92
+ if( empty($menu_items) ) {
93
+ return;
94
+ }
95
+
96
+ if( WCL_Plugin::app()->isNetworkActive() ) {
97
+ $clearfy_settings_url = network_admin_url('settings.php');
98
+ } else {
99
+ $clearfy_settings_url = admin_url('options-general.php');
100
+ }
101
+
102
+ $clearfy_settings_url = $clearfy_settings_url . '?page=quick_start-' . WCL_Plugin::app()->getPluginName();
103
+ $clearfy_extra_menu_title = apply_filters('wbcr/clearfy/adminbar_menu_title', __('Clearfy', 'clearfy'));
104
+
105
+ $wp_admin_bar->add_menu([
106
+ 'id' => 'clearfy-menu',
107
+ //'parent' => 'top-secondary',
108
+ 'title' => '<span class="wbcr-clearfy-admin-bar-menu-icon"></span><span class="wbcr-clearfy-admin-bar-menu-title">' . $clearfy_extra_menu_title . ' <span class="dashicons dashicons-arrow-down"></span></span>',
109
+ 'href' => $clearfy_settings_url
110
+ ]);
111
+
112
+ foreach((array)$menu_items as $id => $item) {
113
+ $wp_admin_bar->add_menu([
114
+ 'id' => $id,
115
+ 'parent' => 'clearfy-menu',
116
+ 'title' => $item['title'],
117
+ 'href' => $item['href'],
118
+ 'meta' => [
119
+ 'class' => isset($item['class']) ? $item['class'] : ''
120
+ ]
121
+ ]);
122
+ }
123
+ }
124
+
125
+ add_action('admin_bar_menu', 'wbcr_clr_admin_bar_menu', 80);
includes/class.plugin.php CHANGED
@@ -12,11 +12,11 @@ if( !defined('ABSPATH') ) {
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
 
@@ -71,7 +71,7 @@ class WCL_Plugin extends Wbcr_Factory436_Plugin {
71
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
72
  * классам.
73
  *
74
- * @return \Wbcr_Factory436_Plugin|\WCL_Plugin
75
  */
76
  public static function app()
77
  {
@@ -169,6 +169,7 @@ class WCL_Plugin extends Wbcr_Factory436_Plugin {
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');
 
172
  $this->registerPage('WCL_PerformanceGooglePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-performance-google.php');
173
  $this->registerPage('WCL_ComponentsPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components.php');
174
  $this->registerPage('WCL_SeoPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-seo.php');
@@ -290,7 +291,7 @@ class WCL_Plugin extends Wbcr_Factory436_Plugin {
290
  * @param $slug
291
  * param $premium
292
  *
293
- * @return \WBCR\Factory_436\Components\Install_Button
294
  */
295
  public function getInstallComponentsButton($component_type, $slug)
296
  {
@@ -303,7 +304,7 @@ class WCL_Plugin extends Wbcr_Factory436_Plugin {
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
  {
12
  exit;
13
  }
14
 
15
+ class WCL_Plugin extends Wbcr_Factory441_Plugin {
16
 
17
  /**
18
  * @see self::app()
19
+ * @var Wbcr_Factory441_Plugin
20
  */
21
  private static $app;
22
 
71
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
72
  * классам.
73
  *
74
+ * @return \Wbcr_Factory441_Plugin|\WCL_Plugin
75
  */
76
  public static function app()
77
  {
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');
172
+
173
  $this->registerPage('WCL_PerformanceGooglePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-performance-google.php');
174
  $this->registerPage('WCL_ComponentsPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components.php');
175
  $this->registerPage('WCL_SeoPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-seo.php');
291
  * @param $slug
292
  * param $premium
293
  *
294
+ * @return \WBCR\Factory_441\Components\Install_Button
295
  */
296
  public function getInstallComponentsButton($component_type, $slug)
297
  {
304
  * @param $component_type
305
  * @param $slug
306
  *
307
+ * @return \WBCR\Factory_441\Components\Delete_Button
308
  */
309
  public function getDeleteComponentsButton($component_type, $slug)
310
  {
includes/classes/class.configurate-advanced.php CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  exit;
12
  }
13
 
14
- class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy227_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy232_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
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_FactoryClearfy227_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigGooglePerformance extends Wbcr_FactoryClearfy232_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-performance.php CHANGED
@@ -12,7 +12,7 @@ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
- class WCL_ConfigPerformance extends Wbcr_FactoryClearfy227_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy232_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-privacy.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy227_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy232_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_FactoryClearfy227_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigSecurity extends Wbcr_FactoryClearfy232_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_FactoryClearfy227_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigSeo extends Wbcr_FactoryClearfy232_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
libs/factory/adverts/boot.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- use WBCR\Factory_Adverts_114\Base;
4
 
5
  /**
6
  * Factory Adverts
@@ -20,31 +20,31 @@ if( !defined('ABSPATH') ) {
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
  });
1
  <?php
2
 
3
+ use WBCR\Factory_Adverts_119\Base;
4
 
5
  /**
6
  * Factory Adverts
20
  exit;
21
  }
22
 
23
+ if( defined('FACTORY_ADVERTS_119_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
+ define('FACTORY_ADVERTS_119_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
+ define('FACTORY_ADVERTS_119_VERSION', '1.1.9');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
+ load_plugin_textdomain('wbcr_factory_adverts_119', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
+ define('FACTORY_ADVERTS_119_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
+ define('FACTORY_ADVERTS_119_URL', plugins_url(null, __FILE__));
41
 
42
+ require_once(FACTORY_ADVERTS_119_DIR . '/includes/class-rest-request.php');
43
+ require_once(FACTORY_ADVERTS_119_DIR . '/includes/class-base.php');
44
 
45
  /**
46
+ * @param Wbcr_Factory441_Plugin $plugin
47
  */
48
+ add_action('wbcr_factory_adverts_119_plugin_created', function ($plugin) {
49
+ $plugin->set_adverts_manager("WBCR\Factory_Adverts_119\Base");
50
  });
libs/factory/adverts/includes/class-base.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_114;
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_Factory436_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_114\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_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,7 +257,7 @@ class Base {
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
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_119;
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_Factory441_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_119\Creative_Motion_API
57
  */
58
  private $api;
59
 
82
  *
83
  * @since 1.0.0 Added
84
  *
85
+ * @param \Wbcr_Factory441_Plugin $plugin
86
  */
87
+ public function __construct( \Wbcr_Factory441_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_119_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_114;
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_Factory436_Plugin
39
  */
40
  private $plugin;
41
 
@@ -46,10 +46,10 @@ class Dashboard_Widget {
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;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_119;
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_Factory441_Plugin
39
  */
40
  private $plugin;
41
 
46
  *
47
  * @since 1.0.0 Added
48
  *
49
+ * @param \Wbcr_Factory441_Plugin $plugin
50
  * @param string $content
51
  */
52
+ public function __construct( \Wbcr_Factory441_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_114;
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_Factory436_Plugin
69
  */
70
  private $plugin;
71
 
@@ -75,11 +75,11 @@ class Creative_Motion_API {
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
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_119;
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_Factory441_Plugin
69
  */
70
  private $plugin;
71
 
75
  *
76
  * Variable initialization.
77
  *
78
+ * @param \Wbcr_Factory441_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
+ public function __construct(\Wbcr_Factory441_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
libs/factory/adverts/langs/{wbcr_factory_adverts_114-ru_RU.mo → wbcr_factory_adverts_119-ru_RU.mo} RENAMED
File without changes
libs/factory/adverts/langs/{wbcr_factory_adverts_114-ru_RU.po → wbcr_factory_adverts_119-ru_RU.po} RENAMED
File without changes
libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-441 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-441 .factory-accordion-item{display:none}.factory-bootstrap-441 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-441 .factory-accordion>h3.active:hover{cursor:default}
libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,7 +8,7 @@
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,4 +22,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 article,.factory-bootstrap-441 aside,.factory-bootstrap-441 details,.factory-bootstrap-441 figcaption,.factory-bootstrap-441 figure,.factory-bootstrap-441 footer,.factory-bootstrap-441 header,.factory-bootstrap-441 hgroup,.factory-bootstrap-441 main,.factory-bootstrap-441 nav,.factory-bootstrap-441 section,.factory-bootstrap-441 summary{display:block}.factory-bootstrap-441 audio,.factory-bootstrap-441 canvas,.factory-bootstrap-441 video{display:inline-block}.factory-bootstrap-441 audio:not([controls]){display:none;height:0}.factory-bootstrap-441 [hidden],.factory-bootstrap-441 template{display:none}.factory-bootstrap-441 body{margin:0}.factory-bootstrap-441 a{background:0 0}.factory-bootstrap-441 a:focus{outline:thin dotted}.factory-bootstrap-441 a:active,.factory-bootstrap-441 a:hover{outline:0}.factory-bootstrap-441 h1{margin:.67em 0}.factory-bootstrap-441 b,.factory-bootstrap-441 strong{font-weight:700}.factory-bootstrap-441 dfn{font-style:italic}.factory-bootstrap-441 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-441 mark{color:#000;background:#ff0}.factory-bootstrap-441 code,.factory-bootstrap-441 kbd,.factory-bootstrap-441 pre,.factory-bootstrap-441 samp{font-size:1em}.factory-bootstrap-441 pre{white-space:pre-wrap}.factory-bootstrap-441 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-441 sub,.factory-bootstrap-441 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-441 sup{top:-.5em}.factory-bootstrap-441 sub{bottom:-.25em}.factory-bootstrap-441 img{border:0}.factory-bootstrap-441 svg:not(:root){overflow:hidden}.factory-bootstrap-441 figure{margin:0}.factory-bootstrap-441 button,.factory-bootstrap-441 input,.factory-bootstrap-441 select,.factory-bootstrap-441 textarea{margin:0}.factory-bootstrap-441 button,.factory-bootstrap-441 select{text-transform:none}.factory-bootstrap-441 select{padding-right:4px!important}.factory-bootstrap-441 button,.factory-bootstrap-441 input[type=reset],.factory-bootstrap-441 input[type=submit],html .factory-bootstrap-441 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-441 button[disabled],html .factory-bootstrap-441 input[disabled]{cursor:default}.factory-bootstrap-441 input[type=checkbox],.factory-bootstrap-441 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-441 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-441 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-441 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-441 button::-moz-focus-inner,.factory-bootstrap-441 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-441 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-441 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-441 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-441 a,.factory-bootstrap-441 a:visited{text-decoration:underline}.factory-bootstrap-441 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-441 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-441 a[href^="javascript:"]:after,.factory-bootstrap-441 a[href^="#"]:after{content:""}.factory-bootstrap-441 blockquote,.factory-bootstrap-441 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-441 thead{display:table-header-group}.factory-bootstrap-441 img,.factory-bootstrap-441 tr{page-break-inside:avoid}.factory-bootstrap-441 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-441 h2,.factory-bootstrap-441 h3,.factory-bootstrap-441 p{orphans:3;widows:3}.factory-bootstrap-441 h2,.factory-bootstrap-441 h3{page-break-after:avoid}.factory-bootstrap-441 select{background:#fff!important}.factory-bootstrap-441 .navbar{display:none}.factory-bootstrap-441 .table td,.factory-bootstrap-441 .table th{background-color:#fff!important}.factory-bootstrap-441 .btn>.caret,.factory-bootstrap-441 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-441 .label{border:1px solid #000}.factory-bootstrap-441 .table{border-collapse:collapse!important}.factory-bootstrap-441 .table-bordered td,.factory-bootstrap-441 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-441 *,.factory-bootstrap-441 :after,.factory-bootstrap-441 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-441{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-441 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-441 button,.factory-bootstrap-441 input,.factory-bootstrap-441 select,.factory-bootstrap-441 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-441 img{vertical-align:middle}.factory-bootstrap-441 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-441 .img-rounded{border-radius:6px}.factory-bootstrap-441 .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-441 .img-circle{border-radius:50%}.factory-bootstrap-441 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-441 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-441 .h1,.factory-bootstrap-441 .h2,.factory-bootstrap-441 .h3,.factory-bootstrap-441 .h4,.factory-bootstrap-441 .h5,.factory-bootstrap-441 .h6,.factory-bootstrap-441 h1,.factory-bootstrap-441 h2,.factory-bootstrap-441 h3,.factory-bootstrap-441 h4,.factory-bootstrap-441 h5,.factory-bootstrap-441 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-441 .h1 .small,.factory-bootstrap-441 .h1 small,.factory-bootstrap-441 .h2 .small,.factory-bootstrap-441 .h2 small,.factory-bootstrap-441 .h3 .small,.factory-bootstrap-441 .h3 small,.factory-bootstrap-441 .h4 .small,.factory-bootstrap-441 .h4 small,.factory-bootstrap-441 .h5 .small,.factory-bootstrap-441 .h5 small,.factory-bootstrap-441 .h6 .small,.factory-bootstrap-441 .h6 small,.factory-bootstrap-441 h1 .small,.factory-bootstrap-441 h1 small,.factory-bootstrap-441 h2 .small,.factory-bootstrap-441 h2 small,.factory-bootstrap-441 h3 .small,.factory-bootstrap-441 h3 small,.factory-bootstrap-441 h4 .small,.factory-bootstrap-441 h4 small,.factory-bootstrap-441 h5 .small,.factory-bootstrap-441 h5 small,.factory-bootstrap-441 h6 .small,.factory-bootstrap-441 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-441 h1,.factory-bootstrap-441 h2,.factory-bootstrap-441 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-441 h1 .small,.factory-bootstrap-441 h1 small,.factory-bootstrap-441 h2 .small,.factory-bootstrap-441 h2 small,.factory-bootstrap-441 h3 .small,.factory-bootstrap-441 h3 small{font-size:65%}.factory-bootstrap-441 h4,.factory-bootstrap-441 h5,.factory-bootstrap-441 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-441 h4 .small,.factory-bootstrap-441 h4 small,.factory-bootstrap-441 h5 .small,.factory-bootstrap-441 h5 small,.factory-bootstrap-441 h6 .small,.factory-bootstrap-441 h6 small{font-size:75%}.factory-bootstrap-441 .h1,.factory-bootstrap-441 h1{font-size:36px}.factory-bootstrap-441 .h2,.factory-bootstrap-441 h2{font-size:30px}.factory-bootstrap-441 .h3,.factory-bootstrap-441 h3{font-size:24px}.factory-bootstrap-441 .h4,.factory-bootstrap-441 h4{font-size:18px}.factory-bootstrap-441 .h5,.factory-bootstrap-441 h5{font-size:14px}.factory-bootstrap-441 .h6,.factory-bootstrap-441 h6{font-size:12px}.factory-bootstrap-441 p{margin:0 0 10px}.factory-bootstrap-441 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-441 .small,.factory-bootstrap-441 small{font-size:85%}.factory-bootstrap-441 cite{font-style:normal}.factory-bootstrap-441 .text-muted{color:#999}.factory-bootstrap-441 .text-primary{color:#428bca}.factory-bootstrap-441 .text-primary:hover{color:#3071a9}.factory-bootstrap-441 .text-warning{color:#8a6d3b}.factory-bootstrap-441 .text-warning:hover{color:#66512c}.factory-bootstrap-441 .text-danger{color:#a94442}.factory-bootstrap-441 .text-danger:hover{color:#843534}.factory-bootstrap-441 .text-success{color:#3c763d}.factory-bootstrap-441 .text-success:hover{color:#2b542c}.factory-bootstrap-441 .text-info{color:#31708f}.factory-bootstrap-441 .text-info:hover{color:#245269}.factory-bootstrap-441 .text-left{text-align:left}.factory-bootstrap-441 .text-right{text-align:right}.factory-bootstrap-441 .text-center{text-align:center}.factory-bootstrap-441 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-441 ol,.factory-bootstrap-441 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-441 ol ol,.factory-bootstrap-441 ol ul,.factory-bootstrap-441 ul ol,.factory-bootstrap-441 ul ul{margin-bottom:0}.factory-bootstrap-441 .list-inline,.factory-bootstrap-441 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-441 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-441 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-441 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-441 dd,.factory-bootstrap-441 dt{line-height:1.428571429}.factory-bootstrap-441 dt{font-weight:700}.factory-bootstrap-441 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-441 abbr[data-original-title],.factory-bootstrap-441 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-441 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-441 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-441 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-441 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-441 blockquote .small,.factory-bootstrap-441 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-441 blockquote .small:before,.factory-bootstrap-441 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-441 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-441 blockquote.pull-right .small,.factory-bootstrap-441 blockquote.pull-right p,.factory-bootstrap-441 blockquote.pull-right small{text-align:right}.factory-bootstrap-441 blockquote.pull-right .small:before,.factory-bootstrap-441 blockquote.pull-right small:before{content:''}.factory-bootstrap-441 blockquote.pull-right .small:after,.factory-bootstrap-441 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-441 blockquote:after,.factory-bootstrap-441 blockquote:before{content:""}.factory-bootstrap-441 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-441 code,.factory-bootstrap-441 kbd,.factory-bootstrap-441 pre,.factory-bootstrap-441 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-441 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-441 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-441 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-441 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-441 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-441 .container:after,.factory-bootstrap-441 .container:before{display:table;content:" "}.factory-bootstrap-441 .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-441 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-441 .row:after,.factory-bootstrap-441 .row:before{display:table;content:" "}.factory-bootstrap-441 .row:after{clear:both}.factory-bootstrap-441 .col-lg-1,.factory-bootstrap-441 .col-lg-10,.factory-bootstrap-441 .col-lg-11,.factory-bootstrap-441 .col-lg-12,.factory-bootstrap-441 .col-lg-2,.factory-bootstrap-441 .col-lg-3,.factory-bootstrap-441 .col-lg-4,.factory-bootstrap-441 .col-lg-5,.factory-bootstrap-441 .col-lg-6,.factory-bootstrap-441 .col-lg-7,.factory-bootstrap-441 .col-lg-8,.factory-bootstrap-441 .col-lg-9,.factory-bootstrap-441 .col-md-1,.factory-bootstrap-441 .col-md-10,.factory-bootstrap-441 .col-md-11,.factory-bootstrap-441 .col-md-12,.factory-bootstrap-441 .col-md-2,.factory-bootstrap-441 .col-md-3,.factory-bootstrap-441 .col-md-4,.factory-bootstrap-441 .col-md-5,.factory-bootstrap-441 .col-md-6,.factory-bootstrap-441 .col-md-7,.factory-bootstrap-441 .col-md-8,.factory-bootstrap-441 .col-md-9,.factory-bootstrap-441 .col-sm-1,.factory-bootstrap-441 .col-sm-10,.factory-bootstrap-441 .col-sm-11,.factory-bootstrap-441 .col-sm-12,.factory-bootstrap-441 .col-sm-2,.factory-bootstrap-441 .col-sm-3,.factory-bootstrap-441 .col-sm-4,.factory-bootstrap-441 .col-sm-5,.factory-bootstrap-441 .col-sm-6,.factory-bootstrap-441 .col-sm-7,.factory-bootstrap-441 .col-sm-8,.factory-bootstrap-441 .col-sm-9,.factory-bootstrap-441 .col-xs-1,.factory-bootstrap-441 .col-xs-10,.factory-bootstrap-441 .col-xs-11,.factory-bootstrap-441 .col-xs-12,.factory-bootstrap-441 .col-xs-2,.factory-bootstrap-441 .col-xs-3,.factory-bootstrap-441 .col-xs-4,.factory-bootstrap-441 .col-xs-5,.factory-bootstrap-441 .col-xs-6,.factory-bootstrap-441 .col-xs-7,.factory-bootstrap-441 .col-xs-8,.factory-bootstrap-441 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-441 .col-xs-1,.factory-bootstrap-441 .col-xs-10,.factory-bootstrap-441 .col-xs-11,.factory-bootstrap-441 .col-xs-12,.factory-bootstrap-441 .col-xs-2,.factory-bootstrap-441 .col-xs-3,.factory-bootstrap-441 .col-xs-4,.factory-bootstrap-441 .col-xs-5,.factory-bootstrap-441 .col-xs-6,.factory-bootstrap-441 .col-xs-7,.factory-bootstrap-441 .col-xs-8,.factory-bootstrap-441 .col-xs-9{float:left}.factory-bootstrap-441 .col-xs-12{width:100%}.factory-bootstrap-441 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-441 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-441 .col-xs-9{width:75%}.factory-bootstrap-441 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-441 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-441 .col-xs-6{width:50%}.factory-bootstrap-441 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-441 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-441 .col-xs-3{width:25%}.factory-bootstrap-441 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-441 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-441 .col-xs-pull-12{right:100%}.factory-bootstrap-441 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-441 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-441 .col-xs-pull-9{right:75%}.factory-bootstrap-441 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-441 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-441 .col-xs-pull-6{right:50%}.factory-bootstrap-441 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-441 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-441 .col-xs-pull-3{right:25%}.factory-bootstrap-441 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-441 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-441 .col-xs-pull-0{right:0}.factory-bootstrap-441 .col-xs-push-12{left:100%}.factory-bootstrap-441 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-441 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-441 .col-xs-push-9{left:75%}.factory-bootstrap-441 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-441 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-441 .col-xs-push-6{left:50%}.factory-bootstrap-441 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-441 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-441 .col-xs-push-3{left:25%}.factory-bootstrap-441 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-441 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-441 .col-xs-push-0{left:0}.factory-bootstrap-441 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-441 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-441 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-441 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-441 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-441 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-441 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-441 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-441 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-441 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-441 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-441 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-441 .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-441 table{max-width:100%;background-color:transparent}.factory-bootstrap-441 th{text-align:left}.factory-bootstrap-441 .table{width:100%;margin-bottom:20px}.factory-bootstrap-441 .table>tbody>tr>td,.factory-bootstrap-441 .table>tbody>tr>th,.factory-bootstrap-441 .table>tfoot>tr>td,.factory-bootstrap-441 .table>tfoot>tr>th,.factory-bootstrap-441 .table>thead>tr>td,.factory-bootstrap-441 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-441 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-441 .table>caption+thead>tr:first-child>td,.factory-bootstrap-441 .table>caption+thead>tr:first-child>th,.factory-bootstrap-441 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-441 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-441 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-441 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-441 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-441 .table .table{background-color:#fff}.factory-bootstrap-441 .table-condensed>tbody>tr>td,.factory-bootstrap-441 .table-condensed>tbody>tr>th,.factory-bootstrap-441 .table-condensed>tfoot>tr>td,.factory-bootstrap-441 .table-condensed>tfoot>tr>th,.factory-bootstrap-441 .table-condensed>thead>tr>td,.factory-bootstrap-441 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-441 .table-bordered,.factory-bootstrap-441 .table-bordered>tbody>tr>td,.factory-bootstrap-441 .table-bordered>tbody>tr>th,.factory-bootstrap-441 .table-bordered>tfoot>tr>td,.factory-bootstrap-441 .table-bordered>tfoot>tr>th,.factory-bootstrap-441 .table-bordered>thead>tr>td,.factory-bootstrap-441 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-441 .table-bordered>thead>tr>td,.factory-bootstrap-441 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-441 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-441 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-441 .table-hover>tbody>tr:hover>td,.factory-bootstrap-441 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-441 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-441 table td[class*=col-],.factory-bootstrap-441 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-441 .table>tbody>.active>td,.factory-bootstrap-441 .table>tbody>.active>th,.factory-bootstrap-441 .table>tbody>tr>.active,.factory-bootstrap-441 .table>tfoot>.active>td,.factory-bootstrap-441 .table>tfoot>.active>th,.factory-bootstrap-441 .table>tfoot>tr>.active,.factory-bootstrap-441 .table>thead>.active>td,.factory-bootstrap-441 .table>thead>.active>th,.factory-bootstrap-441 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-441 .table-hover>tbody>.active:hover>td,.factory-bootstrap-441 .table-hover>tbody>.active:hover>th,.factory-bootstrap-441 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-441 .table>tbody>.success>td,.factory-bootstrap-441 .table>tbody>.success>th,.factory-bootstrap-441 .table>tbody>tr>.success,.factory-bootstrap-441 .table>tfoot>.success>td,.factory-bootstrap-441 .table>tfoot>.success>th,.factory-bootstrap-441 .table>tfoot>tr>.success,.factory-bootstrap-441 .table>thead>.success>td,.factory-bootstrap-441 .table>thead>.success>th,.factory-bootstrap-441 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-441 .table-hover>tbody>.success:hover>td,.factory-bootstrap-441 .table-hover>tbody>.success:hover>th,.factory-bootstrap-441 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-441 .table>tbody>.danger>td,.factory-bootstrap-441 .table>tbody>.danger>th,.factory-bootstrap-441 .table>tbody>tr>.danger,.factory-bootstrap-441 .table>tfoot>.danger>td,.factory-bootstrap-441 .table>tfoot>.danger>th,.factory-bootstrap-441 .table>tfoot>tr>.danger,.factory-bootstrap-441 .table>thead>.danger>td,.factory-bootstrap-441 .table>thead>.danger>th,.factory-bootstrap-441 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-441 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-441 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-441 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-441 .table>tbody>.warning>td,.factory-bootstrap-441 .table>tbody>.warning>th,.factory-bootstrap-441 .table>tbody>tr>.warning,.factory-bootstrap-441 .table>tfoot>.warning>td,.factory-bootstrap-441 .table>tfoot>.warning>th,.factory-bootstrap-441 .table>tfoot>tr>.warning,.factory-bootstrap-441 .table>thead>.warning>td,.factory-bootstrap-441 .table>thead>.warning>th,.factory-bootstrap-441 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-441 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-441 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-441 .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-441 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-441 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-441 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-441 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-441 input[type=checkbox],.factory-bootstrap-441 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-441 input[type=file]{display:block}.factory-bootstrap-441 select[multiple],.factory-bootstrap-441 select[size]{height:auto}.factory-bootstrap-441 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-441 input[type=checkbox]:focus,.factory-bootstrap-441 input[type=file]:focus,.factory-bootstrap-441 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-441 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-441 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-441 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-441 .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-441 .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-441 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-441 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-441 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-441 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-441 .form-control[disabled],.factory-bootstrap-441 .form-control[readonly],.factory-bootstrap-441 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-441 textarea.form-control{height:auto}.factory-bootstrap-441 .form-group{margin-bottom:15px}.factory-bootstrap-441 .checkbox,.factory-bootstrap-441 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-441 .checkbox label,.factory-bootstrap-441 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-441 .checkbox input[type=checkbox],.factory-bootstrap-441 .checkbox-inline input[type=checkbox],.factory-bootstrap-441 .radio input[type=radio],.factory-bootstrap-441 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-441 .checkbox+.checkbox,.factory-bootstrap-441 .radio+.radio{margin-top:-5px}.factory-bootstrap-441 .checkbox-inline,.factory-bootstrap-441 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-441 .checkbox-inline+.checkbox-inline,.factory-bootstrap-441 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-441 .checkbox-inline[disabled],.factory-bootstrap-441 .checkbox[disabled],.factory-bootstrap-441 .radio-inline[disabled],.factory-bootstrap-441 .radio[disabled],.factory-bootstrap-441 fieldset[disabled] .checkbox,.factory-bootstrap-441 fieldset[disabled] .checkbox-inline,.factory-bootstrap-441 fieldset[disabled] .radio,.factory-bootstrap-441 fieldset[disabled] .radio-inline,.factory-bootstrap-441 fieldset[disabled] input[type=checkbox],.factory-bootstrap-441 fieldset[disabled] input[type=radio],.factory-bootstrap-441 input[type=checkbox][disabled],.factory-bootstrap-441 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-441 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-441 textarea.input-sm{height:auto}.factory-bootstrap-441 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-441 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-441 textarea.input-lg{height:auto}.factory-bootstrap-441 .has-warning .checkbox,.factory-bootstrap-441 .has-warning .checkbox-inline,.factory-bootstrap-441 .has-warning .control-label,.factory-bootstrap-441 .has-warning .help-block,.factory-bootstrap-441 .has-warning .radio,.factory-bootstrap-441 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-441 .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-441 .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-441 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-441 .has-error .checkbox,.factory-bootstrap-441 .has-error .checkbox-inline,.factory-bootstrap-441 .has-error .control-label,.factory-bootstrap-441 .has-error .help-block,.factory-bootstrap-441 .has-error .radio,.factory-bootstrap-441 .has-error .radio-inline{color:#a94442}.factory-bootstrap-441 .controls{display:block}.factory-bootstrap-441 .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-441 .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-441 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-441 .has-success .checkbox,.factory-bootstrap-441 .has-success .checkbox-inline,.factory-bootstrap-441 .has-success .control-label,.factory-bootstrap-441 .has-success .help-block,.factory-bootstrap-441 .has-success .radio,.factory-bootstrap-441 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-441 .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-441 .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-441 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-441 .form-control-static{margin-bottom:0}.factory-bootstrap-441 .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-441 .form-horizontal .checkbox,.factory-bootstrap-441 .form-horizontal .checkbox-inline,.factory-bootstrap-441 .form-horizontal .control-label,.factory-bootstrap-441 .form-horizontal .radio,.factory-bootstrap-441 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-441 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-441 .form-horizontal .checkbox,.factory-bootstrap-441 .form-horizontal .radio{min-height:27px}.factory-bootstrap-441 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-441 .form-horizontal .form-group:after,.factory-bootstrap-441 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-441 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-441 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-441 .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-441 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-441 .btn{text-decoration:none}.factory-bootstrap-441 .btn:focus,.factory-bootstrap-441 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-441 .btn.disabled,.factory-bootstrap-441 .btn[disabled],.factory-bootstrap-441 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-441 .btn-default.active,.factory-bootstrap-441 .btn-default:active,.factory-bootstrap-441 .btn-default:focus,.factory-bootstrap-441 .btn-default:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-441 .btn-default.active,.factory-bootstrap-441 .btn-default:active,.factory-bootstrap-441 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-441 .btn-default.disabled,.factory-bootstrap-441 .btn-default.disabled.active,.factory-bootstrap-441 .btn-default.disabled:active,.factory-bootstrap-441 .btn-default.disabled:focus,.factory-bootstrap-441 .btn-default.disabled:hover,.factory-bootstrap-441 .btn-default[disabled],.factory-bootstrap-441 .btn-default[disabled].active,.factory-bootstrap-441 .btn-default[disabled]:active,.factory-bootstrap-441 .btn-default[disabled]:focus,.factory-bootstrap-441 .btn-default[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-default,.factory-bootstrap-441 fieldset[disabled] .btn-default.active,.factory-bootstrap-441 fieldset[disabled] .btn-default:active,.factory-bootstrap-441 fieldset[disabled] .btn-default:focus,.factory-bootstrap-441 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-441 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-441 .btn-primary.active,.factory-bootstrap-441 .btn-primary:active,.factory-bootstrap-441 .btn-primary:focus,.factory-bootstrap-441 .btn-primary:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-441 .btn-primary.active,.factory-bootstrap-441 .btn-primary:active,.factory-bootstrap-441 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-441 .btn-primary.disabled,.factory-bootstrap-441 .btn-primary.disabled.active,.factory-bootstrap-441 .btn-primary.disabled:active,.factory-bootstrap-441 .btn-primary.disabled:focus,.factory-bootstrap-441 .btn-primary.disabled:hover,.factory-bootstrap-441 .btn-primary[disabled],.factory-bootstrap-441 .btn-primary[disabled].active,.factory-bootstrap-441 .btn-primary[disabled]:active,.factory-bootstrap-441 .btn-primary[disabled]:focus,.factory-bootstrap-441 .btn-primary[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-primary,.factory-bootstrap-441 fieldset[disabled] .btn-primary.active,.factory-bootstrap-441 fieldset[disabled] .btn-primary:active,.factory-bootstrap-441 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-441 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-441 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-441 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-441 .btn-warning.active,.factory-bootstrap-441 .btn-warning:active,.factory-bootstrap-441 .btn-warning:focus,.factory-bootstrap-441 .btn-warning:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-441 .btn-warning.active,.factory-bootstrap-441 .btn-warning:active,.factory-bootstrap-441 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-441 .btn-warning.disabled,.factory-bootstrap-441 .btn-warning.disabled.active,.factory-bootstrap-441 .btn-warning.disabled:active,.factory-bootstrap-441 .btn-warning.disabled:focus,.factory-bootstrap-441 .btn-warning.disabled:hover,.factory-bootstrap-441 .btn-warning[disabled],.factory-bootstrap-441 .btn-warning[disabled].active,.factory-bootstrap-441 .btn-warning[disabled]:active,.factory-bootstrap-441 .btn-warning[disabled]:focus,.factory-bootstrap-441 .btn-warning[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-warning,.factory-bootstrap-441 fieldset[disabled] .btn-warning.active,.factory-bootstrap-441 fieldset[disabled] .btn-warning:active,.factory-bootstrap-441 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-441 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-441 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-441 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-441 .btn-success.active,.factory-bootstrap-441 .btn-success:active,.factory-bootstrap-441 .btn-success:focus,.factory-bootstrap-441 .btn-success:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-441 .btn-success.active,.factory-bootstrap-441 .btn-success:active,.factory-bootstrap-441 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-441 .btn-success.disabled,.factory-bootstrap-441 .btn-success.disabled.active,.factory-bootstrap-441 .btn-success.disabled:active,.factory-bootstrap-441 .btn-success.disabled:focus,.factory-bootstrap-441 .btn-success.disabled:hover,.factory-bootstrap-441 .btn-success[disabled],.factory-bootstrap-441 .btn-success[disabled].active,.factory-bootstrap-441 .btn-success[disabled]:active,.factory-bootstrap-441 .btn-success[disabled]:focus,.factory-bootstrap-441 .btn-success[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-success,.factory-bootstrap-441 fieldset[disabled] .btn-success.active,.factory-bootstrap-441 fieldset[disabled] .btn-success:active,.factory-bootstrap-441 fieldset[disabled] .btn-success:focus,.factory-bootstrap-441 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-441 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-441 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-441 .btn-info.active,.factory-bootstrap-441 .btn-info:active,.factory-bootstrap-441 .btn-info:focus,.factory-bootstrap-441 .btn-info:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-441 .btn-info.active,.factory-bootstrap-441 .btn-info:active,.factory-bootstrap-441 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-441 .btn-info.disabled,.factory-bootstrap-441 .btn-info.disabled.active,.factory-bootstrap-441 .btn-info.disabled:active,.factory-bootstrap-441 .btn-info.disabled:focus,.factory-bootstrap-441 .btn-info.disabled:hover,.factory-bootstrap-441 .btn-info[disabled],.factory-bootstrap-441 .btn-info[disabled].active,.factory-bootstrap-441 .btn-info[disabled]:active,.factory-bootstrap-441 .btn-info[disabled]:focus,.factory-bootstrap-441 .btn-info[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-info,.factory-bootstrap-441 fieldset[disabled] .btn-info.active,.factory-bootstrap-441 fieldset[disabled] .btn-info:active,.factory-bootstrap-441 fieldset[disabled] .btn-info:focus,.factory-bootstrap-441 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-441 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-441 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-441 .btn-link,.factory-bootstrap-441 .btn-link:active,.factory-bootstrap-441 .btn-link[disabled],.factory-bootstrap-441 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-441 .btn-link,.factory-bootstrap-441 .btn-link:active,.factory-bootstrap-441 .btn-link:focus,.factory-bootstrap-441 .btn-link:hover{border-color:transparent}.factory-bootstrap-441 .btn-link:focus,.factory-bootstrap-441 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-441 .btn-link[disabled]:focus,.factory-bootstrap-441 .btn-link[disabled]:hover,.factory-bootstrap-441 fieldset[disabled] .btn-link:focus,.factory-bootstrap-441 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-441 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-441 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-441 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-441 input[type=button].btn-block,.factory-bootstrap-441 input[type=reset].btn-block,.factory-bootstrap-441 input[type=submit].btn-block{width:100%}.factory-bootstrap-441 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-441 .fade.in{opacity:1}.factory-bootstrap-441 .collapse{display:none}.factory-bootstrap-441 .collapse.in{display:block}.factory-bootstrap-441 .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-441 .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-441 .glyphicon:empty{width:1em}.factory-bootstrap-441 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-441 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-441 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-441 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-441 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-441 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-441 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-441 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-441 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-441 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-441 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-441 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-441 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-441 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-441 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-441 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-441 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-441 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-441 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-441 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-441 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-441 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-441 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-441 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-441 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-441 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-441 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-441 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-441 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-441 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-441 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-441 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-441 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-441 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-441 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-441 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-441 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-441 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-441 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-441 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-441 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-441 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-441 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-441 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-441 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-441 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-441 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-441 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-441 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-441 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-441 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-441 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-441 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-441 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-441 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-441 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-441 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-441 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-441 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-441 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-441 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-441 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-441 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-441 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-441 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-441 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-441 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-441 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-441 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-441 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-441 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-441 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-441 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-441 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-441 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-441 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-441 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-441 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-441 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-441 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-441 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-441 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-441 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-441 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-441 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-441 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-441 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-441 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-441 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-441 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-441 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-441 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-441 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-441 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-441 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-441 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-441 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-441 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-441 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-441 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-441 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-441 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-441 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-441 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-441 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-441 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-441 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-441 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-441 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-441 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-441 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-441 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-441 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-441 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-441 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-441 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-441 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-441 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-441 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-441 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-441 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-441 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-441 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-441 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-441 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-441 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-441 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-441 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-441 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-441 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-441 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-441 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-441 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-441 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-441 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-441 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-441 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-441 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-441 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-441 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-441 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-441 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-441 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-441 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-441 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-441 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-441 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-441 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-441 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-441 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-441 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-441 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-441 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-441 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-441 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-441 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-441 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-441 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-441 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-441 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-441 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-441 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-441 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-441 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-441 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-441 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-441 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-441 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-441 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-441 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-441 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-441 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-441 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-441 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-441 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-441 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-441 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-441 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-441 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-441 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-441 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-441 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-441 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-441 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-441 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-441 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-441 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-441 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-441 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-441 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-441 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-441 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-441 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-441 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-441 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-441 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-441 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-441 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-441 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-441 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-441 .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-441 .dropdown{position:relative}.factory-bootstrap-441 .dropdown-toggle:focus{outline:0}.factory-bootstrap-441 .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-441 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-441 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-441 .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-441 .dropdown-menu>li>a:focus,.factory-bootstrap-441 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-441 .dropdown-menu>.active>a,.factory-bootstrap-441 .dropdown-menu>.active>a:focus,.factory-bootstrap-441 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-441 .dropdown-menu>.disabled>a,.factory-bootstrap-441 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-441 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-441 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-441 .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-441 .open>.dropdown-menu{display:block}.factory-bootstrap-441 .open>a{outline:0}.factory-bootstrap-441 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-441 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-441 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-441 .dropup .caret,.factory-bootstrap-441 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-441 .dropup .dropdown-menu,.factory-bootstrap-441 .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-441 .btn-group,.factory-bootstrap-441 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-441 .btn-group-vertical>.btn,.factory-bootstrap-441 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-441 .btn-group-vertical>.btn.active,.factory-bootstrap-441 .btn-group-vertical>.btn:active,.factory-bootstrap-441 .btn-group-vertical>.btn:focus,.factory-bootstrap-441 .btn-group-vertical>.btn:hover,.factory-bootstrap-441 .btn-group>.btn.active,.factory-bootstrap-441 .btn-group>.btn:active,.factory-bootstrap-441 .btn-group>.btn:focus,.factory-bootstrap-441 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-441 .btn-group-vertical>.btn:focus,.factory-bootstrap-441 .btn-group>.btn:focus{outline:0}.factory-bootstrap-441 .btn-group .btn+.btn,.factory-bootstrap-441 .btn-group .btn+.btn-group,.factory-bootstrap-441 .btn-group .btn-group+.btn,.factory-bootstrap-441 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-441 .btn-toolbar:after,.factory-bootstrap-441 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-441 .btn-toolbar:after{clear:both}.factory-bootstrap-441 .btn-toolbar .btn-group{float:left}.factory-bootstrap-441 .btn-toolbar>.btn+.btn,.factory-bootstrap-441 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-441 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-441 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-441 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-441 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-441 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-441 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-441 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .btn-group>.btn-group{float:left}.factory-bootstrap-441 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-441 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-441 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-441 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .btn-group .dropdown-toggle:active,.factory-bootstrap-441 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-441 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-441 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-441 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-441 .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-441 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-441 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-441 .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-441 .btn .caret{margin-left:0}.factory-bootstrap-441 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-441 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-441 .btn-group-vertical>.btn,.factory-bootstrap-441 .btn-group-vertical>.btn-group,.factory-bootstrap-441 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-441 .btn-group-vertical>.btn-group:after,.factory-bootstrap-441 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-441 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-441 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-441 .btn-group-vertical>.btn+.btn,.factory-bootstrap-441 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-441 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-441 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-441 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-441 .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-441 .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-441 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-441 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-441 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-441 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-441 .btn-group-justified>.btn,.factory-bootstrap-441 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-441 .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-441 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-441 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-441 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-441 .input-group-lg>.form-control,.factory-bootstrap-441 .input-group-lg>.input-group-addon,.factory-bootstrap-441 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-441 select.input-group-lg>.form-control,.factory-bootstrap-441 select.input-group-lg>.input-group-addon,.factory-bootstrap-441 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-441 textarea.input-group-lg>.form-control,.factory-bootstrap-441 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-441 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-441 .input-group-sm>.form-control,.factory-bootstrap-441 .input-group-sm>.input-group-addon,.factory-bootstrap-441 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-441 select.input-group-sm>.form-control,.factory-bootstrap-441 select.input-group-sm>.input-group-addon,.factory-bootstrap-441 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-441 textarea.input-group-sm>.form-control,.factory-bootstrap-441 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-441 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-441 .input-group .form-control,.factory-bootstrap-441 .input-group-addon,.factory-bootstrap-441 .input-group-btn{display:table-cell}.factory-bootstrap-441 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-441 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-441 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-441 .input-group-addon,.factory-bootstrap-441 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-441 .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-441 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-441 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-441 .input-group-addon input[type=checkbox],.factory-bootstrap-441 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-441 .input-group .form-control:first-child,.factory-bootstrap-441 .input-group-addon:first-child,.factory-bootstrap-441 .input-group-btn:first-child>.btn,.factory-bootstrap-441 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-441 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-441 .input-group-addon:first-child{border-right:0}.factory-bootstrap-441 .input-group .form-control:last-child,.factory-bootstrap-441 .input-group-addon:last-child,.factory-bootstrap-441 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-441 .input-group-btn:last-child>.btn,.factory-bootstrap-441 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .input-group-addon:last-child{border-left:0}.factory-bootstrap-441 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-441 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-441 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-441 .input-group-btn>.btn{position:relative}.factory-bootstrap-441 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-441 .input-group-btn>.btn:active,.factory-bootstrap-441 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-441 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-441 .nav:after,.factory-bootstrap-441 .nav:before{display:table;content:" "}.factory-bootstrap-441 .nav:after{clear:both}.factory-bootstrap-441 .nav>li{position:relative;display:block}.factory-bootstrap-441 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-441 .nav>li>a:focus,.factory-bootstrap-441 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-441 .nav>li.disabled>a{color:#999}.factory-bootstrap-441 .nav>li.disabled>a:focus,.factory-bootstrap-441 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-441 .nav .open>a,.factory-bootstrap-441 .nav .open>a:focus,.factory-bootstrap-441 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-441 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-441 .nav>li>a>img{max-width:none}.factory-bootstrap-441 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-441 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-441 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-441 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-441 .nav-tabs>li.active>a,.factory-bootstrap-441 .nav-tabs>li.active>a:focus,.factory-bootstrap-441 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-441 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-441 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-441 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-441 .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-441 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-441 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-441 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-441 .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-441 .nav-pills>li{float:left}.factory-bootstrap-441 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-441 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-441 .nav-pills>li.active>a,.factory-bootstrap-441 .nav-pills>li.active>a:focus,.factory-bootstrap-441 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-441 .nav-stacked>li{float:none}.factory-bootstrap-441 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-441 .nav-justified{width:100%}.factory-bootstrap-441 .nav-justified>li{float:none}.factory-bootstrap-441 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-441 .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-441 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-441 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-441 .nav-tabs-justified>.active>a,.factory-bootstrap-441 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-441 .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-441 .tab-content>.tab-pane{display:none}.factory-bootstrap-441 .tab-content>.active{display:block}.factory-bootstrap-441 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-441 .navbar:after,.factory-bootstrap-441 .navbar:before{display:table;content:" "}.factory-bootstrap-441 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-441 .navbar-header:after,.factory-bootstrap-441 .navbar-header:before{display:table;content:" "}.factory-bootstrap-441 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-441 .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-441 .navbar-collapse:after,.factory-bootstrap-441 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-441 .navbar-collapse:after{clear:both}.factory-bootstrap-441 .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-441 .container>.navbar-collapse,.factory-bootstrap-441 .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-441 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-441 .navbar-fixed-bottom,.factory-bootstrap-441 .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-441 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-441 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-441 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-441 .navbar-brand:focus,.factory-bootstrap-441 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-441 .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-441 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-441 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-441 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-441 .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-441 .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-441 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-441 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-441 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-441 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-441 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-441 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-441 .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-441 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-441 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-441 .navbar-default .navbar-brand:focus,.factory-bootstrap-441 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-441 .navbar-default .navbar-nav>li>a,.factory-bootstrap-441 .navbar-default .navbar-text{color:#777}.factory-bootstrap-441 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-441 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-441 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-441 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-441 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-441 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-441 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-441 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-441 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-441 .navbar-default .navbar-toggle:focus,.factory-bootstrap-441 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-441 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-441 .navbar-default .navbar-collapse,.factory-bootstrap-441 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-441 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-441 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-441 .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-441 .navbar-default .navbar-link{color:#777}.factory-bootstrap-441 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-441 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-441 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-441 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-441 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-441 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-441 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-441 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-441 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-441 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-441 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-441 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-441 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-441 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-441 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-441 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-441 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-441 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-441 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-441 .navbar-inverse .navbar-collapse,.factory-bootstrap-441 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-441 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-441 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-441 .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-441 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-441 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-441 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-441 .breadcrumb>li{display:inline-block}.factory-bootstrap-441 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-441 .breadcrumb>.active{color:#999}.factory-bootstrap-441 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-441 .pagination>li{display:inline}.factory-bootstrap-441 .pagination>li>a,.factory-bootstrap-441 .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-441 .pagination>li:first-child>a,.factory-bootstrap-441 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-441 .pagination>li:last-child>a,.factory-bootstrap-441 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-441 .pagination>li>a:focus,.factory-bootstrap-441 .pagination>li>a:hover,.factory-bootstrap-441 .pagination>li>span:focus,.factory-bootstrap-441 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-441 .pagination>.disabled>a,.factory-bootstrap-441 .pagination>.disabled>a:focus,.factory-bootstrap-441 .pagination>.disabled>a:hover,.factory-bootstrap-441 .pagination>.disabled>span,.factory-bootstrap-441 .pagination>.disabled>span:focus,.factory-bootstrap-441 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-441 .pagination-lg>li>a,.factory-bootstrap-441 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-441 .pagination-lg>li:first-child>a,.factory-bootstrap-441 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-441 .pagination-lg>li:last-child>a,.factory-bootstrap-441 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-441 .pagination-sm>li>a,.factory-bootstrap-441 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-441 .pagination-sm>li:first-child>a,.factory-bootstrap-441 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-441 .pagination-sm>li:last-child>a,.factory-bootstrap-441 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-441 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-441 .pager:after,.factory-bootstrap-441 .pager:before{display:table;content:" "}.factory-bootstrap-441 .pager:after{clear:both}.factory-bootstrap-441 .pager li{display:inline}.factory-bootstrap-441 .pager li>a,.factory-bootstrap-441 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-441 .pager li>a:focus,.factory-bootstrap-441 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-441 .pager .next>a,.factory-bootstrap-441 .pager .next>span{float:right}.factory-bootstrap-441 .pager .previous>a,.factory-bootstrap-441 .pager .previous>span{float:left}.factory-bootstrap-441 .pager .disabled>a,.factory-bootstrap-441 .pager .disabled>a:focus,.factory-bootstrap-441 .pager .disabled>a:hover,.factory-bootstrap-441 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-441 .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-441 .label[href]:focus,.factory-bootstrap-441 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-441 .label:empty{display:none}.factory-bootstrap-441 .btn .label{position:relative;top:-1px}.factory-bootstrap-441 .label-default{background-color:#999}.factory-bootstrap-441 .label-default[href]:focus,.factory-bootstrap-441 .label-default[href]:hover{background-color:gray}.factory-bootstrap-441 .label-primary{background-color:#428bca}.factory-bootstrap-441 .label-primary[href]:focus,.factory-bootstrap-441 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-441 .label-success{background-color:#5cb85c}.factory-bootstrap-441 .label-success[href]:focus,.factory-bootstrap-441 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-441 .label-info{background-color:#5bc0de}.factory-bootstrap-441 .label-info[href]:focus,.factory-bootstrap-441 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-441 .label-warning{background-color:#f0ad4e}.factory-bootstrap-441 .label-warning[href]:focus,.factory-bootstrap-441 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-441 .label-danger{background-color:#d9534f}.factory-bootstrap-441 .label-danger[href]:focus,.factory-bootstrap-441 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-441 .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-441 .badge:empty{display:none}.factory-bootstrap-441 .btn .badge{position:relative;top:-1px}.factory-bootstrap-441 a.badge:focus,.factory-bootstrap-441 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-441 .nav-pills>.active>a>.badge,.factory-bootstrap-441 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-441 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-441 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-441 .jumbotron .h1,.factory-bootstrap-441 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-441 .jumbotron p{line-height:1.4}.factory-bootstrap-441 .container .jumbotron{border-radius:6px}.factory-bootstrap-441 .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-441 .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-441 .thumbnail a>img,.factory-bootstrap-441 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-441 a.thumbnail.active,.factory-bootstrap-441 a.thumbnail:focus,.factory-bootstrap-441 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-441 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-441 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-441 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-441 .alert .alert-link{font-weight:700}.factory-bootstrap-441 .alert>p,.factory-bootstrap-441 .alert>ul{margin-bottom:0}.factory-bootstrap-441 .alert>p+p{margin-top:5px}.factory-bootstrap-441 .alert-dismissable{padding-right:35px}.factory-bootstrap-441 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-441 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-441 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-441 .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-441 .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-441 .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-441 .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-441 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-441 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-441 .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-441 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-441 .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-441 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-441 .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-441 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-441 .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-441 .media,.factory-bootstrap-441 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-441 .media,.factory-bootstrap-441 .media .media{margin-top:15px}.factory-bootstrap-441 .media:first-child{margin-top:0}.factory-bootstrap-441 .media-object{display:block}.factory-bootstrap-441 .media-heading{margin:0 0 5px}.factory-bootstrap-441 .media>.pull-left{margin-right:10px}.factory-bootstrap-441 .media>.pull-right{margin-left:10px}.factory-bootstrap-441 .media-list{padding-left:0;list-style:none}.factory-bootstrap-441 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-441 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-441 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-441 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-441 .list-group-item>.badge{float:right}.factory-bootstrap-441 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-441 a.list-group-item{color:#555}.factory-bootstrap-441 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-441 a.list-group-item:focus,.factory-bootstrap-441 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-441 a.list-group-item.active,.factory-bootstrap-441 a.list-group-item.active:focus,.factory-bootstrap-441 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-441 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-441 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-441 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-441 a.list-group-item.active .list-group-item-text,.factory-bootstrap-441 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-441 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-441 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-441 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-441 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-441 .panel-body{padding:15px}.factory-bootstrap-441 .panel-body:after,.factory-bootstrap-441 .panel-body:before{display:table;content:" "}.factory-bootstrap-441 .panel-body:after{clear:both}.factory-bootstrap-441 .panel>.list-group{margin-bottom:0}.factory-bootstrap-441 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-441 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-441 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-441 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-441 .panel>.table,.factory-bootstrap-441 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-441 .panel>.panel-body+.table,.factory-bootstrap-441 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-441 .panel>.table>tbody:first-child td,.factory-bootstrap-441 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-441 .panel>.table-bordered,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-441 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-441 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-441 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-441 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-441 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-441 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-441 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-441 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-441 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-441 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-441 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-441 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-441 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-441 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-441 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-441 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-441 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-441 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-441 .panel-title>a{color:inherit}.factory-bootstrap-441 .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-441 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-441 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-441 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-441 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-441 .panel-group .panel-footer{border-top:0}.factory-bootstrap-441 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-441 .panel-default{border-color:#ddd}.factory-bootstrap-441 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-441 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-441 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-441 .panel-primary{border-color:#428bca}.factory-bootstrap-441 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-441 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-441 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-441 .panel-success{border-color:#d6e9c6}.factory-bootstrap-441 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-441 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-441 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-441 .panel-warning{border-color:#faebcc}.factory-bootstrap-441 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-441 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-441 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-441 .panel-danger{border-color:#ebccd1}.factory-bootstrap-441 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-441 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-441 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-441 .panel-info{border-color:#bce8f1}.factory-bootstrap-441 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-441 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-441 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-441 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-441 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-441 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-441 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-441 .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-441 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-441 .close:focus,.factory-bootstrap-441 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-441 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-441 .modal-open{overflow:hidden}.factory-bootstrap-441 .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-441 .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-441 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-441 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-441 .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-441 .modal-backdrop,.factory-bootstrap-441-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-441 .modal-backdrop.fade,.factory-bootstrap-441-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-441 .modal-backdrop.in,.factory-bootstrap-441-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-441 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-441 .modal-header .close{margin-top:-2px}.factory-bootstrap-441 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-441 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-441 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-441 .modal-footer:after,.factory-bootstrap-441 .modal-footer:before{display:table;content:" "}.factory-bootstrap-441 .modal-footer:after{clear:both}.factory-bootstrap-441 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-441 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-441 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-441 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-441 .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-441 .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-441 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-441 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-441 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-441 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-441 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-441 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-441 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-441 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-441 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-441 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-441 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-441 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-441 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-441 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-441 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-441 .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-441 .popover.top{margin-top:-10px}.factory-bootstrap-441 .popover.right{margin-left:10px}.factory-bootstrap-441 .popover.bottom{margin-top:10px}.factory-bootstrap-441 .popover.left{margin-left:-10px}.factory-bootstrap-441 .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-441 .popover-content{padding:9px 14px}.factory-bootstrap-441 .popover .arrow,.factory-bootstrap-441 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-441 .popover .arrow{border-width:11px}.factory-bootstrap-441 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-441 .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-441 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-441 .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-441 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-441 .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-441 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-441 .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-441 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-441 .carousel{position:relative}.factory-bootstrap-441 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-441 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-441 .carousel-inner>.item>a>img,.factory-bootstrap-441 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-441 .carousel-inner>.active,.factory-bootstrap-441 .carousel-inner>.next,.factory-bootstrap-441 .carousel-inner>.prev{display:block}.factory-bootstrap-441 .carousel-inner>.active{left:0}.factory-bootstrap-441 .carousel-inner>.next,.factory-bootstrap-441 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-441 .carousel-inner>.next{left:100%}.factory-bootstrap-441 .carousel-inner>.prev{left:-100%}.factory-bootstrap-441 .carousel-inner>.next.left,.factory-bootstrap-441 .carousel-inner>.prev.right{left:0}.factory-bootstrap-441 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-441 .carousel-inner>.active.right{left:100%}.factory-bootstrap-441 .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-441 .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-441 .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-441 .carousel-control:focus,.factory-bootstrap-441 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-441 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-441 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-441 .carousel-control .icon-next,.factory-bootstrap-441 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-441 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-441 .carousel-control .icon-prev{left:50%}.factory-bootstrap-441 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-441 .carousel-control .icon-next{right:50%}.factory-bootstrap-441 .carousel-control .icon-next,.factory-bootstrap-441 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-441 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-441 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-441 .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-441 .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-441 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-441 .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-441 .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-441 .clearfix:after,.factory-bootstrap-441 .clearfix:before{display:table;content:" "}.factory-bootstrap-441 .clearfix:after{clear:both}.factory-bootstrap-441 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-441 .pull-right{float:right!important}.factory-bootstrap-441 .pull-left{float:left!important}.factory-bootstrap-441 .hide{display:none!important}.factory-bootstrap-441 .show{display:block!important}.factory-bootstrap-441 .invisible{visibility:hidden}.factory-bootstrap-441 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-441 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-441 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-441 .visible-lg,.factory-bootstrap-441 .visible-md,.factory-bootstrap-441 .visible-sm,.factory-bootstrap-441 .visible-xs,.factory-bootstrap-441 td.visible-lg,.factory-bootstrap-441 td.visible-md,.factory-bootstrap-441 td.visible-sm,.factory-bootstrap-441 td.visible-xs,.factory-bootstrap-441 th.visible-lg,.factory-bootstrap-441 th.visible-md,.factory-bootstrap-441 th.visible-sm,.factory-bootstrap-441 th.visible-xs,.factory-bootstrap-441 tr.visible-lg,.factory-bootstrap-441 tr.visible-md,.factory-bootstrap-441 tr.visible-sm,.factory-bootstrap-441 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-441 .hidden-xs{display:block!important}.factory-bootstrap-441 table.hidden-xs{display:table}.factory-bootstrap-441 tr.hidden-xs{display:table-row!important}.factory-bootstrap-441 td.hidden-xs,.factory-bootstrap-441 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-441 .hidden-sm{display:block!important}.factory-bootstrap-441 table.hidden-sm{display:table}.factory-bootstrap-441 tr.hidden-sm{display:table-row!important}.factory-bootstrap-441 td.hidden-sm,.factory-bootstrap-441 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-441 .hidden-md{display:block!important}.factory-bootstrap-441 table.hidden-md{display:table}.factory-bootstrap-441 tr.hidden-md{display:table-row!important}.factory-bootstrap-441 td.hidden-md,.factory-bootstrap-441 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-441 .hidden-lg{display:block!important}.factory-bootstrap-441 table.hidden-lg{display:table}.factory-bootstrap-441 tr.hidden-lg{display:table-row!important}.factory-bootstrap-441 td.hidden-lg,.factory-bootstrap-441 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-441 .hidden-lg.hidden-xs,.factory-bootstrap-441 td.hidden-lg.hidden-xs,.factory-bootstrap-441 th.hidden-lg.hidden-xs,.factory-bootstrap-441 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-441 .hidden-lg.hidden-sm,.factory-bootstrap-441 td.hidden-lg.hidden-sm,.factory-bootstrap-441 th.hidden-lg.hidden-sm,.factory-bootstrap-441 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-441 .hidden-lg.hidden-md,.factory-bootstrap-441 td.hidden-lg.hidden-md,.factory-bootstrap-441 th.hidden-lg.hidden-md,.factory-bootstrap-441 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-441 .hidden-lg,.factory-bootstrap-441 td.hidden-lg,.factory-bootstrap-441 th.hidden-lg,.factory-bootstrap-441 tr.hidden-lg{display:none!important}}.factory-bootstrap-441 .visible-print,.factory-bootstrap-441 td.visible-print,.factory-bootstrap-441 th.visible-print,.factory-bootstrap-441 tr.visible-print{display:none!important}@media print{.factory-bootstrap-441 .visible-print{display:block!important}.factory-bootstrap-441 table.visible-print{display:table}.factory-bootstrap-441 tr.visible-print{display:table-row!important}.factory-bootstrap-441 td.visible-print,.factory-bootstrap-441 th.visible-print{display:table-cell!important}.factory-bootstrap-441 .hidden-print,.factory-bootstrap-441 td.hidden-print,.factory-bootstrap-441 th.hidden-print,.factory-bootstrap-441 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-441 .btn-danger,.factory-bootstrap-441 .btn-default,.factory-bootstrap-441 .btn-info,.factory-bootstrap-441 .btn-primary,.factory-bootstrap-441 .btn-success,.factory-bootstrap-441 .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-441 .btn-danger.active,.factory-bootstrap-441 .btn-danger:active,.factory-bootstrap-441 .btn-default.active,.factory-bootstrap-441 .btn-default:active,.factory-bootstrap-441 .btn-info.active,.factory-bootstrap-441 .btn-info:active,.factory-bootstrap-441 .btn-primary.active,.factory-bootstrap-441 .btn-primary:active,.factory-bootstrap-441 .btn-success.active,.factory-bootstrap-441 .btn-success:active,.factory-bootstrap-441 .btn-warning.active,.factory-bootstrap-441 .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-441 .btn.active,.factory-bootstrap-441 .btn:active{background-image:none}.factory-bootstrap-441 .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-441 .btn-default.active,.factory-bootstrap-441 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-441 .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-441 .btn-gold:focus,.factory-bootstrap-441 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-441 .btn-gold.active,.factory-bootstrap-441 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .btn-primary.active,.factory-bootstrap-441 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-441 .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-441 .btn-success:focus,.factory-bootstrap-441 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-441 .btn-success.active,.factory-bootstrap-441 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-441 .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-441 .btn-warning:focus,.factory-bootstrap-441 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-441 .btn-warning.active,.factory-bootstrap-441 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-441 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-441 .btn-danger.active,.factory-bootstrap-441 .btn-danger:active,.factory-bootstrap-441 .btn-danger:focus,.factory-bootstrap-441 .btn-danger:hover,.factory-bootstrap-441 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-441 .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-441 .btn-info:focus,.factory-bootstrap-441 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-441 .btn-info.active,.factory-bootstrap-441 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-441 .img-thumbnail,.factory-bootstrap-441 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-441 .dropdown-menu>li>a:focus,.factory-bootstrap-441 .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-441 .dropdown-menu>.active>a,.factory-bootstrap-441 .dropdown-menu>.active>a:focus,.factory-bootstrap-441 .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-441 .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-441 .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-441 .navbar-brand,.factory-bootstrap-441 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-441 .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-441 .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-441 .navbar-inverse .navbar-brand,.factory-bootstrap-441 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-441 .navbar-fixed-bottom,.factory-bootstrap-441 .navbar-fixed-top,.factory-bootstrap-441 .navbar-static-top{border-radius:0}.factory-bootstrap-441 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-441 .alert .actions{padding-top:10px}.factory-bootstrap-441 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-441 .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-441 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-441 .alert-normal,.factory-bootstrap-441 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-441 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-441 .alert-danger a:not(.btn),.factory-bootstrap-441 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .list-group-item.active,.factory-bootstrap-441 .list-group-item.active:focus,.factory-bootstrap-441 .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-441 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-441 .factory-hidden{display:none}.factory-bootstrap-441 .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.datepicker.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-441 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-441 .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-441 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-441 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-441 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-441 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-441 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-441 .factory-form-group legend+.control-group{margin-top:0}
libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-436 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .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-441 .btn-primary:focus,.factory-bootstrap-441 .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-441 .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-441 .btn-primary:disabled,.factory-bootstrap-441 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-441 .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-441 .pagination>.active>a,.factory-bootstrap-441 .pagination>.active>a:focus,.factory-bootstrap-441 .pagination>.active>a:hover,.factory-bootstrap-441 .pagination>.active>span,.factory-bootstrap-441 .pagination>.active>span:focus,.factory-bootstrap-441 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
libs/factory/bootstrap/assets/css-min/control.checkbox.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ #side-sortables .factory-bootstrap-441 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-441 .factory-checkbox-disabled button,.factory-bootstrap-441 .factory-checkbox-disabled input{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-441 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-441 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-441 .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-441 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-441 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-441 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-441 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .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-441 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-441 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-441 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-441 .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
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-441 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-441 .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-441 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-441 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-441 .factory-mtextbox-add-item{display:block;margin-top:10px}
libs/factory/bootstrap/assets/css-min/holder.more-link.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,4 +8,4 @@
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}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .factory-bootstrap-441 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-441 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-441 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-441 .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-441 .factory-tab .factory-more-link-hide:hover{color:#999}
libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -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.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);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
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.factoryBootstrap441_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.factoryBootstrap441_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/bootstrap.tooltip.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
libs/factory/bootstrap/assets/js-min/control.checkbox.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -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.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);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
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.factoryBootstrap441_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.factoryBootstrap441_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-441 .factory-checkbox.factory-buttons-way").factoryBootstrap441_checkboxControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.dropdown.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -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.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);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
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.factoryBootstrap441_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.factoryBootstrap441_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-441 .factory-dropdown").factoryBootstrap441_dropdownControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.list.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -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.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);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
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.factoryBootstrap441_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.factoryBootstrap441_listControl.Constructor=b,a(function(){a(".factory-bootstrap-441 .factory-list").factoryBootstrap441_listControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2018-02-26
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -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.factoryBootstrap436_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-436 .factory-multiple-textbox-group").factoryBootstrap436_MultipleTextboxControl()})}(jQuery);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2020-11-08
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
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.factoryBootstrap441_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-441 .factory-multiple-textbox-group").factoryBootstrap441_MultipleTextboxControl()})}(jQuery);
libs/factory/bootstrap/boot.php CHANGED
@@ -19,27 +19,27 @@ if( !is_admin() ) {
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
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_BOOTSTRAP_441_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_BOOTSTRAP_441_VERSION', '4.4.1');
27
+ define('FACTORY_BOOTSTRAP_441_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
+ define('FACTORY_BOOTSTRAP_441_DIR', dirname(__FILE__));
34
+ define('FACTORY_BOOTSTRAP_441_URL', plugins_url(null, __FILE__));
35
 
36
+ require_once(FACTORY_BOOTSTRAP_441_DIR . '/includes/functions.php');
37
 
38
  /**
39
+ * @param Wbcr_Factory441_Plugin $plugin
40
  */
41
+ add_action('wbcr_factory_bootstrap_441_plugin_created', function ($plugin) {
42
+ $manager = new Wbcr_FactoryBootstrap441_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_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,7 +51,7 @@ class Wbcr_FactoryBootstrap436_Manager {
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,8 +111,8 @@ class Wbcr_FactoryBootstrap436_Manager {
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,8 +156,8 @@ class Wbcr_FactoryBootstrap436_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_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,7 +184,7 @@ class Wbcr_FactoryBootstrap436_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_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,9 +192,9 @@ class Wbcr_FactoryBootstrap436_Manager {
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
  }
20
  *
21
  * @since 3.2.0
22
  */
23
+ class Wbcr_FactoryBootstrap441_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
+ * @var Wbcr_Factory441_Plugin
30
  */
31
  public $plugin;
32
 
51
  *
52
  * @since 1.0.0
53
  */
54
+ public function __construct( Wbcr_Factory441_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_441_bootstrap_enqueue_scripts', $hook );
115
+ do_action( 'wbcr_factory_441_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_441_DIR . '/assets/cache/';
160
+ $cache_dir_url = FACTORY_BOOTSTRAP_441_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_441_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_441_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_441_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion() );
198
  }
199
  $is_first = false;
200
  }
libs/factory/bootstrap/package-lock.json ADDED
@@ -0,0 +1,1810 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "bootstrap-generator",
3
+ "version": "1.0.1",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "abbrev": {
8
+ "version": "1.1.1",
9
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
10
+ "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg="
11
+ },
12
+ "amdefine": {
13
+ "version": "1.0.1",
14
+ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
15
+ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
16
+ "dev": true
17
+ },
18
+ "argparse": {
19
+ "version": "0.1.16",
20
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz",
21
+ "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=",
22
+ "dev": true,
23
+ "requires": {
24
+ "underscore": "~1.7.0",
25
+ "underscore.string": "~2.4.0"
26
+ },
27
+ "dependencies": {
28
+ "underscore.string": {
29
+ "version": "2.4.0",
30
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz",
31
+ "integrity": "sha1-jN2PusTi0uoefi6Al8QvRCKA+Fs=",
32
+ "dev": true
33
+ }
34
+ }
35
+ },
36
+ "arr-diff": {
37
+ "version": "4.0.0",
38
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
39
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA="
40
+ },
41
+ "arr-flatten": {
42
+ "version": "1.1.0",
43
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
44
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg=="
45
+ },
46
+ "arr-union": {
47
+ "version": "3.1.0",
48
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
49
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ="
50
+ },
51
+ "array-each": {
52
+ "version": "1.0.1",
53
+ "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
54
+ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8="
55
+ },
56
+ "array-slice": {
57
+ "version": "1.1.0",
58
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
59
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w=="
60
+ },
61
+ "array-unique": {
62
+ "version": "0.3.2",
63
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
64
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg="
65
+ },
66
+ "assign-symbols": {
67
+ "version": "1.0.0",
68
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
69
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c="
70
+ },
71
+ "async": {
72
+ "version": "0.1.22",
73
+ "resolved": "https://registry.npmjs.org/async/-/async-0.1.22.tgz",
74
+ "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
75
+ "dev": true
76
+ },
77
+ "atob": {
78
+ "version": "2.1.2",
79
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
80
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="
81
+ },
82
+ "base": {
83
+ "version": "0.11.2",
84
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
85
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
86
+ "requires": {
87
+ "cache-base": "^1.0.1",
88
+ "class-utils": "^0.3.5",
89
+ "component-emitter": "^1.2.1",
90
+ "define-property": "^1.0.0",
91
+ "isobject": "^3.0.1",
92
+ "mixin-deep": "^1.2.0",
93
+ "pascalcase": "^0.1.1"
94
+ },
95
+ "dependencies": {
96
+ "define-property": {
97
+ "version": "1.0.0",
98
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
99
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
100
+ "requires": {
101
+ "is-descriptor": "^1.0.0"
102
+ }
103
+ },
104
+ "is-accessor-descriptor": {
105
+ "version": "1.0.0",
106
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
107
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
108
+ "requires": {
109
+ "kind-of": "^6.0.0"
110
+ }
111
+ },
112
+ "is-data-descriptor": {
113
+ "version": "1.0.0",
114
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
115
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
116
+ "requires": {
117
+ "kind-of": "^6.0.0"
118
+ }
119
+ },
120
+ "is-descriptor": {
121
+ "version": "1.0.2",
122
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
123
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
124
+ "requires": {
125
+ "is-accessor-descriptor": "^1.0.0",
126
+ "is-data-descriptor": "^1.0.0",
127
+ "kind-of": "^6.0.2"
128
+ }
129
+ }
130
+ }
131
+ },
132
+ "braces": {
133
+ "version": "2.3.2",
134
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
135
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
136
+ "requires": {
137
+ "arr-flatten": "^1.1.0",
138
+ "array-unique": "^0.3.2",
139
+ "extend-shallow": "^2.0.1",
140
+ "fill-range": "^4.0.0",
141
+ "isobject": "^3.0.1",
142
+ "repeat-element": "^1.1.2",
143
+ "snapdragon": "^0.8.1",
144
+ "snapdragon-node": "^2.0.1",
145
+ "split-string": "^3.0.2",
146
+ "to-regex": "^3.0.1"
147
+ },
148
+ "dependencies": {
149
+ "extend-shallow": {
150
+ "version": "2.0.1",
151
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
152
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
153
+ "requires": {
154
+ "is-extendable": "^0.1.0"
155
+ }
156
+ }
157
+ }
158
+ },
159
+ "cache-base": {
160
+ "version": "1.0.1",
161
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
162
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
163
+ "requires": {
164
+ "collection-visit": "^1.0.0",
165
+ "component-emitter": "^1.2.1",
166
+ "get-value": "^2.0.6",
167
+ "has-value": "^1.0.0",
168
+ "isobject": "^3.0.1",
169
+ "set-value": "^2.0.0",
170
+ "to-object-path": "^0.3.0",
171
+ "union-value": "^1.0.0",
172
+ "unset-value": "^1.0.0"
173
+ }
174
+ },
175
+ "camelcase": {
176
+ "version": "1.2.1",
177
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
178
+ "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
179
+ "dev": true
180
+ },
181
+ "class-utils": {
182
+ "version": "0.3.6",
183
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
184
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
185
+ "requires": {
186
+ "arr-union": "^3.1.0",
187
+ "define-property": "^0.2.5",
188
+ "isobject": "^3.0.0",
189
+ "static-extend": "^0.1.1"
190
+ },
191
+ "dependencies": {
192
+ "define-property": {
193
+ "version": "0.2.5",
194
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
195
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
196
+ "requires": {
197
+ "is-descriptor": "^0.1.0"
198
+ }
199
+ }
200
+ }
201
+ },
202
+ "clean-css": {
203
+ "version": "2.0.8",
204
+ "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz",
205
+ "integrity": "sha1-6TfN/cxXgaAIF67EB56Fs+wVeiA=",
206
+ "dev": true,
207
+ "requires": {
208
+ "commander": "2.0.x"
209
+ }
210
+ },
211
+ "cli": {
212
+ "version": "0.4.5",
213
+ "resolved": "https://registry.npmjs.org/cli/-/cli-0.4.5.tgz",
214
+ "integrity": "sha1-ePlIXNFhtWbppsctcXDEJw6B22E=",
215
+ "dev": true,
216
+ "requires": {
217
+ "glob": ">= 3.1.4"
218
+ }
219
+ },
220
+ "coffee-script": {
221
+ "version": "1.3.3",
222
+ "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz",
223
+ "integrity": "sha1-FQ1rTLUiiUNp7+1qIQHCC8f0pPQ=",
224
+ "dev": true
225
+ },
226
+ "collection-visit": {
227
+ "version": "1.0.0",
228
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
229
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
230
+ "requires": {
231
+ "map-visit": "^1.0.0",
232
+ "object-visit": "^1.0.0"
233
+ }
234
+ },
235
+ "colors": {
236
+ "version": "0.6.2",
237
+ "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
238
+ "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
239
+ "dev": true
240
+ },
241
+ "commander": {
242
+ "version": "2.0.0",
243
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz",
244
+ "integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg=",
245
+ "dev": true
246
+ },
247
+ "component-emitter": {
248
+ "version": "1.3.0",
249
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
250
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg=="
251
+ },
252
+ "console-browserify": {
253
+ "version": "0.1.6",
254
+ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-0.1.6.tgz",
255
+ "integrity": "sha1-0SijwLuINQ61YmxufHGm8P1ImDw=",
256
+ "dev": true
257
+ },
258
+ "copy-descriptor": {
259
+ "version": "0.1.1",
260
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
261
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40="
262
+ },
263
+ "dateformat": {
264
+ "version": "1.0.2-1.2.3",
265
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz",
266
+ "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
267
+ "dev": true
268
+ },
269
+ "debug": {
270
+ "version": "2.6.9",
271
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
272
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
273
+ "requires": {
274
+ "ms": "2.0.0"
275
+ }
276
+ },
277
+ "decamelize": {
278
+ "version": "1.2.0",
279
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
280
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
281
+ "dev": true
282
+ },
283
+ "decode-uri-component": {
284
+ "version": "0.2.0",
285
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
286
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU="
287
+ },
288
+ "define-property": {
289
+ "version": "2.0.2",
290
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
291
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
292
+ "requires": {
293
+ "is-descriptor": "^1.0.2",
294
+ "isobject": "^3.0.1"
295
+ },
296
+ "dependencies": {
297
+ "is-accessor-descriptor": {
298
+ "version": "1.0.0",
299
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
300
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
301
+ "requires": {
302
+ "kind-of": "^6.0.0"
303
+ }
304
+ },
305
+ "is-data-descriptor": {
306
+ "version": "1.0.0",
307
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
308
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
309
+ "requires": {
310
+ "kind-of": "^6.0.0"
311
+ }
312
+ },
313
+ "is-descriptor": {
314
+ "version": "1.0.2",
315
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
316
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
317
+ "requires": {
318
+ "is-accessor-descriptor": "^1.0.0",
319
+ "is-data-descriptor": "^1.0.0",
320
+ "kind-of": "^6.0.2"
321
+ }
322
+ }
323
+ }
324
+ },
325
+ "detect-file": {
326
+ "version": "1.0.0",
327
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
328
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc="
329
+ },
330
+ "esprima": {
331
+ "version": "1.0.4",
332
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
333
+ "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
334
+ "dev": true
335
+ },
336
+ "eventemitter2": {
337
+ "version": "0.4.14",
338
+ "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
339
+ "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
340
+ "dev": true
341
+ },
342
+ "exit": {
343
+ "version": "0.1.2",
344
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
345
+ "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
346
+ "dev": true
347
+ },
348
+ "expand-brackets": {
349
+ "version": "2.1.4",
350
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
351
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
352
+ "requires": {
353
+ "debug": "^2.3.3",
354
+ "define-property": "^0.2.5",
355
+ "extend-shallow": "^2.0.1",
356
+ "posix-character-classes": "^0.1.0",
357
+ "regex-not": "^1.0.0",
358
+ "snapdragon": "^0.8.1",
359
+ "to-regex": "^3.0.1"
360
+ },
361
+ "dependencies": {
362
+ "define-property": {
363
+ "version": "0.2.5",
364
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
365
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
366
+ "requires": {
367
+ "is-descriptor": "^0.1.0"
368
+ }
369
+ },
370
+ "extend-shallow": {
371
+ "version": "2.0.1",
372
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
373
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
374
+ "requires": {
375
+ "is-extendable": "^0.1.0"
376
+ }
377
+ }
378
+ }
379
+ },
380
+ "expand-tilde": {
381
+ "version": "2.0.2",
382
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
383
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
384
+ "requires": {
385
+ "homedir-polyfill": "^1.0.1"
386
+ }
387
+ },
388
+ "extend": {
389
+ "version": "3.0.2",
390
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
391
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
392
+ },
393
+ "extend-shallow": {
394
+ "version": "3.0.2",
395
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
396
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
397
+ "requires": {
398
+ "assign-symbols": "^1.0.0",
399
+ "is-extendable": "^1.0.1"
400
+ },
401
+ "dependencies": {
402
+ "is-extendable": {
403
+ "version": "1.0.1",
404
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
405
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
406
+ "requires": {
407
+ "is-plain-object": "^2.0.4"
408
+ }
409
+ }
410
+ }
411
+ },
412
+ "extglob": {
413
+ "version": "2.0.4",
414
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
415
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
416
+ "requires": {
417
+ "array-unique": "^0.3.2",
418
+ "define-property": "^1.0.0",
419
+ "expand-brackets": "^2.1.4",
420
+ "extend-shallow": "^2.0.1",
421
+ "fragment-cache": "^0.2.1",
422
+ "regex-not": "^1.0.0",
423
+ "snapdragon": "^0.8.1",
424
+ "to-regex": "^3.0.1"
425
+ },
426
+ "dependencies": {
427
+ "define-property": {
428
+ "version": "1.0.0",
429
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
430
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
431
+ "requires": {
432
+ "is-descriptor": "^1.0.0"
433
+ }
434
+ },
435
+ "extend-shallow": {
436
+ "version": "2.0.1",
437
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
438
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
439
+ "requires": {
440
+ "is-extendable": "^0.1.0"
441
+ }
442
+ },
443
+ "is-accessor-descriptor": {
444
+ "version": "1.0.0",
445
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
446
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
447
+ "requires": {
448
+ "kind-of": "^6.0.0"
449
+ }
450
+ },
451
+ "is-data-descriptor": {
452
+ "version": "1.0.0",
453
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
454
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
455
+ "requires": {
456
+ "kind-of": "^6.0.0"
457
+ }
458
+ },
459
+ "is-descriptor": {
460
+ "version": "1.0.2",
461
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
462
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
463
+ "requires": {
464
+ "is-accessor-descriptor": "^1.0.0",
465
+ "is-data-descriptor": "^1.0.0",
466
+ "kind-of": "^6.0.2"
467
+ }
468
+ }
469
+ }
470
+ },
471
+ "fill-range": {
472
+ "version": "4.0.0",
473
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
474
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
475
+ "requires": {
476
+ "extend-shallow": "^2.0.1",
477
+ "is-number": "^3.0.0",
478
+ "repeat-string": "^1.6.1",
479
+ "to-regex-range": "^2.1.0"
480
+ },
481
+ "dependencies": {
482
+ "extend-shallow": {
483
+ "version": "2.0.1",
484
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
485
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
486
+ "requires": {
487
+ "is-extendable": "^0.1.0"
488
+ }
489
+ }
490
+ }
491
+ },
492
+ "findup-sync": {
493
+ "version": "0.1.3",
494
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz",
495
+ "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=",
496
+ "dev": true,
497
+ "requires": {
498
+ "glob": "~3.2.9",
499
+ "lodash": "~2.4.1"
500
+ },
501
+ "dependencies": {
502
+ "glob": {
503
+ "version": "3.2.11",
504
+ "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
505
+ "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
506
+ "dev": true,
507
+ "requires": {
508
+ "inherits": "2",
509
+ "minimatch": "0.3"
510
+ }
511
+ },
512
+ "lodash": {
513
+ "version": "2.4.2",
514
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
515
+ "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
516
+ "dev": true
517
+ },
518
+ "minimatch": {
519
+ "version": "0.3.0",
520
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz",
521
+ "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
522
+ "dev": true,
523
+ "requires": {
524
+ "lru-cache": "2",
525
+ "sigmund": "~1.0.0"
526
+ }
527
+ }
528
+ }
529
+ },
530
+ "fined": {
531
+ "version": "1.2.0",
532
+ "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz",
533
+ "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==",
534
+ "requires": {
535
+ "expand-tilde": "^2.0.2",
536
+ "is-plain-object": "^2.0.3",
537
+ "object.defaults": "^1.1.0",
538
+ "object.pick": "^1.2.0",
539
+ "parse-filepath": "^1.0.1"
540
+ }
541
+ },
542
+ "flagged-respawn": {
543
+ "version": "1.0.1",
544
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz",
545
+ "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q=="
546
+ },
547
+ "for-in": {
548
+ "version": "1.0.2",
549
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
550
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA="
551
+ },
552
+ "for-own": {
553
+ "version": "1.0.0",
554
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
555
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
556
+ "requires": {
557
+ "for-in": "^1.0.1"
558
+ }
559
+ },
560
+ "fragment-cache": {
561
+ "version": "0.2.1",
562
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
563
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
564
+ "requires": {
565
+ "map-cache": "^0.2.2"
566
+ }
567
+ },
568
+ "function-bind": {
569
+ "version": "1.1.1",
570
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
571
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
572
+ },
573
+ "get-value": {
574
+ "version": "2.0.6",
575
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
576
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg="
577
+ },
578
+ "getobject": {
579
+ "version": "0.1.0",
580
+ "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
581
+ "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
582
+ "dev": true
583
+ },
584
+ "glob": {
585
+ "version": "3.1.21",
586
+ "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
587
+ "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
588
+ "dev": true,
589
+ "requires": {
590
+ "graceful-fs": "~1.2.0",
591
+ "inherits": "1",
592
+ "minimatch": "~0.2.11"
593
+ },
594
+ "dependencies": {
595
+ "inherits": {
596
+ "version": "1.0.2",
597
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
598
+ "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
599
+ "dev": true
600
+ }
601
+ }
602
+ },
603
+ "global-modules": {
604
+ "version": "1.0.0",
605
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
606
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
607
+ "requires": {
608
+ "global-prefix": "^1.0.1",
609
+ "is-windows": "^1.0.1",
610
+ "resolve-dir": "^1.0.0"
611
+ }
612
+ },
613
+ "global-prefix": {
614
+ "version": "1.0.2",
615
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
616
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
617
+ "requires": {
618
+ "expand-tilde": "^2.0.2",
619
+ "homedir-polyfill": "^1.0.1",
620
+ "ini": "^1.3.4",
621
+ "is-windows": "^1.0.1",
622
+ "which": "^1.2.14"
623
+ },
624
+ "dependencies": {
625
+ "which": {
626
+ "version": "1.3.1",
627
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
628
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
629
+ "requires": {
630
+ "isexe": "^2.0.0"
631
+ }
632
+ }
633
+ }
634
+ },
635
+ "graceful-fs": {
636
+ "version": "1.2.3",
637
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
638
+ "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
639
+ "dev": true
640
+ },
641
+ "grunt": {
642
+ "version": "0.4.5",
643
+ "resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
644
+ "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=",
645
+ "dev": true,
646
+ "requires": {
647
+ "async": "~0.1.22",
648
+ "coffee-script": "~1.3.3",
649
+ "colors": "~0.6.2",
650
+ "dateformat": "1.0.2-1.2.3",
651
+ "eventemitter2": "~0.4.13",
652
+ "exit": "~0.1.1",
653
+ "findup-sync": "~0.1.2",
654
+ "getobject": "~0.1.0",
655
+ "glob": "~3.1.21",
656
+ "grunt-legacy-log": "~0.1.0",
657
+ "grunt-legacy-util": "~0.2.0",
658
+ "hooker": "~0.2.3",
659
+ "iconv-lite": "~0.2.11",
660
+ "js-yaml": "~2.0.5",
661
+ "lodash": "~0.9.2",
662
+ "minimatch": "~0.2.12",
663
+ "nopt": "~1.0.10",
664
+ "rimraf": "~2.2.8",
665
+ "underscore.string": "~2.2.1",
666
+ "which": "~1.0.5"
667
+ }
668
+ },
669
+ "grunt-cli": {
670
+ "version": "1.3.2",
671
+ "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz",
672
+ "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==",
673
+ "requires": {
674
+ "grunt-known-options": "~1.1.0",
675
+ "interpret": "~1.1.0",
676
+ "liftoff": "~2.5.0",
677
+ "nopt": "~4.0.1",
678
+ "v8flags": "~3.1.1"
679
+ },
680
+ "dependencies": {
681
+ "nopt": {
682
+ "version": "4.0.3",
683
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
684
+ "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
685
+ "requires": {
686
+ "abbrev": "1",
687
+ "osenv": "^0.1.4"
688
+ }
689
+ }
690
+ }
691
+ },
692
+ "grunt-contrib-clean": {
693
+ "version": "0.5.0",
694
+ "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-0.5.0.tgz",
695
+ "integrity": "sha1-9T397ghJsce0Dp67umn0jExgecU=",
696
+ "dev": true,
697
+ "requires": {
698
+ "rimraf": "~2.2.1"
699
+ }
700
+ },
701
+ "grunt-contrib-concat": {
702
+ "version": "0.3.0",
703
+ "resolved": "https://registry.npmjs.org/grunt-contrib-concat/-/grunt-contrib-concat-0.3.0.tgz",
704
+ "integrity": "sha1-SPoNQzbSm2U62CJaa9b4VrRIPjI=",
705
+ "dev": true
706
+ },
707
+ "grunt-contrib-copy": {
708
+ "version": "0.5.0",
709
+ "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-0.5.0.tgz",
710
+ "integrity": "sha1-QQB1rEWlhWuhkbHMclclRQ1KAhU=",
711
+ "dev": true
712
+ },
713
+ "grunt-contrib-cssmin": {
714
+ "version": "0.7.0",
715
+ "resolved": "https://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-0.7.0.tgz",
716
+ "integrity": "sha1-pXNenx0mMUnkn+A1KU5CnYxnC6s=",
717
+ "dev": true,
718
+ "requires": {
719
+ "clean-css": "~2.0.0",
720
+ "grunt-lib-contrib": "~0.6.0"
721
+ }
722
+ },
723
+ "grunt-contrib-jshint": {
724
+ "version": "0.6.5",
725
+ "resolved": "https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.6.5.tgz",
726
+ "integrity": "sha1-OvtGdnRTZMxKGe7nk0wOBgCLVm4=",
727
+ "dev": true,
728
+ "requires": {
729
+ "jshint": "~2.1.10"
730
+ }
731
+ },
732
+ "grunt-contrib-uglify": {
733
+ "version": "0.2.7",
734
+ "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.7.tgz",
735
+ "integrity": "sha1-5r2lHgxAoUWfbOrUI8Ze/XJaG/c=",
736
+ "dev": true,
737
+ "requires": {
738
+ "grunt-lib-contrib": "~0.6.1",
739
+ "uglify-js": "~2.4.0"
740
+ }
741
+ },
742
+ "grunt-known-options": {
743
+ "version": "1.1.1",
744
+ "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz",
745
+ "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ=="
746
+ },
747
+ "grunt-legacy-log": {
748
+ "version": "0.1.3",
749
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz",
750
+ "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=",
751
+ "dev": true,
752
+ "requires": {
753
+ "colors": "~0.6.2",
754
+ "grunt-legacy-log-utils": "~0.1.1",
755
+ "hooker": "~0.2.3",
756
+ "lodash": "~2.4.1",
757
+ "underscore.string": "~2.3.3"
758
+ },
759
+ "dependencies": {
760
+ "lodash": {
761
+ "version": "2.4.2",
762
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
763
+ "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
764
+ "dev": true
765
+ },
766
+ "underscore.string": {
767
+ "version": "2.3.3",
768
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
769
+ "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
770
+ "dev": true
771
+ }
772
+ }
773
+ },
774
+ "grunt-legacy-log-utils": {
775
+ "version": "0.1.1",
776
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz",
777
+ "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=",
778
+ "dev": true,
779
+ "requires": {
780
+ "colors": "~0.6.2",
781
+ "lodash": "~2.4.1",
782
+ "underscore.string": "~2.3.3"
783
+ },
784
+ "dependencies": {
785
+ "lodash": {
786
+ "version": "2.4.2",
787
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
788
+ "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
789
+ "dev": true
790
+ },
791
+ "underscore.string": {
792
+ "version": "2.3.3",
793
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
794
+ "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
795
+ "dev": true
796
+ }
797
+ }
798
+ },
799
+ "grunt-legacy-util": {
800
+ "version": "0.2.0",
801
+ "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz",
802
+ "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=",
803
+ "dev": true,
804
+ "requires": {
805
+ "async": "~0.1.22",
806
+ "exit": "~0.1.1",
807
+ "getobject": "~0.1.0",
808
+ "hooker": "~0.2.3",
809
+ "lodash": "~0.9.2",
810
+ "underscore.string": "~2.2.1",
811
+ "which": "~1.0.5"
812
+ }
813
+ },
814
+ "grunt-lib-contrib": {
815
+ "version": "0.6.1",
816
+ "resolved": "https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz",
817
+ "integrity": "sha1-P1att9oG6BR5XuJBWw6+X7iQPrs=",
818
+ "dev": true,
819
+ "requires": {
820
+ "zlib-browserify": "0.0.1"
821
+ }
822
+ },
823
+ "grunt-preprocess": {
824
+ "version": "4.2.0",
825
+ "resolved": "https://registry.npmjs.org/grunt-preprocess/-/grunt-preprocess-4.2.0.tgz",
826
+ "integrity": "sha1-SJUTzet1A1NEmn9lbVAXWvc/FfY=",
827
+ "dev": true,
828
+ "requires": {
829
+ "preprocess": "~2.3.1"
830
+ }
831
+ },
832
+ "has": {
833
+ "version": "1.0.3",
834
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
835
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
836
+ "requires": {
837
+ "function-bind": "^1.1.1"
838
+ }
839
+ },
840
+ "has-value": {
841
+ "version": "1.0.0",
842
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
843
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
844
+ "requires": {
845
+ "get-value": "^2.0.6",
846
+ "has-values": "^1.0.0",
847
+ "isobject": "^3.0.0"
848
+ }
849
+ },
850
+ "has-values": {
851
+ "version": "1.0.0",
852
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
853
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
854
+ "requires": {
855
+ "is-number": "^3.0.0",
856
+ "kind-of": "^4.0.0"
857
+ },
858
+ "dependencies": {
859
+ "kind-of": {
860
+ "version": "4.0.0",
861
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
862
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
863
+ "requires": {
864
+ "is-buffer": "^1.1.5"
865
+ }
866
+ }
867
+ }
868
+ },
869
+ "homedir-polyfill": {
870
+ "version": "1.0.3",
871
+ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
872
+ "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
873
+ "requires": {
874
+ "parse-passwd": "^1.0.0"
875
+ }
876
+ },
877
+ "hooker": {
878
+ "version": "0.2.3",
879
+ "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
880
+ "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
881
+ "dev": true
882
+ },
883
+ "iconv-lite": {
884
+ "version": "0.2.11",
885
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz",
886
+ "integrity": "sha1-HOYKOleGSiktEyH/RgnKS7llrcg=",
887
+ "dev": true
888
+ },
889
+ "inherits": {
890
+ "version": "2.0.3",
891
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
892
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
893
+ "dev": true
894
+ },
895
+ "ini": {
896
+ "version": "1.3.5",
897
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
898
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
899
+ },
900
+ "interpret": {
901
+ "version": "1.1.0",
902
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
903
+ "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ="
904
+ },
905
+ "is-absolute": {
906
+ "version": "1.0.0",
907
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
908
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
909
+ "requires": {
910
+ "is-relative": "^1.0.0",
911
+ "is-windows": "^1.0.1"
912
+ }
913
+ },
914
+ "is-accessor-descriptor": {
915
+ "version": "0.1.6",
916
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
917
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
918
+ "requires": {
919
+ "kind-of": "^3.0.2"
920
+ },
921
+ "dependencies": {
922
+ "kind-of": {
923
+ "version": "3.2.2",
924
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
925
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
926
+ "requires": {
927
+ "is-buffer": "^1.1.5"
928
+ }
929
+ }
930
+ }
931
+ },
932
+ "is-buffer": {
933
+ "version": "1.1.6",
934
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
935
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
936
+ },
937
+ "is-core-module": {
938
+ "version": "2.1.0",
939
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz",
940
+ "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==",
941
+ "requires": {
942
+ "has": "^1.0.3"
943
+ }
944
+ },
945
+ "is-data-descriptor": {
946
+ "version": "0.1.4",
947
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
948
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
949
+ "requires": {
950
+ "kind-of": "^3.0.2"
951
+ },
952
+ "dependencies": {
953
+ "kind-of": {
954
+ "version": "3.2.2",
955
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
956
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
957
+ "requires": {
958
+ "is-buffer": "^1.1.5"
959
+ }
960
+ }
961
+ }
962
+ },
963
+ "is-descriptor": {
964
+ "version": "0.1.6",
965
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
966
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
967
+ "requires": {
968
+ "is-accessor-descriptor": "^0.1.6",
969
+ "is-data-descriptor": "^0.1.4",
970
+ "kind-of": "^5.0.0"
971
+ },
972
+ "dependencies": {
973
+ "kind-of": {
974
+ "version": "5.1.0",
975
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
976
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
977
+ }
978
+ }
979
+ },
980
+ "is-extendable": {
981
+ "version": "0.1.1",
982
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
983
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik="
984
+ },
985
+ "is-extglob": {
986
+ "version": "2.1.1",
987
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
988
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI="
989
+ },
990
+ "is-glob": {
991
+ "version": "3.1.0",
992
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
993
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
994
+ "requires": {
995
+ "is-extglob": "^2.1.0"
996
+ }
997
+ },
998
+ "is-number": {
999
+ "version": "3.0.0",
1000
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
1001
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
1002
+ "requires": {
1003
+ "kind-of": "^3.0.2"
1004
+ },
1005
+ "dependencies": {
1006
+ "kind-of": {
1007
+ "version": "3.2.2",
1008
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1009
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1010
+ "requires": {
1011
+ "is-buffer": "^1.1.5"
1012
+ }
1013
+ }
1014
+ }
1015
+ },
1016
+ "is-plain-object": {
1017
+ "version": "2.0.4",
1018
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
1019
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
1020
+ "requires": {
1021
+ "isobject": "^3.0.1"
1022
+ }
1023
+ },
1024
+ "is-relative": {
1025
+ "version": "1.0.0",
1026
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
1027
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
1028
+ "requires": {
1029
+ "is-unc-path": "^1.0.0"
1030
+ }
1031
+ },
1032
+ "is-unc-path": {
1033
+ "version": "1.0.0",
1034
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
1035
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
1036
+ "requires": {
1037
+ "unc-path-regex": "^0.1.2"
1038
+ }
1039
+ },
1040
+ "is-windows": {
1041
+ "version": "1.0.2",
1042
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
1043
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA=="
1044
+ },
1045
+ "isarray": {
1046
+ "version": "1.0.0",
1047
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1048
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
1049
+ },
1050
+ "isexe": {
1051
+ "version": "2.0.0",
1052
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1053
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
1054
+ },
1055
+ "isobject": {
1056
+ "version": "3.0.1",
1057
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
1058
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8="
1059
+ },
1060
+ "js-yaml": {
1061
+ "version": "2.0.5",
1062
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz",
1063
+ "integrity": "sha1-olrmUJmZ6X3yeMZxnaEb0Gh3Q6g=",
1064
+ "dev": true,
1065
+ "requires": {
1066
+ "argparse": "~ 0.1.11",
1067
+ "esprima": "~ 1.0.2"
1068
+ }
1069
+ },
1070
+ "jshint": {
1071
+ "version": "2.1.11",
1072
+ "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.1.11.tgz",
1073
+ "integrity": "sha1-61EI/vm6Xd67gwmD9XLSQuSeP5Y=",
1074
+ "dev": true,
1075
+ "requires": {
1076
+ "cli": "0.4.x",
1077
+ "console-browserify": "0.1.x",
1078
+ "minimatch": "0.x.x",
1079
+ "shelljs": "0.1.x",
1080
+ "underscore": "1.4.x"
1081
+ },
1082
+ "dependencies": {
1083
+ "underscore": {
1084
+ "version": "1.4.4",
1085
+ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz",
1086
+ "integrity": "sha1-YaajIBBiKvoHljvzJSA88SI51gQ=",
1087
+ "dev": true
1088
+ }
1089
+ }
1090
+ },
1091
+ "kind-of": {
1092
+ "version": "6.0.3",
1093
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
1094
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="
1095
+ },
1096
+ "liftoff": {
1097
+ "version": "2.5.0",
1098
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
1099
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
1100
+ "requires": {
1101
+ "extend": "^3.0.0",
1102
+ "findup-sync": "^2.0.0",
1103
+ "fined": "^1.0.1",
1104
+ "flagged-respawn": "^1.0.0",
1105
+ "is-plain-object": "^2.0.4",
1106
+ "object.map": "^1.0.0",
1107
+ "rechoir": "^0.6.2",
1108
+ "resolve": "^1.1.7"
1109
+ },
1110
+ "dependencies": {
1111
+ "findup-sync": {
1112
+ "version": "2.0.0",
1113
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
1114
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
1115
+ "requires": {
1116
+ "detect-file": "^1.0.0",
1117
+ "is-glob": "^3.1.0",
1118
+ "micromatch": "^3.0.4",
1119
+ "resolve-dir": "^1.0.1"
1120
+ }
1121
+ }
1122
+ }
1123
+ },
1124
+ "lodash": {
1125
+ "version": "0.9.2",
1126
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz",
1127
+ "integrity": "sha1-jzSZxSRdNG1oLlsNO0B2fgnxqSw=",
1128
+ "dev": true
1129
+ },
1130
+ "lru-cache": {
1131
+ "version": "2.7.3",
1132
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
1133
+ "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=",
1134
+ "dev": true
1135
+ },
1136
+ "make-iterator": {
1137
+ "version": "1.0.1",
1138
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
1139
+ "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
1140
+ "requires": {
1141
+ "kind-of": "^6.0.2"
1142
+ }
1143
+ },
1144
+ "map-cache": {
1145
+ "version": "0.2.2",
1146
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
1147
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
1148
+ },
1149
+ "map-visit": {
1150
+ "version": "1.0.0",
1151
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
1152
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
1153
+ "requires": {
1154
+ "object-visit": "^1.0.0"
1155
+ }
1156
+ },
1157
+ "micromatch": {
1158
+ "version": "3.1.10",
1159
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
1160
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
1161
+ "requires": {
1162
+ "arr-diff": "^4.0.0",
1163
+ "array-unique": "^0.3.2",
1164
+ "braces": "^2.3.1",
1165
+ "define-property": "^2.0.2",
1166
+ "extend-shallow": "^3.0.2",
1167
+ "extglob": "^2.0.4",
1168
+ "fragment-cache": "^0.2.1",
1169
+ "kind-of": "^6.0.2",
1170
+ "nanomatch": "^1.2.9",
1171
+ "object.pick": "^1.3.0",
1172
+ "regex-not": "^1.0.0",
1173
+ "snapdragon": "^0.8.1",
1174
+ "to-regex": "^3.0.2"
1175
+ }
1176
+ },
1177
+ "minimatch": {
1178
+ "version": "0.2.14",
1179
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
1180
+ "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
1181
+ "dev": true,
1182
+ "requires": {
1183
+ "lru-cache": "2",
1184
+ "sigmund": "~1.0.0"
1185
+ }
1186
+ },
1187
+ "mixin-deep": {
1188
+ "version": "1.3.2",
1189
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
1190
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
1191
+ "requires": {
1192
+ "for-in": "^1.0.2",
1193
+ "is-extendable": "^1.0.1"
1194
+ },
1195
+ "dependencies": {
1196
+ "is-extendable": {
1197
+ "version": "1.0.1",
1198
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
1199
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
1200
+ "requires": {
1201
+ "is-plain-object": "^2.0.4"
1202
+ }
1203
+ }
1204
+ }
1205
+ },
1206
+ "ms": {
1207
+ "version": "2.0.0",
1208
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1209
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
1210
+ },
1211
+ "nanomatch": {
1212
+ "version": "1.2.13",
1213
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
1214
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
1215
+ "requires": {
1216
+ "arr-diff": "^4.0.0",
1217
+ "array-unique": "^0.3.2",
1218
+ "define-property": "^2.0.2",
1219
+ "extend-shallow": "^3.0.2",
1220
+ "fragment-cache": "^0.2.1",
1221
+ "is-windows": "^1.0.2",
1222
+ "kind-of": "^6.0.2",
1223
+ "object.pick": "^1.3.0",
1224
+ "regex-not": "^1.0.0",
1225
+ "snapdragon": "^0.8.1",
1226
+ "to-regex": "^3.0.1"
1227
+ }
1228
+ },
1229
+ "nopt": {
1230
+ "version": "1.0.10",
1231
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
1232
+ "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
1233
+ "dev": true,
1234
+ "requires": {
1235
+ "abbrev": "1"
1236
+ }
1237
+ },
1238
+ "object-copy": {
1239
+ "version": "0.1.0",
1240
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
1241
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
1242
+ "requires": {
1243
+ "copy-descriptor": "^0.1.0",
1244
+ "define-property": "^0.2.5",
1245
+ "kind-of": "^3.0.3"
1246
+ },
1247
+ "dependencies": {
1248
+ "define-property": {
1249
+ "version": "0.2.5",
1250
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1251
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1252
+ "requires": {
1253
+ "is-descriptor": "^0.1.0"
1254
+ }
1255
+ },
1256
+ "kind-of": {
1257
+ "version": "3.2.2",
1258
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1259
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1260
+ "requires": {
1261
+ "is-buffer": "^1.1.5"
1262
+ }
1263
+ }
1264
+ }
1265
+ },
1266
+ "object-visit": {
1267
+ "version": "1.0.1",
1268
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
1269
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
1270
+ "requires": {
1271
+ "isobject": "^3.0.0"
1272
+ }
1273
+ },
1274
+ "object.defaults": {
1275
+ "version": "1.1.0",
1276
+ "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
1277
+ "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
1278
+ "requires": {
1279
+ "array-each": "^1.0.1",
1280
+ "array-slice": "^1.0.0",
1281
+ "for-own": "^1.0.0",
1282
+ "isobject": "^3.0.0"
1283
+ }
1284
+ },
1285
+ "object.map": {
1286
+ "version": "1.0.1",
1287
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
1288
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
1289
+ "requires": {
1290
+ "for-own": "^1.0.0",
1291
+ "make-iterator": "^1.0.0"
1292
+ }
1293
+ },
1294
+ "object.pick": {
1295
+ "version": "1.3.0",
1296
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
1297
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
1298
+ "requires": {
1299
+ "isobject": "^3.0.1"
1300
+ }
1301
+ },
1302
+ "os-homedir": {
1303
+ "version": "1.0.2",
1304
+ "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
1305
+ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M="
1306
+ },
1307
+ "os-tmpdir": {
1308
+ "version": "1.0.2",
1309
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
1310
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
1311
+ },
1312
+ "osenv": {
1313
+ "version": "0.1.5",
1314
+ "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
1315
+ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
1316
+ "requires": {
1317
+ "os-homedir": "^1.0.0",
1318
+ "os-tmpdir": "^1.0.0"
1319
+ }
1320
+ },
1321
+ "parse-filepath": {
1322
+ "version": "1.0.2",
1323
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
1324
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
1325
+ "requires": {
1326
+ "is-absolute": "^1.0.0",
1327
+ "map-cache": "^0.2.0",
1328
+ "path-root": "^0.1.1"
1329
+ }
1330
+ },
1331
+ "parse-passwd": {
1332
+ "version": "1.0.0",
1333
+ "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
1334
+ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY="
1335
+ },
1336
+ "pascalcase": {
1337
+ "version": "0.1.1",
1338
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
1339
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ="
1340
+ },
1341
+ "path-parse": {
1342
+ "version": "1.0.6",
1343
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
1344
+ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw=="
1345
+ },
1346
+ "path-root": {
1347
+ "version": "0.1.1",
1348
+ "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
1349
+ "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
1350
+ "requires": {
1351
+ "path-root-regex": "^0.1.0"
1352
+ }
1353
+ },
1354
+ "path-root-regex": {
1355
+ "version": "0.1.2",
1356
+ "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
1357
+ "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0="
1358
+ },
1359
+ "posix-character-classes": {
1360
+ "version": "0.1.1",
1361
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
1362
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs="
1363
+ },
1364
+ "preprocess": {
1365
+ "version": "2.3.1",
1366
+ "resolved": "https://registry.npmjs.org/preprocess/-/preprocess-2.3.1.tgz",
1367
+ "integrity": "sha1-vaMCLmI+m1mdTAgoGG2FvZ8SxQA=",
1368
+ "dev": true
1369
+ },
1370
+ "rechoir": {
1371
+ "version": "0.6.2",
1372
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
1373
+ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
1374
+ "requires": {
1375
+ "resolve": "^1.1.6"
1376
+ }
1377
+ },
1378
+ "regex-not": {
1379
+ "version": "1.0.2",
1380
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
1381
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
1382
+ "requires": {
1383
+ "extend-shallow": "^3.0.2",
1384
+ "safe-regex": "^1.1.0"
1385
+ }
1386
+ },
1387
+ "repeat-element": {
1388
+ "version": "1.1.3",
1389
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
1390
+ "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g=="
1391
+ },
1392
+ "repeat-string": {
1393
+ "version": "1.6.1",
1394
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
1395
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc="
1396
+ },
1397
+ "resolve": {
1398
+ "version": "1.18.1",
1399
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz",
1400
+ "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==",
1401
+ "requires": {
1402
+ "is-core-module": "^2.0.0",
1403
+ "path-parse": "^1.0.6"
1404
+ }
1405
+ },
1406
+ "resolve-dir": {
1407
+ "version": "1.0.1",
1408
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
1409
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
1410
+ "requires": {
1411
+ "expand-tilde": "^2.0.0",
1412
+ "global-modules": "^1.0.0"
1413
+ }
1414
+ },
1415
+ "resolve-url": {
1416
+ "version": "0.2.1",
1417
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
1418
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
1419
+ },
1420
+ "ret": {
1421
+ "version": "0.1.15",
1422
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
1423
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg=="
1424
+ },
1425
+ "rimraf": {
1426
+ "version": "2.2.8",
1427
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
1428
+ "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
1429
+ "dev": true
1430
+ },
1431
+ "safe-regex": {
1432
+ "version": "1.1.0",
1433
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
1434
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
1435
+ "requires": {
1436
+ "ret": "~0.1.10"
1437
+ }
1438
+ },
1439
+ "set-value": {
1440
+ "version": "2.0.1",
1441
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
1442
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
1443
+ "requires": {
1444
+ "extend-shallow": "^2.0.1",
1445
+ "is-extendable": "^0.1.1",
1446
+ "is-plain-object": "^2.0.3",
1447
+ "split-string": "^3.0.1"
1448
+ },
1449
+ "dependencies": {
1450
+ "extend-shallow": {
1451
+ "version": "2.0.1",
1452
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1453
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1454
+ "requires": {
1455
+ "is-extendable": "^0.1.0"
1456
+ }
1457
+ }
1458
+ }
1459
+ },
1460
+ "shelljs": {
1461
+ "version": "0.1.4",
1462
+ "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.1.4.tgz",
1463
+ "integrity": "sha1-37vnjVbDwBaNL7eeEOzR28sH7A4=",
1464
+ "dev": true
1465
+ },
1466
+ "sigmund": {
1467
+ "version": "1.0.1",
1468
+ "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
1469
+ "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
1470
+ "dev": true
1471
+ },
1472
+ "snapdragon": {
1473
+ "version": "0.8.2",
1474
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
1475
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
1476
+ "requires": {
1477
+ "base": "^0.11.1",
1478
+ "debug": "^2.2.0",
1479
+ "define-property": "^0.2.5",
1480
+ "extend-shallow": "^2.0.1",
1481
+ "map-cache": "^0.2.2",
1482
+ "source-map": "^0.5.6",
1483
+ "source-map-resolve": "^0.5.0",
1484
+ "use": "^3.1.0"
1485
+ },
1486
+ "dependencies": {
1487
+ "define-property": {
1488
+ "version": "0.2.5",
1489
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1490
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1491
+ "requires": {
1492
+ "is-descriptor": "^0.1.0"
1493
+ }
1494
+ },
1495
+ "extend-shallow": {
1496
+ "version": "2.0.1",
1497
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
1498
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
1499
+ "requires": {
1500
+ "is-extendable": "^0.1.0"
1501
+ }
1502
+ },
1503
+ "source-map": {
1504
+ "version": "0.5.7",
1505
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
1506
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
1507
+ }
1508
+ }
1509
+ },
1510
+ "snapdragon-node": {
1511
+ "version": "2.1.1",
1512
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
1513
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
1514
+ "requires": {
1515
+ "define-property": "^1.0.0",
1516
+ "isobject": "^3.0.0",
1517
+ "snapdragon-util": "^3.0.1"
1518
+ },
1519
+ "dependencies": {
1520
+ "define-property": {
1521
+ "version": "1.0.0",
1522
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
1523
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
1524
+ "requires": {
1525
+ "is-descriptor": "^1.0.0"
1526
+ }
1527
+ },
1528
+ "is-accessor-descriptor": {
1529
+ "version": "1.0.0",
1530
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
1531
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
1532
+ "requires": {
1533
+ "kind-of": "^6.0.0"
1534
+ }
1535
+ },
1536
+ "is-data-descriptor": {
1537
+ "version": "1.0.0",
1538
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
1539
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
1540
+ "requires": {
1541
+ "kind-of": "^6.0.0"
1542
+ }
1543
+ },
1544
+ "is-descriptor": {
1545
+ "version": "1.0.2",
1546
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
1547
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
1548
+ "requires": {
1549
+ "is-accessor-descriptor": "^1.0.0",
1550
+ "is-data-descriptor": "^1.0.0",
1551
+ "kind-of": "^6.0.2"
1552
+ }
1553
+ }
1554
+ }
1555
+ },
1556
+ "snapdragon-util": {
1557
+ "version": "3.0.1",
1558
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
1559
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
1560
+ "requires": {
1561
+ "kind-of": "^3.2.0"
1562
+ },
1563
+ "dependencies": {
1564
+ "kind-of": {
1565
+ "version": "3.2.2",
1566
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1567
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1568
+ "requires": {
1569
+ "is-buffer": "^1.1.5"
1570
+ }
1571
+ }
1572
+ }
1573
+ },
1574
+ "source-map": {
1575
+ "version": "0.1.34",
1576
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz",
1577
+ "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=",
1578
+ "dev": true,
1579
+ "requires": {
1580
+ "amdefine": ">=0.0.4"
1581
+ }
1582
+ },
1583
+ "source-map-resolve": {
1584
+ "version": "0.5.3",
1585
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
1586
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
1587
+ "requires": {
1588
+ "atob": "^2.1.2",
1589
+ "decode-uri-component": "^0.2.0",
1590
+ "resolve-url": "^0.2.1",
1591
+ "source-map-url": "^0.4.0",
1592
+ "urix": "^0.1.0"
1593
+ }
1594
+ },
1595
+ "source-map-url": {
1596
+ "version": "0.4.0",
1597
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
1598
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM="
1599
+ },
1600
+ "split-string": {
1601
+ "version": "3.1.0",
1602
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
1603
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
1604
+ "requires": {
1605
+ "extend-shallow": "^3.0.0"
1606
+ }
1607
+ },
1608
+ "static-extend": {
1609
+ "version": "0.1.2",
1610
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
1611
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
1612
+ "requires": {
1613
+ "define-property": "^0.2.5",
1614
+ "object-copy": "^0.1.0"
1615
+ },
1616
+ "dependencies": {
1617
+ "define-property": {
1618
+ "version": "0.2.5",
1619
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
1620
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
1621
+ "requires": {
1622
+ "is-descriptor": "^0.1.0"
1623
+ }
1624
+ }
1625
+ }
1626
+ },
1627
+ "to-object-path": {
1628
+ "version": "0.3.0",
1629
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
1630
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
1631
+ "requires": {
1632
+ "kind-of": "^3.0.2"
1633
+ },
1634
+ "dependencies": {
1635
+ "kind-of": {
1636
+ "version": "3.2.2",
1637
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
1638
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
1639
+ "requires": {
1640
+ "is-buffer": "^1.1.5"
1641
+ }
1642
+ }
1643
+ }
1644
+ },
1645
+ "to-regex": {
1646
+ "version": "3.0.2",
1647
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
1648
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
1649
+ "requires": {
1650
+ "define-property": "^2.0.2",
1651
+ "extend-shallow": "^3.0.2",
1652
+ "regex-not": "^1.0.2",
1653
+ "safe-regex": "^1.1.0"
1654
+ }
1655
+ },
1656
+ "to-regex-range": {
1657
+ "version": "2.1.1",
1658
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
1659
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
1660
+ "requires": {
1661
+ "is-number": "^3.0.0",
1662
+ "repeat-string": "^1.6.1"
1663
+ }
1664
+ },
1665
+ "uglify-js": {
1666
+ "version": "2.4.24",
1667
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.24.tgz",
1668
+ "integrity": "sha1-+tV1XB4Vd2WLsG/5q25UjJW+vW4=",
1669
+ "dev": true,
1670
+ "requires": {
1671
+ "async": "~0.2.6",
1672
+ "source-map": "0.1.34",
1673
+ "uglify-to-browserify": "~1.0.0",
1674
+ "yargs": "~3.5.4"
1675
+ },
1676
+ "dependencies": {
1677
+ "async": {
1678
+ "version": "0.2.10",
1679
+ "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
1680
+ "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
1681
+ "dev": true
1682
+ }
1683
+ }
1684
+ },
1685
+ "uglify-to-browserify": {
1686
+ "version": "1.0.2",
1687
+ "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
1688
+ "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
1689
+ "dev": true
1690
+ },
1691
+ "unc-path-regex": {
1692
+ "version": "0.1.2",
1693
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
1694
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo="
1695
+ },
1696
+ "underscore": {
1697
+ "version": "1.7.0",
1698
+ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz",
1699
+ "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=",
1700
+ "dev": true
1701
+ },
1702
+ "underscore.string": {
1703
+ "version": "2.2.1",
1704
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.1.tgz",
1705
+ "integrity": "sha1-18D6KvXVoaZ/QlPa7pgTLnM/Dxk=",
1706
+ "dev": true
1707
+ },
1708
+ "union-value": {
1709
+ "version": "1.0.1",
1710
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
1711
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
1712
+ "requires": {
1713
+ "arr-union": "^3.1.0",
1714
+ "get-value": "^2.0.6",
1715
+ "is-extendable": "^0.1.1",
1716
+ "set-value": "^2.0.1"
1717
+ }
1718
+ },
1719
+ "unset-value": {
1720
+ "version": "1.0.0",
1721
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
1722
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
1723
+ "requires": {
1724
+ "has-value": "^0.3.1",
1725
+ "isobject": "^3.0.0"
1726
+ },
1727
+ "dependencies": {
1728
+ "has-value": {
1729
+ "version": "0.3.1",
1730
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
1731
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
1732
+ "requires": {
1733
+ "get-value": "^2.0.3",
1734
+ "has-values": "^0.1.4",
1735
+ "isobject": "^2.0.0"
1736
+ },
1737
+ "dependencies": {
1738
+ "isobject": {
1739
+ "version": "2.1.0",
1740
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
1741
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
1742
+ "requires": {
1743
+ "isarray": "1.0.0"
1744
+ }
1745
+ }
1746
+ }
1747
+ },
1748
+ "has-values": {
1749
+ "version": "0.1.4",
1750
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
1751
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E="
1752
+ }
1753
+ }
1754
+ },
1755
+ "urix": {
1756
+ "version": "0.1.0",
1757
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
1758
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI="
1759
+ },
1760
+ "use": {
1761
+ "version": "3.1.1",
1762
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
1763
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ=="
1764
+ },
1765
+ "v8flags": {
1766
+ "version": "3.1.3",
1767
+ "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz",
1768
+ "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==",
1769
+ "requires": {
1770
+ "homedir-polyfill": "^1.0.1"
1771
+ }
1772
+ },
1773
+ "which": {
1774
+ "version": "1.0.9",
1775
+ "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
1776
+ "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
1777
+ "dev": true
1778
+ },
1779
+ "window-size": {
1780
+ "version": "0.1.0",
1781
+ "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
1782
+ "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
1783
+ "dev": true
1784
+ },
1785
+ "wordwrap": {
1786
+ "version": "0.0.2",
1787
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
1788
+ "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
1789
+ "dev": true
1790
+ },
1791
+ "yargs": {
1792
+ "version": "3.5.4",
1793
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.5.4.tgz",
1794
+ "integrity": "sha1-2K/49mXpTDS9JZvevRv68N3TU2E=",
1795
+ "dev": true,
1796
+ "requires": {
1797
+ "camelcase": "^1.0.2",
1798
+ "decamelize": "^1.0.0",
1799
+ "window-size": "0.1.0",
1800
+ "wordwrap": "0.0.2"
1801
+ }
1802
+ },
1803
+ "zlib-browserify": {
1804
+ "version": "0.0.1",
1805
+ "resolved": "https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz",
1806
+ "integrity": "sha1-T6akXQDbwV8xikr6HZr8Aljhdsw=",
1807
+ "dev": true
1808
+ }
1809
+ }
1810
+ }
libs/factory/clearfy/assets/css/clearfy-base.css CHANGED
@@ -5,18 +5,39 @@
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,16 +56,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-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,22 +84,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-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,16 +110,16 @@
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,7 +133,7 @@
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,44 +152,102 @@
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;
5
  * @copyright Webcraftic 06.10.2018
6
  * @sicne 2.0.5
7
  */
8
+ #WBCR {
9
+ /* subscribe widget */
10
+ }
11
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
12
+ display: inline-block;
13
+ position: relative;
14
+ content: 'PRO';
15
+ background: #ff5722;
16
+ border-radius: 4px;
17
+ color: #fff;
18
+ font-size: 10px;
19
+ line-height: 1;
20
+ font-style: normal;
21
+ padding: 4px 6px;
22
+ margin-left: 4px;
23
+ vertical-align: top;
24
+ top: -8px;
25
+ left: -10px;
26
+ right: auto;
27
+ z-index: 11;
28
+ }
29
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion {
30
  padding: 30px 80px;
31
  }
32
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion h3 {
33
  margin: 0 0 20px;
34
  }
35
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-inner-contanier {
36
  border: 2px dashed #8bc34a;
37
  background: #fff;
38
  padding: 20px;
39
  }
40
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-activate-premium {
41
  display: inline-block;
42
  cursor: pointer;
43
  line-height: 16px;
56
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
57
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
58
  }
59
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-activate-premium:active {
60
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
61
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
62
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
63
  }
64
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-activate-premium:focus {
65
  outline: none;
66
  border: 0;
67
  }
68
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-purchase-premium {
69
  display: inline-block;
70
  cursor: pointer;
71
  line-height: 16px;
84
  -moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
85
  -webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
86
  }
87
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-purchase-premium:active {
88
  box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
89
  -moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
90
  -webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
91
  }
92
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-suggetion .wbcr-factory-purchase-premium:focus {
93
  outline: none;
94
  border: 0;
95
  }
96
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion {
97
  background: #fff;
98
  color: #353535;
99
  font-weight: 600;
100
  border: 2px dashed #8bc34a;
101
  }
102
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion h3 {
103
  margin: 0 0 20px;
104
  padding: 10px 0;
105
  text-align: center;
110
  vertical-align: middle;
111
  text-transform: uppercase;
112
  }
113
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul {
114
  position: relative;
115
  margin-bottom: 20px;
116
  }
117
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul li {
118
  font-size: 15px;
119
  padding: 7px;
120
  padding-left: 20px;
121
  }
122
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul li:before {
123
  content: " ";
124
  display: inline-block;
125
  width: 0.4em;
133
  -o-transform: rotate(45deg);
134
  transform: rotate(45deg);
135
  }
136
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion .wbcr-factory-purchase-premium {
137
  display: block;
138
  cursor: pointer;
139
  line-height: 16px;
152
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
153
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
154
  }
155
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion .wbcr-factory-purchase-premium:active {
156
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
157
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
158
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
159
  }
160
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion .wbcr-factory-purchase-premium:focus {
161
  outline: none;
162
  border: 0;
163
  }
164
+ #WBCR .wbcr-factory-subscribe-widget {
165
+ margin-top: 0 !important;
166
+ border: 1px solid rgba(0, 0, 0, 0.1);
167
+ border-radius: 5px;
168
+ }
169
+ #WBCR .wbcr-factory-subscribe-widget__field {
170
+ margin: 10px auto;
171
+ display: block;
172
+ width: 100%;
173
+ text-align: center;
174
+ box-shadow: 0 0 0 transparent;
175
+ border-radius: 4px;
176
+ border: 1px solid #d6d4d4;
177
+ background-color: #fff;
178
+ color: #32373c;
179
+ }
180
+ #WBCR .wbcr-factory-subscribe-widget__button {
181
+ display: block;
182
+ width: 100%;
183
+ text-align: center;
184
+ margin: 14px 0 0;
185
+ box-shadow: none;
186
+ min-width: 100px;
187
+ background-color: #ff5722;
188
+ border: 0;
189
+ color: #fff;
190
+ }
191
+ #WBCR .wbcr-factory-subscribe-widget__button:active,
192
+ #WBCR .wbcr-factory-subscribe-widget__button:focus {
193
+ box-shadow: inset -1px 1px 1px #222;
194
+ outline: none;
195
+ }
196
+ #WBCR .wbcr-factory-subscribe-widget__msgbox {
197
+ font-weight: bold;
198
+ }
199
+ #WBCR .wbcr-factory-subscribe-widget__text {
200
+ display: none;
201
+ padding: 10px 14px;
202
+ margin: 0 0 10px;
203
+ }
204
+ #WBCR .wbcr-factory-subscribe-widget__text--success {
205
+ background: #d6efbe;
206
+ color: #61824b;
207
+ }
208
+ #WBCR .wbcr-factory-subscribe-widget__text--success2 {
209
+ background: #ffe0b3;
210
+ }
211
+ #WBCR .wbcr-factory-subscribe-widget__text--error {
212
+ background: #f1b1b6;
213
+ }
214
+ #WBCR .wbcr-factory-subscribe-widget__checkbox {
215
+ margin: 0 10px 0 0;
216
+ }
217
+ #WBCR .wbcr-factory-subscribe-widget__checkbox-label {
218
+ font-weight: normal;
219
+ color: #8c8888;
220
+ font-size: 12px;
221
+ }
222
  @media screen and (max-width: 1550px) {
223
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-clearfy-232-multisite-pro-suggetion {
224
  padding: 10px 80px;
225
  }
226
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion {
227
  padding: 10px;
228
  }
229
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion h3 {
230
  margin: 0 0 20px;
231
  padding: 10px 0;
232
  font-size: 13px;
233
  font-weight: 600;
234
  }
235
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul {
236
  margin-bottom: 20px;
237
  }
238
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul li {
239
  font-size: 13px;
240
  padding: 2px;
241
  padding-left: 10px;
242
  }
243
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion ul li:before {
244
  width: 0.4em;
245
  height: 0.7em;
246
  border-width: 0 0.2em 0.2em 0;
247
  left: 0;
248
  margin-right: 10px;
249
  }
250
+ #WBCR .wbcr-factory-pages-440-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-232-pro-suggettion .wbcr-factory-purchase-premium {
251
  font-weight: 700;
252
  line-height: 16px;
253
  font-size: 12px;
libs/factory/clearfy/assets/css/clearfy-base.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["clearfy-base.less"],"names":[],"mappings":";;;;;;;AAoCA,KAEE,iDACE;EACE,kBAAA;;AAJN,KAEE,iDACE,8CAGE;EACE,gBAAA;;AAPR,KAEE,iDACE,8CAOE;EACE,0BAAA;EACA,gBAAA;EACA,aAAA;;AAbR,KAEE,iDACE,8CAaE;EACE,qBAAA;EA5CN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KAaA,iDACE,8CAaE,+BA3BH;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KAQA,iDACE,8CAaE,+BAtBH;EACC,aAAA;EACA,SAAA;;AAIJ,KAEE,iDACE,8CAiBE;EACE,qBAAA;EAhDN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,yCAAA;EACA,8CAAA;EACA,iDAAA;;AACA,KAaA,iDACE,8CAiBE,+BA/BH;EACC,+CAAA;EACA,oDAAA;EACA,uDAAA;;AAEF,KAQA,iDACE,8CAiBE,+BA1BH;EACC,aAAA;EACA,SAAA;;AAIJ,KAEE,iDAwBE,oCACE;EACE,gBAAA;EACA,cAAA;EACA,gBAAA;EACA,0BAAA;;AA/BR,KAEE,iDAwBE,oCACE,yCAME;EACE,gBAAA;EACA,eAAA;EACA,kBAAA;EACA,gCAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,sBAAA;EACA,yBAAA;;AA1CV,KAEE,iDAwBE,oCACE,yCAkBE;EAEE,kBAAA;EACA,mBAAA;;AAhDV,KAEE,iDAwBE,oCACE,yCAkBE,GAKE;EACE,eAAA;EACA,YAAA;EACA,kBAAA;;AAIA,KAvDV,iDAwBE,oCACE,yCAkBE,GAKE,GAOG;EACC,SAAS,GAAT;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,6BAAA;EACA,OAAA;EACA,kBAAA;EACA,mBAAmB,aAAnB;EACA,gBAAgB,aAAhB;EACA,cAAc,aAAd;EACA,WAAW,aAAX;;AArEd,KAEE,iDAwBE,oCACE,yCAgDE;EACE,cAAA;EAvGR,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KAaA,iDAwBE,oCACE,yCAgDE,+BAtFL;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KAQA,iDAwBE,oCACE,yCAgDE,+BAjFL;EACC,aAAA;EACA,SAAA;;AAwFJ,mBAAsC;EACpC,KACE,iDACE;IACE,kBAAA;;EAHN,KACE,iDAKE,oCACE;IACE,aAAA;;EARR,KACE,iDAKE,oCACE,yCAGE;IACE,gBAAA;IACA,eAAA;IACA,eAAA;IACA,gBAAA;;EAdV,KACE,iDAKE,oCACE,yCAUE;IACE,mBAAA;;EAlBV,KACE,iDAKE,oCACE,yCAUE,GAGE;IACE,eAAA;IACA,YAAA;IACA,kBAAA;;EAEA,KAxBV,iDAKE,oCACE,yCAUE,GAGE,GAKG;IACC,YAAA;IACA,aAAA;IACA,6BAAA;IACA,OAAA;IACA,kBAAA;;EA9Bd,KACE,iDAKE,oCACE,yCA4BE;IACE,gBAAA;IACA,iBAAA;IACA,eAAA;IACA,iBAAA;IACA,kBAAA;IACA,uBAAA;IACA,0BAAA","file":"clearfy-base.css"}
1
+ {"version":3,"sources":["clearfy-base.less"],"names":[],"mappings":";;;;;;;AAoCA;;;AAAA,KAoBE,iDACE,kBAAiB,8BAA8B;EAnB/C,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;;AAjBJ,KAoBE,iDAKE;EACE,kBAAA;;AA1BN,KAoBE,iDAKE,8CAGE;EACE,gBAAA;;AA7BR,KAoBE,iDAKE,8CAOE;EACE,0BAAA;EACA,gBAAA;EACA,aAAA;;AAnCR,KAoBE,iDAKE,8CAaE;EACE,qBAAA;EAlEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,iDAKE,8CAaE,+BAjDH;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,iDAKE,8CAaE,+BA5CH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,iDAKE,8CAkBE;EACE,qBAAA;EAvEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,yCAAA;EACA,8CAAA;EACA,iDAAA;;AACA,KA+BA,iDAKE,8CAkBE,+BAtDH;EACC,+CAAA;EACA,oDAAA;EACA,uDAAA;;AAEF,KA0BA,iDAKE,8CAkBE,+BAjDH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,iDA6BE,oCACE;EACE,gBAAA;EACA,cAAA;EACA,gBAAA;EACA,0BAAA;;AAtDR,KAoBE,iDA6BE,oCACE,yCAME;EACE,gBAAA;EACA,eAAA;EACA,kBAAA;EACA,gCAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,sBAAA;EACA,yBAAA;;AAjEV,KAoBE,iDA6BE,oCACE,yCAkBE;EAEE,kBAAA;EACA,mBAAA;;AAvEV,KAoBE,iDA6BE,oCACE,yCAkBE,GAKE;EACE,eAAA;EACA,YAAA;EACA,kBAAA;;AAKA,KA7DV,iDA6BE,oCACE,yCAkBE,GAKE,GAQG;EACC,SAAS,GAAT;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,6BAAA;EACA,OAAA;EACA,kBAAA;EACA,mBAAmB,aAAnB;EACA,gBAAgB,aAAhB;EACA,cAAc,aAAd;EACA,WAAW,aAAX;;AA7Fd,KAoBE,iDA6BE,oCACE,yCAiDE;EACE,cAAA;EA/HR,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,iDA6BE,oCACE,yCAiDE,+BA9GL;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,iDA6BE,oCACE,yCAiDE,+BAzGL;EACC,aAAA;EACA,SAAA;;AAIJ,KA6GE;EACE,wBAAA;EACA,oCAAA;EACA,kBAAA;;AAGA,KANF,+BAMG;EACC,iBAAA;EACA,cAAA;EACA,WAAA;EACA,kBAAA;EACA,6BAAA;EACA,kBAAA;EACA,yBAAA;EACA,sBAAA;EACA,cAAA;;AAGF,KAlBF,+BAkBG;EACC,cAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,SAAA;EACA,WAAA;;AAEA,KA7BJ,+BAkBG,QAWE;AAAS,KA7Bd,+BAkBG,QAWY;EACT,mCAAA;EACA,aAAA;;AAIJ,KAnCF,+BAmCG;EACC,iBAAA;;AAGF,KAvCF,+BAuCG;EACC,aAAA;EACA,kBAAA;EACA,gBAAA;;AAIF,KA9CF,+BA8CG;EACC,mBAAA;EACA,cAAA;;AAGF,KAnDF,+BAmDG;EACC,mBAAA;;AAGF,KAvDF,+BAuDG;EACC,mBAAA;;AAGF,KA3DF,+BA2DG;EACC,kBAAA;;AAGF,KA/DF,+BA+DG;EACC,mBAAA;EACA,cAAA;EACA,eAAA;;AAKN,mBAAsC;EACpC,KACE,iDACE;IACE,kBAAA;;EAHN,KACE,iDAKE,oCACE;IACE,aAAA;;EARR,KACE,iDAKE,oCACE,yCAGE;IACE,gBAAA;IACA,eAAA;IACA,eAAA;IACA,gBAAA;;EAdV,KACE,iDAKE,oCACE,yCAUE;IACE,mBAAA;;EAlBV,KACE,iDAKE,oCACE,yCAUE,GAGE;IACE,eAAA;IACA,YAAA;IACA,kBAAA;;EAEA,KAxBV,iDAKE,oCACE,yCAUE,GAGE,GAKG;IACC,YAAA;IACA,aAAA;IACA,6BAAA;IACA,OAAA;IACA,kBAAA;;EA9Bd,KACE,iDAKE,oCACE,yCA4BE;IACE,gBAAA;IACA,iBAAA;IACA,eAAA;IACA,iBAAA;IACA,kBAAA;IACA,uBAAA;IACA,0BAAA","file":"clearfy-base.css"}
libs/factory/clearfy/assets/css/clearfy-base.less CHANGED
@@ -35,8 +35,30 @@
35
  }
36
 
37
  #WBCR {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
 
39
  .wbcr-factory-pages-000-impressive-page-template {
 
 
 
 
40
  .wbcr-factory-clearfy-000-multisite-suggetion {
41
  padding: 30px 80px;
42
 
@@ -54,6 +76,7 @@
54
  display: inline-block;
55
  .button();
56
  }
 
57
  .wbcr-factory-purchase-premium {
58
  display: inline-block;
59
  .button(#fdd868, #755c0e, rgba(60, 45, 2, 0.31));
@@ -88,6 +111,7 @@
88
  font-size: 15px;
89
  padding: 7px;
90
  padding-left: 20px;
 
91
  &:before {
92
  }
93
 
@@ -116,6 +140,78 @@
116
  }
117
  }
118
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
  }
120
 
121
  @media screen and (max-width: 1550px) {
35
  }
36
 
37
  #WBCR {
38
+ .premium-label(@position: relative, @positionTop:-8px, @positionLeft:-10px, @positionRight:auto) {
39
+ display: inline-block;
40
+ position: @position;
41
+ content: 'PRO';
42
+ background: #ff5722;
43
+ border-radius: 4px;
44
+ color: #fff;
45
+ font-size: 10px;
46
+ line-height: 1;
47
+ font-style: normal;
48
+ padding: 4px 6px;
49
+ margin-left: 4px;
50
+ vertical-align: top;
51
+ top: @positionTop;
52
+ left: @positionLeft;
53
+ right: @positionRight;
54
+ z-index: 11;
55
+ }
56
 
57
  .wbcr-factory-pages-000-impressive-page-template {
58
+ .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
59
+ .premium-label();
60
+ }
61
+
62
  .wbcr-factory-clearfy-000-multisite-suggetion {
63
  padding: 30px 80px;
64
 
76
  display: inline-block;
77
  .button();
78
  }
79
+
80
  .wbcr-factory-purchase-premium {
81
  display: inline-block;
82
  .button(#fdd868, #755c0e, rgba(60, 45, 2, 0.31));
111
  font-size: 15px;
112
  padding: 7px;
113
  padding-left: 20px;
114
+
115
  &:before {
116
  }
117
 
140
  }
141
  }
142
  }
143
+
144
+ /* subscribe widget */
145
+
146
+ .wbcr-factory-subscribe-widget {
147
+ margin-top: 0 !important;
148
+ border: 1px solid rgba(0, 0, 0, 0.1);
149
+ border-radius: 5px;
150
+
151
+
152
+ &__field {
153
+ margin: 10px auto;
154
+ display: block;
155
+ width: 100%;
156
+ text-align: center;
157
+ box-shadow: 0 0 0 transparent;
158
+ border-radius: 4px;
159
+ border: 1px solid #d6d4d4;
160
+ background-color: #fff;
161
+ color: #32373c;
162
+ }
163
+
164
+ &__button {
165
+ display: block;
166
+ width: 100%;
167
+ text-align: center;
168
+ margin: 14px 0 0;
169
+ box-shadow: none;
170
+ min-width: 100px;
171
+ background-color: #ff5722;
172
+ border: 0;
173
+ color: #fff;
174
+
175
+ &:active, &:focus {
176
+ box-shadow: inset -1px 1px 1px #222;
177
+ outline: none;
178
+ }
179
+ }
180
+
181
+ &__msgbox {
182
+ font-weight: bold;
183
+ }
184
+
185
+ &__text {
186
+ display: none;
187
+ padding: 10px 14px;
188
+ margin: 0 0 10px;
189
+
190
+ }
191
+
192
+ &__text--success {
193
+ background: #d6efbe;
194
+ color: #61824b;
195
+ }
196
+
197
+ &__text--success2 {
198
+ background: #ffe0b3;
199
+ }
200
+
201
+ &__text--error {
202
+ background: #f1b1b6;
203
+ }
204
+
205
+ &__checkbox {
206
+ margin: 0 10px 0 0;
207
+ }
208
+
209
+ &__checkbox-label {
210
+ font-weight: normal;
211
+ color: #8c8888;
212
+ font-size: 12px;
213
+ }
214
+ }
215
  }
216
 
217
  @media screen and (max-width: 1550px) {
libs/factory/clearfy/assets/css/components.css CHANGED
@@ -3,11 +3,11 @@
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%;
@@ -18,46 +18,46 @@
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;
@@ -73,7 +73,7 @@
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;
@@ -89,7 +89,7 @@
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;
@@ -105,35 +105,35 @@
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
  }
3
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
  * @copyright Alex Kovalev 30.09.2017
5
  */
6
+ #WBCR .wbc-factory-clearfy-232-components {
7
  padding: 0 20px 20px;
8
  text-align: center;
9
  }
10
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card {
11
  position: relative;
12
  display: inline-block;
13
  width: 32.7%;
18
  float: none;
19
  vertical-align: top;
20
  }
21
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card:first-child {
22
  margin-left: 0;
23
  }
24
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .plugin-card-bottom {
25
  position: absolute;
26
  bottom: 0;
27
  right: 0;
28
  left: 0;
29
  }
30
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .plugin-card-top {
31
  min-height: 163px;
32
  }
33
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .desc,
34
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .name {
35
  margin-right: 0 !important;
36
  }
37
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .name h3 {
38
  font-size: 17px;
39
  margin-top: 0 !important;
40
  }
41
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .install-now {
42
  float: right;
43
  }
44
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .delete-now {
45
  float: right;
46
  margin-left: 5px;
47
  }
48
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .delete-now .dashicons,
49
+ #WBCR .wbc-factory-clearfy-232-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-232-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-232-components .plugin-card .plugin-card-premium-ribbon {
61
  position: absolute;
62
  bottom: 60px;
63
  right: 0;
73
  text-transform: uppercase;
74
  z-index: 1;
75
  }
76
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .plugin-card-free-ribbon {
77
  position: absolute;
78
  bottom: 60px;
79
  right: 0;
89
  text-transform: uppercase;
90
  z-index: 1;
91
  }
92
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card .plugin-card-freemium-ribbon {
93
  position: absolute;
94
  bottom: 60px;
95
  right: 0;
105
  text-transform: uppercase;
106
  z-index: 1;
107
  }
108
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card.premium {
109
  border-color: #e8d7b2;
110
  background-color: #fff9eb;
111
  }
112
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card.plugin-status-deactive {
113
  background-color: #f1f1f1;
114
  }
115
+ #WBCR .wbc-factory-clearfy-232-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-232-components .plugin-card.plugin-status-deactive .plugin-icon {
122
  opacity: 0.3;
123
  }
124
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card.plugin-status-deactive .desc {
125
  color: #afafaf;
126
  }
127
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card.plugin-status-deactive.premium {
128
  background-color: #f9f2f1;
129
  }
130
  @media screen and (max-width: 1750px) {
131
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card {
132
  width: 49%;
133
  }
134
  }
135
  @media screen and (max-width: 1350px) {
136
+ #WBCR .wbc-factory-clearfy-232-components .plugin-card {
137
  width: 100%;
138
  }
139
  }
libs/factory/clearfy/assets/css/libs/autocomplete.css CHANGED
@@ -5,39 +5,39 @@
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
  }
5
  *
6
  * @since 2.2.0
7
  */
8
+ #wbcr-factory-clearfy-232__search_options_form #wbcr-factory-clearfy-232__autocomplete {
9
  width: 100%;
10
  box-sizing: border-box;
11
  border-color: #d6d4d4;
12
  }
13
+ #wbcr-factory-clearfy-232__search_options_form.wbcr-factory-clearfy-232__autocomplete-wrap {
14
  padding: 10px;
15
  }
16
+ #wbcr-factory-clearfy-232__search_options_form .wbcr-factory-clearfy-232__autocomplete-label {
17
  display: block !important;
18
  }
19
+ .wbcr-factory-clearfy-232__autocomplete-suggestions {
20
  border: 1px solid #999;
21
  background: #FFF;
22
  overflow: auto;
23
  }
24
+ .wbcr-factory-clearfy-232__autocomplete-suggestion {
25
  padding: 2px 5px;
26
  white-space: nowrap;
27
  overflow: hidden;
28
  cursor: pointer;
29
  }
30
+ .wbcr-factory-clearfy-232__autocomplete-selected {
31
  background: #F0F0F0;
32
  }
33
+ .wbcr-factory-clearfy-232__autocomplete-suggestions strong {
34
  font-weight: normal;
35
  color: #3399FF;
36
  }
37
+ .wbcr-factory-clearfy-232__autocomplete-group {
38
  padding: 2px 5px;
39
  }
40
+ .wbcr-factory-clearfy-232__autocomplete-group strong {
41
  display: block;
42
  border-bottom: 1px solid #000;
43
  }
libs/factory/clearfy/assets/css/page-setup.css CHANGED
@@ -2,13 +2,13 @@
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;
@@ -16,29 +16,29 @@
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;
@@ -46,11 +46,11 @@
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;
@@ -60,7 +60,7 @@
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;
@@ -70,7 +70,7 @@
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%;
@@ -83,15 +83,15 @@
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;
@@ -99,67 +99,67 @@
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;
@@ -167,40 +167,40 @@
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;
@@ -208,18 +208,18 @@
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;
@@ -230,14 +230,14 @@
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;
@@ -248,87 +248,87 @@
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;
@@ -342,28 +342,28 @@
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;
@@ -374,50 +374,50 @@
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;
@@ -426,7 +426,7 @@
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;
@@ -438,16 +438,16 @@
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
  }
2
  margin: 0;
3
  padding: 0;
4
  }
5
+ .w-factory-clearfy-232__form-buttons {
6
  text-align: right;
7
  padding: 10px;
8
  background: #f7f7f7;
9
  border-top: 1px solid #e8e8e8;
10
  }
11
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__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;
16
  margin: 0;
17
  color: #8a8a8a;
18
  }
19
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__skip-button:active,
20
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__skip-button:hover,
21
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__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-232__form-buttons .w-factory-clearfy-232__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-232__form-buttons .w-factory-clearfy-232__continue-button:active,
35
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__continue-button:hover,
36
+ .w-factory-clearfy-232__form-buttons .w-factory-clearfy-232__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-232-setup {
42
  text-align: center;
43
  max-width: 900px;
44
  margin: 65px auto 24px;
46
  background: #f1f1f1;
47
  padding: 0;
48
  }
49
+ .w-factory-clearfy-232-setup__inner-wrap,
50
+ .w-factory-clearfy-232__setup-form .factory-form-layout {
51
  padding: 30px;
52
  }
53
+ .w-factory-clearfy-232-setup-steps {
54
  padding: 0 0 24px;
55
  margin: 0;
56
  list-style: none outside;
60
  display: -webkit-inline-box;
61
  display: inline-flex;
62
  }
63
+ .w-factory-clearfy-232-setup-steps li {
64
  width: 100%;
65
  float: left;
66
  padding: 0 0 0.8em;
70
  border-bottom: 4px solid #ccc;
71
  line-height: 1.4;
72
  }
73
+ .w-factory-clearfy-232-setup-steps li::before {
74
  content: "";
75
  border: 4px solid #ccc;
76
  border-radius: 100%;
83
  margin-bottom: -8px;
84
  background: #fff;
85
  }
86
+ .w-factory-clearfy-232-setup-steps li.active {
87
  border-color: #ff1c40 !important;
88
  color: #222;
89
  font-weight: 700;
90
  }
91
+ .w-factory-clearfy-232-setup-steps li.active::before {
92
  border-color: #ff1c40 !important;
93
  }
94
+ .w-factory-clearfy-232-setup-steps li a {
95
  color: #a16696;
96
  text-decoration: none;
97
  padding: 1.5em;
99
  position: relative;
100
  z-index: 1;
101
  }
102
+ .w-factory-clearfy-232-setup-steps li a:focus,
103
+ .w-factory-clearfy-232-setup-steps li a:hover {
104
  color: #111;
105
  text-decoration: underline;
106
  }
107
+ /*.w-factory-clearfy-232-setup-steps li.done {
108
  border-color: #f57d4f;
109
  color: #f57d4f
110
  }
111
 
112
+ .w-factory-clearfy-232-setup-steps li.done::before {
113
  border-color: #f57d4f;
114
  background: #f57d4f
115
  }*/
116
+ .w-factory-clearfy-232-setup .w-factory-clearfy-232-setup-actions {
117
  overflow: hidden;
118
  margin: 20px 0 0;
119
  position: relative;
120
  }
121
+ .w-factory-clearfy-232-setup-content p:last-child {
122
  margin-bottom: 0;
123
  }
124
+ .w-factory-clearfy-232-setup-content p.store-setup {
125
  margin-top: 0;
126
  }
127
+ .w-factory-clearfy-232-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-232-logo {
135
  text-align: center;
136
  }
137
+ .w-factory-clearfy-232-logo img {
138
  max-width: 250px;
139
  }
140
+ .w-factory-clearfy-232-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-232-setup-content table {
148
  font-size: 1em;
149
  line-height: 1.75;
150
  color: #666;
151
  }
152
+ .w-factory-clearfy-232-setup-content table thead {
153
  background: #f1f1f1;
154
  }
155
+ .w-factory-clearfy-232-setup-content table th,
156
+ .w-factory-clearfy-232-setup-content table td {
157
  padding: 10px 15px;
158
  }
159
+ .w-factory-clearfy-232-setup-content h1,
160
+ .w-factory-clearfy-232-setup-content h2,
161
+ .w-factory-clearfy-232-setup-content h3,
162
+ .w-factory-clearfy-232-setup-content table {
163
  margin: 0 0 20px;
164
  border: 0;
165
  padding: 0;
167
  clear: none;
168
  font-weight: 500;
169
  }
170
+ .w-factory-clearfy-232-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-232-setup-step__new_onboarding-welcome {
178
  font-size: 22px !important;
179
  }
180
+ .w-factory-clearfy-232-setup-content a {
181
  color: #f57d4f;
182
  }
183
+ .w-factory-clearfy-232-setup-content a:focus,
184
+ .w-factory-clearfy-232-setup-content a:hover {
185
  color: #111;
186
  }
187
+ .w-factory-clearfy-232-setup-content table.tax-rates {
188
  width: 100%;
189
  font-size: 0.92em;
190
  }
191
+ .w-factory-clearfy-232-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-232-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-232-setup-content table.tax-rates td input {
204
  outline: 0;
205
  border: 0;
206
  padding: 0;
208
  text-align: center;
209
  width: 100%;
210
  }
211
+ .w-factory-clearfy-232-setup-content table.tax-rates td.sort {
212
  cursor: move;
213
  color: #ccc;
214
  }
215
+ .w-factory-clearfy-232-setup-content table.tax-rates td.sort::before {
216
  content: "\f333";
217
  font-family: dashicons;
218
  }
219
+ .w-factory-clearfy-232-setup-content table.tax-rates td.readonly {
220
  background: #f5f5f5;
221
  }
222
+ .w-factory-clearfy-232-setup-content table.tax-rates .add {
223
  padding: 1em 0 0 1em;
224
  line-height: 1;
225
  font-size: 1em;
230
  position: relative;
231
  display: inline-block;
232
  }
233
+ .w-factory-clearfy-232-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-232-setup-content table.tax-rates .remove {
241
  padding: 1em 0 0 1em;
242
  line-height: 1;
243
  font-size: 1em;
248
  position: relative;
249
  display: inline-block;
250
  }
251
+ .w-factory-clearfy-232-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-232-setup-content .w-factory-clearfy-232-setup-pages {
259
  width: 100%;
260
  border-top: 1px solid #eee;
261
  }
262
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages thead th {
263
  display: none;
264
  }
265
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages .page-name {
266
  width: 30%;
267
  font-weight: 700;
268
  }
269
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages td,
270
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages th {
271
  padding: 14px 0;
272
  border-bottom: 1px solid #eee;
273
  }
274
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages td:first-child,
275
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages th:first-child {
276
  padding-right: 9px;
277
  }
278
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages th {
279
  padding-top: 0;
280
  }
281
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-pages .page-options p {
282
  color: #777;
283
  margin: 6px 0 0 24px;
284
  line-height: 1.75;
285
  }
286
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-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-232-setup-content .w-factory-clearfy-232-setup-pages .page-options p label {
294
  line-height: 1;
295
  }
296
  @media screen and (max-width: 782px) {
297
+ .w-factory-clearfy-232-setup-content .form-table tbody th {
298
  width: auto;
299
  }
300
  }
301
+ .w-factory-clearfy-232-setup-content .twitter-share-button {
302
  float: right;
303
  }
304
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps {
305
  overflow: hidden;
306
  margin: 0 0 24px;
307
  padding-bottom: 2px;
308
  }
309
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps h2 {
310
  margin-bottom: 12px;
311
  }
312
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps .w-factory-clearfy-232-setup-next-steps-first {
313
  float: left;
314
  width: 50%;
315
  box-sizing: border-box;
316
  }
317
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps .w-factory-clearfy-232-setup-next-steps-last {
318
  float: right;
319
  width: 50%;
320
  box-sizing: border-box;
321
  }
322
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul {
323
  padding: 0 2em 0 0;
324
  list-style: none outside;
325
  margin: 0;
326
  }
327
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul li a {
328
  display: block;
329
  padding: 0 0 0.75em;
330
  }
331
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button {
332
  background-color: #f7f7f7;
333
  border-color: #ccc;
334
  color: #23282d;
342
  padding: 1em;
343
  text-align: center;
344
  }
345
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button:active,
346
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button:focus,
347
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button:hover {
348
  background: #f5f5f5;
349
  border-color: #aaa;
350
  }
351
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-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-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button-primary:active,
359
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .setup-product a.button-primary:focus,
360
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-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-232-setup-content .w-factory-clearfy-232-setup-next-steps ul li a::before {
367
  color: #82878c;
368
  font: 400 20px/1 dashicons;
369
  speak: none;
374
  text-decoration: none !important;
375
  vertical-align: top;
376
  }
377
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .learn-more a::before {
378
  content: "\f105";
379
  }
380
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .video-walkthrough a::before {
381
  content: "\f126";
382
  }
383
+ .w-factory-clearfy-232-setup-content .w-factory-clearfy-232-setup-next-steps ul .newsletter a::before {
384
  content: "\f465";
385
  }
386
+ .w-factory-clearfy-232-setup-content .updated,
387
+ .w-factory-clearfy-232-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-232-setup-content .updated p,
394
+ .w-factory-clearfy-232-setup-content .woocommerce-newsletter p {
395
  padding: 0;
396
  margin: 0 0 12px;
397
  }
398
+ .w-factory-clearfy-232-setup-content .updated form,
399
+ .w-factory-clearfy-232-setup-content .updated p:last-child,
400
+ .w-factory-clearfy-232-setup-content .woocommerce-newsletter form,
401
+ .w-factory-clearfy-232-setup-content .woocommerce-newsletter p:last-child {
402
  margin: 0 0 24px;
403
  }
404
+ .w-factory-clearfy-232-setup-content .checkbox input[type=checkbox] {
405
  opacity: 0;
406
  position: absolute;
407
  left: -9999px;
408
  }
409
+ .w-factory-clearfy-232-setup-content .checkbox label {
410
  position: relative;
411
  display: inline-block;
412
  padding-left: 28px;
413
  }
414
+ .w-factory-clearfy-232-setup-content .checkbox label::after,
415
+ .w-factory-clearfy-232-setup-content .checkbox label::before {
416
  position: absolute;
417
  content: "";
418
  display: inline-block;
419
  }
420
+ .w-factory-clearfy-232-setup-content .checkbox label::before {
421
  height: 16px;
422
  width: 16px;
423
  left: 0;
426
  background-color: #fff;
427
  border-radius: 3px;
428
  }
429
+ .w-factory-clearfy-232-setup-content .checkbox label::after {
430
  height: 5px;
431
  width: 9px;
432
  border-left: 2px solid;
438
  top: 7px;
439
  color: #fff;
440
  }
441
+ .w-factory-clearfy-232-setup-content .checkbox input[type=checkbox] + label::after {
442
  content: none;
443
  }
444
+ .w-factory-clearfy-232-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
  content: "";
446
  }
447
+ .w-factory-clearfy-232-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
  outline: #3b99fc auto 5px;
449
  }
450
+ .w-factory-clearfy-232-setup-content .checkbox input[type=checkbox]:checked + label::before {
451
  background: #935687;
452
  border-color: #935687;
453
  }
libs/factory/clearfy/assets/js/clearfy-globals.js CHANGED
@@ -2,8 +2,8 @@
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
  *
@@ -13,16 +13,16 @@
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
  *
@@ -68,12 +68,12 @@
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;
@@ -98,13 +98,13 @@
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
 
@@ -121,7 +121,7 @@
121
 
122
  };
123
 
124
- $.wfactory_436.hooks.add('core/components/pre_activate', function(button) {
125
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
  if( !$('#WBCR').length ) {
127
  return false;
@@ -137,7 +137,7 @@
137
  }
138
  });
139
 
140
- $.wfactory_436.hooks.add('core/components/deactivated', function(button, data, response) {
141
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
  if( !$('#WBCR').length ) {
143
  return false;
@@ -156,7 +156,7 @@
156
  }
157
  });
158
 
159
- $.wfactory_436.hooks.add('core/components/deleted', function(button) {
160
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
  if( !$('#WBCR').length ) {
162
  return false;
@@ -175,32 +175,32 @@
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;
@@ -209,13 +209,13 @@
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);
2
  * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
  * и самого Clearfy.
4
  *
5
+ * $.wbcr_factory_clearfy_232.app - методы для работы с приложением. Скрыть, показать уведомления.
6
+ * $.wbcr_factory_clearfy_232.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
  *
8
  * Copyright 2018, Webcraftic, http://webcraftic.com
9
  *
13
  (function($) {
14
  'use strict';
15
 
16
+ if( !$.wbcr_factory_clearfy_232 ) {
17
+ $.wbcr_factory_clearfy_232 = {};
18
  }
19
 
20
  //todo: Переопредление для совместимости со старыми версиями плагинов.
21
+ $.wbcr_factory_clearfy_232.filters = $.wbcr_factory_clearfy_232.filters || $.wfactory_441.filters;
22
  //todo: Переопредление для совместимости со старыми версиями плагинов.
23
+ $.wbcr_factory_clearfy_232.hooks = $.wbcr_factory_clearfy_232.hooks || $.wfactory_441.hooks;
24
 
25
+ $.wbcr_factory_clearfy_232.app = $.wbcr_factory_clearfy_232.app || {
26
  /**
27
  * Создает и показывает уведомление внутри интерфейса Clearfy
28
  *
68
  /**
69
  * Хук выполняет проивольную функцию, после того как уведомление отображено
70
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
+ * Пример регистрации хука $.wfactory_441.hooks.add('wbcr/factory_clearfy_232/updated',
72
  * function(noticeId) {});
73
  * @param {string} noticeId - id уведомления
74
  */
75
+ $.wfactory_441.hooks.run('wbcr/factory_clearfy_232/showed_notice', [noticeId]);
76
+ $.wfactory_441.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
77
  });
78
 
79
  return noticeId;
98
  /**
99
  * Хук выполняет проивольную функцию, после того как уведомление скрыто
100
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
101
+ * Пример регистрации хука $.wfactory_441.hooks.add('wbcr/factory_clearfy_232/updated',
102
  * function(noticeId)
103
  * {});
104
  * @param {string} noticeId - id уведомления
105
  */
106
+ $.wfactory_441.hooks.run('wbcr/factory_clearfy_232/hidded_notice', [noticeId]);
107
+ $.wfactory_441.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
  });
109
  },
110
 
121
 
122
  };
123
 
124
+ $.wfactory_441.hooks.add('core/components/pre_activate', function(button) {
125
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
  if( !$('#WBCR').length ) {
127
  return false;
137
  }
138
  });
139
 
140
+ $.wfactory_441.hooks.add('core/components/deactivated', function(button, data, response) {
141
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
  if( !$('#WBCR').length ) {
143
  return false;
156
  }
157
  });
158
 
159
+ $.wfactory_441.hooks.add('core/components/deleted', function(button) {
160
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
  if( !$('#WBCR').length ) {
162
  return false;
175
  }
176
  });
177
 
178
+ $.wfactory_441.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_232) ) {
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_232.app.showNotice(response.data.error_message, 'danger');
188
  }
189
  });
190
 
191
+ $.wfactory_441.hooks.add('core/components/update_error', function(button, data, response) {
192
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_232) ) {
194
  return false;
195
  }
196
 
197
  if( response.data && response.data.error_message ) {
198
+ $.wbcr_factory_clearfy_232.app.showNotice(response.data.error_message, 'danger');
199
  }
200
 
201
  });
202
 
203
+ $.wfactory_441.hooks.add('core/components/activated', function(button, data, response) {
204
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
205
  if( !$('#WBCR').length ) {
206
  return false;
209
  button.closest('.plugin-card').removeClass('plugin-status-deactive');
210
  });
211
 
212
+ $.wfactory_441.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
+ if( !($('#WBCR').length && $.wbcr_factory_clearfy_232) ) {
215
  return false;
216
  }
217
 
218
+ $.wbcr_factory_clearfy_232.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
219
  });
220
 
221
  })(jQuery);
libs/factory/clearfy/assets/js/clearfy-license-manager.js CHANGED
@@ -20,7 +20,7 @@ jQuery(function($) {
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,7 +53,7 @@ jQuery(function($) {
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,7 +63,7 @@ jQuery(function($) {
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,7 +80,7 @@ jQuery(function($) {
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
  }
20
  licenseAction = $(this).data('action');
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
+ $.wbcr_factory_clearfy_232.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_232.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_232.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_232.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
libs/factory/clearfy/assets/js/clearfy-search-options.js CHANGED
@@ -28,10 +28,10 @@
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
  });
28
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
29
  }
30
 
31
+ $('#wbcr-factory-clearfy-232__autocomplete').wfactory_clearfy_autocomplete({
32
  lookup: wfactory_clearfy_search_options,
33
  onSelect: function(suggestion) {
34
+ $('#wbcr-factory-clearfy-232__autocomplete').prop("disabled", true);
35
  window.location.href = suggestion.data.page_url;
36
  }
37
  });
libs/factory/clearfy/assets/js/clearfy-widgets.js ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(function($) {
2
+ $('#wbcr-factory-subscribe-widget__subscribe-form').submit(function(e) {
3
+ e.preventDefault();
4
+ var agree = $(this).find('[name=agree_terms]:checked'),
5
+ pluginName = $('#wbcr-factory-subscribe-widget__plugin-name').val(),
6
+ email = $('#wbcr-factory-subscribe-widget__email').val(),
7
+ groupId = $('#wbcr-factory-subscribe-widget__group-id').val();
8
+
9
+ if( agree.length === 0 ) {
10
+ return;
11
+ }
12
+
13
+ $.ajax({
14
+ method: "POST",
15
+ url: ajaxurl,
16
+ dataType: 'json',
17
+ data: {
18
+ action: 'wbcr-clearfy-subscribe-for-' + pluginName,
19
+ email: email,
20
+ group_id: groupId,
21
+ plugin_name: pluginName,
22
+ _wpnonce: $(this).data('nonce')
23
+ },
24
+ success: function(response) {
25
+ if( !response || !response.success ) {
26
+ if( response.data ) {
27
+ console.log(response.data.error_message);
28
+ noticeId = $.wbcr_factory_clearfy_232.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
29
+ setTimeout(function() {
30
+ $.wbcr_factory_clearfy_232.app.hideNotice(noticeId);
31
+ }, 5000);
32
+ } else {
33
+ console.log(response);
34
+ }
35
+
36
+ return;
37
+ }
38
+
39
+ if( response.data ) {
40
+ $(".wbcr-factory-subscribe-widget__text").hide();
41
+
42
+ if( response.data.subscribed ) {
43
+ $(".wbcr-factory-subscribe-widget__text--success").show();
44
+ } else {
45
+ $(".wbcr-factory-subscribe-widget__text--success2").show();
46
+ }
47
+ }
48
+ },
49
+ error: function(xhr, ajaxOptions, thrownError) {
50
+
51
+ console.log(xhr.status);
52
+ console.log(xhr.responseText);
53
+ console.log(thrownError);
54
+
55
+ var noticeId = $.wbcr_factory_clearfy_232.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
56
+ setTimeout(function() {
57
+ $.wbcr_factory_clearfy_232.app.hideNotice(noticeId);
58
+ }, 5000);
59
+ }
60
+ });
61
+ });
62
+ });
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-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)});
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-232__autocomplete-selected",suggestion:"wbcr-factory-clearfy-232__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-232__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-232__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
@@ -14,22 +14,22 @@ 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() ) {
@@ -37,14 +37,14 @@ if( is_admin() ) {
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;
@@ -72,18 +72,18 @@ if( is_admin() ) {
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
  }
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_CLEARFY_232_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_CLEARFY_232_LOADED', true);
22
 
23
+ define('FACTORY_CLEARFY_232', '2.3.2');
24
 
25
+ define('FACTORY_CLEARFY_232_DIR', dirname(__FILE__));
26
+ define('FACTORY_CLEARFY_232_URL', plugins_url(null, __FILE__));
27
 
28
+ load_plugin_textdomain('wbcr_factory_clearfy_232', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
+ require(FACTORY_CLEARFY_232_DIR . '/includes/ajax-handlers.php');
31
+ require(FACTORY_CLEARFY_232_DIR . '/includes/class-helpers.php');
32
+ require(FACTORY_CLEARFY_232_DIR . '/includes/class-configurate.php');
33
 
34
  // module provides function only for the admin area
35
  if( is_admin() ) {
37
  * Подключаем скрипты для установки компонентов Clearfy
38
  * на все страницы админпанели.
39
  */
40
+ add_action('admin_enqueue_scripts', function ($hook) {
41
+ wp_enqueue_script('wbcr-factory-clearfy-232-global', FACTORY_CLEARFY_232_URL . '/assets/js/clearfy-globals.js', [
42
  'jquery',
43
+ 'wfactory-441-core-general'
44
+ ], FACTORY_CLEARFY_232);
45
 
46
+ require_once FACTORY_CLEARFY_232_DIR . '/includes/class-search-options.php';
47
+ $all_options = \WBCR\Factory_Clearfy_232\Search_Options::get_all_options();
48
 
49
  if( empty($all_options) ) {
50
  return;
72
  return;
73
  }
74
 
75
+ wp_localize_script('wbcr-factory-clearfy-232-global', 'wfactory_clearfy_search_options', $formated_options);
76
  });
77
 
78
+ if( defined('FACTORY_PAGES_440_LOADED') ) {
79
+ require(FACTORY_CLEARFY_232_DIR . '/pages/class-pages.php');
80
+ require(FACTORY_CLEARFY_232_DIR . '/pages/class-page-more-features.php');
81
+ require(FACTORY_CLEARFY_232_DIR . '/pages/class-page-license.php');
82
+ require(FACTORY_CLEARFY_232_DIR . '/pages/class-pages-components.php');
83
 
84
+ require(FACTORY_CLEARFY_232_DIR . '/pages/setup-parts/class-step.php');
85
+ require(FACTORY_CLEARFY_232_DIR . '/pages/setup-parts/class-step-form.php');
86
+ require(FACTORY_CLEARFY_232_DIR . '/pages/setup-parts/class-step-custom.php');
87
+ require(FACTORY_CLEARFY_232_DIR . '/pages/class-page-setup.php');
88
  }
89
  }
libs/factory/clearfy/includes/ajax-handlers.php CHANGED
@@ -8,60 +8,117 @@
8
  */
9
 
10
  // Exit if accessed directly
11
- if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  /**
16
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
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
 
27
- if ( ( $plugin_instance->getPluginName() !== $plugin_name ) || ! $plugin_instance->current_user_can() ) {
28
- wp_die( - 1, 403 );
29
  }
30
 
31
- $action = $plugin_instance->request->post( 'license_action', false, true );
32
- $license_key = $plugin_instance->request->post( 'licensekey', null );
33
 
34
- check_admin_referer( "clearfy_activate_license_for_{$plugin_name}" );
35
 
36
- if ( empty( $action )
8
  */
9
 
10
  // Exit if accessed directly
11
+ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
+ /**
16
+ * Обработчик ajax запросов для виджета подписки на новости
17
+ *
18
+ * @param Wbcr_Factory441_Plugin $plugin_instance
19
+ *
20
+ * @since 2.3.0
21
+ *
22
+ */
23
+ function wbcr_factory_clearfy_232_subscribe($plugin_instance)
24
+ {
25
+ $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
26
+
27
+ if( ($plugin_instance->getPluginName() !== $plugin_name) || !$plugin_instance->current_user_can() ) {
28
+ wp_die(-1, 403);
29
+ }
30
+
31
+ $email = $plugin_instance->request->post('email', null, true);
32
+ $group_id = $plugin_instance->request->post('group_id', null, true);
33
+
34
+ check_admin_referer("clearfy_subscribe_for_{$plugin_name}");
35
+
36
+ if( empty($email) || !filter_var($email, FILTER_VALIDATE_EMAIL) ) {
37
+ wp_send_json_error(['error_message' => __('You did not send your email address or it is incorrect!', 'wbcr_factory_clearfy_232')]);
38
+ }
39
+
40
+ if( empty($group_id) ) {
41
+ wp_send_json_error(['error_message' => __('Group ID is empty!', 'wbcr_factory_clearfy_232')]);
42
+ }
43
+
44
+ $response = wp_remote_post('https://clearfy.pro/wp-json/mailerlite/v1/subscribe/', [
45
+ 'body' => [
46
+ 'email' => $email,
47
+ 'group_id' => $group_id
48
+ ]
49
+ ]);
50
+
51
+ if( is_wp_error($response) ) {
52
+ wp_send_json_error(['error_message' => $response->get_error_message()]);
53
+ }
54
+
55
+ $data = @json_decode(wp_remote_retrieve_body($response), ARRAY_A);
56
+
57
+ if( isset($data['message']) ) {
58
+ wp_send_json_error(['error_message' => $data['message'], 'error_code' => $data['code']]);
59
+ }
60
+
61
+ if( isset($data['subscribed']) ) {
62
+ $plugin_instance->updatePopulateOption('factory_clearfy_user_subsribed', 1);
63
+ wp_send_json_success(['subscribed' => $data['subscribed']]);
64
+ }
65
+
66
+ wp_send_json_error(['error_message' => __('Unknown error while trying to subscribe to newsletter.', 'wbcr_factory_clearfy_232')]);
67
+
68
+ die();
69
+ }
70
+
71
  /**
72
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
73
  *
74
+ * @param Wbcr_Factory441_Plugin $plugin_instance
75
  *
76
+ * @since 2.0.7
77
  *
78
  */
79
+ function wbcr_factory_clearfy_232_check_license($plugin_instance)
80
+ {
81
 
82
+ $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
83
 
84
+ if( ($plugin_instance->getPluginName() !== $plugin_name) || !$plugin_instance->current_user_can() ) {
85
+ wp_die(-1, 403);
86
  }
87
 
88
+ $action = $plugin_instance->request->post('license_action', false, true);
89
+ $license_key = $plugin_instance->request->post('licensekey', null);
90
 
91
+ check_admin_referer("clearfy_activate_license_for_{$plugin_name}");
92