Simple Google Analytics - Version 3.2.4

Version Description

(24.03.2022) = * Added: Compatibility with Disable admin notices plugin

Download this release

Release Info

Developer alexkovalevv
Plugin Icon 128x128 Simple Google Analytics
Version 3.2.4
Comparing to
See all releases

Code changes from version 3.2.2 to 3.2.4

Files changed (164) hide show
  1. admin/activation.php +2 -2
  2. admin/boot.php +2 -2
  3. admin/options.php +1 -1
  4. admin/pages/class-pages-general-settings.php +3 -3
  5. admin/pages/class-pages-more-features.php +1 -1
  6. clearfy.php +1 -1
  7. includes/class-plugin.php +3 -3
  8. includes/classes/class-configurate-ga.php +1 -1
  9. libs/factory/adverts/boot.php +13 -13
  10. libs/factory/adverts/includes/class-base.php +6 -6
  11. libs/factory/adverts/includes/class-dashboard-widget.php +4 -4
  12. libs/factory/adverts/includes/class-rest-request.php +4 -4
  13. libs/factory/adverts/langs/{wbcr_factory_adverts_124-ru_RU.mo → wbcr_factory_adverts_131-ru_RU.mo} +0 -0
  14. libs/factory/adverts/langs/{wbcr_factory_adverts_124-ru_RU.po → wbcr_factory_adverts_131-ru_RU.po} +0 -0
  15. libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css +2 -2
  16. libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css +2 -2
  17. libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css +2 -2
  18. libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css +2 -16
  19. libs/factory/bootstrap/assets/css-min/bootstrap.datepicker.min.css +2 -8
  20. libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css +2 -2
  21. libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css +2 -2
  22. libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css +2 -2
  23. libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css +2 -2
  24. libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css +2 -2
  25. libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css +2 -2
  26. libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css +2 -2
  27. libs/factory/bootstrap/assets/css-min/control.checkbox.min.css +2 -2
  28. libs/factory/bootstrap/assets/css-min/control.dropdown.min.css +2 -2
  29. libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css +2 -2
  30. libs/factory/bootstrap/assets/css-min/holder.more-link.min.css +2 -2
  31. libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js +2 -2
  32. libs/factory/bootstrap/assets/js-min/bootstrap.tooltip.min.js +1 -1
  33. libs/factory/bootstrap/assets/js-min/control.checkbox.min.js +2 -2
  34. libs/factory/bootstrap/assets/js-min/control.dropdown.min.js +2 -2
  35. libs/factory/bootstrap/assets/js-min/control.list.min.js +2 -2
  36. libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js +2 -2
  37. libs/factory/bootstrap/boot.php +9 -9
  38. libs/factory/bootstrap/includes/functions.php +74 -68
  39. libs/factory/core/ajax/install-addons.php +10 -10
  40. libs/factory/core/assets/js/core-components.js +14 -14
  41. libs/factory/core/assets/js/core-general.js +6 -6
  42. libs/factory/core/boot.php +33 -33
  43. libs/factory/core/includes/activation/class-factory-activator.php +3 -3
  44. libs/factory/core/includes/activation/class-factory-update.php +3 -3
  45. libs/factory/core/includes/assets-managment/class-factory-assets-list.php +4 -4
  46. libs/factory/core/includes/assets-managment/class-factory-script-list.php +2 -2
  47. libs/factory/core/includes/assets-managment/class-factory-style-list.php +1 -1
  48. libs/factory/core/includes/class-check-compatibility.php +3 -3
  49. libs/factory/core/includes/class-factory-migrations.php +13 -13
  50. libs/factory/core/includes/class-factory-notices.php +7 -7
  51. libs/factory/core/includes/class-factory-options.php +2 -2
  52. libs/factory/core/includes/class-factory-plugin-abstract.php +71 -71
  53. libs/factory/core/includes/class-factory-plugin-base.php +113 -96
  54. libs/factory/core/includes/class-factory-requests.php +1 -1
  55. libs/factory/core/includes/class-factory-requirements.php +6 -6
  56. libs/factory/core/includes/components/class-delete-component-button.php +1 -1
  57. libs/factory/core/includes/components/class-install-component-button.php +11 -11
  58. libs/factory/core/includes/entities/class-factory-paths.php +1 -1
  59. libs/factory/core/includes/entities/class-factory-support.php +1 -1
  60. libs/factory/core/includes/functions.php +7 -7
  61. libs/factory/core/includes/premium/class-factory-license-interface.php +1 -1
  62. libs/factory/core/includes/premium/class-factory-manager.php +8 -8
  63. libs/factory/core/includes/premium/class-factory-provider-abstract.php +6 -6
  64. libs/factory/core/includes/updates/class-factory-premium-upgrader.php +11 -11
  65. libs/factory/core/includes/updates/class-factory-upgrader.php +9 -9
  66. libs/factory/core/includes/updates/repositories/class-factory-github.php +5 -5
  67. libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php +5 -5
  68. libs/factory/core/includes/updates/repositories/class-factory-wordpress.php +4 -4
  69. libs/factory/core/langs/{wbcr_factory_446-ru_RU.mo → wbcr_factory_454-ru_RU.mo} +0 -0
  70. libs/factory/core/langs/{wbcr_factory_446-ru_RU.po → wbcr_factory_454-ru_RU.po} +0 -0
  71. libs/factory/forms/boot.php +95 -95
  72. libs/factory/forms/controls/checkbox.php +7 -7
  73. libs/factory/forms/controls/color-and-opacity.php +4 -4
  74. libs/factory/forms/controls/color.php +2 -2
  75. libs/factory/forms/controls/customs/html.php +2 -2
  76. libs/factory/forms/controls/customs/separator.php +2 -2
  77. libs/factory/forms/controls/datepicker-range.php +4 -4
  78. libs/factory/forms/controls/dropdown-and-colors.php +6 -6
  79. libs/factory/forms/controls/dropdown.php +7 -7
  80. libs/factory/forms/controls/font.php +11 -11
  81. libs/factory/forms/controls/google-font.php +8 -8
  82. libs/factory/forms/controls/gradient.php +4 -4
  83. libs/factory/forms/controls/hidden.php +2 -2
  84. libs/factory/forms/controls/holders/accordion-item.php +2 -2
  85. libs/factory/forms/controls/holders/accordion.php +2 -2
  86. libs/factory/forms/controls/holders/columns.php +2 -2
  87. libs/factory/forms/controls/holders/control-group-item.php +2 -2
  88. libs/factory/forms/controls/holders/control-group.php +3 -3
  89. libs/factory/forms/controls/holders/div.php +2 -2
  90. libs/factory/forms/controls/holders/form-group.php +2 -2
  91. libs/factory/forms/controls/holders/more-link.php +55 -57
  92. libs/factory/forms/controls/holders/tab-item.php +2 -2
  93. libs/factory/forms/controls/holders/tab.php +4 -4
  94. libs/factory/forms/controls/integer.php +2 -2
  95. libs/factory/forms/controls/list.php +4 -4
  96. libs/factory/forms/controls/multiple-textbox.php +4 -4
  97. libs/factory/forms/controls/paddings-editor.php +3 -3
  98. libs/factory/forms/controls/pattern.php +9 -9
  99. libs/factory/forms/controls/radio-colors.php +3 -3
  100. libs/factory/forms/controls/radio.php +3 -3
  101. libs/factory/forms/controls/textarea.php +2 -2
  102. libs/factory/forms/controls/textbox.php +2 -2
  103. libs/factory/forms/controls/url.php +3 -3
  104. libs/factory/forms/controls/wp-editor.php +6 -4
  105. libs/factory/forms/includes/complex-control.class.php +4 -4
  106. libs/factory/forms/includes/control-holder.class.php +5 -5
  107. libs/factory/forms/includes/control.class.php +5 -5
  108. libs/factory/forms/includes/custom-element.class.php +2 -2
  109. libs/factory/forms/includes/form-element.class.php +7 -7
  110. libs/factory/forms/includes/form-layout.class.php +5 -5
  111. libs/factory/forms/includes/form.class.php +39 -39
  112. libs/factory/forms/includes/holder.class.php +6 -6
  113. libs/factory/forms/includes/html-builder.class.php +2 -2
  114. libs/factory/forms/includes/providers/meta-value-provider.class.php +2 -2
  115. libs/factory/forms/includes/providers/options-value-provider.class.php +3 -3
  116. libs/factory/forms/includes/providers/value-provider.interface.php +2 -2
  117. libs/factory/forms/langs/{wbcr_factory_forms_443-ru_RU.mo → wbcr_factory_forms_451-ru_RU.mo} +0 -0
  118. libs/factory/forms/langs/{wbcr_factory_forms_443-ru_RU.po → wbcr_factory_forms_451-ru_RU.po} +0 -0
  119. libs/factory/forms/layouts/bootstrap-3/bootstrap-3.php +10 -10
  120. libs/factory/pages/boot.php +10 -10
  121. libs/factory/pages/includes/admin-page.class.php +6 -6
  122. libs/factory/pages/includes/page.class.php +7 -7
  123. libs/factory/pages/langs/{wbcr_factory_pages_445-fr_FR.mo → wbcr_factory_pages_453-fr_FR.mo} +0 -0
  124. libs/factory/pages/langs/{wbcr_factory_pages_445-fr_FR.po → wbcr_factory_pages_453-fr_FR.po} +0 -0
  125. libs/factory/pages/langs/{wbcr_factory_pages_445-ru_RU.mo → wbcr_factory_pages_453-ru_RU.mo} +0 -0
  126. libs/factory/pages/langs/{wbcr_factory_pages_445-ru_RU.po → wbcr_factory_pages_453-ru_RU.po} +0 -0
  127. libs/factory/pages/pages.php +11 -11
  128. libs/factory/pages/templates/assets/css/impressive.page.template.css +0 -552
  129. libs/factory/pages/templates/assets/css/impressive.page.template.css.map +0 -1
  130. libs/factory/pages/templates/assets/css/impressive.page.template.less +0 -701
  131. libs/factory/pages/templates/assets/img/5-stars22.png +0 -0
  132. libs/factory/pages/templates/assets/img/paypal-donate.png +0 -0
  133. libs/factory/pages/templates/assets/img/webcraftic-plugin-icon.png +0 -0
  134. libs/factory/pages/templates/impressive-page.class.php +0 -906
  135. libs/factory/pages/templates/index.php +0 -2
  136. libs/factory/templates/assets/css/clearfy-base.css +25 -25
  137. libs/factory/templates/assets/css/components.css +24 -24
  138. libs/factory/templates/assets/css/libs/autocomplete.css +12 -12
  139. libs/factory/templates/assets/css/page-setup.css +102 -102
  140. libs/factory/templates/assets/js/clearfy-globals.js +26 -26
  141. libs/factory/templates/assets/js/clearfy-license-manager.js +4 -4
  142. libs/factory/templates/assets/js/clearfy-search-options.js +2 -2
  143. libs/factory/templates/assets/js/clearfy-widgets.js +4 -4
  144. libs/factory/templates/assets/js/libs/jquery.autocomplete.min.js +1 -1
  145. libs/factory/templates/boot.php +26 -26
  146. libs/factory/templates/includes/ajax-handlers.php +13 -13
  147. libs/factory/templates/includes/class-configurate.php +3 -3
  148. libs/factory/templates/includes/class-helpers.php +1 -1
  149. libs/factory/templates/includes/class-search-options.php +1 -1
  150. libs/factory/templates/pages/class-page-license.php +38 -38
  151. libs/factory/templates/pages/class-page-more-features.php +25 -25
  152. libs/factory/templates/pages/class-page-setup.php +18 -18
  153. libs/factory/templates/pages/class-pages-components.php +19 -19
  154. libs/factory/templates/pages/setup-parts/class-step-custom.php +7 -7
  155. libs/factory/templates/pages/setup-parts/class-step-form.php +12 -12
  156. libs/factory/templates/pages/setup-parts/class-step.php +5 -5
  157. libs/factory/templates/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css +126 -126
  158. libs/factory/templates/pages/templates/impressive-lite/class-page-template-impressive-lite.php +23 -23
  159. libs/factory/templates/pages/templates/impressive/assets/css/impressive.page.template.css +125 -125
  160. libs/factory/templates/pages/templates/impressive/class-page-template-impressive.php +36 -36
  161. libs/factory/templates/pages/templates/impressive/class-pages.php +57 -57
  162. migrations/030002.php +1 -1
  163. readme.txt +8 -1
  164. simple_google_analytics.php +7 -7
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 Factory446_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGA_Activation extends Wbcr_Factory446_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 Factory454_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGA_Activation extends Wbcr_Factory454_Activator {
18
 
19
  /**
20
  * Runs activation actions.
admin/boot.php CHANGED
@@ -21,9 +21,9 @@ if( !defined('ABSPATH') ) {
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
23
  *
24
- * @param Wbcr_FactoryPages445_ImpressiveThemplate $page
25
  *
26
- * @param Wbcr_Factory446_Plugin $plugin
27
  *
28
  * @return void
29
  * @since 3.0.1
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
23
  *
24
+ * @param Wbcr_FactoryPages453_ImpressiveThemplate $page
25
  *
26
+ * @param Wbcr_Factory454_Plugin $plugin
27
  *
28
  * @return void
29
  * @since 3.0.1
admin/options.php CHANGED
@@ -151,7 +151,7 @@ function wbcr_ga_get_plugin_options()
151
 
152
  /**
153
  * @param $form
154
- * @param $page Wbcr_FactoryPages445_ImpressiveThemplate
155
  *
156
  * @return mixed
157
  */
151
 
152
  /**
153
  * @param $form
154
+ * @param $page Wbcr_FactoryPages453_ImpressiveThemplate
155
  *
156
  * @return mixed
157
  */
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\Factory_Templates_103\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -48,9 +48,9 @@ class WGA_CachePage extends WBCR\Factory_Templates_103\Pages\PageBase {
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
- * @param Wbcr_Factory446_Plugin $plugin
52
  */
53
- public function __construct( Wbcr_Factory446_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\Factory_Templates_106\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory454_Plugin $plugin
52
  */
53
+ public function __construct( Wbcr_Factory454_Plugin $plugin ) {
54
  $this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
55
 
56
  if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
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\Factory_Templates_103\Pages\MoreFeatures {
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\Factory_Templates_106\Pages\MoreFeatures {
20
 
21
  }
clearfy.php CHANGED
@@ -15,7 +15,7 @@ if( !defined('ABSPATH') ) {
15
  }
16
 
17
  if( !defined('WGA_PLUGIN_ACTIVE') ) {
18
- define('WGA_PLUGIN_VERSION', '3.2.2');
19
  define('WGA_TEXT_DOMAIN', 'simple-google-analytics');
20
  define('WGA_PLUGIN_ACTIVE', true);
21
 
15
  }
16
 
17
  if( !defined('WGA_PLUGIN_ACTIVE') ) {
18
+ define('WGA_PLUGIN_VERSION', '3.2.4');
19
  define('WGA_TEXT_DOMAIN', 'simple-google-analytics');
20
  define('WGA_PLUGIN_ACTIVE', true);
21
 
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_Factory446_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory446_Plugin
18
  */
19
  private static $app;
20
 
@@ -59,7 +59,7 @@ class WGA_Plugin extends Wbcr_Factory446_Plugin {
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
- * @return \Wbcr_Factory446_Plugin|\WGA_Plugin
63
  */
64
  public static function app()
65
  {
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_Factory454_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory454_Plugin
18
  */
19
  private static $app;
20
 
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
+ * @return \Wbcr_Factory454_Plugin|\WGA_Plugin
63
  */
64
  public static function app()
65
  {
includes/classes/class-configurate-ga.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WGA_ConfigGACache extends WBCR\Factory_Templates_103\Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
12
  exit;
13
  }
14
 
15
+ class WGA_ConfigGACache extends WBCR\Factory_Templates_106\Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
libs/factory/adverts/boot.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- use WBCR\Factory_Adverts_124\Base;
4
 
5
  /**
6
  * Factory Adverts
@@ -12,7 +12,7 @@ use WBCR\Factory_Adverts_124\Base;
12
  * @package factory-ad-inserter
13
  * @copyright (c) 2019, Webcraftic Ltd
14
  *
15
- * @version 1.2.3
16
  */
17
 
18
  // Exit if accessed directly
@@ -20,31 +20,31 @@ if( !defined('ABSPATH') ) {
20
  exit;
21
  }
22
 
23
- if( defined('FACTORY_ADVERTS_124_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
- define('FACTORY_ADVERTS_124_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
- define('FACTORY_ADVERTS_124_VERSION', '1.2.4');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
- load_plugin_textdomain('wbcr_factory_adverts_124', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
- define('FACTORY_ADVERTS_124_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
- define('FACTORY_ADVERTS_124_URL', plugins_url(null, __FILE__));
41
 
42
- require_once(FACTORY_ADVERTS_124_DIR . '/includes/class-rest-request.php');
43
- require_once(FACTORY_ADVERTS_124_DIR . '/includes/class-base.php');
44
 
45
  /**
46
- * @param Wbcr_Factory446_Plugin $plugin
47
  */
48
- add_action('wbcr_factory_adverts_124_plugin_created', function ($plugin) {
49
- $plugin->set_adverts_manager("WBCR\Factory_Adverts_124\Base");
50
  });
1
  <?php
2
 
3
+ use WBCR\Factory_Adverts_131\Base;
4
 
5
  /**
6
  * Factory Adverts
12
  * @package factory-ad-inserter
13
  * @copyright (c) 2019, Webcraftic Ltd
14
  *
15
+ * @version 1.2.4
16
  */
17
 
18
  // Exit if accessed directly
20
  exit;
21
  }
22
 
23
+ if( defined('FACTORY_ADVERTS_131_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
+ define('FACTORY_ADVERTS_131_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
+ define('FACTORY_ADVERTS_131_VERSION', '1.3.1');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
+ load_plugin_textdomain('wbcr_factory_adverts_131', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
+ define('FACTORY_ADVERTS_131_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
+ define('FACTORY_ADVERTS_131_URL', plugins_url(null, __FILE__));
41
 
42
+ require_once(FACTORY_ADVERTS_131_DIR . '/includes/class-rest-request.php');
43
+ require_once(FACTORY_ADVERTS_131_DIR . '/includes/class-base.php');
44
 
45
  /**
46
+ * @param Wbcr_Factory454_Plugin $plugin
47
  */
48
+ add_action('wbcr_factory_adverts_131_plugin_created', function ($plugin) {
49
+ $plugin->set_adverts_manager("WBCR\Factory_Adverts_131\Base");
50
  });
libs/factory/adverts/includes/class-base.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_124;
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_Factory446_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_124\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_Factory446_Plugin $plugin
86
  */
87
- public function __construct( \Wbcr_Factory446_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_124_DIR . '/includes/class-dashboard-widget.php';
261
  new Dashboard_Widget( $this->plugin, $content );
262
  }
263
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_131;
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_Factory454_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_131\Creative_Motion_API
57
  */
58
  private $api;
59
 
82
  *
83
  * @since 1.0.0 Added
84
  *
85
+ * @param \Wbcr_Factory454_Plugin $plugin
86
  */
87
+ public function __construct( \Wbcr_Factory454_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_131_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_124;
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_Factory446_Plugin
39
  */
40
  private $plugin;
41
 
@@ -46,10 +46,10 @@ class Dashboard_Widget {
46
  *
47
  * @since 1.0.0 Added
48
  *
49
- * @param \Wbcr_Factory446_Plugin $plugin
50
  * @param string $content
51
  */
52
- public function __construct( \Wbcr_Factory446_Plugin $plugin, $content ) {
53
 
54
  $this->plugin = $plugin;
55
  $this->content = $content;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_131;
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_Factory454_Plugin
39
  */
40
  private $plugin;
41
 
46
  *
47
  * @since 1.0.0 Added
48
  *
49
+ * @param \Wbcr_Factory454_Plugin $plugin
50
  * @param string $content
51
  */
52
+ public function __construct( \Wbcr_Factory454_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_124;
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_Factory446_Plugin
69
  */
70
  private $plugin;
71
 
@@ -75,11 +75,11 @@ class Creative_Motion_API {
75
  *
76
  * Variable initialization.
77
  *
78
- * @param \Wbcr_Factory446_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_131;
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_Factory454_Plugin
69
  */
70
  private $plugin;
71
 
75
  *
76
  * Variable initialization.
77
  *
78
+ * @param \Wbcr_Factory454_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
libs/factory/adverts/langs/{wbcr_factory_adverts_124-ru_RU.mo → wbcr_factory_adverts_131-ru_RU.mo} RENAMED
File without changes
libs/factory/adverts/langs/{wbcr_factory_adverts_124-ru_RU.po → wbcr_factory_adverts_131-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, 2021-02-04
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-446 .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-446 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-446 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-446 .factory-accordion-item{display:none}.factory-bootstrap-446 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-446 .factory-accordion>h3.active:hover{cursor:default}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-455 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-455 .factory-accordion-item{display:none}.factory-bootstrap-455 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,18 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-446 article,.factory-bootstrap-446 aside,.factory-bootstrap-446 details,.factory-bootstrap-446 figcaption,.factory-bootstrap-446 figure,.factory-bootstrap-446 footer,.factory-bootstrap-446 header,.factory-bootstrap-446 hgroup,.factory-bootstrap-446 main,.factory-bootstrap-446 nav,.factory-bootstrap-446 section,.factory-bootstrap-446 summary{display:block}.factory-bootstrap-446 audio,.factory-bootstrap-446 canvas,.factory-bootstrap-446 video{display:inline-block}.factory-bootstrap-446 audio:not([controls]){display:none;height:0}.factory-bootstrap-446 [hidden],.factory-bootstrap-446 template{display:none}.factory-bootstrap-446 body{margin:0}.factory-bootstrap-446 a{background:0 0}.factory-bootstrap-446 a:focus{outline:thin dotted}.factory-bootstrap-446 a:active,.factory-bootstrap-446 a:hover{outline:0}.factory-bootstrap-446 h1{margin:.67em 0}.factory-bootstrap-446 b,.factory-bootstrap-446 strong{font-weight:700}.factory-bootstrap-446 dfn{font-style:italic}.factory-bootstrap-446 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-446 mark{color:#000;background:#ff0}.factory-bootstrap-446 code,.factory-bootstrap-446 kbd,.factory-bootstrap-446 pre,.factory-bootstrap-446 samp{font-size:1em}.factory-bootstrap-446 pre{white-space:pre-wrap}.factory-bootstrap-446 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-446 sub,.factory-bootstrap-446 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-446 sup{top:-.5em}.factory-bootstrap-446 sub{bottom:-.25em}.factory-bootstrap-446 img{border:0}.factory-bootstrap-446 svg:not(:root){overflow:hidden}.factory-bootstrap-446 figure{margin:0}.factory-bootstrap-446 button,.factory-bootstrap-446 input,.factory-bootstrap-446 select,.factory-bootstrap-446 textarea{margin:0}.factory-bootstrap-446 button,.factory-bootstrap-446 select{text-transform:none}.factory-bootstrap-446 select{padding-right:4px!important}.factory-bootstrap-446 button,.factory-bootstrap-446 input[type=reset],.factory-bootstrap-446 input[type=submit],html .factory-bootstrap-446 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-446 button[disabled],html .factory-bootstrap-446 input[disabled]{cursor:default}.factory-bootstrap-446 input[type=checkbox],.factory-bootstrap-446 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-446 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-446 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-446 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-446 button::-moz-focus-inner,.factory-bootstrap-446 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-446 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-446 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-446 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-446 a,.factory-bootstrap-446 a:visited{text-decoration:underline}.factory-bootstrap-446 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-446 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-446 a[href^="javascript:"]:after,.factory-bootstrap-446 a[href^="#"]:after{content:""}.factory-bootstrap-446 blockquote,.factory-bootstrap-446 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-446 thead{display:table-header-group}.factory-bootstrap-446 img,.factory-bootstrap-446 tr{page-break-inside:avoid}.factory-bootstrap-446 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-446 h2,.factory-bootstrap-446 h3,.factory-bootstrap-446 p{orphans:3;widows:3}.factory-bootstrap-446 h2,.factory-bootstrap-446 h3{page-break-after:avoid}.factory-bootstrap-446 select{background:#fff!important}.factory-bootstrap-446 .navbar{display:none}.factory-bootstrap-446 .table td,.factory-bootstrap-446 .table th{background-color:#fff!important}.factory-bootstrap-446 .btn>.caret,.factory-bootstrap-446 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-446 .label{border:1px solid #000}.factory-bootstrap-446 .table{border-collapse:collapse!important}.factory-bootstrap-446 .table-bordered td,.factory-bootstrap-446 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-446 *,.factory-bootstrap-446 :after,.factory-bootstrap-446 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-446{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-446 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-446 button,.factory-bootstrap-446 input,.factory-bootstrap-446 select,.factory-bootstrap-446 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-446 img{vertical-align:middle}.factory-bootstrap-446 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-446 .img-rounded{border-radius:6px}.factory-bootstrap-446 .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-446 .img-circle{border-radius:50%}.factory-bootstrap-446 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-446 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-446 .h1,.factory-bootstrap-446 .h2,.factory-bootstrap-446 .h3,.factory-bootstrap-446 .h4,.factory-bootstrap-446 .h5,.factory-bootstrap-446 .h6,.factory-bootstrap-446 h1,.factory-bootstrap-446 h2,.factory-bootstrap-446 h3,.factory-bootstrap-446 h4,.factory-bootstrap-446 h5,.factory-bootstrap-446 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-446 .h1 .small,.factory-bootstrap-446 .h1 small,.factory-bootstrap-446 .h2 .small,.factory-bootstrap-446 .h2 small,.factory-bootstrap-446 .h3 .small,.factory-bootstrap-446 .h3 small,.factory-bootstrap-446 .h4 .small,.factory-bootstrap-446 .h4 small,.factory-bootstrap-446 .h5 .small,.factory-bootstrap-446 .h5 small,.factory-bootstrap-446 .h6 .small,.factory-bootstrap-446 .h6 small,.factory-bootstrap-446 h1 .small,.factory-bootstrap-446 h1 small,.factory-bootstrap-446 h2 .small,.factory-bootstrap-446 h2 small,.factory-bootstrap-446 h3 .small,.factory-bootstrap-446 h3 small,.factory-bootstrap-446 h4 .small,.factory-bootstrap-446 h4 small,.factory-bootstrap-446 h5 .small,.factory-bootstrap-446 h5 small,.factory-bootstrap-446 h6 .small,.factory-bootstrap-446 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-446 h1,.factory-bootstrap-446 h2,.factory-bootstrap-446 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-446 h1 .small,.factory-bootstrap-446 h1 small,.factory-bootstrap-446 h2 .small,.factory-bootstrap-446 h2 small,.factory-bootstrap-446 h3 .small,.factory-bootstrap-446 h3 small{font-size:65%}.factory-bootstrap-446 h4,.factory-bootstrap-446 h5,.factory-bootstrap-446 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-446 h4 .small,.factory-bootstrap-446 h4 small,.factory-bootstrap-446 h5 .small,.factory-bootstrap-446 h5 small,.factory-bootstrap-446 h6 .small,.factory-bootstrap-446 h6 small{font-size:75%}.factory-bootstrap-446 .h1,.factory-bootstrap-446 h1{font-size:36px}.factory-bootstrap-446 .h2,.factory-bootstrap-446 h2{font-size:30px}.factory-bootstrap-446 .h3,.factory-bootstrap-446 h3{font-size:24px}.factory-bootstrap-446 .h4,.factory-bootstrap-446 h4{font-size:18px}.factory-bootstrap-446 .h5,.factory-bootstrap-446 h5{font-size:14px}.factory-bootstrap-446 .h6,.factory-bootstrap-446 h6{font-size:12px}.factory-bootstrap-446 p{margin:0 0 10px}.factory-bootstrap-446 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-446 .small,.factory-bootstrap-446 small{font-size:85%}.factory-bootstrap-446 cite{font-style:normal}.factory-bootstrap-446 .text-muted{color:#999}.factory-bootstrap-446 .text-primary{color:#428bca}.factory-bootstrap-446 .text-primary:hover{color:#3071a9}.factory-bootstrap-446 .text-warning{color:#8a6d3b}.factory-bootstrap-446 .text-warning:hover{color:#66512c}.factory-bootstrap-446 .text-danger{color:#a94442}.factory-bootstrap-446 .text-danger:hover{color:#843534}.factory-bootstrap-446 .text-success{color:#3c763d}.factory-bootstrap-446 .text-success:hover{color:#2b542c}.factory-bootstrap-446 .text-info{color:#31708f}.factory-bootstrap-446 .text-info:hover{color:#245269}.factory-bootstrap-446 .text-left{text-align:left}.factory-bootstrap-446 .text-right{text-align:right}.factory-bootstrap-446 .text-center{text-align:center}.factory-bootstrap-446 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-446 ol,.factory-bootstrap-446 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-446 ol ol,.factory-bootstrap-446 ol ul,.factory-bootstrap-446 ul ol,.factory-bootstrap-446 ul ul{margin-bottom:0}.factory-bootstrap-446 .list-inline,.factory-bootstrap-446 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-446 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-446 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-446 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-446 dd,.factory-bootstrap-446 dt{line-height:1.428571429}.factory-bootstrap-446 dt{font-weight:700}.factory-bootstrap-446 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-446 abbr[data-original-title],.factory-bootstrap-446 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-446 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-446 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-446 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-446 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-446 blockquote .small,.factory-bootstrap-446 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-446 blockquote .small:before,.factory-bootstrap-446 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-446 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-446 blockquote.pull-right .small,.factory-bootstrap-446 blockquote.pull-right p,.factory-bootstrap-446 blockquote.pull-right small{text-align:right}.factory-bootstrap-446 blockquote.pull-right .small:before,.factory-bootstrap-446 blockquote.pull-right small:before{content:''}.factory-bootstrap-446 blockquote.pull-right .small:after,.factory-bootstrap-446 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-446 blockquote:after,.factory-bootstrap-446 blockquote:before{content:""}.factory-bootstrap-446 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-446 code,.factory-bootstrap-446 kbd,.factory-bootstrap-446 pre,.factory-bootstrap-446 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-446 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-446 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-446 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-446 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-446 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-446 .container:after,.factory-bootstrap-446 .container:before{display:table;content:" "}.factory-bootstrap-446 .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-446 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-446 .row:after,.factory-bootstrap-446 .row:before{display:table;content:" "}.factory-bootstrap-446 .row:after{clear:both}.factory-bootstrap-446 .col-lg-1,.factory-bootstrap-446 .col-lg-10,.factory-bootstrap-446 .col-lg-11,.factory-bootstrap-446 .col-lg-12,.factory-bootstrap-446 .col-lg-2,.factory-bootstrap-446 .col-lg-3,.factory-bootstrap-446 .col-lg-4,.factory-bootstrap-446 .col-lg-5,.factory-bootstrap-446 .col-lg-6,.factory-bootstrap-446 .col-lg-7,.factory-bootstrap-446 .col-lg-8,.factory-bootstrap-446 .col-lg-9,.factory-bootstrap-446 .col-md-1,.factory-bootstrap-446 .col-md-10,.factory-bootstrap-446 .col-md-11,.factory-bootstrap-446 .col-md-12,.factory-bootstrap-446 .col-md-2,.factory-bootstrap-446 .col-md-3,.factory-bootstrap-446 .col-md-4,.factory-bootstrap-446 .col-md-5,.factory-bootstrap-446 .col-md-6,.factory-bootstrap-446 .col-md-7,.factory-bootstrap-446 .col-md-8,.factory-bootstrap-446 .col-md-9,.factory-bootstrap-446 .col-sm-1,.factory-bootstrap-446 .col-sm-10,.factory-bootstrap-446 .col-sm-11,.factory-bootstrap-446 .col-sm-12,.factory-bootstrap-446 .col-sm-2,.factory-bootstrap-446 .col-sm-3,.factory-bootstrap-446 .col-sm-4,.factory-bootstrap-446 .col-sm-5,.factory-bootstrap-446 .col-sm-6,.factory-bootstrap-446 .col-sm-7,.factory-bootstrap-446 .col-sm-8,.factory-bootstrap-446 .col-sm-9,.factory-bootstrap-446 .col-xs-1,.factory-bootstrap-446 .col-xs-10,.factory-bootstrap-446 .col-xs-11,.factory-bootstrap-446 .col-xs-12,.factory-bootstrap-446 .col-xs-2,.factory-bootstrap-446 .col-xs-3,.factory-bootstrap-446 .col-xs-4,.factory-bootstrap-446 .col-xs-5,.factory-bootstrap-446 .col-xs-6,.factory-bootstrap-446 .col-xs-7,.factory-bootstrap-446 .col-xs-8,.factory-bootstrap-446 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-446 .col-xs-1,.factory-bootstrap-446 .col-xs-10,.factory-bootstrap-446 .col-xs-11,.factory-bootstrap-446 .col-xs-12,.factory-bootstrap-446 .col-xs-2,.factory-bootstrap-446 .col-xs-3,.factory-bootstrap-446 .col-xs-4,.factory-bootstrap-446 .col-xs-5,.factory-bootstrap-446 .col-xs-6,.factory-bootstrap-446 .col-xs-7,.factory-bootstrap-446 .col-xs-8,.factory-bootstrap-446 .col-xs-9{float:left}.factory-bootstrap-446 .col-xs-12{width:100%}.factory-bootstrap-446 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-446 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-446 .col-xs-9{width:75%}.factory-bootstrap-446 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-446 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-446 .col-xs-6{width:50%}.factory-bootstrap-446 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-446 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-446 .col-xs-3{width:25%}.factory-bootstrap-446 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-446 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-446 .col-xs-pull-12{right:100%}.factory-bootstrap-446 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-446 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-446 .col-xs-pull-9{right:75%}.factory-bootstrap-446 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-446 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-446 .col-xs-pull-6{right:50%}.factory-bootstrap-446 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-446 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-446 .col-xs-pull-3{right:25%}.factory-bootstrap-446 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-446 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-446 .col-xs-pull-0{right:0}.factory-bootstrap-446 .col-xs-push-12{left:100%}.factory-bootstrap-446 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-446 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-446 .col-xs-push-9{left:75%}.factory-bootstrap-446 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-446 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-446 .col-xs-push-6{left:50%}.factory-bootstrap-446 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-446 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-446 .col-xs-push-3{left:25%}.factory-bootstrap-446 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-446 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-446 .col-xs-push-0{left:0}.factory-bootstrap-446 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-446 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-446 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-446 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-446 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-446 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-446 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-446 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-446 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-446 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-446 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-446 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-446 .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-446 table{max-width:100%;background-color:transparent}.factory-bootstrap-446 th{text-align:left}.factory-bootstrap-446 .table{width:100%;margin-bottom:20px}.factory-bootstrap-446 .table>tbody>tr>td,.factory-bootstrap-446 .table>tbody>tr>th,.factory-bootstrap-446 .table>tfoot>tr>td,.factory-bootstrap-446 .table>tfoot>tr>th,.factory-bootstrap-446 .table>thead>tr>td,.factory-bootstrap-446 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-446 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-446 .table>caption+thead>tr:first-child>td,.factory-bootstrap-446 .table>caption+thead>tr:first-child>th,.factory-bootstrap-446 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-446 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-446 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-446 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-446 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-446 .table .table{background-color:#fff}.factory-bootstrap-446 .table-condensed>tbody>tr>td,.factory-bootstrap-446 .table-condensed>tbody>tr>th,.factory-bootstrap-446 .table-condensed>tfoot>tr>td,.factory-bootstrap-446 .table-condensed>tfoot>tr>th,.factory-bootstrap-446 .table-condensed>thead>tr>td,.factory-bootstrap-446 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-446 .table-bordered,.factory-bootstrap-446 .table-bordered>tbody>tr>td,.factory-bootstrap-446 .table-bordered>tbody>tr>th,.factory-bootstrap-446 .table-bordered>tfoot>tr>td,.factory-bootstrap-446 .table-bordered>tfoot>tr>th,.factory-bootstrap-446 .table-bordered>thead>tr>td,.factory-bootstrap-446 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-446 .table-bordered>thead>tr>td,.factory-bootstrap-446 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-446 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-446 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-446 .table-hover>tbody>tr:hover>td,.factory-bootstrap-446 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-446 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-446 table td[class*=col-],.factory-bootstrap-446 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-446 .table>tbody>.active>td,.factory-bootstrap-446 .table>tbody>.active>th,.factory-bootstrap-446 .table>tbody>tr>.active,.factory-bootstrap-446 .table>tfoot>.active>td,.factory-bootstrap-446 .table>tfoot>.active>th,.factory-bootstrap-446 .table>tfoot>tr>.active,.factory-bootstrap-446 .table>thead>.active>td,.factory-bootstrap-446 .table>thead>.active>th,.factory-bootstrap-446 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-446 .table-hover>tbody>.active:hover>td,.factory-bootstrap-446 .table-hover>tbody>.active:hover>th,.factory-bootstrap-446 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-446 .table>tbody>.success>td,.factory-bootstrap-446 .table>tbody>.success>th,.factory-bootstrap-446 .table>tbody>tr>.success,.factory-bootstrap-446 .table>tfoot>.success>td,.factory-bootstrap-446 .table>tfoot>.success>th,.factory-bootstrap-446 .table>tfoot>tr>.success,.factory-bootstrap-446 .table>thead>.success>td,.factory-bootstrap-446 .table>thead>.success>th,.factory-bootstrap-446 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-446 .table-hover>tbody>.success:hover>td,.factory-bootstrap-446 .table-hover>tbody>.success:hover>th,.factory-bootstrap-446 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-446 .table>tbody>.danger>td,.factory-bootstrap-446 .table>tbody>.danger>th,.factory-bootstrap-446 .table>tbody>tr>.danger,.factory-bootstrap-446 .table>tfoot>.danger>td,.factory-bootstrap-446 .table>tfoot>.danger>th,.factory-bootstrap-446 .table>tfoot>tr>.danger,.factory-bootstrap-446 .table>thead>.danger>td,.factory-bootstrap-446 .table>thead>.danger>th,.factory-bootstrap-446 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-446 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-446 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-446 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-446 .table>tbody>.warning>td,.factory-bootstrap-446 .table>tbody>.warning>th,.factory-bootstrap-446 .table>tbody>tr>.warning,.factory-bootstrap-446 .table>tfoot>.warning>td,.factory-bootstrap-446 .table>tfoot>.warning>th,.factory-bootstrap-446 .table>tfoot>tr>.warning,.factory-bootstrap-446 .table>thead>.warning>td,.factory-bootstrap-446 .table>thead>.warning>th,.factory-bootstrap-446 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-446 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-446 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-446 .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-446 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-446 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-446 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-446 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-446 input[type=checkbox],.factory-bootstrap-446 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-446 input[type=file]{display:block}.factory-bootstrap-446 select[multiple],.factory-bootstrap-446 select[size]{height:auto}.factory-bootstrap-446 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-446 input[type=checkbox]:focus,.factory-bootstrap-446 input[type=file]:focus,.factory-bootstrap-446 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-446 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-446 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-446 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-446 .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-446 .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-446 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-446 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-446 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-446 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-446 .form-control[disabled],.factory-bootstrap-446 .form-control[readonly],.factory-bootstrap-446 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-446 textarea.form-control{height:auto}.factory-bootstrap-446 .form-group{margin-bottom:15px}.factory-bootstrap-446 .checkbox,.factory-bootstrap-446 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-446 .checkbox label,.factory-bootstrap-446 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-446 .checkbox input[type=checkbox],.factory-bootstrap-446 .checkbox-inline input[type=checkbox],.factory-bootstrap-446 .radio input[type=radio],.factory-bootstrap-446 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-446 .checkbox+.checkbox,.factory-bootstrap-446 .radio+.radio{margin-top:-5px}.factory-bootstrap-446 .checkbox-inline,.factory-bootstrap-446 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-446 .checkbox-inline+.checkbox-inline,.factory-bootstrap-446 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-446 .checkbox-inline[disabled],.factory-bootstrap-446 .checkbox[disabled],.factory-bootstrap-446 .radio-inline[disabled],.factory-bootstrap-446 .radio[disabled],.factory-bootstrap-446 fieldset[disabled] .checkbox,.factory-bootstrap-446 fieldset[disabled] .checkbox-inline,.factory-bootstrap-446 fieldset[disabled] .radio,.factory-bootstrap-446 fieldset[disabled] .radio-inline,.factory-bootstrap-446 fieldset[disabled] input[type=checkbox],.factory-bootstrap-446 fieldset[disabled] input[type=radio],.factory-bootstrap-446 input[type=checkbox][disabled],.factory-bootstrap-446 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-446 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-446 textarea.input-sm{height:auto}.factory-bootstrap-446 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-446 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-446 textarea.input-lg{height:auto}.factory-bootstrap-446 .has-warning .checkbox,.factory-bootstrap-446 .has-warning .checkbox-inline,.factory-bootstrap-446 .has-warning .control-label,.factory-bootstrap-446 .has-warning .help-block,.factory-bootstrap-446 .has-warning .radio,.factory-bootstrap-446 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-446 .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-446 .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-446 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-446 .has-error .checkbox,.factory-bootstrap-446 .has-error .checkbox-inline,.factory-bootstrap-446 .has-error .control-label,.factory-bootstrap-446 .has-error .help-block,.factory-bootstrap-446 .has-error .radio,.factory-bootstrap-446 .has-error .radio-inline{color:#a94442}.factory-bootstrap-446 .controls{display:block}.factory-bootstrap-446 .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-446 .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-446 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-446 .has-success .checkbox,.factory-bootstrap-446 .has-success .checkbox-inline,.factory-bootstrap-446 .has-success .control-label,.factory-bootstrap-446 .has-success .help-block,.factory-bootstrap-446 .has-success .radio,.factory-bootstrap-446 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-446 .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-446 .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-446 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-446 .form-control-static{margin-bottom:0}.factory-bootstrap-446 .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-446 .form-horizontal .checkbox,.factory-bootstrap-446 .form-horizontal .checkbox-inline,.factory-bootstrap-446 .form-horizontal .control-label,.factory-bootstrap-446 .form-horizontal .radio,.factory-bootstrap-446 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-446 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-446 .form-horizontal .checkbox,.factory-bootstrap-446 .form-horizontal .radio{min-height:27px}.factory-bootstrap-446 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-446 .form-horizontal .form-group:after,.factory-bootstrap-446 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-446 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-446 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-446 .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-446 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-446 .btn{text-decoration:none}.factory-bootstrap-446 .btn:focus,.factory-bootstrap-446 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-446 .btn.disabled,.factory-bootstrap-446 .btn[disabled],.factory-bootstrap-446 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-446 .btn-default.active,.factory-bootstrap-446 .btn-default:active,.factory-bootstrap-446 .btn-default:focus,.factory-bootstrap-446 .btn-default:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-446 .btn-default.active,.factory-bootstrap-446 .btn-default:active,.factory-bootstrap-446 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-446 .btn-default.disabled,.factory-bootstrap-446 .btn-default.disabled.active,.factory-bootstrap-446 .btn-default.disabled:active,.factory-bootstrap-446 .btn-default.disabled:focus,.factory-bootstrap-446 .btn-default.disabled:hover,.factory-bootstrap-446 .btn-default[disabled],.factory-bootstrap-446 .btn-default[disabled].active,.factory-bootstrap-446 .btn-default[disabled]:active,.factory-bootstrap-446 .btn-default[disabled]:focus,.factory-bootstrap-446 .btn-default[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-default,.factory-bootstrap-446 fieldset[disabled] .btn-default.active,.factory-bootstrap-446 fieldset[disabled] .btn-default:active,.factory-bootstrap-446 fieldset[disabled] .btn-default:focus,.factory-bootstrap-446 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-446 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-446 .btn-primary.active,.factory-bootstrap-446 .btn-primary:active,.factory-bootstrap-446 .btn-primary:focus,.factory-bootstrap-446 .btn-primary:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-446 .btn-primary.active,.factory-bootstrap-446 .btn-primary:active,.factory-bootstrap-446 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-446 .btn-primary.disabled,.factory-bootstrap-446 .btn-primary.disabled.active,.factory-bootstrap-446 .btn-primary.disabled:active,.factory-bootstrap-446 .btn-primary.disabled:focus,.factory-bootstrap-446 .btn-primary.disabled:hover,.factory-bootstrap-446 .btn-primary[disabled],.factory-bootstrap-446 .btn-primary[disabled].active,.factory-bootstrap-446 .btn-primary[disabled]:active,.factory-bootstrap-446 .btn-primary[disabled]:focus,.factory-bootstrap-446 .btn-primary[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-primary,.factory-bootstrap-446 fieldset[disabled] .btn-primary.active,.factory-bootstrap-446 fieldset[disabled] .btn-primary:active,.factory-bootstrap-446 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-446 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-446 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-446 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-446 .btn-warning.active,.factory-bootstrap-446 .btn-warning:active,.factory-bootstrap-446 .btn-warning:focus,.factory-bootstrap-446 .btn-warning:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-446 .btn-warning.active,.factory-bootstrap-446 .btn-warning:active,.factory-bootstrap-446 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-446 .btn-warning.disabled,.factory-bootstrap-446 .btn-warning.disabled.active,.factory-bootstrap-446 .btn-warning.disabled:active,.factory-bootstrap-446 .btn-warning.disabled:focus,.factory-bootstrap-446 .btn-warning.disabled:hover,.factory-bootstrap-446 .btn-warning[disabled],.factory-bootstrap-446 .btn-warning[disabled].active,.factory-bootstrap-446 .btn-warning[disabled]:active,.factory-bootstrap-446 .btn-warning[disabled]:focus,.factory-bootstrap-446 .btn-warning[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-warning,.factory-bootstrap-446 fieldset[disabled] .btn-warning.active,.factory-bootstrap-446 fieldset[disabled] .btn-warning:active,.factory-bootstrap-446 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-446 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-446 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-446 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-446 .btn-success.active,.factory-bootstrap-446 .btn-success:active,.factory-bootstrap-446 .btn-success:focus,.factory-bootstrap-446 .btn-success:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-446 .btn-success.active,.factory-bootstrap-446 .btn-success:active,.factory-bootstrap-446 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-446 .btn-success.disabled,.factory-bootstrap-446 .btn-success.disabled.active,.factory-bootstrap-446 .btn-success.disabled:active,.factory-bootstrap-446 .btn-success.disabled:focus,.factory-bootstrap-446 .btn-success.disabled:hover,.factory-bootstrap-446 .btn-success[disabled],.factory-bootstrap-446 .btn-success[disabled].active,.factory-bootstrap-446 .btn-success[disabled]:active,.factory-bootstrap-446 .btn-success[disabled]:focus,.factory-bootstrap-446 .btn-success[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-success,.factory-bootstrap-446 fieldset[disabled] .btn-success.active,.factory-bootstrap-446 fieldset[disabled] .btn-success:active,.factory-bootstrap-446 fieldset[disabled] .btn-success:focus,.factory-bootstrap-446 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-446 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-446 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-446 .btn-info.active,.factory-bootstrap-446 .btn-info:active,.factory-bootstrap-446 .btn-info:focus,.factory-bootstrap-446 .btn-info:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-446 .btn-info.active,.factory-bootstrap-446 .btn-info:active,.factory-bootstrap-446 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-446 .btn-info.disabled,.factory-bootstrap-446 .btn-info.disabled.active,.factory-bootstrap-446 .btn-info.disabled:active,.factory-bootstrap-446 .btn-info.disabled:focus,.factory-bootstrap-446 .btn-info.disabled:hover,.factory-bootstrap-446 .btn-info[disabled],.factory-bootstrap-446 .btn-info[disabled].active,.factory-bootstrap-446 .btn-info[disabled]:active,.factory-bootstrap-446 .btn-info[disabled]:focus,.factory-bootstrap-446 .btn-info[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-info,.factory-bootstrap-446 fieldset[disabled] .btn-info.active,.factory-bootstrap-446 fieldset[disabled] .btn-info:active,.factory-bootstrap-446 fieldset[disabled] .btn-info:focus,.factory-bootstrap-446 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-446 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-446 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-446 .btn-link,.factory-bootstrap-446 .btn-link:active,.factory-bootstrap-446 .btn-link[disabled],.factory-bootstrap-446 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-446 .btn-link,.factory-bootstrap-446 .btn-link:active,.factory-bootstrap-446 .btn-link:focus,.factory-bootstrap-446 .btn-link:hover{border-color:transparent}.factory-bootstrap-446 .btn-link:focus,.factory-bootstrap-446 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-446 .btn-link[disabled]:focus,.factory-bootstrap-446 .btn-link[disabled]:hover,.factory-bootstrap-446 fieldset[disabled] .btn-link:focus,.factory-bootstrap-446 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-446 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-446 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-446 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-446 input[type=button].btn-block,.factory-bootstrap-446 input[type=reset].btn-block,.factory-bootstrap-446 input[type=submit].btn-block{width:100%}.factory-bootstrap-446 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-446 .fade.in{opacity:1}.factory-bootstrap-446 .collapse{display:none}.factory-bootstrap-446 .collapse.in{display:block}.factory-bootstrap-446 .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-446 .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-446 .glyphicon:empty{width:1em}.factory-bootstrap-446 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-446 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-446 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-446 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-446 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-446 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-446 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-446 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-446 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-446 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-446 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-446 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-446 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-446 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-446 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-446 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-446 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-446 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-446 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-446 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-446 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-446 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-446 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-446 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-446 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-446 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-446 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-446 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-446 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-446 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-446 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-446 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-446 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-446 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-446 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-446 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-446 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-446 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-446 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-446 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-446 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-446 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-446 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-446 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-446 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-446 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-446 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-446 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-446 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-446 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-446 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-446 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-446 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-446 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-446 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-446 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-446 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-446 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-446 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-446 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-446 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-446 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-446 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-446 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-446 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-446 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-446 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-446 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-446 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-446 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-446 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-446 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-446 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-446 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-446 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-446 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-446 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-446 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-446 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-446 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-446 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-446 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-446 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-446 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-446 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-446 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-446 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-446 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-446 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-446 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-446 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-446 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-446 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-446 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-446 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-446 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-446 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-446 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-446 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-446 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-446 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-446 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-446 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-446 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-446 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-446 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-446 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-446 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-446 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-446 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-446 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-446 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-446 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-446 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-446 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-446 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-446 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-446 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-446 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-446 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-446 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-446 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-446 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-446 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-446 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-446 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-446 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-446 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-446 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-446 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-446 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-446 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-446 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-446 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-446 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-446 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-446 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-446 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-446 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-446 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-446 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-446 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-446 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-446 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-446 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-446 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-446 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-446 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-446 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-446 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-446 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-446 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-446 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-446 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-446 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-446 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-446 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-446 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-446 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-446 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-446 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-446 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-446 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-446 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-446 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-446 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-446 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-446 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-446 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-446 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-446 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-446 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-446 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-446 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-446 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-446 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-446 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-446 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-446 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-446 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-446 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-446 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-446 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-446 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-446 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-446 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-446 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-446 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-446 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-446 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-446 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-446 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-446 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-446 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-446 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-446 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-446 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-446 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-446 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-446 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-446 .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-446 .dropdown{position:relative}.factory-bootstrap-446 .dropdown-toggle:focus{outline:0}.factory-bootstrap-446 .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-446 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-446 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-446 .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-446 .dropdown-menu>li>a:focus,.factory-bootstrap-446 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-446 .dropdown-menu>.active>a,.factory-bootstrap-446 .dropdown-menu>.active>a:focus,.factory-bootstrap-446 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-446 .dropdown-menu>.disabled>a,.factory-bootstrap-446 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-446 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-446 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-446 .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-446 .open>.dropdown-menu{display:block}.factory-bootstrap-446 .open>a{outline:0}.factory-bootstrap-446 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-446 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-446 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-446 .dropup .caret,.factory-bootstrap-446 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-446 .dropup .dropdown-menu,.factory-bootstrap-446 .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-446 .btn-group,.factory-bootstrap-446 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-446 .btn-group-vertical>.btn,.factory-bootstrap-446 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-446 .btn-group-vertical>.btn.active,.factory-bootstrap-446 .btn-group-vertical>.btn:active,.factory-bootstrap-446 .btn-group-vertical>.btn:focus,.factory-bootstrap-446 .btn-group-vertical>.btn:hover,.factory-bootstrap-446 .btn-group>.btn.active,.factory-bootstrap-446 .btn-group>.btn:active,.factory-bootstrap-446 .btn-group>.btn:focus,.factory-bootstrap-446 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-446 .btn-group-vertical>.btn:focus,.factory-bootstrap-446 .btn-group>.btn:focus{outline:0}.factory-bootstrap-446 .btn-group .btn+.btn,.factory-bootstrap-446 .btn-group .btn+.btn-group,.factory-bootstrap-446 .btn-group .btn-group+.btn,.factory-bootstrap-446 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-446 .btn-toolbar:after,.factory-bootstrap-446 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-446 .btn-toolbar:after{clear:both}.factory-bootstrap-446 .btn-toolbar .btn-group{float:left}.factory-bootstrap-446 .btn-toolbar>.btn+.btn,.factory-bootstrap-446 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-446 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-446 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-446 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-446 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-446 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-446 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-446 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .btn-group>.btn-group{float:left}.factory-bootstrap-446 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-446 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-446 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-446 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .btn-group .dropdown-toggle:active,.factory-bootstrap-446 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-446 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-446 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-446 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-446 .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-446 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-446 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-446 .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-446 .btn .caret{margin-left:0}.factory-bootstrap-446 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-446 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-446 .btn-group-vertical>.btn,.factory-bootstrap-446 .btn-group-vertical>.btn-group,.factory-bootstrap-446 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-446 .btn-group-vertical>.btn-group:after,.factory-bootstrap-446 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-446 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-446 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-446 .btn-group-vertical>.btn+.btn,.factory-bootstrap-446 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-446 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-446 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-446 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-446 .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-446 .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-446 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-446 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-446 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-446 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-446 .btn-group-justified>.btn,.factory-bootstrap-446 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-446 .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-446 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-446 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-446 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-446 .input-group-lg>.form-control,.factory-bootstrap-446 .input-group-lg>.input-group-addon,.factory-bootstrap-446 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-446 select.input-group-lg>.form-control,.factory-bootstrap-446 select.input-group-lg>.input-group-addon,.factory-bootstrap-446 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-446 textarea.input-group-lg>.form-control,.factory-bootstrap-446 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-446 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-446 .input-group-sm>.form-control,.factory-bootstrap-446 .input-group-sm>.input-group-addon,.factory-bootstrap-446 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-446 select.input-group-sm>.form-control,.factory-bootstrap-446 select.input-group-sm>.input-group-addon,.factory-bootstrap-446 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-446 textarea.input-group-sm>.form-control,.factory-bootstrap-446 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-446 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-446 .input-group .form-control,.factory-bootstrap-446 .input-group-addon,.factory-bootstrap-446 .input-group-btn{display:table-cell}.factory-bootstrap-446 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-446 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-446 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-446 .input-group-addon,.factory-bootstrap-446 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-446 .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-446 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-446 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-446 .input-group-addon input[type=checkbox],.factory-bootstrap-446 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-446 .input-group .form-control:first-child,.factory-bootstrap-446 .input-group-addon:first-child,.factory-bootstrap-446 .input-group-btn:first-child>.btn,.factory-bootstrap-446 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-446 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-446 .input-group-addon:first-child{border-right:0}.factory-bootstrap-446 .input-group .form-control:last-child,.factory-bootstrap-446 .input-group-addon:last-child,.factory-bootstrap-446 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-446 .input-group-btn:last-child>.btn,.factory-bootstrap-446 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .input-group-addon:last-child{border-left:0}.factory-bootstrap-446 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-446 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-446 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-446 .input-group-btn>.btn{position:relative}.factory-bootstrap-446 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-446 .input-group-btn>.btn:active,.factory-bootstrap-446 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-446 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-446 .nav:after,.factory-bootstrap-446 .nav:before{display:table;content:" "}.factory-bootstrap-446 .nav:after{clear:both}.factory-bootstrap-446 .nav>li{position:relative;display:block}.factory-bootstrap-446 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-446 .nav>li>a:focus,.factory-bootstrap-446 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-446 .nav>li.disabled>a{color:#999}.factory-bootstrap-446 .nav>li.disabled>a:focus,.factory-bootstrap-446 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-446 .nav .open>a,.factory-bootstrap-446 .nav .open>a:focus,.factory-bootstrap-446 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-446 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-446 .nav>li>a>img{max-width:none}.factory-bootstrap-446 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-446 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-446 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-446 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-446 .nav-tabs>li.active>a,.factory-bootstrap-446 .nav-tabs>li.active>a:focus,.factory-bootstrap-446 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-446 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-446 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-446 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-446 .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-446 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-446 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-446 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-446 .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-446 .nav-pills>li{float:left}.factory-bootstrap-446 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-446 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-446 .nav-pills>li.active>a,.factory-bootstrap-446 .nav-pills>li.active>a:focus,.factory-bootstrap-446 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-446 .nav-stacked>li{float:none}.factory-bootstrap-446 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-446 .nav-justified{width:100%}.factory-bootstrap-446 .nav-justified>li{float:none}.factory-bootstrap-446 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-446 .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-446 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-446 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-446 .nav-tabs-justified>.active>a,.factory-bootstrap-446 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-446 .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-446 .tab-content>.tab-pane{display:none}.factory-bootstrap-446 .tab-content>.active{display:block}.factory-bootstrap-446 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-446 .navbar:after,.factory-bootstrap-446 .navbar:before{display:table;content:" "}.factory-bootstrap-446 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-446 .navbar-header:after,.factory-bootstrap-446 .navbar-header:before{display:table;content:" "}.factory-bootstrap-446 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-446 .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-446 .navbar-collapse:after,.factory-bootstrap-446 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-446 .navbar-collapse:after{clear:both}.factory-bootstrap-446 .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-446 .container>.navbar-collapse,.factory-bootstrap-446 .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-446 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-446 .navbar-fixed-bottom,.factory-bootstrap-446 .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-446 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-446 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-446 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-446 .navbar-brand:focus,.factory-bootstrap-446 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-446 .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-446 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-446 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-446 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-446 .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-446 .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-446 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-446 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-446 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-446 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-446 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-446 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-446 .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-446 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-446 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-446 .navbar-default .navbar-brand:focus,.factory-bootstrap-446 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-446 .navbar-default .navbar-nav>li>a,.factory-bootstrap-446 .navbar-default .navbar-text{color:#777}.factory-bootstrap-446 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-446 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-446 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-446 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-446 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-446 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-446 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-446 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-446 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-446 .navbar-default .navbar-toggle:focus,.factory-bootstrap-446 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-446 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-446 .navbar-default .navbar-collapse,.factory-bootstrap-446 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-446 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-446 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-446 .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-446 .navbar-default .navbar-link{color:#777}.factory-bootstrap-446 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-446 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-446 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-446 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-446 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-446 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-446 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-446 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-446 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-446 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-446 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-446 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-446 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-446 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-446 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-446 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-446 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-446 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-446 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-446 .navbar-inverse .navbar-collapse,.factory-bootstrap-446 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-446 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-446 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-446 .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-446 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-446 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-446 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-446 .breadcrumb>li{display:inline-block}.factory-bootstrap-446 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-446 .breadcrumb>.active{color:#999}.factory-bootstrap-446 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-446 .pagination>li{display:inline}.factory-bootstrap-446 .pagination>li>a,.factory-bootstrap-446 .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-446 .pagination>li:first-child>a,.factory-bootstrap-446 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-446 .pagination>li:last-child>a,.factory-bootstrap-446 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-446 .pagination>li>a:focus,.factory-bootstrap-446 .pagination>li>a:hover,.factory-bootstrap-446 .pagination>li>span:focus,.factory-bootstrap-446 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-446 .pagination>.disabled>a,.factory-bootstrap-446 .pagination>.disabled>a:focus,.factory-bootstrap-446 .pagination>.disabled>a:hover,.factory-bootstrap-446 .pagination>.disabled>span,.factory-bootstrap-446 .pagination>.disabled>span:focus,.factory-bootstrap-446 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-446 .pagination-lg>li>a,.factory-bootstrap-446 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-446 .pagination-lg>li:first-child>a,.factory-bootstrap-446 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-446 .pagination-lg>li:last-child>a,.factory-bootstrap-446 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-446 .pagination-sm>li>a,.factory-bootstrap-446 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-446 .pagination-sm>li:first-child>a,.factory-bootstrap-446 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-446 .pagination-sm>li:last-child>a,.factory-bootstrap-446 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-446 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-446 .pager:after,.factory-bootstrap-446 .pager:before{display:table;content:" "}.factory-bootstrap-446 .pager:after{clear:both}.factory-bootstrap-446 .pager li{display:inline}.factory-bootstrap-446 .pager li>a,.factory-bootstrap-446 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-446 .pager li>a:focus,.factory-bootstrap-446 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-446 .pager .next>a,.factory-bootstrap-446 .pager .next>span{float:right}.factory-bootstrap-446 .pager .previous>a,.factory-bootstrap-446 .pager .previous>span{float:left}.factory-bootstrap-446 .pager .disabled>a,.factory-bootstrap-446 .pager .disabled>a:focus,.factory-bootstrap-446 .pager .disabled>a:hover,.factory-bootstrap-446 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-446 .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-446 .label[href]:focus,.factory-bootstrap-446 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-446 .label:empty{display:none}.factory-bootstrap-446 .btn .label{position:relative;top:-1px}.factory-bootstrap-446 .label-default{background-color:#999}.factory-bootstrap-446 .label-default[href]:focus,.factory-bootstrap-446 .label-default[href]:hover{background-color:gray}.factory-bootstrap-446 .label-primary{background-color:#428bca}.factory-bootstrap-446 .label-primary[href]:focus,.factory-bootstrap-446 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-446 .label-success{background-color:#5cb85c}.factory-bootstrap-446 .label-success[href]:focus,.factory-bootstrap-446 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-446 .label-info{background-color:#5bc0de}.factory-bootstrap-446 .label-info[href]:focus,.factory-bootstrap-446 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-446 .label-warning{background-color:#f0ad4e}.factory-bootstrap-446 .label-warning[href]:focus,.factory-bootstrap-446 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-446 .label-danger{background-color:#d9534f}.factory-bootstrap-446 .label-danger[href]:focus,.factory-bootstrap-446 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-446 .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-446 .badge:empty{display:none}.factory-bootstrap-446 .btn .badge{position:relative;top:-1px}.factory-bootstrap-446 a.badge:focus,.factory-bootstrap-446 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-446 .nav-pills>.active>a>.badge,.factory-bootstrap-446 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-446 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-446 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-446 .jumbotron .h1,.factory-bootstrap-446 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-446 .jumbotron p{line-height:1.4}.factory-bootstrap-446 .container .jumbotron{border-radius:6px}.factory-bootstrap-446 .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-446 .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-446 .thumbnail a>img,.factory-bootstrap-446 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-446 a.thumbnail.active,.factory-bootstrap-446 a.thumbnail:focus,.factory-bootstrap-446 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-446 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-446 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-446 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-446 .alert .alert-link{font-weight:700}.factory-bootstrap-446 .alert>p,.factory-bootstrap-446 .alert>ul{margin-bottom:0}.factory-bootstrap-446 .alert>p+p{margin-top:5px}.factory-bootstrap-446 .alert-dismissable{padding-right:35px}.factory-bootstrap-446 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-446 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-446 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-446 .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-446 .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-446 .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-446 .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-446 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-446 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-446 .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-446 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-446 .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-446 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-446 .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-446 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-446 .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-446 .media,.factory-bootstrap-446 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-446 .media,.factory-bootstrap-446 .media .media{margin-top:15px}.factory-bootstrap-446 .media:first-child{margin-top:0}.factory-bootstrap-446 .media-object{display:block}.factory-bootstrap-446 .media-heading{margin:0 0 5px}.factory-bootstrap-446 .media>.pull-left{margin-right:10px}.factory-bootstrap-446 .media>.pull-right{margin-left:10px}.factory-bootstrap-446 .media-list{padding-left:0;list-style:none}.factory-bootstrap-446 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-446 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-446 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-446 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-446 .list-group-item>.badge{float:right}.factory-bootstrap-446 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-446 a.list-group-item{color:#555}.factory-bootstrap-446 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-446 a.list-group-item:focus,.factory-bootstrap-446 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-446 a.list-group-item.active,.factory-bootstrap-446 a.list-group-item.active:focus,.factory-bootstrap-446 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-446 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-446 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-446 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-446 a.list-group-item.active .list-group-item-text,.factory-bootstrap-446 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-446 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-446 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-446 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-446 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-446 .panel-body{padding:15px}.factory-bootstrap-446 .panel-body:after,.factory-bootstrap-446 .panel-body:before{display:table;content:" "}.factory-bootstrap-446 .panel-body:after{clear:both}.factory-bootstrap-446 .panel>.list-group{margin-bottom:0}.factory-bootstrap-446 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-446 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-446 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-446 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-446 .panel>.table,.factory-bootstrap-446 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-446 .panel>.panel-body+.table,.factory-bootstrap-446 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-446 .panel>.table>tbody:first-child td,.factory-bootstrap-446 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-446 .panel>.table-bordered,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-446 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-446 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-446 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-446 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-446 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-446 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-446 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-446 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-446 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-446 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-446 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-446 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-446 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-446 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-446 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-446 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-446 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-446 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-446 .panel-title>a{color:inherit}.factory-bootstrap-446 .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-446 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-446 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-446 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-446 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-446 .panel-group .panel-footer{border-top:0}.factory-bootstrap-446 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-446 .panel-default{border-color:#ddd}.factory-bootstrap-446 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-446 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-446 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-446 .panel-primary{border-color:#428bca}.factory-bootstrap-446 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-446 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-446 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-446 .panel-success{border-color:#d6e9c6}.factory-bootstrap-446 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-446 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-446 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-446 .panel-warning{border-color:#faebcc}.factory-bootstrap-446 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-446 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-446 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-446 .panel-danger{border-color:#ebccd1}.factory-bootstrap-446 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-446 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-446 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-446 .panel-info{border-color:#bce8f1}.factory-bootstrap-446 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-446 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-446 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-446 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-446 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-446 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-446 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-446 .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-446 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-446 .close:focus,.factory-bootstrap-446 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-446 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-446 .modal-open{overflow:hidden}.factory-bootstrap-446 .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-446 .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-446 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-446 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-446 .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-446 .modal-backdrop,.factory-bootstrap-446-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-446 .modal-backdrop.fade,.factory-bootstrap-446-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-446 .modal-backdrop.in,.factory-bootstrap-446-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-446 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-446 .modal-header .close{margin-top:-2px}.factory-bootstrap-446 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-446 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-446 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-446 .modal-footer:after,.factory-bootstrap-446 .modal-footer:before{display:table;content:" "}.factory-bootstrap-446 .modal-footer:after{clear:both}.factory-bootstrap-446 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-446 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-446 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-446 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-446 .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-446 .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-446 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-446 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-446 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-446 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-446 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-446 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-446 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-446 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-446 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-446 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-446 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-446 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-446 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-446 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-446 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-446 .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-446 .popover.top{margin-top:-10px}.factory-bootstrap-446 .popover.right{margin-left:10px}.factory-bootstrap-446 .popover.bottom{margin-top:10px}.factory-bootstrap-446 .popover.left{margin-left:-10px}.factory-bootstrap-446 .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-446 .popover-content{padding:9px 14px}.factory-bootstrap-446 .popover .arrow,.factory-bootstrap-446 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-446 .popover .arrow{border-width:11px}.factory-bootstrap-446 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-446 .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-446 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-446 .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-446 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-446 .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-446 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-446 .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-446 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-446 .carousel{position:relative}.factory-bootstrap-446 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-446 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-446 .carousel-inner>.item>a>img,.factory-bootstrap-446 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-446 .carousel-inner>.active,.factory-bootstrap-446 .carousel-inner>.next,.factory-bootstrap-446 .carousel-inner>.prev{display:block}.factory-bootstrap-446 .carousel-inner>.active{left:0}.factory-bootstrap-446 .carousel-inner>.next,.factory-bootstrap-446 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-446 .carousel-inner>.next{left:100%}.factory-bootstrap-446 .carousel-inner>.prev{left:-100%}.factory-bootstrap-446 .carousel-inner>.next.left,.factory-bootstrap-446 .carousel-inner>.prev.right{left:0}.factory-bootstrap-446 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-446 .carousel-inner>.active.right{left:100%}.factory-bootstrap-446 .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-446 .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-446 .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-446 .carousel-control:focus,.factory-bootstrap-446 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-446 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-446 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-446 .carousel-control .icon-next,.factory-bootstrap-446 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-446 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-446 .carousel-control .icon-prev{left:50%}.factory-bootstrap-446 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-446 .carousel-control .icon-next{right:50%}.factory-bootstrap-446 .carousel-control .icon-next,.factory-bootstrap-446 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-446 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-446 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-446 .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-446 .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-446 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-446 .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-446 .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-446 .clearfix:after,.factory-bootstrap-446 .clearfix:before{display:table;content:" "}.factory-bootstrap-446 .clearfix:after{clear:both}.factory-bootstrap-446 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-446 .pull-right{float:right!important}.factory-bootstrap-446 .pull-left{float:left!important}.factory-bootstrap-446 .hide{display:none!important}.factory-bootstrap-446 .show{display:block!important}.factory-bootstrap-446 .invisible{visibility:hidden}.factory-bootstrap-446 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-446 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-446 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-446 .visible-lg,.factory-bootstrap-446 .visible-md,.factory-bootstrap-446 .visible-sm,.factory-bootstrap-446 .visible-xs,.factory-bootstrap-446 td.visible-lg,.factory-bootstrap-446 td.visible-md,.factory-bootstrap-446 td.visible-sm,.factory-bootstrap-446 td.visible-xs,.factory-bootstrap-446 th.visible-lg,.factory-bootstrap-446 th.visible-md,.factory-bootstrap-446 th.visible-sm,.factory-bootstrap-446 th.visible-xs,.factory-bootstrap-446 tr.visible-lg,.factory-bootstrap-446 tr.visible-md,.factory-bootstrap-446 tr.visible-sm,.factory-bootstrap-446 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-446 .hidden-xs{display:block!important}.factory-bootstrap-446 table.hidden-xs{display:table}.factory-bootstrap-446 tr.hidden-xs{display:table-row!important}.factory-bootstrap-446 td.hidden-xs,.factory-bootstrap-446 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-446 .hidden-sm{display:block!important}.factory-bootstrap-446 table.hidden-sm{display:table}.factory-bootstrap-446 tr.hidden-sm{display:table-row!important}.factory-bootstrap-446 td.hidden-sm,.factory-bootstrap-446 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-446 .hidden-md{display:block!important}.factory-bootstrap-446 table.hidden-md{display:table}.factory-bootstrap-446 tr.hidden-md{display:table-row!important}.factory-bootstrap-446 td.hidden-md,.factory-bootstrap-446 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-446 .hidden-lg{display:block!important}.factory-bootstrap-446 table.hidden-lg{display:table}.factory-bootstrap-446 tr.hidden-lg{display:table-row!important}.factory-bootstrap-446 td.hidden-lg,.factory-bootstrap-446 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-446 .hidden-lg.hidden-xs,.factory-bootstrap-446 td.hidden-lg.hidden-xs,.factory-bootstrap-446 th.hidden-lg.hidden-xs,.factory-bootstrap-446 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-446 .hidden-lg.hidden-sm,.factory-bootstrap-446 td.hidden-lg.hidden-sm,.factory-bootstrap-446 th.hidden-lg.hidden-sm,.factory-bootstrap-446 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-446 .hidden-lg.hidden-md,.factory-bootstrap-446 td.hidden-lg.hidden-md,.factory-bootstrap-446 th.hidden-lg.hidden-md,.factory-bootstrap-446 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-446 .hidden-lg,.factory-bootstrap-446 td.hidden-lg,.factory-bootstrap-446 th.hidden-lg,.factory-bootstrap-446 tr.hidden-lg{display:none!important}}.factory-bootstrap-446 .visible-print,.factory-bootstrap-446 td.visible-print,.factory-bootstrap-446 th.visible-print,.factory-bootstrap-446 tr.visible-print{display:none!important}@media print{.factory-bootstrap-446 .visible-print{display:block!important}.factory-bootstrap-446 table.visible-print{display:table}.factory-bootstrap-446 tr.visible-print{display:table-row!important}.factory-bootstrap-446 td.visible-print,.factory-bootstrap-446 th.visible-print{display:table-cell!important}.factory-bootstrap-446 .hidden-print,.factory-bootstrap-446 td.hidden-print,.factory-bootstrap-446 th.hidden-print,.factory-bootstrap-446 tr.hidden-print{display:none!important}}/*!
12
- * Factory Default Bootstrap Theme
13
- *
14
- * The code is based on Bootstrap v2.1.1
15
- *
16
- * Bootstrap v3.0.3 (http://getbootstrap.com)
17
- * Copyright 2013 Twitter, Inc.
18
- * Licensed under http://www.apache.org/licenses/LICENSE-2.0
19
- *
20
- * @author Paul Kashtanoff <paul@byonepress.com>
21
- * @copyright (c) 2013, OnePress Ltd
22
- *
23
- * @package factory-bootstrap
24
- * @since 1.0.0
25
- */.factory-bootstrap-446 .btn-danger,.factory-bootstrap-446 .btn-default,.factory-bootstrap-446 .btn-info,.factory-bootstrap-446 .btn-primary,.factory-bootstrap-446 .btn-success,.factory-bootstrap-446 .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-446 .btn-danger.active,.factory-bootstrap-446 .btn-danger:active,.factory-bootstrap-446 .btn-default.active,.factory-bootstrap-446 .btn-default:active,.factory-bootstrap-446 .btn-info.active,.factory-bootstrap-446 .btn-info:active,.factory-bootstrap-446 .btn-primary.active,.factory-bootstrap-446 .btn-primary:active,.factory-bootstrap-446 .btn-success.active,.factory-bootstrap-446 .btn-success:active,.factory-bootstrap-446 .btn-warning.active,.factory-bootstrap-446 .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-446 .btn.active,.factory-bootstrap-446 .btn:active{background-image:none}.factory-bootstrap-446 .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-446 .btn-default.active,.factory-bootstrap-446 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-446 .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-446 .btn-gold:focus,.factory-bootstrap-446 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-446 .btn-gold.active,.factory-bootstrap-446 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .btn-primary.active,.factory-bootstrap-446 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-446 .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-446 .btn-success:focus,.factory-bootstrap-446 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-446 .btn-success.active,.factory-bootstrap-446 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-446 .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-446 .btn-warning:focus,.factory-bootstrap-446 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-446 .btn-warning.active,.factory-bootstrap-446 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-446 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-446 .btn-danger.active,.factory-bootstrap-446 .btn-danger:active,.factory-bootstrap-446 .btn-danger:focus,.factory-bootstrap-446 .btn-danger:hover,.factory-bootstrap-446 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-446 .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-446 .btn-info:focus,.factory-bootstrap-446 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-446 .btn-info.active,.factory-bootstrap-446 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-446 .img-thumbnail,.factory-bootstrap-446 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-446 .dropdown-menu>li>a:focus,.factory-bootstrap-446 .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-446 .dropdown-menu>.active>a,.factory-bootstrap-446 .dropdown-menu>.active>a:focus,.factory-bootstrap-446 .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-446 .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-446 .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-446 .navbar-brand,.factory-bootstrap-446 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-446 .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-446 .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-446 .navbar-inverse .navbar-brand,.factory-bootstrap-446 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-446 .navbar-fixed-bottom,.factory-bootstrap-446 .navbar-fixed-top,.factory-bootstrap-446 .navbar-static-top{border-radius:0}.factory-bootstrap-446 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-446 .alert .actions{padding-top:10px}.factory-bootstrap-446 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-446 .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-446 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-446 .alert-normal,.factory-bootstrap-446 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-446 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-446 .alert-danger a:not(.btn),.factory-bootstrap-446 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .list-group-item.active,.factory-bootstrap-446 .list-group-item.active:focus,.factory-bootstrap-446 .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-446 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-446 .factory-hidden{display:none}.factory-bootstrap-446 .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, 2021-11-19
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-455 article,.factory-bootstrap-455 aside,.factory-bootstrap-455 details,.factory-bootstrap-455 figcaption,.factory-bootstrap-455 figure,.factory-bootstrap-455 footer,.factory-bootstrap-455 header,.factory-bootstrap-455 hgroup,.factory-bootstrap-455 main,.factory-bootstrap-455 nav,.factory-bootstrap-455 section,.factory-bootstrap-455 summary{display:block}.factory-bootstrap-455 audio,.factory-bootstrap-455 canvas,.factory-bootstrap-455 video{display:inline-block}.factory-bootstrap-455 audio:not([controls]){display:none;height:0}.factory-bootstrap-455 [hidden],.factory-bootstrap-455 template{display:none}.factory-bootstrap-455 body{margin:0}.factory-bootstrap-455 a{background:0 0}.factory-bootstrap-455 a:focus{outline:thin dotted}.factory-bootstrap-455 a:active,.factory-bootstrap-455 a:hover{outline:0}.factory-bootstrap-455 h1{margin:.67em 0}.factory-bootstrap-455 b,.factory-bootstrap-455 strong{font-weight:700}.factory-bootstrap-455 dfn{font-style:italic}.factory-bootstrap-455 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-455 mark{color:#000;background:#ff0}.factory-bootstrap-455 code,.factory-bootstrap-455 kbd,.factory-bootstrap-455 pre,.factory-bootstrap-455 samp{font-size:1em}.factory-bootstrap-455 pre{white-space:pre-wrap}.factory-bootstrap-455 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-455 sub,.factory-bootstrap-455 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-455 sup{top:-.5em}.factory-bootstrap-455 sub{bottom:-.25em}.factory-bootstrap-455 img{border:0}.factory-bootstrap-455 svg:not(:root){overflow:hidden}.factory-bootstrap-455 figure{margin:0}.factory-bootstrap-455 button,.factory-bootstrap-455 input,.factory-bootstrap-455 select,.factory-bootstrap-455 textarea{margin:0}.factory-bootstrap-455 button,.factory-bootstrap-455 select{text-transform:none}.factory-bootstrap-455 select{padding-right:4px!important}.factory-bootstrap-455 button,.factory-bootstrap-455 input[type=reset],.factory-bootstrap-455 input[type=submit],html .factory-bootstrap-455 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-455 button[disabled],html .factory-bootstrap-455 input[disabled]{cursor:default}.factory-bootstrap-455 input[type=checkbox],.factory-bootstrap-455 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-455 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-455 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-455 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-455 button::-moz-focus-inner,.factory-bootstrap-455 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-455 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-455 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-455 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-455 a,.factory-bootstrap-455 a:visited{text-decoration:underline}.factory-bootstrap-455 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-455 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-455 a[href^="javascript:"]:after,.factory-bootstrap-455 a[href^="#"]:after{content:""}.factory-bootstrap-455 blockquote,.factory-bootstrap-455 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-455 thead{display:table-header-group}.factory-bootstrap-455 img,.factory-bootstrap-455 tr{page-break-inside:avoid}.factory-bootstrap-455 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-455 h2,.factory-bootstrap-455 h3,.factory-bootstrap-455 p{orphans:3;widows:3}.factory-bootstrap-455 h2,.factory-bootstrap-455 h3{page-break-after:avoid}.factory-bootstrap-455 select{background:#fff!important}.factory-bootstrap-455 .navbar{display:none}.factory-bootstrap-455 .table td,.factory-bootstrap-455 .table th{background-color:#fff!important}.factory-bootstrap-455 .btn>.caret,.factory-bootstrap-455 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-455 .label{border:1px solid #000}.factory-bootstrap-455 .table{border-collapse:collapse!important}.factory-bootstrap-455 .table-bordered td,.factory-bootstrap-455 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-455 *,.factory-bootstrap-455 :after,.factory-bootstrap-455 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-455{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-455 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-455 button,.factory-bootstrap-455 input,.factory-bootstrap-455 select,.factory-bootstrap-455 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-455 img{vertical-align:middle}.factory-bootstrap-455 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-455 .img-rounded{border-radius:6px}.factory-bootstrap-455 .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-455 .img-circle{border-radius:50%}.factory-bootstrap-455 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-455 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-455 .h1,.factory-bootstrap-455 .h2,.factory-bootstrap-455 .h3,.factory-bootstrap-455 .h4,.factory-bootstrap-455 .h5,.factory-bootstrap-455 .h6,.factory-bootstrap-455 h1,.factory-bootstrap-455 h2,.factory-bootstrap-455 h3,.factory-bootstrap-455 h4,.factory-bootstrap-455 h5,.factory-bootstrap-455 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-455 .h1 .small,.factory-bootstrap-455 .h1 small,.factory-bootstrap-455 .h2 .small,.factory-bootstrap-455 .h2 small,.factory-bootstrap-455 .h3 .small,.factory-bootstrap-455 .h3 small,.factory-bootstrap-455 .h4 .small,.factory-bootstrap-455 .h4 small,.factory-bootstrap-455 .h5 .small,.factory-bootstrap-455 .h5 small,.factory-bootstrap-455 .h6 .small,.factory-bootstrap-455 .h6 small,.factory-bootstrap-455 h1 .small,.factory-bootstrap-455 h1 small,.factory-bootstrap-455 h2 .small,.factory-bootstrap-455 h2 small,.factory-bootstrap-455 h3 .small,.factory-bootstrap-455 h3 small,.factory-bootstrap-455 h4 .small,.factory-bootstrap-455 h4 small,.factory-bootstrap-455 h5 .small,.factory-bootstrap-455 h5 small,.factory-bootstrap-455 h6 .small,.factory-bootstrap-455 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-455 h1,.factory-bootstrap-455 h2,.factory-bootstrap-455 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-455 h1 .small,.factory-bootstrap-455 h1 small,.factory-bootstrap-455 h2 .small,.factory-bootstrap-455 h2 small,.factory-bootstrap-455 h3 .small,.factory-bootstrap-455 h3 small{font-size:65%}.factory-bootstrap-455 h4,.factory-bootstrap-455 h5,.factory-bootstrap-455 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-455 h4 .small,.factory-bootstrap-455 h4 small,.factory-bootstrap-455 h5 .small,.factory-bootstrap-455 h5 small,.factory-bootstrap-455 h6 .small,.factory-bootstrap-455 h6 small{font-size:75%}.factory-bootstrap-455 .h1,.factory-bootstrap-455 h1{font-size:36px}.factory-bootstrap-455 .h2,.factory-bootstrap-455 h2{font-size:30px}.factory-bootstrap-455 .h3,.factory-bootstrap-455 h3{font-size:24px}.factory-bootstrap-455 .h4,.factory-bootstrap-455 h4{font-size:18px}.factory-bootstrap-455 .h5,.factory-bootstrap-455 h5{font-size:14px}.factory-bootstrap-455 .h6,.factory-bootstrap-455 h6{font-size:12px}.factory-bootstrap-455 p{margin:0 0 10px}.factory-bootstrap-455 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-455 .small,.factory-bootstrap-455 small{font-size:85%}.factory-bootstrap-455 cite{font-style:normal}.factory-bootstrap-455 .text-muted{color:#999}.factory-bootstrap-455 .text-primary{color:#428bca}.factory-bootstrap-455 .text-primary:hover{color:#3071a9}.factory-bootstrap-455 .text-warning{color:#8a6d3b}.factory-bootstrap-455 .text-warning:hover{color:#66512c}.factory-bootstrap-455 .text-danger{color:#a94442}.factory-bootstrap-455 .text-danger:hover{color:#843534}.factory-bootstrap-455 .text-success{color:#3c763d}.factory-bootstrap-455 .text-success:hover{color:#2b542c}.factory-bootstrap-455 .text-info{color:#31708f}.factory-bootstrap-455 .text-info:hover{color:#245269}.factory-bootstrap-455 .text-left{text-align:left}.factory-bootstrap-455 .text-right{text-align:right}.factory-bootstrap-455 .text-center{text-align:center}.factory-bootstrap-455 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-455 ol,.factory-bootstrap-455 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-455 ol ol,.factory-bootstrap-455 ol ul,.factory-bootstrap-455 ul ol,.factory-bootstrap-455 ul ul{margin-bottom:0}.factory-bootstrap-455 .list-inline,.factory-bootstrap-455 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-455 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-455 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-455 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-455 dd,.factory-bootstrap-455 dt{line-height:1.428571429}.factory-bootstrap-455 dt{font-weight:700}.factory-bootstrap-455 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-455 abbr[data-original-title],.factory-bootstrap-455 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-455 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-455 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-455 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-455 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-455 blockquote .small,.factory-bootstrap-455 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-455 blockquote .small:before,.factory-bootstrap-455 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-455 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-455 blockquote.pull-right .small,.factory-bootstrap-455 blockquote.pull-right p,.factory-bootstrap-455 blockquote.pull-right small{text-align:right}.factory-bootstrap-455 blockquote.pull-right .small:before,.factory-bootstrap-455 blockquote.pull-right small:before{content:''}.factory-bootstrap-455 blockquote.pull-right .small:after,.factory-bootstrap-455 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-455 blockquote:after,.factory-bootstrap-455 blockquote:before{content:""}.factory-bootstrap-455 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-455 code,.factory-bootstrap-455 kbd,.factory-bootstrap-455 pre,.factory-bootstrap-455 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-455 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-455 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-455 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-455 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-455 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-455 .container:after,.factory-bootstrap-455 .container:before{display:table;content:" "}.factory-bootstrap-455 .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-455 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-455 .row:after,.factory-bootstrap-455 .row:before{display:table;content:" "}.factory-bootstrap-455 .row:after{clear:both}.factory-bootstrap-455 .col-lg-1,.factory-bootstrap-455 .col-lg-10,.factory-bootstrap-455 .col-lg-11,.factory-bootstrap-455 .col-lg-12,.factory-bootstrap-455 .col-lg-2,.factory-bootstrap-455 .col-lg-3,.factory-bootstrap-455 .col-lg-4,.factory-bootstrap-455 .col-lg-5,.factory-bootstrap-455 .col-lg-6,.factory-bootstrap-455 .col-lg-7,.factory-bootstrap-455 .col-lg-8,.factory-bootstrap-455 .col-lg-9,.factory-bootstrap-455 .col-md-1,.factory-bootstrap-455 .col-md-10,.factory-bootstrap-455 .col-md-11,.factory-bootstrap-455 .col-md-12,.factory-bootstrap-455 .col-md-2,.factory-bootstrap-455 .col-md-3,.factory-bootstrap-455 .col-md-4,.factory-bootstrap-455 .col-md-5,.factory-bootstrap-455 .col-md-6,.factory-bootstrap-455 .col-md-7,.factory-bootstrap-455 .col-md-8,.factory-bootstrap-455 .col-md-9,.factory-bootstrap-455 .col-sm-1,.factory-bootstrap-455 .col-sm-10,.factory-bootstrap-455 .col-sm-11,.factory-bootstrap-455 .col-sm-12,.factory-bootstrap-455 .col-sm-2,.factory-bootstrap-455 .col-sm-3,.factory-bootstrap-455 .col-sm-4,.factory-bootstrap-455 .col-sm-5,.factory-bootstrap-455 .col-sm-6,.factory-bootstrap-455 .col-sm-7,.factory-bootstrap-455 .col-sm-8,.factory-bootstrap-455 .col-sm-9,.factory-bootstrap-455 .col-xs-1,.factory-bootstrap-455 .col-xs-10,.factory-bootstrap-455 .col-xs-11,.factory-bootstrap-455 .col-xs-12,.factory-bootstrap-455 .col-xs-2,.factory-bootstrap-455 .col-xs-3,.factory-bootstrap-455 .col-xs-4,.factory-bootstrap-455 .col-xs-5,.factory-bootstrap-455 .col-xs-6,.factory-bootstrap-455 .col-xs-7,.factory-bootstrap-455 .col-xs-8,.factory-bootstrap-455 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-455 .col-xs-1,.factory-bootstrap-455 .col-xs-10,.factory-bootstrap-455 .col-xs-11,.factory-bootstrap-455 .col-xs-12,.factory-bootstrap-455 .col-xs-2,.factory-bootstrap-455 .col-xs-3,.factory-bootstrap-455 .col-xs-4,.factory-bootstrap-455 .col-xs-5,.factory-bootstrap-455 .col-xs-6,.factory-bootstrap-455 .col-xs-7,.factory-bootstrap-455 .col-xs-8,.factory-bootstrap-455 .col-xs-9{float:left}.factory-bootstrap-455 .col-xs-12{width:100%}.factory-bootstrap-455 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-455 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-455 .col-xs-9{width:75%}.factory-bootstrap-455 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-455 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-455 .col-xs-6{width:50%}.factory-bootstrap-455 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-455 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-455 .col-xs-3{width:25%}.factory-bootstrap-455 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-455 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-455 .col-xs-pull-12{right:100%}.factory-bootstrap-455 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-455 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-455 .col-xs-pull-9{right:75%}.factory-bootstrap-455 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-455 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-455 .col-xs-pull-6{right:50%}.factory-bootstrap-455 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-455 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-455 .col-xs-pull-3{right:25%}.factory-bootstrap-455 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-455 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-455 .col-xs-pull-0{right:0}.factory-bootstrap-455 .col-xs-push-12{left:100%}.factory-bootstrap-455 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-455 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-455 .col-xs-push-9{left:75%}.factory-bootstrap-455 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-455 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-455 .col-xs-push-6{left:50%}.factory-bootstrap-455 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-455 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-455 .col-xs-push-3{left:25%}.factory-bootstrap-455 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-455 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-455 .col-xs-push-0{left:0}.factory-bootstrap-455 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-455 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-455 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-455 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-455 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-455 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-455 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-455 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-455 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-455 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-455 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-455 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-455 .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-455 table{max-width:100%;background-color:transparent}.factory-bootstrap-455 th{text-align:left}.factory-bootstrap-455 .table{width:100%;margin-bottom:20px}.factory-bootstrap-455 .table>tbody>tr>td,.factory-bootstrap-455 .table>tbody>tr>th,.factory-bootstrap-455 .table>tfoot>tr>td,.factory-bootstrap-455 .table>tfoot>tr>th,.factory-bootstrap-455 .table>thead>tr>td,.factory-bootstrap-455 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-455 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-455 .table>caption+thead>tr:first-child>td,.factory-bootstrap-455 .table>caption+thead>tr:first-child>th,.factory-bootstrap-455 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-455 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-455 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-455 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-455 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-455 .table .table{background-color:#fff}.factory-bootstrap-455 .table-condensed>tbody>tr>td,.factory-bootstrap-455 .table-condensed>tbody>tr>th,.factory-bootstrap-455 .table-condensed>tfoot>tr>td,.factory-bootstrap-455 .table-condensed>tfoot>tr>th,.factory-bootstrap-455 .table-condensed>thead>tr>td,.factory-bootstrap-455 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-455 .table-bordered,.factory-bootstrap-455 .table-bordered>tbody>tr>td,.factory-bootstrap-455 .table-bordered>tbody>tr>th,.factory-bootstrap-455 .table-bordered>tfoot>tr>td,.factory-bootstrap-455 .table-bordered>tfoot>tr>th,.factory-bootstrap-455 .table-bordered>thead>tr>td,.factory-bootstrap-455 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-455 .table-bordered>thead>tr>td,.factory-bootstrap-455 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-455 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-455 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-455 .table-hover>tbody>tr:hover>td,.factory-bootstrap-455 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-455 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-455 table td[class*=col-],.factory-bootstrap-455 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-455 .table>tbody>.active>td,.factory-bootstrap-455 .table>tbody>.active>th,.factory-bootstrap-455 .table>tbody>tr>.active,.factory-bootstrap-455 .table>tfoot>.active>td,.factory-bootstrap-455 .table>tfoot>.active>th,.factory-bootstrap-455 .table>tfoot>tr>.active,.factory-bootstrap-455 .table>thead>.active>td,.factory-bootstrap-455 .table>thead>.active>th,.factory-bootstrap-455 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-455 .table-hover>tbody>.active:hover>td,.factory-bootstrap-455 .table-hover>tbody>.active:hover>th,.factory-bootstrap-455 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-455 .table>tbody>.success>td,.factory-bootstrap-455 .table>tbody>.success>th,.factory-bootstrap-455 .table>tbody>tr>.success,.factory-bootstrap-455 .table>tfoot>.success>td,.factory-bootstrap-455 .table>tfoot>.success>th,.factory-bootstrap-455 .table>tfoot>tr>.success,.factory-bootstrap-455 .table>thead>.success>td,.factory-bootstrap-455 .table>thead>.success>th,.factory-bootstrap-455 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-455 .table-hover>tbody>.success:hover>td,.factory-bootstrap-455 .table-hover>tbody>.success:hover>th,.factory-bootstrap-455 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-455 .table>tbody>.danger>td,.factory-bootstrap-455 .table>tbody>.danger>th,.factory-bootstrap-455 .table>tbody>tr>.danger,.factory-bootstrap-455 .table>tfoot>.danger>td,.factory-bootstrap-455 .table>tfoot>.danger>th,.factory-bootstrap-455 .table>tfoot>tr>.danger,.factory-bootstrap-455 .table>thead>.danger>td,.factory-bootstrap-455 .table>thead>.danger>th,.factory-bootstrap-455 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-455 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-455 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-455 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-455 .table>tbody>.warning>td,.factory-bootstrap-455 .table>tbody>.warning>th,.factory-bootstrap-455 .table>tbody>tr>.warning,.factory-bootstrap-455 .table>tfoot>.warning>td,.factory-bootstrap-455 .table>tfoot>.warning>th,.factory-bootstrap-455 .table>tfoot>tr>.warning,.factory-bootstrap-455 .table>thead>.warning>td,.factory-bootstrap-455 .table>thead>.warning>th,.factory-bootstrap-455 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-455 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-455 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-455 .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-455 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-455 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-455 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-455 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-455 input[type=checkbox],.factory-bootstrap-455 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-455 input[type=file]{display:block}.factory-bootstrap-455 select[multiple],.factory-bootstrap-455 select[size]{height:auto}.factory-bootstrap-455 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-455 input[type=checkbox]:focus,.factory-bootstrap-455 input[type=file]:focus,.factory-bootstrap-455 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-455 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-455 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-455 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-455 .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-455 .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-455 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-455 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-455 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-455 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-455 .form-control[disabled],.factory-bootstrap-455 .form-control[readonly],.factory-bootstrap-455 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-455 textarea.form-control{height:auto}.factory-bootstrap-455 .form-group{margin-bottom:15px}.factory-bootstrap-455 .checkbox,.factory-bootstrap-455 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-455 .checkbox label,.factory-bootstrap-455 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-455 .checkbox input[type=checkbox],.factory-bootstrap-455 .checkbox-inline input[type=checkbox],.factory-bootstrap-455 .radio input[type=radio],.factory-bootstrap-455 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-455 .checkbox+.checkbox,.factory-bootstrap-455 .radio+.radio{margin-top:-5px}.factory-bootstrap-455 .checkbox-inline,.factory-bootstrap-455 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-455 .checkbox-inline+.checkbox-inline,.factory-bootstrap-455 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-455 .checkbox-inline[disabled],.factory-bootstrap-455 .checkbox[disabled],.factory-bootstrap-455 .radio-inline[disabled],.factory-bootstrap-455 .radio[disabled],.factory-bootstrap-455 fieldset[disabled] .checkbox,.factory-bootstrap-455 fieldset[disabled] .checkbox-inline,.factory-bootstrap-455 fieldset[disabled] .radio,.factory-bootstrap-455 fieldset[disabled] .radio-inline,.factory-bootstrap-455 fieldset[disabled] input[type=checkbox],.factory-bootstrap-455 fieldset[disabled] input[type=radio],.factory-bootstrap-455 input[type=checkbox][disabled],.factory-bootstrap-455 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-455 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-455 textarea.input-sm{height:auto}.factory-bootstrap-455 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-455 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-455 textarea.input-lg{height:auto}.factory-bootstrap-455 .has-warning .checkbox,.factory-bootstrap-455 .has-warning .checkbox-inline,.factory-bootstrap-455 .has-warning .control-label,.factory-bootstrap-455 .has-warning .help-block,.factory-bootstrap-455 .has-warning .radio,.factory-bootstrap-455 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-455 .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-455 .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-455 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-455 .has-error .checkbox,.factory-bootstrap-455 .has-error .checkbox-inline,.factory-bootstrap-455 .has-error .control-label,.factory-bootstrap-455 .has-error .help-block,.factory-bootstrap-455 .has-error .radio,.factory-bootstrap-455 .has-error .radio-inline{color:#a94442}.factory-bootstrap-455 .controls{display:block}.factory-bootstrap-455 .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-455 .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-455 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-455 .has-success .checkbox,.factory-bootstrap-455 .has-success .checkbox-inline,.factory-bootstrap-455 .has-success .control-label,.factory-bootstrap-455 .has-success .help-block,.factory-bootstrap-455 .has-success .radio,.factory-bootstrap-455 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-455 .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-455 .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-455 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-455 .form-control-static{margin-bottom:0}.factory-bootstrap-455 .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-455 .form-horizontal .checkbox,.factory-bootstrap-455 .form-horizontal .checkbox-inline,.factory-bootstrap-455 .form-horizontal .control-label,.factory-bootstrap-455 .form-horizontal .radio,.factory-bootstrap-455 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-455 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-455 .form-horizontal .checkbox,.factory-bootstrap-455 .form-horizontal .radio{min-height:27px}.factory-bootstrap-455 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-455 .form-horizontal .form-group:after,.factory-bootstrap-455 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-455 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-455 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-455 .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-455 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-455 .btn{text-decoration:none}.factory-bootstrap-455 .btn:focus,.factory-bootstrap-455 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-455 .btn.disabled,.factory-bootstrap-455 .btn[disabled],.factory-bootstrap-455 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-455 .btn-default.active,.factory-bootstrap-455 .btn-default:active,.factory-bootstrap-455 .btn-default:focus,.factory-bootstrap-455 .btn-default:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-455 .btn-default.active,.factory-bootstrap-455 .btn-default:active,.factory-bootstrap-455 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-455 .btn-default.disabled,.factory-bootstrap-455 .btn-default.disabled.active,.factory-bootstrap-455 .btn-default.disabled:active,.factory-bootstrap-455 .btn-default.disabled:focus,.factory-bootstrap-455 .btn-default.disabled:hover,.factory-bootstrap-455 .btn-default[disabled],.factory-bootstrap-455 .btn-default[disabled].active,.factory-bootstrap-455 .btn-default[disabled]:active,.factory-bootstrap-455 .btn-default[disabled]:focus,.factory-bootstrap-455 .btn-default[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-default,.factory-bootstrap-455 fieldset[disabled] .btn-default.active,.factory-bootstrap-455 fieldset[disabled] .btn-default:active,.factory-bootstrap-455 fieldset[disabled] .btn-default:focus,.factory-bootstrap-455 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-455 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-455 .btn-primary.active,.factory-bootstrap-455 .btn-primary:active,.factory-bootstrap-455 .btn-primary:focus,.factory-bootstrap-455 .btn-primary:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-455 .btn-primary.active,.factory-bootstrap-455 .btn-primary:active,.factory-bootstrap-455 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-455 .btn-primary.disabled,.factory-bootstrap-455 .btn-primary.disabled.active,.factory-bootstrap-455 .btn-primary.disabled:active,.factory-bootstrap-455 .btn-primary.disabled:focus,.factory-bootstrap-455 .btn-primary.disabled:hover,.factory-bootstrap-455 .btn-primary[disabled],.factory-bootstrap-455 .btn-primary[disabled].active,.factory-bootstrap-455 .btn-primary[disabled]:active,.factory-bootstrap-455 .btn-primary[disabled]:focus,.factory-bootstrap-455 .btn-primary[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-primary,.factory-bootstrap-455 fieldset[disabled] .btn-primary.active,.factory-bootstrap-455 fieldset[disabled] .btn-primary:active,.factory-bootstrap-455 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-455 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-455 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-455 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-455 .btn-warning.active,.factory-bootstrap-455 .btn-warning:active,.factory-bootstrap-455 .btn-warning:focus,.factory-bootstrap-455 .btn-warning:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-455 .btn-warning.active,.factory-bootstrap-455 .btn-warning:active,.factory-bootstrap-455 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-455 .btn-warning.disabled,.factory-bootstrap-455 .btn-warning.disabled.active,.factory-bootstrap-455 .btn-warning.disabled:active,.factory-bootstrap-455 .btn-warning.disabled:focus,.factory-bootstrap-455 .btn-warning.disabled:hover,.factory-bootstrap-455 .btn-warning[disabled],.factory-bootstrap-455 .btn-warning[disabled].active,.factory-bootstrap-455 .btn-warning[disabled]:active,.factory-bootstrap-455 .btn-warning[disabled]:focus,.factory-bootstrap-455 .btn-warning[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-warning,.factory-bootstrap-455 fieldset[disabled] .btn-warning.active,.factory-bootstrap-455 fieldset[disabled] .btn-warning:active,.factory-bootstrap-455 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-455 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-455 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-455 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-455 .btn-success.active,.factory-bootstrap-455 .btn-success:active,.factory-bootstrap-455 .btn-success:focus,.factory-bootstrap-455 .btn-success:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-455 .btn-success.active,.factory-bootstrap-455 .btn-success:active,.factory-bootstrap-455 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-455 .btn-success.disabled,.factory-bootstrap-455 .btn-success.disabled.active,.factory-bootstrap-455 .btn-success.disabled:active,.factory-bootstrap-455 .btn-success.disabled:focus,.factory-bootstrap-455 .btn-success.disabled:hover,.factory-bootstrap-455 .btn-success[disabled],.factory-bootstrap-455 .btn-success[disabled].active,.factory-bootstrap-455 .btn-success[disabled]:active,.factory-bootstrap-455 .btn-success[disabled]:focus,.factory-bootstrap-455 .btn-success[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-success,.factory-bootstrap-455 fieldset[disabled] .btn-success.active,.factory-bootstrap-455 fieldset[disabled] .btn-success:active,.factory-bootstrap-455 fieldset[disabled] .btn-success:focus,.factory-bootstrap-455 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-455 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-455 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-455 .btn-info.active,.factory-bootstrap-455 .btn-info:active,.factory-bootstrap-455 .btn-info:focus,.factory-bootstrap-455 .btn-info:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-455 .btn-info.active,.factory-bootstrap-455 .btn-info:active,.factory-bootstrap-455 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-455 .btn-info.disabled,.factory-bootstrap-455 .btn-info.disabled.active,.factory-bootstrap-455 .btn-info.disabled:active,.factory-bootstrap-455 .btn-info.disabled:focus,.factory-bootstrap-455 .btn-info.disabled:hover,.factory-bootstrap-455 .btn-info[disabled],.factory-bootstrap-455 .btn-info[disabled].active,.factory-bootstrap-455 .btn-info[disabled]:active,.factory-bootstrap-455 .btn-info[disabled]:focus,.factory-bootstrap-455 .btn-info[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-info,.factory-bootstrap-455 fieldset[disabled] .btn-info.active,.factory-bootstrap-455 fieldset[disabled] .btn-info:active,.factory-bootstrap-455 fieldset[disabled] .btn-info:focus,.factory-bootstrap-455 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-455 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-455 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-455 .btn-link,.factory-bootstrap-455 .btn-link:active,.factory-bootstrap-455 .btn-link[disabled],.factory-bootstrap-455 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-455 .btn-link,.factory-bootstrap-455 .btn-link:active,.factory-bootstrap-455 .btn-link:focus,.factory-bootstrap-455 .btn-link:hover{border-color:transparent}.factory-bootstrap-455 .btn-link:focus,.factory-bootstrap-455 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-455 .btn-link[disabled]:focus,.factory-bootstrap-455 .btn-link[disabled]:hover,.factory-bootstrap-455 fieldset[disabled] .btn-link:focus,.factory-bootstrap-455 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-455 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-455 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-455 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-455 input[type=button].btn-block,.factory-bootstrap-455 input[type=reset].btn-block,.factory-bootstrap-455 input[type=submit].btn-block{width:100%}.factory-bootstrap-455 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-455 .fade.in{opacity:1}.factory-bootstrap-455 .collapse{display:none}.factory-bootstrap-455 .collapse.in{display:block}.factory-bootstrap-455 .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-455 .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-455 .glyphicon:empty{width:1em}.factory-bootstrap-455 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-455 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-455 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-455 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-455 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-455 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-455 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-455 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-455 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-455 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-455 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-455 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-455 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-455 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-455 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-455 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-455 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-455 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-455 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-455 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-455 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-455 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-455 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-455 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-455 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-455 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-455 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-455 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-455 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-455 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-455 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-455 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-455 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-455 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-455 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-455 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-455 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-455 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-455 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-455 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-455 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-455 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-455 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-455 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-455 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-455 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-455 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-455 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-455 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-455 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-455 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-455 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-455 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-455 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-455 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-455 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-455 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-455 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-455 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-455 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-455 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-455 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-455 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-455 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-455 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-455 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-455 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-455 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-455 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-455 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-455 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-455 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-455 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-455 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-455 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-455 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-455 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-455 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-455 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-455 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-455 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-455 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-455 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-455 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-455 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-455 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-455 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-455 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-455 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-455 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-455 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-455 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-455 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-455 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-455 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-455 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-455 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-455 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-455 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-455 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-455 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-455 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-455 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-455 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-455 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-455 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-455 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-455 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-455 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-455 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-455 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-455 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-455 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-455 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-455 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-455 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-455 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-455 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-455 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-455 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-455 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-455 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-455 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-455 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-455 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-455 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-455 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-455 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-455 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-455 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-455 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-455 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-455 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-455 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-455 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-455 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-455 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-455 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-455 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-455 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-455 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-455 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-455 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-455 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-455 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-455 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-455 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-455 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-455 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-455 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-455 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-455 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-455 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-455 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-455 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-455 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-455 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-455 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-455 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-455 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-455 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-455 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-455 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-455 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-455 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-455 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-455 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-455 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-455 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-455 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-455 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-455 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-455 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-455 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-455 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-455 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-455 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-455 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-455 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-455 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-455 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-455 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-455 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-455 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-455 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-455 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-455 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-455 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-455 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-455 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-455 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-455 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-455 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-455 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-455 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-455 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-455 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-455 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-455 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-455 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-455 .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-455 .dropdown{position:relative}.factory-bootstrap-455 .dropdown-toggle:focus{outline:0}.factory-bootstrap-455 .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-455 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-455 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-455 .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-455 .dropdown-menu>li>a:focus,.factory-bootstrap-455 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-455 .dropdown-menu>.active>a,.factory-bootstrap-455 .dropdown-menu>.active>a:focus,.factory-bootstrap-455 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-455 .dropdown-menu>.disabled>a,.factory-bootstrap-455 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-455 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-455 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-455 .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-455 .open>.dropdown-menu{display:block}.factory-bootstrap-455 .open>a{outline:0}.factory-bootstrap-455 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-455 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-455 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-455 .dropup .caret,.factory-bootstrap-455 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-455 .dropup .dropdown-menu,.factory-bootstrap-455 .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-455 .btn-group,.factory-bootstrap-455 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-455 .btn-group-vertical>.btn,.factory-bootstrap-455 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-455 .btn-group-vertical>.btn.active,.factory-bootstrap-455 .btn-group-vertical>.btn:active,.factory-bootstrap-455 .btn-group-vertical>.btn:focus,.factory-bootstrap-455 .btn-group-vertical>.btn:hover,.factory-bootstrap-455 .btn-group>.btn.active,.factory-bootstrap-455 .btn-group>.btn:active,.factory-bootstrap-455 .btn-group>.btn:focus,.factory-bootstrap-455 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-455 .btn-group-vertical>.btn:focus,.factory-bootstrap-455 .btn-group>.btn:focus{outline:0}.factory-bootstrap-455 .btn-group .btn+.btn,.factory-bootstrap-455 .btn-group .btn+.btn-group,.factory-bootstrap-455 .btn-group .btn-group+.btn,.factory-bootstrap-455 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-455 .btn-toolbar:after,.factory-bootstrap-455 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-455 .btn-toolbar:after{clear:both}.factory-bootstrap-455 .btn-toolbar .btn-group{float:left}.factory-bootstrap-455 .btn-toolbar>.btn+.btn,.factory-bootstrap-455 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-455 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-455 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-455 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-455 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-455 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-455 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-455 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .btn-group>.btn-group{float:left}.factory-bootstrap-455 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-455 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-455 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-455 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .btn-group .dropdown-toggle:active,.factory-bootstrap-455 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-455 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-455 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-455 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-455 .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-455 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-455 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-455 .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-455 .btn .caret{margin-left:0}.factory-bootstrap-455 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-455 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-455 .btn-group-vertical>.btn,.factory-bootstrap-455 .btn-group-vertical>.btn-group,.factory-bootstrap-455 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-455 .btn-group-vertical>.btn-group:after,.factory-bootstrap-455 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-455 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-455 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-455 .btn-group-vertical>.btn+.btn,.factory-bootstrap-455 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-455 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-455 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-455 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-455 .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-455 .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-455 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-455 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-455 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-455 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-455 .btn-group-justified>.btn,.factory-bootstrap-455 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-455 .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-455 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-455 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-455 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-455 .input-group-lg>.form-control,.factory-bootstrap-455 .input-group-lg>.input-group-addon,.factory-bootstrap-455 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-455 select.input-group-lg>.form-control,.factory-bootstrap-455 select.input-group-lg>.input-group-addon,.factory-bootstrap-455 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-455 textarea.input-group-lg>.form-control,.factory-bootstrap-455 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-455 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-455 .input-group-sm>.form-control,.factory-bootstrap-455 .input-group-sm>.input-group-addon,.factory-bootstrap-455 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-455 select.input-group-sm>.form-control,.factory-bootstrap-455 select.input-group-sm>.input-group-addon,.factory-bootstrap-455 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-455 textarea.input-group-sm>.form-control,.factory-bootstrap-455 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-455 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-455 .input-group .form-control,.factory-bootstrap-455 .input-group-addon,.factory-bootstrap-455 .input-group-btn{display:table-cell}.factory-bootstrap-455 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-455 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-455 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-455 .input-group-addon,.factory-bootstrap-455 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-455 .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-455 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-455 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-455 .input-group-addon input[type=checkbox],.factory-bootstrap-455 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-455 .input-group .form-control:first-child,.factory-bootstrap-455 .input-group-addon:first-child,.factory-bootstrap-455 .input-group-btn:first-child>.btn,.factory-bootstrap-455 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-455 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-455 .input-group-addon:first-child{border-right:0}.factory-bootstrap-455 .input-group .form-control:last-child,.factory-bootstrap-455 .input-group-addon:last-child,.factory-bootstrap-455 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-455 .input-group-btn:last-child>.btn,.factory-bootstrap-455 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .input-group-addon:last-child{border-left:0}.factory-bootstrap-455 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-455 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-455 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-455 .input-group-btn>.btn{position:relative}.factory-bootstrap-455 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-455 .input-group-btn>.btn:active,.factory-bootstrap-455 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-455 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-455 .nav:after,.factory-bootstrap-455 .nav:before{display:table;content:" "}.factory-bootstrap-455 .nav:after{clear:both}.factory-bootstrap-455 .nav>li{position:relative;display:block}.factory-bootstrap-455 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-455 .nav>li>a:focus,.factory-bootstrap-455 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-455 .nav>li.disabled>a{color:#999}.factory-bootstrap-455 .nav>li.disabled>a:focus,.factory-bootstrap-455 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-455 .nav .open>a,.factory-bootstrap-455 .nav .open>a:focus,.factory-bootstrap-455 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-455 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-455 .nav>li>a>img{max-width:none}.factory-bootstrap-455 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-455 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-455 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-455 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-455 .nav-tabs>li.active>a,.factory-bootstrap-455 .nav-tabs>li.active>a:focus,.factory-bootstrap-455 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-455 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-455 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-455 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-455 .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-455 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-455 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-455 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-455 .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-455 .nav-pills>li{float:left}.factory-bootstrap-455 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-455 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-455 .nav-pills>li.active>a,.factory-bootstrap-455 .nav-pills>li.active>a:focus,.factory-bootstrap-455 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-455 .nav-stacked>li{float:none}.factory-bootstrap-455 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-455 .nav-justified{width:100%}.factory-bootstrap-455 .nav-justified>li{float:none}.factory-bootstrap-455 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-455 .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-455 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-455 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-455 .nav-tabs-justified>.active>a,.factory-bootstrap-455 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-455 .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-455 .tab-content>.tab-pane{display:none}.factory-bootstrap-455 .tab-content>.active{display:block}.factory-bootstrap-455 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-455 .navbar:after,.factory-bootstrap-455 .navbar:before{display:table;content:" "}.factory-bootstrap-455 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-455 .navbar-header:after,.factory-bootstrap-455 .navbar-header:before{display:table;content:" "}.factory-bootstrap-455 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-455 .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-455 .navbar-collapse:after,.factory-bootstrap-455 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-455 .navbar-collapse:after{clear:both}.factory-bootstrap-455 .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-455 .container>.navbar-collapse,.factory-bootstrap-455 .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-455 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-455 .navbar-fixed-bottom,.factory-bootstrap-455 .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-455 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-455 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-455 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-455 .navbar-brand:focus,.factory-bootstrap-455 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-455 .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-455 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-455 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-455 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-455 .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-455 .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-455 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-455 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-455 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-455 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-455 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-455 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-455 .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-455 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-455 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-455 .navbar-default .navbar-brand:focus,.factory-bootstrap-455 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-455 .navbar-default .navbar-nav>li>a,.factory-bootstrap-455 .navbar-default .navbar-text{color:#777}.factory-bootstrap-455 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-455 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-455 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-455 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-455 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-455 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-455 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-455 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-455 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-455 .navbar-default .navbar-toggle:focus,.factory-bootstrap-455 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-455 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-455 .navbar-default .navbar-collapse,.factory-bootstrap-455 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-455 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-455 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-455 .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-455 .navbar-default .navbar-link{color:#777}.factory-bootstrap-455 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-455 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-455 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-455 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-455 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-455 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-455 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-455 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-455 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-455 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-455 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-455 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-455 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-455 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-455 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-455 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-455 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-455 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-455 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-455 .navbar-inverse .navbar-collapse,.factory-bootstrap-455 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-455 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-455 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-455 .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-455 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-455 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-455 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-455 .breadcrumb>li{display:inline-block}.factory-bootstrap-455 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-455 .breadcrumb>.active{color:#999}.factory-bootstrap-455 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-455 .pagination>li{display:inline}.factory-bootstrap-455 .pagination>li>a,.factory-bootstrap-455 .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-455 .pagination>li:first-child>a,.factory-bootstrap-455 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-455 .pagination>li:last-child>a,.factory-bootstrap-455 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-455 .pagination>li>a:focus,.factory-bootstrap-455 .pagination>li>a:hover,.factory-bootstrap-455 .pagination>li>span:focus,.factory-bootstrap-455 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-455 .pagination>.disabled>a,.factory-bootstrap-455 .pagination>.disabled>a:focus,.factory-bootstrap-455 .pagination>.disabled>a:hover,.factory-bootstrap-455 .pagination>.disabled>span,.factory-bootstrap-455 .pagination>.disabled>span:focus,.factory-bootstrap-455 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-455 .pagination-lg>li>a,.factory-bootstrap-455 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-455 .pagination-lg>li:first-child>a,.factory-bootstrap-455 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-455 .pagination-lg>li:last-child>a,.factory-bootstrap-455 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-455 .pagination-sm>li>a,.factory-bootstrap-455 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-455 .pagination-sm>li:first-child>a,.factory-bootstrap-455 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-455 .pagination-sm>li:last-child>a,.factory-bootstrap-455 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-455 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-455 .pager:after,.factory-bootstrap-455 .pager:before{display:table;content:" "}.factory-bootstrap-455 .pager:after{clear:both}.factory-bootstrap-455 .pager li{display:inline}.factory-bootstrap-455 .pager li>a,.factory-bootstrap-455 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-455 .pager li>a:focus,.factory-bootstrap-455 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-455 .pager .next>a,.factory-bootstrap-455 .pager .next>span{float:right}.factory-bootstrap-455 .pager .previous>a,.factory-bootstrap-455 .pager .previous>span{float:left}.factory-bootstrap-455 .pager .disabled>a,.factory-bootstrap-455 .pager .disabled>a:focus,.factory-bootstrap-455 .pager .disabled>a:hover,.factory-bootstrap-455 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-455 .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-455 .label[href]:focus,.factory-bootstrap-455 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-455 .label:empty{display:none}.factory-bootstrap-455 .btn .label{position:relative;top:-1px}.factory-bootstrap-455 .label-default{background-color:#999}.factory-bootstrap-455 .label-default[href]:focus,.factory-bootstrap-455 .label-default[href]:hover{background-color:gray}.factory-bootstrap-455 .label-primary{background-color:#428bca}.factory-bootstrap-455 .label-primary[href]:focus,.factory-bootstrap-455 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-455 .label-success{background-color:#5cb85c}.factory-bootstrap-455 .label-success[href]:focus,.factory-bootstrap-455 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-455 .label-info{background-color:#5bc0de}.factory-bootstrap-455 .label-info[href]:focus,.factory-bootstrap-455 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-455 .label-warning{background-color:#f0ad4e}.factory-bootstrap-455 .label-warning[href]:focus,.factory-bootstrap-455 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-455 .label-danger{background-color:#d9534f}.factory-bootstrap-455 .label-danger[href]:focus,.factory-bootstrap-455 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-455 .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-455 .badge:empty{display:none}.factory-bootstrap-455 .btn .badge{position:relative;top:-1px}.factory-bootstrap-455 a.badge:focus,.factory-bootstrap-455 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-455 .nav-pills>.active>a>.badge,.factory-bootstrap-455 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-455 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-455 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-455 .jumbotron .h1,.factory-bootstrap-455 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-455 .jumbotron p{line-height:1.4}.factory-bootstrap-455 .container .jumbotron{border-radius:6px}.factory-bootstrap-455 .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-455 .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-455 .thumbnail a>img,.factory-bootstrap-455 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-455 a.thumbnail.active,.factory-bootstrap-455 a.thumbnail:focus,.factory-bootstrap-455 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-455 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-455 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-455 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-455 .alert .alert-link{font-weight:700}.factory-bootstrap-455 .alert>p,.factory-bootstrap-455 .alert>ul{margin-bottom:0}.factory-bootstrap-455 .alert>p+p{margin-top:5px}.factory-bootstrap-455 .alert-dismissable{padding-right:35px}.factory-bootstrap-455 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-455 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-455 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-455 .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-455 .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-455 .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-455 .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-455 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-455 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-455 .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-455 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-455 .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-455 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-455 .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-455 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-455 .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-455 .media,.factory-bootstrap-455 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-455 .media,.factory-bootstrap-455 .media .media{margin-top:15px}.factory-bootstrap-455 .media:first-child{margin-top:0}.factory-bootstrap-455 .media-object{display:block}.factory-bootstrap-455 .media-heading{margin:0 0 5px}.factory-bootstrap-455 .media>.pull-left{margin-right:10px}.factory-bootstrap-455 .media>.pull-right{margin-left:10px}.factory-bootstrap-455 .media-list{padding-left:0;list-style:none}.factory-bootstrap-455 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-455 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-455 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-455 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-455 .list-group-item>.badge{float:right}.factory-bootstrap-455 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-455 a.list-group-item{color:#555}.factory-bootstrap-455 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-455 a.list-group-item:focus,.factory-bootstrap-455 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-455 a.list-group-item.active,.factory-bootstrap-455 a.list-group-item.active:focus,.factory-bootstrap-455 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-455 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-455 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-455 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-455 a.list-group-item.active .list-group-item-text,.factory-bootstrap-455 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-455 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-455 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-455 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-455 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-455 .panel-body{padding:15px}.factory-bootstrap-455 .panel-body:after,.factory-bootstrap-455 .panel-body:before{display:table;content:" "}.factory-bootstrap-455 .panel-body:after{clear:both}.factory-bootstrap-455 .panel>.list-group{margin-bottom:0}.factory-bootstrap-455 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-455 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-455 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-455 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-455 .panel>.table,.factory-bootstrap-455 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-455 .panel>.panel-body+.table,.factory-bootstrap-455 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-455 .panel>.table>tbody:first-child td,.factory-bootstrap-455 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-455 .panel>.table-bordered,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-455 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-455 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-455 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-455 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-455 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-455 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-455 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-455 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-455 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-455 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-455 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-455 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-455 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-455 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-455 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-455 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-455 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-455 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-455 .panel-title>a{color:inherit}.factory-bootstrap-455 .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-455 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-455 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-455 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-455 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-455 .panel-group .panel-footer{border-top:0}.factory-bootstrap-455 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-455 .panel-default{border-color:#ddd}.factory-bootstrap-455 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-455 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-455 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-455 .panel-primary{border-color:#428bca}.factory-bootstrap-455 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-455 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-455 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-455 .panel-success{border-color:#d6e9c6}.factory-bootstrap-455 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-455 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-455 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-455 .panel-warning{border-color:#faebcc}.factory-bootstrap-455 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-455 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-455 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-455 .panel-danger{border-color:#ebccd1}.factory-bootstrap-455 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-455 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-455 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-455 .panel-info{border-color:#bce8f1}.factory-bootstrap-455 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-455 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-455 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-455 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-455 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-455 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-455 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-455 .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-455 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-455 .close:focus,.factory-bootstrap-455 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-455 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-455 .modal-open{overflow:hidden}.factory-bootstrap-455 .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-455 .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-455 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-455 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-455 .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-455 .modal-backdrop,.factory-bootstrap-455-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-455 .modal-backdrop.fade,.factory-bootstrap-455-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-455 .modal-backdrop.in,.factory-bootstrap-455-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-455 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-455 .modal-header .close{margin-top:-2px}.factory-bootstrap-455 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-455 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-455 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-455 .modal-footer:after,.factory-bootstrap-455 .modal-footer:before{display:table;content:" "}.factory-bootstrap-455 .modal-footer:after{clear:both}.factory-bootstrap-455 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-455 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-455 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-455 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-455 .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-455 .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-455 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-455 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-455 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-455 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-455 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-455 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-455 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-455 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-455 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-455 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-455 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-455 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-455 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-455 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-455 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-455 .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-455 .popover.top{margin-top:-10px}.factory-bootstrap-455 .popover.right{margin-left:10px}.factory-bootstrap-455 .popover.bottom{margin-top:10px}.factory-bootstrap-455 .popover.left{margin-left:-10px}.factory-bootstrap-455 .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-455 .popover-content{padding:9px 14px}.factory-bootstrap-455 .popover .arrow,.factory-bootstrap-455 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-455 .popover .arrow{border-width:11px}.factory-bootstrap-455 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-455 .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-455 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-455 .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-455 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-455 .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-455 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-455 .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-455 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-455 .carousel{position:relative}.factory-bootstrap-455 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-455 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-455 .carousel-inner>.item>a>img,.factory-bootstrap-455 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-455 .carousel-inner>.active,.factory-bootstrap-455 .carousel-inner>.next,.factory-bootstrap-455 .carousel-inner>.prev{display:block}.factory-bootstrap-455 .carousel-inner>.active{left:0}.factory-bootstrap-455 .carousel-inner>.next,.factory-bootstrap-455 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-455 .carousel-inner>.next{left:100%}.factory-bootstrap-455 .carousel-inner>.prev{left:-100%}.factory-bootstrap-455 .carousel-inner>.next.left,.factory-bootstrap-455 .carousel-inner>.prev.right{left:0}.factory-bootstrap-455 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-455 .carousel-inner>.active.right{left:100%}.factory-bootstrap-455 .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-455 .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-455 .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-455 .carousel-control:focus,.factory-bootstrap-455 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-455 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-455 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-455 .carousel-control .icon-next,.factory-bootstrap-455 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-455 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-455 .carousel-control .icon-prev{left:50%}.factory-bootstrap-455 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-455 .carousel-control .icon-next{right:50%}.factory-bootstrap-455 .carousel-control .icon-next,.factory-bootstrap-455 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-455 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-455 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-455 .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-455 .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-455 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-455 .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-455 .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-455 .clearfix:after,.factory-bootstrap-455 .clearfix:before{display:table;content:" "}.factory-bootstrap-455 .clearfix:after{clear:both}.factory-bootstrap-455 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-455 .pull-right{float:right!important}.factory-bootstrap-455 .pull-left{float:left!important}.factory-bootstrap-455 .hide{display:none!important}.factory-bootstrap-455 .show{display:block!important}.factory-bootstrap-455 .invisible{visibility:hidden}.factory-bootstrap-455 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-455 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-455 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-455 .visible-lg,.factory-bootstrap-455 .visible-md,.factory-bootstrap-455 .visible-sm,.factory-bootstrap-455 .visible-xs,.factory-bootstrap-455 td.visible-lg,.factory-bootstrap-455 td.visible-md,.factory-bootstrap-455 td.visible-sm,.factory-bootstrap-455 td.visible-xs,.factory-bootstrap-455 th.visible-lg,.factory-bootstrap-455 th.visible-md,.factory-bootstrap-455 th.visible-sm,.factory-bootstrap-455 th.visible-xs,.factory-bootstrap-455 tr.visible-lg,.factory-bootstrap-455 tr.visible-md,.factory-bootstrap-455 tr.visible-sm,.factory-bootstrap-455 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-455 .hidden-xs{display:block!important}.factory-bootstrap-455 table.hidden-xs{display:table}.factory-bootstrap-455 tr.hidden-xs{display:table-row!important}.factory-bootstrap-455 td.hidden-xs,.factory-bootstrap-455 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-455 .hidden-sm{display:block!important}.factory-bootstrap-455 table.hidden-sm{display:table}.factory-bootstrap-455 tr.hidden-sm{display:table-row!important}.factory-bootstrap-455 td.hidden-sm,.factory-bootstrap-455 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-455 .hidden-md{display:block!important}.factory-bootstrap-455 table.hidden-md{display:table}.factory-bootstrap-455 tr.hidden-md{display:table-row!important}.factory-bootstrap-455 td.hidden-md,.factory-bootstrap-455 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-455 .hidden-lg{display:block!important}.factory-bootstrap-455 table.hidden-lg{display:table}.factory-bootstrap-455 tr.hidden-lg{display:table-row!important}.factory-bootstrap-455 td.hidden-lg,.factory-bootstrap-455 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-455 .hidden-lg.hidden-xs,.factory-bootstrap-455 td.hidden-lg.hidden-xs,.factory-bootstrap-455 th.hidden-lg.hidden-xs,.factory-bootstrap-455 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-455 .hidden-lg.hidden-sm,.factory-bootstrap-455 td.hidden-lg.hidden-sm,.factory-bootstrap-455 th.hidden-lg.hidden-sm,.factory-bootstrap-455 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-455 .hidden-lg.hidden-md,.factory-bootstrap-455 td.hidden-lg.hidden-md,.factory-bootstrap-455 th.hidden-lg.hidden-md,.factory-bootstrap-455 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-455 .hidden-lg,.factory-bootstrap-455 td.hidden-lg,.factory-bootstrap-455 th.hidden-lg,.factory-bootstrap-455 tr.hidden-lg{display:none!important}}.factory-bootstrap-455 .visible-print,.factory-bootstrap-455 td.visible-print,.factory-bootstrap-455 th.visible-print,.factory-bootstrap-455 tr.visible-print{display:none!important}@media print{.factory-bootstrap-455 .visible-print{display:block!important}.factory-bootstrap-455 table.visible-print{display:table}.factory-bootstrap-455 tr.visible-print{display:table-row!important}.factory-bootstrap-455 td.visible-print,.factory-bootstrap-455 th.visible-print{display:table-cell!important}.factory-bootstrap-455 .hidden-print,.factory-bootstrap-455 td.hidden-print,.factory-bootstrap-455 th.hidden-print,.factory-bootstrap-455 tr.hidden-print{display:none!important}}.factory-bootstrap-455 .btn-danger,.factory-bootstrap-455 .btn-default,.factory-bootstrap-455 .btn-info,.factory-bootstrap-455 .btn-primary,.factory-bootstrap-455 .btn-success,.factory-bootstrap-455 .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-455 .btn-danger.active,.factory-bootstrap-455 .btn-danger:active,.factory-bootstrap-455 .btn-default.active,.factory-bootstrap-455 .btn-default:active,.factory-bootstrap-455 .btn-info.active,.factory-bootstrap-455 .btn-info:active,.factory-bootstrap-455 .btn-primary.active,.factory-bootstrap-455 .btn-primary:active,.factory-bootstrap-455 .btn-success.active,.factory-bootstrap-455 .btn-success:active,.factory-bootstrap-455 .btn-warning.active,.factory-bootstrap-455 .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-455 .btn.active,.factory-bootstrap-455 .btn:active{background-image:none}.factory-bootstrap-455 .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-455 .btn-default.active,.factory-bootstrap-455 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-455 .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-455 .btn-gold:focus,.factory-bootstrap-455 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-455 .btn-gold.active,.factory-bootstrap-455 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .btn-primary.active,.factory-bootstrap-455 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-455 .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-455 .btn-success:focus,.factory-bootstrap-455 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-455 .btn-success.active,.factory-bootstrap-455 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-455 .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-455 .btn-warning:focus,.factory-bootstrap-455 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-455 .btn-warning.active,.factory-bootstrap-455 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-455 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-455 .btn-danger.active,.factory-bootstrap-455 .btn-danger:active,.factory-bootstrap-455 .btn-danger:focus,.factory-bootstrap-455 .btn-danger:hover,.factory-bootstrap-455 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-455 .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-455 .btn-info:focus,.factory-bootstrap-455 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-455 .btn-info.active,.factory-bootstrap-455 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-455 .img-thumbnail,.factory-bootstrap-455 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-455 .dropdown-menu>li>a:focus,.factory-bootstrap-455 .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-455 .dropdown-menu>.active>a,.factory-bootstrap-455 .dropdown-menu>.active>a:focus,.factory-bootstrap-455 .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-455 .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-455 .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-455 .navbar-brand,.factory-bootstrap-455 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-455 .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-455 .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-455 .navbar-inverse .navbar-brand,.factory-bootstrap-455 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-455 .navbar-fixed-bottom,.factory-bootstrap-455 .navbar-fixed-top,.factory-bootstrap-455 .navbar-static-top{border-radius:0}.factory-bootstrap-455 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-455 .alert .actions{padding-top:10px}.factory-bootstrap-455 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-455 .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-455 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-455 .alert-normal,.factory-bootstrap-455 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-455 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-455 .alert-danger a:not(.btn),.factory-bootstrap-455 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .list-group-item.active,.factory-bootstrap-455 .list-group-item.active:focus,.factory-bootstrap-455 .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-455 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-455 .factory-hidden{display:none}.factory-bootstrap-455 .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, 2021-02-04
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
@@ -8,10 +8,4 @@
8
  */
9
 
10
 
11
- /*!
12
- * Datepicker for Bootstrap v1.5.0-dev (https://github.com/eternicode/bootstrap-datepicker)
13
- *
14
- * Copyright 2012 Stefan Petre
15
- * Improvements by Andrew Rowls
16
- * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
17
- */.datepicker{border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-top:before{top:-7px}.datepicker-dropdown.datepicker-orient-top:after{top:-6px}.datepicker-dropdown.datepicker-orient-bottom:before{bottom:-7px;border-bottom:0;border-top:7px solid #999}.datepicker-dropdown.datepicker-orient-bottom:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker>div{display:none}.datepicker.days .datepicker-days,.datepicker.months .datepicker-months,.datepicker.years .datepicker-years{display:block}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker table tr td,.datepicker table tr th{text-align:center;width:30px;height:30px;border-radius:4px;border:0}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day.focused,.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.new,.datepicker table tr td.old{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today:hover{color:#000;background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.disabled:hover:focus,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:focus,.datepicker table tr td.today:hover,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today:hover:focus,.datepicker table tr td.today:hover:hover,.open .dropdown-toggle.datepicker table tr td.today,.open .dropdown-toggle.datepicker table tr td.today.disabled,.open .dropdown-toggle.datepicker table tr td.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.today:hover{color:#000;background-color:#ffcd70;border-color:#f59e00}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today:active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active,.open .dropdown-toggle.datepicker table tr td.today,.open .dropdown-toggle.datepicker table tr td.today.disabled,.open .dropdown-toggle.datepicker table tr td.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.today:hover{background-image:none}.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled.disabled.active,.datepicker table tr td.today.disabled.disabled:active,.datepicker table tr td.today.disabled.disabled:focus,.datepicker table tr td.today.disabled.disabled:hover,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today.disabled:hover.disabled.active,.datepicker table tr td.today.disabled:hover.disabled:active,.datepicker table tr td.today.disabled:hover.disabled:focus,.datepicker table tr td.today.disabled:hover.disabled:hover,.datepicker table tr td.today.disabled:hover[disabled],.datepicker table tr td.today.disabled:hover[disabled].active,.datepicker table tr td.today.disabled:hover[disabled]:active,.datepicker table tr td.today.disabled:hover[disabled]:focus,.datepicker table tr td.today.disabled:hover[disabled]:hover,.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled[disabled].active,.datepicker table tr td.today.disabled[disabled]:active,.datepicker table tr td.today.disabled[disabled]:focus,.datepicker table tr td.today.disabled[disabled]:hover,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today:hover.disabled.active,.datepicker table tr td.today:hover.disabled:active,.datepicker table tr td.today:hover.disabled:focus,.datepicker table tr td.today:hover.disabled:hover,.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today:hover[disabled].active,.datepicker table tr td.today:hover[disabled]:active,.datepicker table tr td.today:hover[disabled]:focus,.datepicker table tr td.today:hover[disabled]:hover,.datepicker table tr td.today[disabled],.datepicker table tr td.today[disabled].active,.datepicker table tr td.today[disabled]:active,.datepicker table tr td.today[disabled]:focus,.datepicker table tr td.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.today,fieldset[disabled] .datepicker table tr td.today.active,fieldset[disabled] .datepicker table tr td.today.disabled,fieldset[disabled] .datepicker table tr td.today.disabled.active,fieldset[disabled] .datepicker table tr td.today.disabled:active,fieldset[disabled] .datepicker table tr td.today.disabled:focus,fieldset[disabled] .datepicker table tr td.today.disabled:hover,fieldset[disabled] .datepicker table tr td.today.disabled:hover.active,fieldset[disabled] .datepicker table tr td.today.disabled:hover:active,fieldset[disabled] .datepicker table tr td.today.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.today.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.today:active,fieldset[disabled] .datepicker table tr td.today:focus,fieldset[disabled] .datepicker table tr td.today:hover,fieldset[disabled] .datepicker table tr td.today:hover.active,fieldset[disabled] .datepicker table tr td.today:hover:active,fieldset[disabled] .datepicker table tr td.today:hover:focus,fieldset[disabled] .datepicker table tr td.today:hover:hover{background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range:hover{background:#eee;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today:hover{color:#000;background-color:#f7ca77;border-color:#f1a417;border-radius:0}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.disabled:hover:focus,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:focus,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today:hover:focus,.datepicker table tr td.range.today:hover:hover,.open .dropdown-toggle.datepicker table tr td.range.today,.open .dropdown-toggle.datepicker table tr td.range.today.disabled,.open .dropdown-toggle.datepicker table tr td.range.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.range.today:hover{color:#000;background-color:#f4bb51;border-color:#bf800c}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active,.open .dropdown-toggle.datepicker table tr td.range.today,.open .dropdown-toggle.datepicker table tr td.range.today.disabled,.open .dropdown-toggle.datepicker table tr td.range.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.range.today:hover{background-image:none}.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled.disabled.active,.datepicker table tr td.range.today.disabled.disabled:active,.datepicker table tr td.range.today.disabled.disabled:focus,.datepicker table tr td.range.today.disabled.disabled:hover,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today.disabled:hover.disabled.active,.datepicker table tr td.range.today.disabled:hover.disabled:active,.datepicker table tr td.range.today.disabled:hover.disabled:focus,.datepicker table tr td.range.today.disabled:hover.disabled:hover,.datepicker table tr td.range.today.disabled:hover[disabled],.datepicker table tr td.range.today.disabled:hover[disabled].active,.datepicker table tr td.range.today.disabled:hover[disabled]:active,.datepicker table tr td.range.today.disabled:hover[disabled]:focus,.datepicker table tr td.range.today.disabled:hover[disabled]:hover,.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today.disabled[disabled].active,.datepicker table tr td.range.today.disabled[disabled]:active,.datepicker table tr td.range.today.disabled[disabled]:focus,.datepicker table tr td.range.today.disabled[disabled]:hover,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today:hover.disabled.active,.datepicker table tr td.range.today:hover.disabled:active,.datepicker table tr td.range.today:hover.disabled:focus,.datepicker table tr td.range.today:hover.disabled:hover,.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today:hover[disabled].active,.datepicker table tr td.range.today:hover[disabled]:active,.datepicker table tr td.range.today:hover[disabled]:focus,.datepicker table tr td.range.today:hover[disabled]:hover,.datepicker table tr td.range.today[disabled],.datepicker table tr td.range.today[disabled].active,.datepicker table tr td.range.today[disabled]:active,.datepicker table tr td.range.today[disabled]:focus,.datepicker table tr td.range.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.today,fieldset[disabled] .datepicker table tr td.range.today.active,fieldset[disabled] .datepicker table tr td.range.today.disabled,fieldset[disabled] .datepicker table tr td.range.today.disabled.active,fieldset[disabled] .datepicker table tr td.range.today.disabled:active,fieldset[disabled] .datepicker table tr td.range.today.disabled:focus,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover.active,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:active,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.range.today:active,fieldset[disabled] .datepicker table tr td.range.today:focus,fieldset[disabled] .datepicker table tr td.range.today:hover,fieldset[disabled] .datepicker table tr td.range.today:hover.active,fieldset[disabled] .datepicker table tr td.range.today:hover:active,fieldset[disabled] .datepicker table tr td.range.today:hover:focus,fieldset[disabled] .datepicker table tr td.range.today:hover:hover{background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.selected,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected:hover{color:#fff;background-color:#999;border-color:#555;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.disabled:hover:focus,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected:active,.datepicker table tr td.selected:focus,.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected:hover:focus,.datepicker table tr td.selected:hover:hover,.open .dropdown-toggle.datepicker table tr td.selected,.open .dropdown-toggle.datepicker table tr td.selected.disabled,.open .dropdown-toggle.datepicker table tr td.selected.disabled:hover,.open .dropdown-toggle.datepicker table tr td.selected:hover{color:#fff;background-color:#858585;border-color:#373737}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active,.open .dropdown-toggle.datepicker table tr td.selected,.open .dropdown-toggle.datepicker table tr td.selected.disabled,.open .dropdown-toggle.datepicker table tr td.selected.disabled:hover,.open .dropdown-toggle.datepicker table tr td.selected:hover{background-image:none}.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled.disabled.active,.datepicker table tr td.selected.disabled.disabled:active,.datepicker table tr td.selected.disabled.disabled:focus,.datepicker table tr td.selected.disabled.disabled:hover,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected.disabled:hover.disabled.active,.datepicker table tr td.selected.disabled:hover.disabled:active,.datepicker table tr td.selected.disabled:hover.disabled:focus,.datepicker table tr td.selected.disabled:hover.disabled:hover,.datepicker table tr td.selected.disabled:hover[disabled],.datepicker table tr td.selected.disabled:hover[disabled].active,.datepicker table tr td.selected.disabled:hover[disabled]:active,.datepicker table tr td.selected.disabled:hover[disabled]:focus,.datepicker table tr td.selected.disabled:hover[disabled]:hover,.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected.disabled[disabled].active,.datepicker table tr td.selected.disabled[disabled]:active,.datepicker table tr td.selected.disabled[disabled]:focus,.datepicker table tr td.selected.disabled[disabled]:hover,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected:hover.disabled.active,.datepicker table tr td.selected:hover.disabled:active,.datepicker table tr td.selected:hover.disabled:focus,.datepicker table tr td.selected:hover.disabled:hover,.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected:hover[disabled].active,.datepicker table tr td.selected:hover[disabled]:active,.datepicker table tr td.selected:hover[disabled]:focus,.datepicker table tr td.selected:hover[disabled]:hover,.datepicker table tr td.selected[disabled],.datepicker table tr td.selected[disabled].active,.datepicker table tr td.selected[disabled]:active,.datepicker table tr td.selected[disabled]:focus,.datepicker table tr td.selected[disabled]:hover,fieldset[disabled] .datepicker table tr td.selected,fieldset[disabled] .datepicker table tr td.selected.active,fieldset[disabled] .datepicker table tr td.selected.disabled,fieldset[disabled] .datepicker table tr td.selected.disabled.active,fieldset[disabled] .datepicker table tr td.selected.disabled:active,fieldset[disabled] .datepicker table tr td.selected.disabled:focus,fieldset[disabled] .datepicker table tr td.selected.disabled:hover,fieldset[disabled] .datepicker table tr td.selected.disabled:hover.active,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:active,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.selected:active,fieldset[disabled] .datepicker table tr td.selected:focus,fieldset[disabled] .datepicker table tr td.selected:hover,fieldset[disabled] .datepicker table tr td.selected:hover.active,fieldset[disabled] .datepicker table tr td.selected:hover:active,fieldset[disabled] .datepicker table tr td.selected:hover:focus,fieldset[disabled] .datepicker table tr td.selected:hover:hover{background-color:#999;border-color:#555}.datepicker table tr td.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active:hover{color:#fff;background-color:#428bca;border-color:#357ebd;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.disabled:hover:focus,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:focus,.datepicker table tr td.active:hover,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active:hover:focus,.datepicker table tr td.active:hover:hover,.open .dropdown-toggle.datepicker table tr td.active,.open .dropdown-toggle.datepicker table tr td.active.disabled,.open .dropdown-toggle.datepicker table tr td.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td.active:hover{color:#fff;background-color:#3276b1;border-color:#285e8e}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active:active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active,.open .dropdown-toggle.datepicker table tr td.active,.open .dropdown-toggle.datepicker table tr td.active.disabled,.open .dropdown-toggle.datepicker table tr td.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td.active:hover{background-image:none}.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled.disabled.active,.datepicker table tr td.active.disabled.disabled:active,.datepicker table tr td.active.disabled.disabled:focus,.datepicker table tr td.active.disabled.disabled:hover,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active.disabled:hover.disabled.active,.datepicker table tr td.active.disabled:hover.disabled:active,.datepicker table tr td.active.disabled:hover.disabled:focus,.datepicker table tr td.active.disabled:hover.disabled:hover,.datepicker table tr td.active.disabled:hover[disabled],.datepicker table tr td.active.disabled:hover[disabled].active,.datepicker table tr td.active.disabled:hover[disabled]:active,.datepicker table tr td.active.disabled:hover[disabled]:focus,.datepicker table tr td.active.disabled:hover[disabled]:hover,.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled[disabled].active,.datepicker table tr td.active.disabled[disabled]:active,.datepicker table tr td.active.disabled[disabled]:focus,.datepicker table tr td.active.disabled[disabled]:hover,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active:hover.disabled.active,.datepicker table tr td.active:hover.disabled:active,.datepicker table tr td.active:hover.disabled:focus,.datepicker table tr td.active:hover.disabled:hover,.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active:hover[disabled].active,.datepicker table tr td.active:hover[disabled]:active,.datepicker table tr td.active:hover[disabled]:focus,.datepicker table tr td.active:hover[disabled]:hover,.datepicker table tr td.active[disabled],.datepicker table tr td.active[disabled].active,.datepicker table tr td.active[disabled]:active,.datepicker table tr td.active[disabled]:focus,.datepicker table tr td.active[disabled]:hover,fieldset[disabled] .datepicker table tr td.active,fieldset[disabled] .datepicker table tr td.active.active,fieldset[disabled] .datepicker table tr td.active.disabled,fieldset[disabled] .datepicker table tr td.active.disabled.active,fieldset[disabled] .datepicker table tr td.active.disabled:active,fieldset[disabled] .datepicker table tr td.active.disabled:focus,fieldset[disabled] .datepicker table tr td.active.disabled:hover,fieldset[disabled] .datepicker table tr td.active.disabled:hover.active,fieldset[disabled] .datepicker table tr td.active.disabled:hover:active,fieldset[disabled] .datepicker table tr td.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.active:active,fieldset[disabled] .datepicker table tr td.active:focus,fieldset[disabled] .datepicker table tr td.active:hover,fieldset[disabled] .datepicker table tr td.active:hover.active,fieldset[disabled] .datepicker table tr td.active:hover:active,fieldset[disabled] .datepicker table tr td.active:hover:focus,fieldset[disabled] .datepicker table tr td.active:hover:hover{background-color:#428bca;border-color:#357ebd}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;border-radius:4px}.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{color:#fff;background-color:#428bca;border-color:#357ebd;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover:focus,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:focus,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover:focus,.datepicker table tr td span.active:hover:hover,.open .dropdown-toggle.datepicker table tr td span.active,.open .dropdown-toggle.datepicker table tr td span.active.disabled,.open .dropdown-toggle.datepicker table tr td span.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td span.active:hover{color:#fff;background-color:#3276b1;border-color:#285e8e}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active,.open .dropdown-toggle.datepicker table tr td span.active,.open .dropdown-toggle.datepicker table tr td span.active.disabled,.open .dropdown-toggle.datepicker table tr td span.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td span.active:hover{background-image:none}.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled.disabled.active,.datepicker table tr td span.active.disabled.disabled:active,.datepicker table tr td span.active.disabled.disabled:focus,.datepicker table tr td span.active.disabled.disabled:hover,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active.disabled:hover.disabled.active,.datepicker table tr td span.active.disabled:hover.disabled:active,.datepicker table tr td span.active.disabled:hover.disabled:focus,.datepicker table tr td span.active.disabled:hover.disabled:hover,.datepicker table tr td span.active.disabled:hover[disabled],.datepicker table tr td span.active.disabled:hover[disabled].active,.datepicker table tr td span.active.disabled:hover[disabled]:active,.datepicker table tr td span.active.disabled:hover[disabled]:focus,.datepicker table tr td span.active.disabled:hover[disabled]:hover,.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled[disabled].active,.datepicker table tr td span.active.disabled[disabled]:active,.datepicker table tr td span.active.disabled[disabled]:focus,.datepicker table tr td span.active.disabled[disabled]:hover,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active:hover.disabled.active,.datepicker table tr td span.active:hover.disabled:active,.datepicker table tr td span.active:hover.disabled:focus,.datepicker table tr td span.active:hover.disabled:hover,.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active:hover[disabled].active,.datepicker table tr td span.active:hover[disabled]:active,.datepicker table tr td span.active:hover[disabled]:focus,.datepicker table tr td span.active:hover[disabled]:hover,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active[disabled].active,.datepicker table tr td span.active[disabled]:active,.datepicker table tr td span.active[disabled]:focus,.datepicker table tr td span.active[disabled]:hover,fieldset[disabled] .datepicker table tr td span.active,fieldset[disabled] .datepicker table tr td span.active.active,fieldset[disabled] .datepicker table tr td span.active.disabled,fieldset[disabled] .datepicker table tr td span.active.disabled.active,fieldset[disabled] .datepicker table tr td span.active.disabled:active,fieldset[disabled] .datepicker table tr td span.active.disabled:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover,fieldset[disabled] .datepicker table tr td span.active.disabled:hover.active,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:active,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td span.active:active,fieldset[disabled] .datepicker table tr td span.active:focus,fieldset[disabled] .datepicker table tr td span.active:hover,fieldset[disabled] .datepicker table tr td span.active:hover.active,fieldset[disabled] .datepicker table tr td span.active:hover:active,fieldset[disabled] .datepicker table tr td span.active:hover:focus,fieldset[disabled] .datepicker table tr td span.active:hover:hover{background-color:#428bca;border-color:#357ebd}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#999}.datepicker .datepicker-switch{width:145px}.datepicker tfoot tr th,.datepicker thead tr:first-child th{cursor:pointer}.datepicker tfoot tr th:hover,.datepicker thead tr:first-child th:hover{background:#eee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child .cw{cursor:default;background-color:transparent}.input-group.date .input-group-addon{cursor:pointer}.input-daterange{width:100%}.input-daterange input{text-align:center}.input-daterange input:first-child{border-radius:3px 0 0 3px}.input-daterange input:last-child{border-radius:0 3px 3px 0}.input-daterange .input-group-addon{width:auto;min-width:16px;padding:4px 5px;font-weight:400;line-height:1.42857143;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#eee;border:solid #ccc;border-width:1px 0;margin-left:-5px;margin-right:-5px}.datepicker.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;float:left;display:none;min-width:160px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:5px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;*border-right-width:2px;*border-bottom-width:2px;color:#333;font-size:13px;line-height:1.42857143}.datepicker.datepicker-inline td,.datepicker.datepicker-inline th,.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{padding:0 5px}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
3
  * Webcraftic factory build
4
  *
5
  * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
8
  */
9
 
10
 
11
+ .datepicker{border-radius:4px;direction:ltr}.datepicker-inline{width:220px}.datepicker.datepicker-rtl{direction:rtl}.datepicker.datepicker-rtl table tr td span{float:right}.datepicker-dropdown{top:0;left:0}.datepicker-dropdown:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-top:0;border-bottom-color:rgba(0,0,0,.2);position:absolute}.datepicker-dropdown:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;border-top:0;position:absolute}.datepicker-dropdown.datepicker-orient-left:before{left:6px}.datepicker-dropdown.datepicker-orient-left:after{left:7px}.datepicker-dropdown.datepicker-orient-right:before{right:6px}.datepicker-dropdown.datepicker-orient-right:after{right:7px}.datepicker-dropdown.datepicker-orient-top:before{top:-7px}.datepicker-dropdown.datepicker-orient-top:after{top:-6px}.datepicker-dropdown.datepicker-orient-bottom:before{bottom:-7px;border-bottom:0;border-top:7px solid #999}.datepicker-dropdown.datepicker-orient-bottom:after{bottom:-6px;border-bottom:0;border-top:6px solid #fff}.datepicker>div{display:none}.datepicker.days .datepicker-days,.datepicker.months .datepicker-months,.datepicker.years .datepicker-years{display:block}.datepicker table{margin:0;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.datepicker table tr td,.datepicker table tr th{text-align:center;width:30px;height:30px;border-radius:4px;border:0}.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{background-color:transparent}.datepicker table tr td.day.focused,.datepicker table tr td.day:hover{background:#eee;cursor:pointer}.datepicker table tr td.new,.datepicker table tr td.old{color:#999}.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td.today,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today:hover{color:#000;background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.disabled:hover:focus,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today:active,.datepicker table tr td.today:focus,.datepicker table tr td.today:hover,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active,.datepicker table tr td.today:hover:focus,.datepicker table tr td.today:hover:hover,.open .dropdown-toggle.datepicker table tr td.today,.open .dropdown-toggle.datepicker table tr td.today.disabled,.open .dropdown-toggle.datepicker table tr td.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.today:hover{color:#000;background-color:#ffcd70;border-color:#f59e00}.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today:active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active,.open .dropdown-toggle.datepicker table tr td.today,.open .dropdown-toggle.datepicker table tr td.today.disabled,.open .dropdown-toggle.datepicker table tr td.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.today:hover{background-image:none}.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled.disabled.active,.datepicker table tr td.today.disabled.disabled:active,.datepicker table tr td.today.disabled.disabled:focus,.datepicker table tr td.today.disabled.disabled:hover,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:focus,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today.disabled:hover.disabled.active,.datepicker table tr td.today.disabled:hover.disabled:active,.datepicker table tr td.today.disabled:hover.disabled:focus,.datepicker table tr td.today.disabled:hover.disabled:hover,.datepicker table tr td.today.disabled:hover[disabled],.datepicker table tr td.today.disabled:hover[disabled].active,.datepicker table tr td.today.disabled:hover[disabled]:active,.datepicker table tr td.today.disabled:hover[disabled]:focus,.datepicker table tr td.today.disabled:hover[disabled]:hover,.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today.disabled[disabled].active,.datepicker table tr td.today.disabled[disabled]:active,.datepicker table tr td.today.disabled[disabled]:focus,.datepicker table tr td.today.disabled[disabled]:hover,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today:hover.disabled.active,.datepicker table tr td.today:hover.disabled:active,.datepicker table tr td.today:hover.disabled:focus,.datepicker table tr td.today:hover.disabled:hover,.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today:hover[disabled].active,.datepicker table tr td.today:hover[disabled]:active,.datepicker table tr td.today:hover[disabled]:focus,.datepicker table tr td.today:hover[disabled]:hover,.datepicker table tr td.today[disabled],.datepicker table tr td.today[disabled].active,.datepicker table tr td.today[disabled]:active,.datepicker table tr td.today[disabled]:focus,.datepicker table tr td.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.today,fieldset[disabled] .datepicker table tr td.today.active,fieldset[disabled] .datepicker table tr td.today.disabled,fieldset[disabled] .datepicker table tr td.today.disabled.active,fieldset[disabled] .datepicker table tr td.today.disabled:active,fieldset[disabled] .datepicker table tr td.today.disabled:focus,fieldset[disabled] .datepicker table tr td.today.disabled:hover,fieldset[disabled] .datepicker table tr td.today.disabled:hover.active,fieldset[disabled] .datepicker table tr td.today.disabled:hover:active,fieldset[disabled] .datepicker table tr td.today.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.today.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.today:active,fieldset[disabled] .datepicker table tr td.today:focus,fieldset[disabled] .datepicker table tr td.today:hover,fieldset[disabled] .datepicker table tr td.today:hover.active,fieldset[disabled] .datepicker table tr td.today:hover:active,fieldset[disabled] .datepicker table tr td.today:hover:focus,fieldset[disabled] .datepicker table tr td.today:hover:hover{background-color:#ffdb99;border-color:#ffb733}.datepicker table tr td.today:hover:hover{color:#000}.datepicker table tr td.today.active:hover{color:#fff}.datepicker table tr td.range,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range:hover{background:#eee;border-radius:0}.datepicker table tr td.range.today,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today:hover{color:#000;background-color:#f7ca77;border-color:#f1a417;border-radius:0}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.disabled:hover:focus,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:focus,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today:hover:focus,.datepicker table tr td.range.today:hover:hover,.open .dropdown-toggle.datepicker table tr td.range.today,.open .dropdown-toggle.datepicker table tr td.range.today.disabled,.open .dropdown-toggle.datepicker table tr td.range.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.range.today:hover{color:#000;background-color:#f4bb51;border-color:#bf800c}.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active,.open .dropdown-toggle.datepicker table tr td.range.today,.open .dropdown-toggle.datepicker table tr td.range.today.disabled,.open .dropdown-toggle.datepicker table tr td.range.today.disabled:hover,.open .dropdown-toggle.datepicker table tr td.range.today:hover{background-image:none}.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled.disabled.active,.datepicker table tr td.range.today.disabled.disabled:active,.datepicker table tr td.range.today.disabled.disabled:focus,.datepicker table tr td.range.today.disabled.disabled:hover,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:focus,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today.disabled:hover.disabled.active,.datepicker table tr td.range.today.disabled:hover.disabled:active,.datepicker table tr td.range.today.disabled:hover.disabled:focus,.datepicker table tr td.range.today.disabled:hover.disabled:hover,.datepicker table tr td.range.today.disabled:hover[disabled],.datepicker table tr td.range.today.disabled:hover[disabled].active,.datepicker table tr td.range.today.disabled:hover[disabled]:active,.datepicker table tr td.range.today.disabled:hover[disabled]:focus,.datepicker table tr td.range.today.disabled:hover[disabled]:hover,.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today.disabled[disabled].active,.datepicker table tr td.range.today.disabled[disabled]:active,.datepicker table tr td.range.today.disabled[disabled]:focus,.datepicker table tr td.range.today.disabled[disabled]:hover,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today:hover.disabled.active,.datepicker table tr td.range.today:hover.disabled:active,.datepicker table tr td.range.today:hover.disabled:focus,.datepicker table tr td.range.today:hover.disabled:hover,.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today:hover[disabled].active,.datepicker table tr td.range.today:hover[disabled]:active,.datepicker table tr td.range.today:hover[disabled]:focus,.datepicker table tr td.range.today:hover[disabled]:hover,.datepicker table tr td.range.today[disabled],.datepicker table tr td.range.today[disabled].active,.datepicker table tr td.range.today[disabled]:active,.datepicker table tr td.range.today[disabled]:focus,.datepicker table tr td.range.today[disabled]:hover,fieldset[disabled] .datepicker table tr td.range.today,fieldset[disabled] .datepicker table tr td.range.today.active,fieldset[disabled] .datepicker table tr td.range.today.disabled,fieldset[disabled] .datepicker table tr td.range.today.disabled.active,fieldset[disabled] .datepicker table tr td.range.today.disabled:active,fieldset[disabled] .datepicker table tr td.range.today.disabled:focus,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover.active,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:active,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.range.today.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.range.today:active,fieldset[disabled] .datepicker table tr td.range.today:focus,fieldset[disabled] .datepicker table tr td.range.today:hover,fieldset[disabled] .datepicker table tr td.range.today:hover.active,fieldset[disabled] .datepicker table tr td.range.today:hover:active,fieldset[disabled] .datepicker table tr td.range.today:hover:focus,fieldset[disabled] .datepicker table tr td.range.today:hover:hover{background-color:#f7ca77;border-color:#f1a417}.datepicker table tr td.selected,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected:hover{color:#fff;background-color:#999;border-color:#555;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.disabled:hover:focus,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected:active,.datepicker table tr td.selected:focus,.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected:hover:focus,.datepicker table tr td.selected:hover:hover,.open .dropdown-toggle.datepicker table tr td.selected,.open .dropdown-toggle.datepicker table tr td.selected.disabled,.open .dropdown-toggle.datepicker table tr td.selected.disabled:hover,.open .dropdown-toggle.datepicker table tr td.selected:hover{color:#fff;background-color:#858585;border-color:#373737}.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active,.open .dropdown-toggle.datepicker table tr td.selected,.open .dropdown-toggle.datepicker table tr td.selected.disabled,.open .dropdown-toggle.datepicker table tr td.selected.disabled:hover,.open .dropdown-toggle.datepicker table tr td.selected:hover{background-image:none}.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled.disabled.active,.datepicker table tr td.selected.disabled.disabled:active,.datepicker table tr td.selected.disabled.disabled:focus,.datepicker table tr td.selected.disabled.disabled:hover,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:focus,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected.disabled:hover.disabled.active,.datepicker table tr td.selected.disabled:hover.disabled:active,.datepicker table tr td.selected.disabled:hover.disabled:focus,.datepicker table tr td.selected.disabled:hover.disabled:hover,.datepicker table tr td.selected.disabled:hover[disabled],.datepicker table tr td.selected.disabled:hover[disabled].active,.datepicker table tr td.selected.disabled:hover[disabled]:active,.datepicker table tr td.selected.disabled:hover[disabled]:focus,.datepicker table tr td.selected.disabled:hover[disabled]:hover,.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected.disabled[disabled].active,.datepicker table tr td.selected.disabled[disabled]:active,.datepicker table tr td.selected.disabled[disabled]:focus,.datepicker table tr td.selected.disabled[disabled]:hover,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected:hover.disabled.active,.datepicker table tr td.selected:hover.disabled:active,.datepicker table tr td.selected:hover.disabled:focus,.datepicker table tr td.selected:hover.disabled:hover,.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected:hover[disabled].active,.datepicker table tr td.selected:hover[disabled]:active,.datepicker table tr td.selected:hover[disabled]:focus,.datepicker table tr td.selected:hover[disabled]:hover,.datepicker table tr td.selected[disabled],.datepicker table tr td.selected[disabled].active,.datepicker table tr td.selected[disabled]:active,.datepicker table tr td.selected[disabled]:focus,.datepicker table tr td.selected[disabled]:hover,fieldset[disabled] .datepicker table tr td.selected,fieldset[disabled] .datepicker table tr td.selected.active,fieldset[disabled] .datepicker table tr td.selected.disabled,fieldset[disabled] .datepicker table tr td.selected.disabled.active,fieldset[disabled] .datepicker table tr td.selected.disabled:active,fieldset[disabled] .datepicker table tr td.selected.disabled:focus,fieldset[disabled] .datepicker table tr td.selected.disabled:hover,fieldset[disabled] .datepicker table tr td.selected.disabled:hover.active,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:active,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.selected.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.selected:active,fieldset[disabled] .datepicker table tr td.selected:focus,fieldset[disabled] .datepicker table tr td.selected:hover,fieldset[disabled] .datepicker table tr td.selected:hover.active,fieldset[disabled] .datepicker table tr td.selected:hover:active,fieldset[disabled] .datepicker table tr td.selected:hover:focus,fieldset[disabled] .datepicker table tr td.selected:hover:hover{background-color:#999;border-color:#555}.datepicker table tr td.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active:hover{color:#fff;background-color:#428bca;border-color:#357ebd;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.disabled:hover:focus,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active:active,.datepicker table tr td.active:focus,.datepicker table tr td.active:hover,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active,.datepicker table tr td.active:hover:focus,.datepicker table tr td.active:hover:hover,.open .dropdown-toggle.datepicker table tr td.active,.open .dropdown-toggle.datepicker table tr td.active.disabled,.open .dropdown-toggle.datepicker table tr td.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td.active:hover{color:#fff;background-color:#3276b1;border-color:#285e8e}.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active:active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active,.open .dropdown-toggle.datepicker table tr td.active,.open .dropdown-toggle.datepicker table tr td.active.disabled,.open .dropdown-toggle.datepicker table tr td.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td.active:hover{background-image:none}.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled.disabled.active,.datepicker table tr td.active.disabled.disabled:active,.datepicker table tr td.active.disabled.disabled:focus,.datepicker table tr td.active.disabled.disabled:hover,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:focus,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active.disabled:hover.disabled.active,.datepicker table tr td.active.disabled:hover.disabled:active,.datepicker table tr td.active.disabled:hover.disabled:focus,.datepicker table tr td.active.disabled:hover.disabled:hover,.datepicker table tr td.active.disabled:hover[disabled],.datepicker table tr td.active.disabled:hover[disabled].active,.datepicker table tr td.active.disabled:hover[disabled]:active,.datepicker table tr td.active.disabled:hover[disabled]:focus,.datepicker table tr td.active.disabled:hover[disabled]:hover,.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active.disabled[disabled].active,.datepicker table tr td.active.disabled[disabled]:active,.datepicker table tr td.active.disabled[disabled]:focus,.datepicker table tr td.active.disabled[disabled]:hover,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active:hover.disabled.active,.datepicker table tr td.active:hover.disabled:active,.datepicker table tr td.active:hover.disabled:focus,.datepicker table tr td.active:hover.disabled:hover,.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active:hover[disabled].active,.datepicker table tr td.active:hover[disabled]:active,.datepicker table tr td.active:hover[disabled]:focus,.datepicker table tr td.active:hover[disabled]:hover,.datepicker table tr td.active[disabled],.datepicker table tr td.active[disabled].active,.datepicker table tr td.active[disabled]:active,.datepicker table tr td.active[disabled]:focus,.datepicker table tr td.active[disabled]:hover,fieldset[disabled] .datepicker table tr td.active,fieldset[disabled] .datepicker table tr td.active.active,fieldset[disabled] .datepicker table tr td.active.disabled,fieldset[disabled] .datepicker table tr td.active.disabled.active,fieldset[disabled] .datepicker table tr td.active.disabled:active,fieldset[disabled] .datepicker table tr td.active.disabled:focus,fieldset[disabled] .datepicker table tr td.active.disabled:hover,fieldset[disabled] .datepicker table tr td.active.disabled:hover.active,fieldset[disabled] .datepicker table tr td.active.disabled:hover:active,fieldset[disabled] .datepicker table tr td.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td.active:active,fieldset[disabled] .datepicker table tr td.active:focus,fieldset[disabled] .datepicker table tr td.active:hover,fieldset[disabled] .datepicker table tr td.active:hover.active,fieldset[disabled] .datepicker table tr td.active:hover:active,fieldset[disabled] .datepicker table tr td.active:hover:focus,fieldset[disabled] .datepicker table tr td.active:hover:hover{background-color:#428bca;border-color:#357ebd}.datepicker table tr td span{display:block;width:23%;height:54px;line-height:54px;float:left;margin:1%;cursor:pointer;border-radius:4px}.datepicker table tr td span:hover{background:#eee}.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{background:0 0;color:#999;cursor:default}.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{color:#fff;background-color:#428bca;border-color:#357ebd;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover:focus,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active:active,.datepicker table tr td span.active:focus,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover:focus,.datepicker table tr td span.active:hover:hover,.open .dropdown-toggle.datepicker table tr td span.active,.open .dropdown-toggle.datepicker table tr td span.active.disabled,.open .dropdown-toggle.datepicker table tr td span.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td span.active:hover{color:#fff;background-color:#3276b1;border-color:#285e8e}.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active,.open .dropdown-toggle.datepicker table tr td span.active,.open .dropdown-toggle.datepicker table tr td span.active.disabled,.open .dropdown-toggle.datepicker table tr td span.active.disabled:hover,.open .dropdown-toggle.datepicker table tr td span.active:hover{background-image:none}.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled.disabled.active,.datepicker table tr td span.active.disabled.disabled:active,.datepicker table tr td span.active.disabled.disabled:focus,.datepicker table tr td span.active.disabled.disabled:hover,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:focus,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active.disabled:hover.disabled.active,.datepicker table tr td span.active.disabled:hover.disabled:active,.datepicker table tr td span.active.disabled:hover.disabled:focus,.datepicker table tr td span.active.disabled:hover.disabled:hover,.datepicker table tr td span.active.disabled:hover[disabled],.datepicker table tr td span.active.disabled:hover[disabled].active,.datepicker table tr td span.active.disabled:hover[disabled]:active,.datepicker table tr td span.active.disabled:hover[disabled]:focus,.datepicker table tr td span.active.disabled:hover[disabled]:hover,.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active.disabled[disabled].active,.datepicker table tr td span.active.disabled[disabled]:active,.datepicker table tr td span.active.disabled[disabled]:focus,.datepicker table tr td span.active.disabled[disabled]:hover,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active:hover.disabled.active,.datepicker table tr td span.active:hover.disabled:active,.datepicker table tr td span.active:hover.disabled:focus,.datepicker table tr td span.active:hover.disabled:hover,.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active:hover[disabled].active,.datepicker table tr td span.active:hover[disabled]:active,.datepicker table tr td span.active:hover[disabled]:focus,.datepicker table tr td span.active:hover[disabled]:hover,.datepicker table tr td span.active[disabled],.datepicker table tr td span.active[disabled].active,.datepicker table tr td span.active[disabled]:active,.datepicker table tr td span.active[disabled]:focus,.datepicker table tr td span.active[disabled]:hover,fieldset[disabled] .datepicker table tr td span.active,fieldset[disabled] .datepicker table tr td span.active.active,fieldset[disabled] .datepicker table tr td span.active.disabled,fieldset[disabled] .datepicker table tr td span.active.disabled.active,fieldset[disabled] .datepicker table tr td span.active.disabled:active,fieldset[disabled] .datepicker table tr td span.active.disabled:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover,fieldset[disabled] .datepicker table tr td span.active.disabled:hover.active,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:active,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:focus,fieldset[disabled] .datepicker table tr td span.active.disabled:hover:hover,fieldset[disabled] .datepicker table tr td span.active:active,fieldset[disabled] .datepicker table tr td span.active:focus,fieldset[disabled] .datepicker table tr td span.active:hover,fieldset[disabled] .datepicker table tr td span.active:hover.active,fieldset[disabled] .datepicker table tr td span.active:hover:active,fieldset[disabled] .datepicker table tr td span.active:hover:focus,fieldset[disabled] .datepicker table tr td span.active:hover:hover{background-color:#428bca;border-color:#357ebd}.datepicker table tr td span.new,.datepicker table tr td span.old{color:#999}.datepicker .datepicker-switch{width:145px}.datepicker tfoot tr th,.datepicker thead tr:first-child th{cursor:pointer}.datepicker tfoot tr th:hover,.datepicker thead tr:first-child th:hover{background:#eee}.datepicker .cw{font-size:10px;width:12px;padding:0 2px 0 5px;vertical-align:middle}.datepicker thead tr:first-child .cw{cursor:default;background-color:transparent}.input-group.date .input-group-addon{cursor:pointer}.input-daterange{width:100%}.input-daterange input{text-align:center}.input-daterange input:first-child{border-radius:3px 0 0 3px}.input-daterange input:last-child{border-radius:0 3px 3px 0}.input-daterange .input-group-addon{width:auto;min-width:16px;padding:4px 5px;font-weight:400;line-height:1.42857143;text-align:center;text-shadow:0 1px 0 #fff;vertical-align:middle;background-color:#eee;border:solid #ccc;border-width:1px 0;margin-left:-5px;margin-right:-5px}.datepicker.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;float:left;display:none;min-width:160px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:5px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;*border-right-width:2px;*border-bottom-width:2px;color:#333;font-size:13px;line-height:1.42857143}.datepicker.datepicker-inline td,.datepicker.datepicker-inline th,.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{padding:0 5px}
 
 
 
 
 
 
libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-446 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-446 .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-446 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-446 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-446 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-446 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-446 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-446 .factory-form-group legend+.control-group{margin-top:0}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-455 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-455 .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-455 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-455 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-455 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-455 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-455 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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, 2021-02-04
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-446 .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-446 .btn-primary:focus,.factory-bootstrap-446 .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-446 .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-446 .btn-primary:disabled,.factory-bootstrap-446 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-446 .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-446 .pagination>.active>a,.factory-bootstrap-446 .pagination>.active>a:focus,.factory-bootstrap-446 .pagination>.active>a:hover,.factory-bootstrap-446 .pagination>.active>span,.factory-bootstrap-446 .pagination>.active>span:focus,.factory-bootstrap-446 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .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-455 .btn-primary:focus,.factory-bootstrap-455 .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-455 .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-455 .btn-primary:disabled,.factory-bootstrap-455 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-455 .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-455 .pagination>.active>a,.factory-bootstrap-455 .pagination>.active>a:focus,.factory-bootstrap-455 .pagination>.active>a:hover,.factory-bootstrap-455 .pagination>.active>span,.factory-bootstrap-455 .pagination>.active>span:focus,.factory-bootstrap-455 .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, 2021-02-04
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-446 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-446 .factory-checkbox-disabled button,.factory-bootstrap-446 .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-446 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-446 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-446 .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-446 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-446 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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, 2021-11-19
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-455 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-455 .factory-checkbox-disabled button,.factory-bootstrap-455 .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-455 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-455 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-455 .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-455 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-455 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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, 2021-02-04
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-446 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-446 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-446 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .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-446 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-446 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-446 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-446 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-455 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-455 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .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-455 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-455 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-455 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-455 .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, 2021-02-04
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-446 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-446 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-446 .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-446 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-446 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-446 .factory-mtextbox-add-item{display:block;margin-top:10px}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-455 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-455 .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-455 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-455 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-455 .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, 2021-02-04
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-446 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-446 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-446 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-446 .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-446 .factory-tab .factory-more-link-hide:hover{color:#999}
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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-455 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-455 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-455 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-455 .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-455 .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, 2021-02-04
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.factoryBootstrap446_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.factoryBootstrap446_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, 2021-11-19
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.factoryBootstrap455_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.factoryBootstrap455_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, 2021-02-04
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, 2021-11-19
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, 2021-02-04
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.prop("checked",!0),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.prop("checked",!1),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]&&a(m).val(l[m])}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap446_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.factoryBootstrap446_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-446 .factory-checkbox.factory-buttons-way").factoryBootstrap446_checkboxControl(),a(".factory-bootstrap-446 .factory-checkbox").not(".factory-buttons-way").click(function(){a(this).prop("checked")?a(this).val(1):a(this).val(0)})})}(jQuery);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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.prop("checked",!0),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.prop("checked",!1),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]&&a(m).val(l[m])}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap455_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.factoryBootstrap455_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-455 .factory-checkbox.factory-buttons-way").factoryBootstrap455_checkboxControl(),a(".factory-bootstrap-455 .factory-checkbox").not(".factory-buttons-way").click(function(){a(this).prop("checked")?a(this).val(1):a(this).val(0)})})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.dropdown.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2021-02-04
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.factoryBootstrap446_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.factoryBootstrap446_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-446 .factory-dropdown").factoryBootstrap446_dropdownControl()})}(jQuery);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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.factoryBootstrap455_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.factoryBootstrap455_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-455 .factory-dropdown").factoryBootstrap455_dropdownControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.list.min.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * Bootstrap generator - v1.0.1, 2021-02-04
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.factoryBootstrap446_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.factoryBootstrap446_listControl.Constructor=b,a(function(){a(".factory-bootstrap-446 .factory-list").factoryBootstrap446_listControl()})}(jQuery);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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.factoryBootstrap455_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.factoryBootstrap455_listControl.Constructor=b,a(function(){a(".factory-bootstrap-455 .factory-list").factoryBootstrap455_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, 2021-02-04
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.factoryBootstrap446_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-446 .factory-multiple-textbox-group").factoryBootstrap446_MultipleTextboxControl()})}(jQuery);
1
  /*!
2
+ * Bootstrap generator - v1.0.1, 2021-11-19
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.factoryBootstrap455_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-455 .factory-multiple-textbox-group").factoryBootstrap455_MultipleTextboxControl()})}(jQuery);
libs/factory/bootstrap/boot.php CHANGED
@@ -19,27 +19,27 @@ if( !is_admin() ) {
19
  return;
20
  }
21
 
22
- if( defined('FACTORY_BOOTSTRAP_446_LOADED') ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_BOOTSTRAP_446_VERSION', '4.4.6');
27
- define('FACTORY_BOOTSTRAP_446_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
- define('FACTORY_BOOTSTRAP_446_DIR', dirname(__FILE__));
34
- define('FACTORY_BOOTSTRAP_446_URL', plugins_url(null, __FILE__));
35
 
36
- require_once(FACTORY_BOOTSTRAP_446_DIR . '/includes/functions.php');
37
 
38
  /**
39
- * @param Wbcr_Factory446_Plugin $plugin
40
  */
41
- add_action('wbcr_factory_bootstrap_446_plugin_created', function ($plugin) {
42
- $manager = new Wbcr_FactoryBootstrap446_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_BOOTSTRAP_455_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_BOOTSTRAP_455_VERSION', '4.5.5');
27
+ define('FACTORY_BOOTSTRAP_455_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
+ define('FACTORY_BOOTSTRAP_455_DIR', dirname(__FILE__));
34
+ define('FACTORY_BOOTSTRAP_455_URL', plugins_url(null, __FILE__));
35
 
36
+ require_once(FACTORY_BOOTSTRAP_455_DIR . '/includes/functions.php');
37
 
38
  /**
39
+ * @param Wbcr_Factory454_Plugin $plugin
40
  */
41
+ add_action('wbcr_factory_bootstrap_455_plugin_created', function ($plugin) {
42
+ $manager = new Wbcr_FactoryBootstrap455_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
libs/factory/bootstrap/includes/functions.php CHANGED
@@ -11,7 +11,7 @@
11
  */
12
 
13
  // Exit if accessed directly
14
- if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
@@ -20,13 +20,13 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 3.2.0
22
  */
23
- class Wbcr_FactoryBootstrap446_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
- * @var Wbcr_Factory446_Plugin
30
  */
31
  public $plugin;
32
 
@@ -51,29 +51,31 @@ class Wbcr_FactoryBootstrap446_Manager {
51
  *
52
  * @since 1.0.0
53
  */
54
- public function __construct( Wbcr_Factory446_Plugin $plugin ) {
 
55
  $this->plugin = $plugin;
56
 
57
- add_action( 'admin_enqueue_scripts', [ $this, 'loadAssets' ] );
58
- add_filter( 'admin_body_class', [ $this, 'adminBodyClass' ] );
59
  }
60
 
61
  /**
62
  * Includes the Bootstrap scripts.
63
  *
 
64
  * @since 3.2.0
65
  *
66
- * @param array|string $scripts
67
  */
68
- public function enqueueScript( $scripts ) {
69
- if ( is_array( $scripts ) ) {
70
- foreach ( $scripts as $script ) {
71
- if ( ! in_array( $script, $this->scripts ) ) {
 
72
  $this->scripts[] = $script;
73
  }
74
  }
75
  } else {
76
- if ( ! in_array( $scripts, $this->scripts ) ) {
77
  $this->scripts[] = $scripts;
78
  }
79
  }
@@ -82,20 +84,21 @@ class Wbcr_FactoryBootstrap446_Manager {
82
  /**
83
  * * Includes the Bootstrap styles.
84
  *
 
85
  * @since 3.2.0
86
  *
87
- * @param array|string $styles
88
  */
89
- public function enqueueStyle( $styles ) {
 
90
 
91
- if ( is_array( $styles ) ) {
92
- foreach ( $styles as $style ) {
93
- if ( ! in_array( $style, $this->styles ) ) {
94
  $this->styles[] = $style;
95
  }
96
  }
97
  } else {
98
- if ( ! in_array( $styles, $this->styles ) ) {
99
  $this->styles[] = $styles;
100
  }
101
  }
@@ -104,25 +107,26 @@ class Wbcr_FactoryBootstrap446_Manager {
104
  /**
105
  * Loads Bootstrap assets.
106
  *
107
- * @since 3.2.0
108
  * @return void
 
109
  * @see admin_enqueue_scripts
110
  *
111
  */
112
- public function loadAssets( $hook ) {
 
113
 
114
- do_action( 'wbcr_factory_446_bootstrap_enqueue_scripts', $hook );
115
- do_action( 'wbcr_factory_446_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook );
116
 
117
  $dependencies = [];
118
- if ( ! empty( $this->scripts ) ) {
119
  $dependencies[] = 'jquery';
120
  $dependencies[] = 'jquery-ui-core';
121
  $dependencies[] = 'jquery-ui-widget';
122
  }
123
 
124
- foreach ( $this->scripts as $script ) {
125
- switch ( $script ) {
126
  case 'plugin.iris':
127
  $dependencies[] = 'jquery-ui-widget';
128
  $dependencies[] = 'jquery-ui-slider';
@@ -131,20 +135,21 @@ class Wbcr_FactoryBootstrap446_Manager {
131
  }
132
  }
133
 
134
- if ( ! empty( $this->scripts ) ) {
135
- $this->enqueueScripts( $this->scripts, 'js', $dependencies );
136
  }
137
- if ( ! empty( $this->styles ) ) {
138
- $this->enqueueScripts( $this->styles, 'css', $dependencies );
139
  }
140
  }
141
 
142
  /**
143
- * @param array $scripts
144
  * @param string $type
145
- * @param array $dependencies
146
  */
147
- protected function enqueueScripts( array $scripts, $type, array $dependencies ) {
 
148
 
149
  $is_first = true;
150
 
@@ -153,66 +158,66 @@ class Wbcr_FactoryBootstrap446_Manager {
153
  *
154
  * @since 4.1.0
155
  */
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_446_DIR . '/assets/cache/';
160
- $cache_dir_url = FACTORY_BOOTSTRAP_446_URL . '/assets/cache/';
161
 
162
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
163
- $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
164
 
165
- if ( $cache_enable && file_exists( $cache_filepath ) ) {
166
- if ( $type == 'js' ) {
167
- wp_enqueue_script( 'wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, $dependencies, $this->plugin->getPluginVersion() );
168
  } else {
169
- wp_enqueue_style( 'wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, [], $this->plugin->getPluginVersion() );
170
  }
171
  } else {
172
  $cache_dir_exists = false;
173
- if ( ! file_exists( $cache_dir_path ) ) {
174
- if ( @mkdir( $cache_dir_path, 0755 ) && wp_is_writable( $cache_dir_path ) ) {
175
  $cache_dir_exists = true;
176
  }
177
  } else {
178
- if ( wp_is_writable( $cache_dir_path ) ) {
179
  $cache_dir_exists = true;
180
  }
181
  }
182
 
183
  $concat_files = [];
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_446_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 ) );
191
- @fclose( $f );
192
  }
193
  } else {
194
- if ( $type == 'js' ) {
195
- wp_enqueue_script( md5( $script_to_load ), FACTORY_BOOTSTRAP_446_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_446_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion() );
198
  }
199
  $is_first = false;
200
  }
201
  }
202
 
203
- if ( $cache_enable && $cache_dir_exists && ! empty( $concat_files ) ) {
204
 
205
- $cf = @fopen( $cache_filepath, 'w' );
206
- $write_content = implode( PHP_EOL, $concat_files );
207
- @fwrite( $cf, $write_content );
208
- @fclose( $cf );
209
- chmod( $cache_filepath, 0755 );
210
 
211
- if ( file_exists( $cache_filepath ) ) {
212
- if ( $type == 'js' ) {
213
- wp_enqueue_script( 'wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, $dependencies, $this->plugin->getPluginVersion() );
214
  } else {
215
- wp_enqueue_style( 'wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, [], $this->plugin->getPluginVersion() );
216
  }
217
  }
218
  }
@@ -222,13 +227,14 @@ class Wbcr_FactoryBootstrap446_Manager {
222
  /**
223
  * Adds the body classes: 'factory-flat or 'factory-volumetric'.
224
  *
225
- * @since 3.2.0
226
- *
227
  * @param string $classes
228
  *
229
  * @return string
 
 
230
  */
231
- public function adminBodyClass( $classes ) {
 
232
  $classes .= FACTORY_FLAT_ADMIN ? ' factory-flat ' : ' factory-volumetric ';
233
 
234
  return $classes;
11
  */
12
 
13
  // Exit if accessed directly
14
+ if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
 
20
  *
21
  * @since 3.2.0
22
  */
23
+ class Wbcr_FactoryBootstrap455_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
+ * @var Wbcr_Factory454_Plugin
30
  */
31
  public $plugin;
32
 
51
  *
52
  * @since 1.0.0
53
  */
54
+ public function __construct(Wbcr_Factory454_Plugin $plugin)
55
+ {
56
  $this->plugin = $plugin;
57
 
58
+ add_action('admin_enqueue_scripts', [$this, 'loadAssets']);
59
+ add_filter('admin_body_class', [$this, 'adminBodyClass']);
60
  }
61
 
62
  /**
63
  * Includes the Bootstrap scripts.
64
  *
65
+ * @param array|string $scripts
66
  * @since 3.2.0
67
  *
 
68
  */
69
+ public function enqueueScript($scripts)
70
+ {
71
+ if( is_array($scripts) ) {
72
+ foreach($scripts as $script) {
73
+ if( !in_array($script, $this->scripts) ) {
74
  $this->scripts[] = $script;
75
  }
76
  }
77
  } else {
78
+ if( !in_array($scripts, $this->scripts) ) {
79
  $this->scripts[] = $scripts;
80
  }
81
  }
84
  /**
85
  * * Includes the Bootstrap styles.
86
  *
87
+ * @param array|string $styles
88
  * @since 3.2.0
89
  *
 
90
  */
91
+ public function enqueueStyle($styles)
92
+ {
93
 
94
+ if( is_array($styles) ) {
95
+ foreach($styles as $style) {
96
+ if( !in_array($style, $this->styles) ) {
97
  $this->styles[] = $style;
98
  }
99
  }
100
  } else {
101
+ if( !in_array($styles, $this->styles) ) {
102
  $this->styles[] = $styles;
103
  }
104
  }
107
  /**
108
  * Loads Bootstrap assets.
109
  *
 
110
  * @return void
111
+ * @since 3.2.0
112
  * @see admin_enqueue_scripts
113
  *
114
  */
115
+ public function loadAssets($hook)
116
+ {
117
 
118
+ do_action('wbcr_factory_454_bootstrap_enqueue_scripts', $hook);
119
+ do_action('wbcr_factory_454_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook);
120
 
121
  $dependencies = [];
122
+ if( !empty($this->scripts) ) {
123
  $dependencies[] = 'jquery';
124
  $dependencies[] = 'jquery-ui-core';
125
  $dependencies[] = 'jquery-ui-widget';
126
  }
127
 
128
+ foreach($this->scripts as $script) {
129
+ switch( $script ) {
130
  case 'plugin.iris':
131
  $dependencies[] = 'jquery-ui-widget';
132
  $dependencies[] = 'jquery-ui-slider';
135
  }
136
  }
137
 
138
+ if( !empty($this->scripts) ) {
139
+ $this->enqueueScripts($this->scripts, 'js', $dependencies);
140
  }
141
+ if( !empty($this->styles) ) {
142
+ $this->enqueueScripts($this->styles, 'css', $dependencies);
143
  }
144
  }
145
 
146
  /**
147
+ * @param array $scripts
148
  * @param string $type
149
+ * @param array $dependencies
150
  */
151
+ protected function enqueueScripts(array $scripts, $type, array $dependencies)
152
+ {
153
 
154
  $is_first = true;
155
 
158
  *
159
  * @since 4.1.0
160
  */
161
+ $cache_enable = apply_filters('wbcr/factory/bootstrap/cache_enable', true);
162
 
163
+ $cache_id = md5(implode(',', $this->scripts) . $type . $this->plugin->getPluginVersion());
164
+ $cache_dir_path = FACTORY_BOOTSTRAP_455_DIR . '/assets/cache/';
165
+ $cache_dir_url = FACTORY_BOOTSTRAP_455_URL . '/assets/cache/';
166
 
167
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
168
+ $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
169
 
170
+ if( $cache_enable && file_exists($cache_filepath) ) {
171
+ if( $type == 'js' ) {
172
+ wp_enqueue_script('wbcr-factory-bootstrap-cached', $cache_fileurl, $dependencies, $this->plugin->getPluginVersion());
173
  } else {
174
+ wp_enqueue_style('wbcr-factory-bootstrap-cached', $cache_fileurl, [], $this->plugin->getPluginVersion());
175
  }
176
  } else {
177
  $cache_dir_exists = false;
178
+ if( !file_exists($cache_dir_path) ) {
179
+ if( @mkdir($cache_dir_path, 0755) && wp_is_writable($cache_dir_path) ) {
180
  $cache_dir_exists = true;
181
  }
182
  } else {
183
+ if( wp_is_writable($cache_dir_path) ) {
184
  $cache_dir_exists = true;
185
  }
186
  }
187
 
188
  $concat_files = [];
189
+ foreach($scripts as $script_to_load) {
190
+ $script_to_load = sanitize_text_field($script_to_load);
191
+ if( $cache_enable && $cache_dir_exists ) {
192
+ $fname = FACTORY_BOOTSTRAP_455_DIR . "/assets/$type-min/$script_to_load.min." . $type;
193
+ if( file_exists($fname) ) {
194
+ $f = @fopen($fname, 'r');
195
+ $concat_files[] = @fread($f, filesize($fname));
196
+ @fclose($f);
197
  }
198
  } else {
199
+ if( $type == 'js' ) {
200
+ wp_enqueue_script(md5($script_to_load), FACTORY_BOOTSTRAP_455_URL . "/assets/$type-min/$script_to_load.min." . $type, $is_first ? $dependencies : false, $this->plugin->getPluginVersion());
201
  } else {
202
+ wp_enqueue_style(md5($script_to_load), FACTORY_BOOTSTRAP_455_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion());
203
  }
204
  $is_first = false;
205
  }
206
  }
207
 
208
+ if( $cache_enable && $cache_dir_exists && !empty($concat_files) ) {
209
 
210
+ $cf = @fopen($cache_filepath, 'w');
211
+ $write_content = implode(PHP_EOL, $concat_files);
212
+ @fwrite($cf, $write_content);
213
+ @fclose($cf);
214
+ chmod($cache_filepath, 0755);
215
 
216
+ if( file_exists($cache_filepath) ) {
217
+ if( $type == 'js' ) {
218
+ wp_enqueue_script('wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, $dependencies, $this->plugin->getPluginVersion());
219
  } else {
220
+ wp_enqueue_style('wbcr-factory-bootstrap-' . $cache_id, $cache_fileurl, [], $this->plugin->getPluginVersion());
221
  }
222
  }
223
  }
227
  /**
228
  * Adds the body classes: 'factory-flat or 'factory-volumetric'.
229
  *
 
 
230
  * @param string $classes
231
  *
232
  * @return string
233
+ * @since 3.2.0
234
+ *
235
  */
236
+ public function adminBodyClass($classes)
237
+ {
238
  $classes .= FACTORY_FLAT_ADMIN ? ' factory-flat ' : ' factory-volumetric ';
239
 
240
  return $classes;
libs/factory/core/ajax/install-addons.php CHANGED
@@ -15,7 +15,7 @@ if( !defined('ABSPATH') ) {
15
  /**
16
  * This action allows you to process Ajax requests to activate external components Clearfy
17
  */
18
- function wfactory_446_install_components($plugin_instance)
19
  {
20
  check_ajax_referer('updates');
21
 
@@ -24,11 +24,11 @@ function wfactory_446_install_components($plugin_instance)
24
  $storage = $plugin_instance->request->post('storage', null, true);
25
 
26
  if( !current_user_can('update_plugins') ) {
27
- wp_die(__('You don\'t have enough capability to edit this information.', 'wbcr_factory_446'), __('Something went wrong.'), 403);
28
  }
29
 
30
  if( empty($slug) || empty($action) ) {
31
- wp_send_json_error(['error_message' => __('Required attributes are not passed or empty.', 'wbcr_factory_446')]);
32
  }
33
  $success = false;
34
  $send_data = [];
@@ -44,7 +44,7 @@ function wfactory_446_install_components($plugin_instance)
44
  $success = true;
45
  }
46
  } else {
47
- wp_send_json_error(['error_message' => __('You are trying to perform an invalid action.', 'wbcr_factory_446')]);
48
  }
49
  } else if( $storage == 'wordpress' || $storage == 'creativemotion' ) {
50
  if( !empty($slug) ) {
@@ -80,7 +80,7 @@ function wfactory_446_install_components($plugin_instance)
80
  /*if ( $action == 'deactivate' ) {
81
  $is_need_rewrite_rules = $plugin_instance->getPopulateOption( 'need_rewrite_rules' );
82
  if ( $is_need_rewrite_rules ) {
83
- $send_data['need_rewrite_rules'] = sprintf( '<span class="wbcr-clr-need-rewrite-rules-message">' . __( 'When you deactivate some components, permanent links may work incorrectly. If this happens, please, <a href="%s">update the permalinks</a>, so you could complete the deactivation.', 'wbcr_factory_446' ), admin_url( 'options-permalink.php' ) . '</span>' );
84
  }
85
  }*/
86
 
@@ -94,7 +94,7 @@ function wfactory_446_install_components($plugin_instance)
94
  wp_send_json_success($send_data);
95
  }
96
 
97
- wp_send_json_error(['error_message' => __('An unknown error occurred during the activation of the component.', 'wbcr_factory_446')]);
98
  }
99
 
100
  /**
@@ -102,18 +102,18 @@ function wfactory_446_install_components($plugin_instance)
102
  * to get the component to work. Usually this is a call to the installation functions,
103
  * but in some cases, overwriting permanent references or compatibility checks.
104
  */
105
- function wfactory_446_prepare_component($plugin_instance)
106
  {
107
  check_ajax_referer('updates');
108
 
109
  $component_name = $plugin_instance->request->post('plugin', null, true);
110
 
111
  if( !current_user_can('update_plugins') ) {
112
- wp_send_json_error(['error_message' => __('You don\'t have enough capability to edit this information.', 'wbcr_factory_446')], 403);
113
  }
114
 
115
  if( empty($component_name) ) {
116
- wp_send_json_error(['error_message' => __('Required attribute [component_name] is empty.', 'wbcr_factory_446')]);
117
  }
118
  // todo: для совместимости с плагином Clearfy
119
  if( "wbcr_clearfy" === $plugin_instance->getPluginName() ) {
@@ -133,7 +133,7 @@ function wfactory_446_prepare_component($plugin_instance)
133
  *
134
  * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass.
135
  */
136
- function wfactory_446_creativemotion_install_plugin($plugin_instance)
137
  {
138
  check_ajax_referer('updates');
139
 
15
  /**
16
  * This action allows you to process Ajax requests to activate external components Clearfy
17
  */
18
+ function wfactory_454_install_components($plugin_instance)
19
  {
20
  check_ajax_referer('updates');
21
 
24
  $storage = $plugin_instance->request->post('storage', null, true);
25
 
26
  if( !current_user_can('update_plugins') ) {
27
+ wp_die(__('You don\'t have enough capability to edit this information.', 'wbcr_factory_454'), __('Something went wrong.'), 403);
28
  }
29
 
30
  if( empty($slug) || empty($action) ) {
31
+ wp_send_json_error(['error_message' => __('Required attributes are not passed or empty.', 'wbcr_factory_454')]);
32
  }
33
  $success = false;
34
  $send_data = [];
44
  $success = true;
45
  }
46
  } else {
47
+ wp_send_json_error(['error_message' => __('You are trying to perform an invalid action.', 'wbcr_factory_454')]);
48
  }
49
  } else if( $storage == 'wordpress' || $storage == 'creativemotion' ) {
50
  if( !empty($slug) ) {
80
  /*if ( $action == 'deactivate' ) {
81
  $is_need_rewrite_rules = $plugin_instance->getPopulateOption( 'need_rewrite_rules' );
82
  if ( $is_need_rewrite_rules ) {
83
+ $send_data['need_rewrite_rules'] = sprintf( '<span class="wbcr-clr-need-rewrite-rules-message">' . __( 'When you deactivate some components, permanent links may work incorrectly. If this happens, please, <a href="%s">update the permalinks</a>, so you could complete the deactivation.', 'wbcr_factory_454' ), admin_url( 'options-permalink.php' ) . '</span>' );
84
  }
85
  }*/
86
 
94
  wp_send_json_success($send_data);
95
  }
96
 
97
+ wp_send_json_error(['error_message' => __('An unknown error occurred during the activation of the component.', 'wbcr_factory_454')]);
98
  }
99
 
100
  /**
102
  * to get the component to work. Usually this is a call to the installation functions,
103
  * but in some cases, overwriting permanent references or compatibility checks.
104
  */
105
+ function wfactory_454_prepare_component($plugin_instance)
106
  {
107
  check_ajax_referer('updates');
108
 
109
  $component_name = $plugin_instance->request->post('plugin', null, true);
110
 
111
  if( !current_user_can('update_plugins') ) {
112
+ wp_send_json_error(['error_message' => __('You don\'t have enough capability to edit this information.', 'wbcr_factory_454')], 403);
113
  }
114
 
115
  if( empty($component_name) ) {
116
+ wp_send_json_error(['error_message' => __('Required attribute [component_name] is empty.', 'wbcr_factory_454')]);
117
  }
118
  // todo: для совместимости с плагином Clearfy
119
  if( "wbcr_clearfy" === $plugin_instance->getPluginName() ) {
133
  *
134
  * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass.
135
  */
136
+ function wfactory_454_creativemotion_install_plugin($plugin_instance)
137
  {
138
  check_ajax_referer('updates');
139
 
libs/factory/core/assets/js/core-components.js CHANGED
@@ -20,7 +20,7 @@
20
  * This event is intended for installation, removal, activation, deactivation of external add-ons
21
  */
22
 
23
- $(document).on('click', '.wfactory-446-process-button', function() {
24
  var $this = $(this),
25
  button_i18n = $(this).data('i18n'),
26
  plugin_slug = $(this).data('slug'),
@@ -30,11 +30,11 @@
30
  wpnonce = $(this).data('wpnonce');
31
 
32
  var action = ('creativemotion' === storage)
33
- ? 'wfactory-446-creativemotion-install-plugin'
34
  : 'install-plugin';
35
 
36
  if( storage === 'freemius' || ((storage === 'wordpress' || storage === 'creativemotion' || storage === 'internal') && (plugin_action === 'activate' || plugin_action === 'deactivate')) ) {
37
- action = 'wfactory-446-intall-component';
38
  } else if( storage === 'wordpress' && plugin_action === 'delete' ) {
39
  action = 'delete-plugin';
40
  }
@@ -54,11 +54,11 @@
54
 
55
  $this.addClass('disabled').text(button_i18n.loading);
56
 
57
- $.wfactory_446.hooks.run('core/components/pre_update', [$this, data]);
58
 
59
  self.sendRequest(data, function(response) {
60
  if( !response || !response.success ) {
61
- $.wfactory_446.hooks.run('core/components/update_error', [
62
  $this,
63
  data,
64
  response
@@ -80,7 +80,7 @@
80
  $this.removeClass('button-default').addClass('button-primary');
81
  }
82
 
83
- $.wfactory_446.hooks.run('core/components/installed', [
84
  $this,
85
  data,
86
  response
@@ -96,7 +96,7 @@
96
  $this.removeClass('button-primary').addClass('button-default');
97
  }
98
 
99
- $.wfactory_446.hooks.run('core/components/pre_activate', [
100
  $this,
101
  data,
102
  response
@@ -124,7 +124,7 @@
124
  $this.removeClass('button-default').addClass('button-primary');
125
  }
126
 
127
- $.wfactory_446.hooks.run('core/components/deactivated', [
128
  $this,
129
  data,
130
  response
@@ -134,7 +134,7 @@
134
 
135
  plugin_action = 'install';
136
 
137
- $.wfactory_446.hooks.run('core/components/deleted', [$this, data, response]);
138
  }
139
  } else {
140
  if( plugin_action === 'install' ) {
@@ -144,7 +144,7 @@
144
 
145
  $this.text(button_i18n[plugin_action]);
146
 
147
- $.wfactory_446.hooks.run('core/components/updated', [$this, data, response]);
148
  });
149
 
150
  return false;
@@ -169,7 +169,7 @@
169
  .addClass('disabled')
170
  .text(button_i18n.preparation);
171
 
172
- sendData.action = 'wfactory-446-prepare-component';
173
 
174
  this.sendRequest(sendData, function(response) {
175
  componentButton.removeClass('disabled');
@@ -177,7 +177,7 @@
177
  if( !response || !response.success ) {
178
  componentButton.text(button_i18n['activate']);
179
 
180
- $.wfactory_446.hooks.run('core/components/activation_error', [
181
  componentButton,
182
  sendData,
183
  response
@@ -187,7 +187,7 @@
187
 
188
  componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
189
 
190
- $.wfactory_446.hooks.run('core/components/activated', [
191
  componentButton,
192
  sendData,
193
  response
@@ -210,7 +210,7 @@
210
  console.log(xhr.responseText);
211
  console.log(thrownError);
212
 
213
- $.wfactory_446.hooks.run('core/components/ajax_error', [
214
  xhr,
215
  ajaxOptions,
216
  thrownError
20
  * This event is intended for installation, removal, activation, deactivation of external add-ons
21
  */
22
 
23
+ $(document).on('click', '.wfactory-454-process-button', function() {
24
  var $this = $(this),
25
  button_i18n = $(this).data('i18n'),
26
  plugin_slug = $(this).data('slug'),
30
  wpnonce = $(this).data('wpnonce');
31
 
32
  var action = ('creativemotion' === storage)
33
+ ? 'wfactory-454-creativemotion-install-plugin'
34
  : 'install-plugin';
35
 
36
  if( storage === 'freemius' || ((storage === 'wordpress' || storage === 'creativemotion' || storage === 'internal') && (plugin_action === 'activate' || plugin_action === 'deactivate')) ) {
37
+ action = 'wfactory-454-intall-component';
38
  } else if( storage === 'wordpress' && plugin_action === 'delete' ) {
39
  action = 'delete-plugin';
40
  }
54
 
55
  $this.addClass('disabled').text(button_i18n.loading);
56
 
57
+ $.wfactory_454.hooks.run('core/components/pre_update', [$this, data]);
58
 
59
  self.sendRequest(data, function(response) {
60
  if( !response || !response.success ) {
61
+ $.wfactory_454.hooks.run('core/components/update_error', [
62
  $this,
63
  data,
64
  response
80
  $this.removeClass('button-default').addClass('button-primary');
81
  }
82
 
83
+ $.wfactory_454.hooks.run('core/components/installed', [
84
  $this,
85
  data,
86
  response
96
  $this.removeClass('button-primary').addClass('button-default');
97
  }
98
 
99
+ $.wfactory_454.hooks.run('core/components/pre_activate', [
100
  $this,
101
  data,
102
  response
124
  $this.removeClass('button-default').addClass('button-primary');
125
  }
126
 
127
+ $.wfactory_454.hooks.run('core/components/deactivated', [
128
  $this,
129
  data,
130
  response
134
 
135
  plugin_action = 'install';
136
 
137
+ $.wfactory_454.hooks.run('core/components/deleted', [$this, data, response]);
138
  }
139
  } else {
140
  if( plugin_action === 'install' ) {
144
 
145
  $this.text(button_i18n[plugin_action]);
146
 
147
+ $.wfactory_454.hooks.run('core/components/updated', [$this, data, response]);
148
  });
149
 
150
  return false;
169
  .addClass('disabled')
170
  .text(button_i18n.preparation);
171
 
172
+ sendData.action = 'wfactory-454-prepare-component';
173
 
174
  this.sendRequest(sendData, function(response) {
175
  componentButton.removeClass('disabled');
177
  if( !response || !response.success ) {
178
  componentButton.text(button_i18n['activate']);
179
 
180
+ $.wfactory_454.hooks.run('core/components/activation_error', [
181
  componentButton,
182
  sendData,
183
  response
187
 
188
  componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
189
 
190
+ $.wfactory_454.hooks.run('core/components/activated', [
191
  componentButton,
192
  sendData,
193
  response
210
  console.log(xhr.responseText);
211
  console.log(thrownError);
212
 
213
+ $.wfactory_454.hooks.run('core/components/ajax_error', [
214
  xhr,
215
  ajaxOptions,
216
  thrownError
libs/factory/core/assets/js/core-general.js CHANGED
@@ -8,11 +8,11 @@
8
  (function($) {
9
  'use strict';
10
 
11
- if( !$.wfactory_446 ) {
12
- $.wfactory_446 = {};
13
  }
14
 
15
- $.wfactory_446.filters = $.wfactory_446.filters || {
16
 
17
  /**
18
  * A set of registered filters.
@@ -79,20 +79,20 @@
79
  }
80
  };
81
 
82
- $.wfactory_446.hooks = $.wfactory_446.hooks || {
83
 
84
  /**
85
  * Applies filters to a given input value.
86
  */
87
  run: function(filterName, args) {
88
- $.wfactory_446.filters.run(filterName, args);
89
  },
90
 
91
  /**
92
  * Registers a new filter.
93
  */
94
  add: function(filterName, callback, priority) {
95
- $.wfactory_446.filters.add(filterName, callback, priority);
96
  }
97
  };
98
 
8
  (function($) {
9
  'use strict';
10
 
11
+ if( !$.wfactory_454 ) {
12
+ $.wfactory_454 = {};
13
  }
14
 
15
+ $.wfactory_454.filters = $.wfactory_454.filters || {
16
 
17
  /**
18
  * A set of registered filters.
79
  }
80
  };
81
 
82
+ $.wfactory_454.hooks = $.wfactory_454.hooks || {
83
 
84
  /**
85
  * Applies filters to a given input value.
86
  */
87
  run: function(filterName, args) {
88
+ $.wfactory_454.filters.run(filterName, args);
89
  },
90
 
91
  /**
92
  * Registers a new filter.
93
  */
94
  add: function(filterName, callback, priority) {
95
+ $.wfactory_454.filters.add(filterName, callback, priority);
96
  }
97
  };
98
 
libs/factory/core/boot.php CHANGED
@@ -14,60 +14,60 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( defined('FACTORY_446_LOADED') ) {
18
  return;
19
  }
20
 
21
- define('FACTORY_446_LOADED', true);
22
 
23
- define('FACTORY_446_VERSION', '4.4.6');
24
 
25
- define('FACTORY_446_DIR', dirname(__FILE__));
26
- define('FACTORY_446_URL', plugins_url(null, __FILE__));
27
 
28
- load_plugin_textdomain('wbcr_factory_446', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
  #comp merge
31
- require_once(FACTORY_446_DIR . '/includes/functions.php');
32
 
33
- require_once(FACTORY_446_DIR . '/includes/entities/class-factory-paths.php');
34
- require_once(FACTORY_446_DIR . '/includes/entities/class-factory-support.php');
35
 
36
- require_once(FACTORY_446_DIR . '/includes/class-factory-requests.php');
37
- require_once(FACTORY_446_DIR . '/includes/class-factory-options.php');
38
- require_once(FACTORY_446_DIR . '/includes/class-factory-plugin-base.php');
39
- require_once(FACTORY_446_DIR . '/includes/class-factory-migrations.php');
40
- require_once(FACTORY_446_DIR . '/includes/class-factory-notices.php');
41
 
42
  // ASSETS
43
- require_once(FACTORY_446_DIR . '/includes/assets-managment/class-factory-assets-list.php');
44
- require_once(FACTORY_446_DIR . '/includes/assets-managment/class-factory-script-list.php');
45
- require_once(FACTORY_446_DIR . '/includes/assets-managment/class-factory-style-list.php');
46
 
47
  // PREMIUM
48
- require_once(FACTORY_446_DIR . '/includes/premium/class-factory-license-interface.php');
49
- require_once(FACTORY_446_DIR . '/includes/premium/class-factory-provider-abstract.php');
50
- require_once(FACTORY_446_DIR . '/includes/premium/class-factory-manager.php');
51
 
52
  // UPDATES
53
- require_once(FACTORY_446_DIR . '/includes/updates/repositories/class-factory-repository-abstract.php');
54
- require_once(FACTORY_446_DIR . '/includes/updates/repositories/class-factory-wordpress.php');
55
- require_once(FACTORY_446_DIR . '/includes/updates/repositories/class-factory-github.php');
56
- require_once(FACTORY_446_DIR . '/includes/updates/class-factory-upgrader.php');
57
- require_once(FACTORY_446_DIR . '/includes/updates/class-factory-premium-upgrader.php');
58
 
59
- require_once(FACTORY_446_DIR . '/includes/class-factory-plugin-abstract.php');
60
 
61
- require_once(FACTORY_446_DIR . '/includes/activation/class-factory-activator.php');
62
- require_once(FACTORY_446_DIR . '/includes/activation/class-factory-update.php');
63
  #endcomp
64
 
65
  add_action('admin_enqueue_scripts', function () {
66
- wp_enqueue_script('wfactory-446-core-general', FACTORY_446_URL . '/assets/js/core-general.js', [
67
  'jquery'
68
- ], FACTORY_446_VERSION);
69
- wp_enqueue_script('wfactory-446-core-components', FACTORY_446_URL . '/assets/js/core-components.js', [
70
  'jquery',
71
- 'wfactory-446-core-general'
72
- ], FACTORY_446_VERSION);
73
  });
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_454_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_454_LOADED', true);
22
 
23
+ define('FACTORY_454_VERSION', '4.5.4');
24
 
25
+ define('FACTORY_454_DIR', dirname(__FILE__));
26
+ define('FACTORY_454_URL', plugins_url(null, __FILE__));
27
 
28
+ load_plugin_textdomain('wbcr_factory_454', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
  #comp merge
31
+ require_once(FACTORY_454_DIR . '/includes/functions.php');
32
 
33
+ require_once(FACTORY_454_DIR . '/includes/entities/class-factory-paths.php');
34
+ require_once(FACTORY_454_DIR . '/includes/entities/class-factory-support.php');
35
 
36
+ require_once(FACTORY_454_DIR . '/includes/class-factory-requests.php');
37
+ require_once(FACTORY_454_DIR . '/includes/class-factory-options.php');
38
+ require_once(FACTORY_454_DIR . '/includes/class-factory-plugin-base.php');
39
+ require_once(FACTORY_454_DIR . '/includes/class-factory-migrations.php');
40
+ require_once(FACTORY_454_DIR . '/includes/class-factory-notices.php');
41
 
42
  // ASSETS
43
+ require_once(FACTORY_454_DIR . '/includes/assets-managment/class-factory-assets-list.php');
44
+ require_once(FACTORY_454_DIR . '/includes/assets-managment/class-factory-script-list.php');
45
+ require_once(FACTORY_454_DIR . '/includes/assets-managment/class-factory-style-list.php');
46
 
47
  // PREMIUM
48
+ require_once(FACTORY_454_DIR . '/includes/premium/class-factory-license-interface.php');
49
+ require_once(FACTORY_454_DIR . '/includes/premium/class-factory-provider-abstract.php');
50
+ require_once(FACTORY_454_DIR . '/includes/premium/class-factory-manager.php');
51
 
52
  // UPDATES
53
+ require_once(FACTORY_454_DIR . '/includes/updates/repositories/class-factory-repository-abstract.php');
54
+ require_once(FACTORY_454_DIR . '/includes/updates/repositories/class-factory-wordpress.php');
55
+ require_once(FACTORY_454_DIR . '/includes/updates/repositories/class-factory-github.php');
56
+ require_once(FACTORY_454_DIR . '/includes/updates/class-factory-upgrader.php');
57
+ require_once(FACTORY_454_DIR . '/includes/updates/class-factory-premium-upgrader.php');
58
 
59
+ require_once(FACTORY_454_DIR . '/includes/class-factory-plugin-abstract.php');
60
 
61
+ require_once(FACTORY_454_DIR . '/includes/activation/class-factory-activator.php');
62
+ require_once(FACTORY_454_DIR . '/includes/activation/class-factory-update.php');
63
  #endcomp
64
 
65
  add_action('admin_enqueue_scripts', function () {
66
+ wp_enqueue_script('wfactory-454-core-general', FACTORY_454_URL . '/assets/js/core-general.js', [
67
  'jquery'
68
+ ], FACTORY_454_VERSION);
69
+ wp_enqueue_script('wfactory-454-core-components', FACTORY_454_URL . '/assets/js/core-components.js', [
70
  'jquery',
71
+ 'wfactory-454-core-general'
72
+ ], FACTORY_454_VERSION);
73
  });
libs/factory/core/includes/activation/class-factory-activator.php CHANGED
@@ -19,16 +19,16 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @since 1.0.0
21
  */
22
- abstract class Wbcr_Factory446_Activator {
23
 
24
  /**
25
  * Curent plugin.
26
  *
27
- * @var Wbcr_Factory446_Plugin
28
  */
29
  public $plugin;
30
 
31
- public function __construct( Wbcr_Factory446_Plugin $plugin ) {
32
  $this->plugin = $plugin;
33
  }
34
 
19
  *
20
  * @since 1.0.0
21
  */
22
+ abstract class Wbcr_Factory454_Activator {
23
 
24
  /**
25
  * Curent plugin.
26
  *
27
+ * @var Wbcr_Factory454_Plugin
28
  */
29
  public $plugin;
30
 
31
+ public function __construct( Wbcr_Factory454_Plugin $plugin ) {
32
  $this->plugin = $plugin;
33
  }
34
 
libs/factory/core/includes/activation/class-factory-update.php CHANGED
@@ -20,16 +20,16 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_Factory446_Update {
24
 
25
  /**
26
  * Current plugin
27
  *
28
- * @var Wbcr_Factory446_Plugin
29
  */
30
  var $plugin;
31
 
32
- public function __construct( Wbcr_Factory446_Plugin $plugin ) {
33
  $this->plugin = $plugin;
34
  }
35
 
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_Factory454_Update {
24
 
25
  /**
26
  * Current plugin
27
  *
28
+ * @var Wbcr_Factory454_Plugin
29
  */
30
  var $plugin;
31
 
32
+ public function __construct( Wbcr_Factory454_Plugin $plugin ) {
33
  $this->plugin = $plugin;
34
  }
35
 
libs/factory/core/includes/assets-managment/class-factory-assets-list.php CHANGED
@@ -19,7 +19,7 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_Factory446_AssetsList {
23
 
24
  protected $all = [];
25
  public $header_place = [];
@@ -29,15 +29,15 @@ class Wbcr_Factory446_AssetsList {
29
  protected $default_place;
30
 
31
  /**
32
- * @var Wbcr_Factory446_Plugin
33
  */
34
  protected $plugin;
35
 
36
  /**
37
- * @param Wbcr_Factory446_Plugin $plugin
38
  * @param bool $defaultIsFooter
39
  */
40
- public function __construct( Wbcr_Factory446_Plugin $plugin, $defaultIsFooter = true ) {
41
  $this->plugin = $plugin;
42
 
43
  if ( $defaultIsFooter ) {
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_Factory454_AssetsList {
23
 
24
  protected $all = [];
25
  public $header_place = [];
29
  protected $default_place;
30
 
31
  /**
32
+ * @var Wbcr_Factory454_Plugin
33
  */
34
  protected $plugin;
35
 
36
  /**
37
+ * @param Wbcr_Factory454_Plugin $plugin
38
  * @param bool $defaultIsFooter
39
  */
40
+ public function __construct( Wbcr_Factory454_Plugin $plugin, $defaultIsFooter = true ) {
41
  $this->plugin = $plugin;
42
 
43
  if ( $defaultIsFooter ) {
libs/factory/core/includes/assets-managment/class-factory-script-list.php CHANGED
@@ -20,7 +20,7 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_Factory446_ScriptList extends Wbcr_Factory446_AssetsList {
24
 
25
  public $localize_data = [];
26
  public $use_ajax = false;
@@ -149,7 +149,7 @@ class Wbcr_Factory446_ScriptList extends Wbcr_Factory446_AssetsList {
149
  * @param string $varname
150
  * @param array $data
151
  *
152
- * @return Wbcr_Factory446_ScriptList $this
153
  */
154
  public function localize( $varname, $data ) {
155
  $bindTo = count( $this->all ) == 0 ? null : end( $this->all );
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_Factory454_ScriptList extends Wbcr_Factory454_AssetsList {
24
 
25
  public $localize_data = [];
26
  public $use_ajax = false;
149
  * @param string $varname
150
  * @param array $data
151
  *
152
+ * @return Wbcr_Factory454_ScriptList $this
153
  */
154
  public function localize( $varname, $data ) {
155
  $bindTo = count( $this->all ) == 0 ? null : end( $this->all );
libs/factory/core/includes/assets-managment/class-factory-style-list.php CHANGED
@@ -20,7 +20,7 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_Factory446_StyleList extends Wbcr_Factory446_AssetsList {
24
 
25
  /**
26
  * Adds new items to the collection (default place).
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_Factory454_StyleList extends Wbcr_Factory454_AssetsList {
24
 
25
  /**
26
  * Adds new items to the collection (default place).
libs/factory/core/includes/class-check-compatibility.php CHANGED
@@ -75,19 +75,19 @@ if ( ! class_exists( 'Wbcr_Factory_Compatibility' ) ) {
75
  $notice_text = $notice_default_text = '';
76
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
77
 
78
- $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_clearfy_000' ), $this->plugin_title ) . ' ';
79
  $notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
80
 
81
  $has_one = false;
82
 
83
  if ( ! $this->isPhpCompatibility() ) {
84
  $has_one = true;
85
- $notice_text .= '- ' . sprintf( __( 'You need to update the PHP version to %s or higher!', 'wbcr_factory_446' ), $this->required_php_version ) . '<br>';
86
  }
87
 
88
  if ( ! $this->isWpCompatibility() ) {
89
  $has_one = true;
90
- $notice_text .= '- ' . sprintf( __( 'You need to update WordPress to %s or higher!', 'wbcr_factory_446' ), $this->required_wp_version ) . '<br>';
91
  }
92
 
93
  if ( $has_one ) {
75
  $notice_text = $notice_default_text = '';
76
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
77
 
78
+ $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_templates_106' ), $this->plugin_title ) . ' ';
79
  $notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
80
 
81
  $has_one = false;
82
 
83
  if ( ! $this->isPhpCompatibility() ) {
84
  $has_one = true;
85
+ $notice_text .= '- ' . sprintf( __( 'You need to update the PHP version to %s or higher!', 'wbcr_factory_454' ), $this->required_php_version ) . '<br>';
86
  }
87
 
88
  if ( ! $this->isWpCompatibility() ) {
89
  $has_one = true;
90
+ $notice_text .= '- ' . sprintf( __( 'You need to update WordPress to %s or higher!', 'wbcr_factory_454' ), $this->required_wp_version ) . '<br>';
91
  }
92
 
93
  if ( $has_one ) {
libs/factory/core/includes/class-factory-migrations.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446;
4
 
5
  use Exception;
6
- use Wbcr_Factory446_Plugin;
7
 
8
  if ( ! defined( 'ABSPATH' ) ) {
9
  exit;
@@ -35,11 +35,11 @@ class Migrations {
35
  /**
36
  * Migrations constructor.
37
  *
38
- * @param Wbcr_Factory446_Plugin $plugin
39
  *
40
  * @throws Exception
41
  */
42
- public function __construct( Wbcr_Factory446_Plugin $plugin ) {
43
 
44
  $this->plugin = $plugin;
45
  $plugin_name = $plugin->getPluginName();
@@ -129,14 +129,14 @@ class Migrations {
129
  $fix_migration_error_url = add_query_arg( 'wbcr_factory_fix_migration_error', 1 );
130
 
131
  $notice_text = $migration_error_text;
132
- $notice_text .= "<br><br><a href='{$fix_migration_error_url}' class='button button-default'>" . __( 'I fixed, confirm migration', 'wbcr_factory_446' ) . "</a>";
133
 
134
  $notices[] = [
135
  'id' => 'migration_debug_bar',
136
  'type' => 'error',
137
  'dismissible' => false,
138
  'dismiss_expires' => 0,
139
- 'text' => '<p><b>' . $this->plugin->getPluginTitle() . ' ' . __( 'migration error', 'wbcr_factory_446' ) . '</b><br>' . $notice_text . '</p>'
140
  ];
141
 
142
  return $notices;
@@ -162,19 +162,19 @@ class Migrations {
162
 
163
  $migrate_url = add_query_arg( 'wbcr_factory_test_migration', 1 );
164
 
165
- $notice_text = __( "Plugin activated:", "wbcr_factory_446" ) . ' ' . date( "Y-m-d H:i:s", $this->get_plugin_activated_time() ) . "<br>";
166
 
167
- $notice_text .= __( "Old plugin version (debug):", "wbcr_factory_446" ) . ' ' . $this->get_old_plugin_version() . "<br>";
168
- $notice_text .= __( "Current plugin version:", "wbcr_factory_446" ) . ' ' . $this->get_current_plugin_version() . "<br>";
169
- $notice_text .= __( "Need migration:", "wbcr_factory_446" ) . ' ' . ( $this->need_migration() ? "true" : "false" ) . "<br><br>";
170
- $notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "wbcr_factory_446" ) . "</a><br>";
171
 
172
  $notices[] = [
173
  'id' => 'migration_debug_bar',
174
  'type' => 'warning',
175
  'dismissible' => false,
176
  'dismiss_expires' => 0,
177
- 'text' => '<p><b style="color:red;">' . $this->plugin->getPluginTitle() . ' ' . __( 'migrations DEBUG bar', 'wbcr_factory_446' ) . '</b><br>' . $notice_text . '</p>'
178
  ];
179
 
180
  return $notices;
@@ -505,7 +505,7 @@ class Migrations {
505
  $classes = [];
506
 
507
  if ( ! function_exists( 'token_get_all' ) ) {
508
- throw new Exception( __( 'There is no PHP Tokenizer extension installed on your server, you cannot use the token_get_all function.', 'wbcr_factory_446' ) );
509
  }
510
 
511
  $tokens = token_get_all( $phpCode );
1
  <?php
2
 
3
+ namespace WBCR\Factory_454;
4
 
5
  use Exception;
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  if ( ! defined( 'ABSPATH' ) ) {
9
  exit;
35
  /**
36
  * Migrations constructor.
37
  *
38
+ * @param Wbcr_Factory454_Plugin $plugin
39
  *
40
  * @throws Exception
41
  */
42
+ public function __construct( Wbcr_Factory454_Plugin $plugin ) {
43
 
44
  $this->plugin = $plugin;
45
  $plugin_name = $plugin->getPluginName();
129
  $fix_migration_error_url = add_query_arg( 'wbcr_factory_fix_migration_error', 1 );
130
 
131
  $notice_text = $migration_error_text;
132
+ $notice_text .= "<br><br><a href='{$fix_migration_error_url}' class='button button-default'>" . __( 'I fixed, confirm migration', 'wbcr_factory_454' ) . "</a>";
133
 
134
  $notices[] = [
135
  'id' => 'migration_debug_bar',
136
  'type' => 'error',
137
  'dismissible' => false,
138
  'dismiss_expires' => 0,
139
+ 'text' => '<p><b>' . $this->plugin->getPluginTitle() . ' ' . __( 'migration error', 'wbcr_factory_454' ) . '</b><br>' . $notice_text . '</p>'
140
  ];
141
 
142
  return $notices;
162
 
163
  $migrate_url = add_query_arg( 'wbcr_factory_test_migration', 1 );
164
 
165
+ $notice_text = __( "Plugin activated:", "wbcr_factory_454" ) . ' ' . date( "Y-m-d H:i:s", $this->get_plugin_activated_time() ) . "<br>";
166
 
167
+ $notice_text .= __( "Old plugin version (debug):", "wbcr_factory_454" ) . ' ' . $this->get_old_plugin_version() . "<br>";
168
+ $notice_text .= __( "Current plugin version:", "wbcr_factory_454" ) . ' ' . $this->get_current_plugin_version() . "<br>";
169
+ $notice_text .= __( "Need migration:", "wbcr_factory_454" ) . ' ' . ( $this->need_migration() ? "true" : "false" ) . "<br><br>";
170
+ $notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "wbcr_factory_454" ) . "</a><br>";
171
 
172
  $notices[] = [
173
  'id' => 'migration_debug_bar',
174
  'type' => 'warning',
175
  'dismissible' => false,
176
  'dismiss_expires' => 0,
177
+ 'text' => '<p><b style="color:red;">' . $this->plugin->getPluginTitle() . ' ' . __( 'migrations DEBUG bar', 'wbcr_factory_454' ) . '</b><br>' . $notice_text . '</p>'
178
  ];
179
 
180
  return $notices;
505
  $classes = [];
506
 
507
  if ( ! function_exists( 'token_get_all' ) ) {
508
+ throw new Exception( __( 'There is no PHP Tokenizer extension installed on your server, you cannot use the token_get_all function.', 'wbcr_factory_454' ) );
509
  }
510
 
511
  $tokens = token_get_all( $phpCode );
libs/factory/core/includes/class-factory-notices.php CHANGED
@@ -1,8 +1,8 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446;
4
 
5
- use Wbcr_Factory446_Plugin;
6
 
7
  // Exit if accessed directly
8
  if( !defined('ABSPATH') ) {
@@ -27,7 +27,7 @@ if( !defined('ABSPATH') ) {
27
  class Notices {
28
 
29
  /**
30
- * @var Wbcr_Factory446_Plugin
31
  */
32
  protected $plugin;
33
  /**
@@ -58,7 +58,7 @@ class Notices {
58
  /**
59
  * Инициализируем уведомлений сразу после загрузки модуля уведомлений
60
  *
61
- * @param Wbcr_Factory446_Plugin $plugin
62
  */
63
  public function __construct($plugin)
64
  {
@@ -86,7 +86,7 @@ class Notices {
86
  public function currentScreenAction()
87
  {
88
  /**
89
- * @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_446
90
  */
91
  $this->notices = apply_filters('wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName());
92
 
@@ -202,8 +202,8 @@ class Notices {
202
  $classes[] = $plugin_name . '-factory-notice-dismiss';
203
  }
204
  ?>
205
- <div data-name="wbcr_factory_notice_<?php echo esc_attr($data['id']) ?>" data-expires="<?= esc_attr($settings['dismiss_expires']) ?>" data-nonce="<?php echo wp_create_nonce($this->plugin->getPluginName() . '_factory_dismiss_notice'); ?>" class="<?php echo esc_attr(implode(' ', $classes)) ?>">
206
- <?= $data['text'] ?>
207
  </div>
208
  <?php
209
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_454;
4
 
5
+ use Wbcr_Factory454_Plugin;
6
 
7
  // Exit if accessed directly
8
  if( !defined('ABSPATH') ) {
27
  class Notices {
28
 
29
  /**
30
+ * @var Wbcr_Factory454_Plugin
31
  */
32
  protected $plugin;
33
  /**
58
  /**
59
  * Инициализируем уведомлений сразу после загрузки модуля уведомлений
60
  *
61
+ * @param Wbcr_Factory454_Plugin $plugin
62
  */
63
  public function __construct($plugin)
64
  {
86
  public function currentScreenAction()
87
  {
88
  /**
89
+ * @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_454
90
  */
91
  $this->notices = apply_filters('wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName());
92
 
202
  $classes[] = $plugin_name . '-factory-notice-dismiss';
203
  }
204
  ?>
205
+ <div data-name="wbcr_factory_notice_<?php echo esc_attr($data['id']) ?>" data-expires="<?php echo esc_attr($settings['dismiss_expires']) ?>" data-nonce="<?php echo wp_create_nonce($this->plugin->getPluginName() . '_factory_dismiss_notice'); ?>" class="<?php echo esc_attr(implode(' ', $classes)) ?>">
206
+ <?php echo $data['text'] ?>
207
  </div>
208
  <?php
209
  }
libs/factory/core/includes/class-factory-options.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446;
4
 
5
  // Exit if accessed directly
6
  use Exception;
@@ -10,7 +10,7 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  }
11
 
12
  /**
13
- * Трейт используется для расширения базового класса плагина Wbcr_Factory446_Base, позволяя работать с опциями плагина.
14
  *
15
  * Этот трейт является оберткой для Wordpress функций get_option, get_site_option, update_option, update_site_option,
16
  * delete_option, delete_site_option. Основная задача была получать, обновлять, удалять опции без использования префиксов,
1
  <?php
2
 
3
+ namespace WBCR\Factory_454;
4
 
5
  // Exit if accessed directly
6
  use Exception;
10
  }
11
 
12
  /**
13
+ * Трейт используется для расширения базового класса плагина Wbcr_Factory454_Base, позволяя работать с опциями плагина.
14
  *
15
  * Этот трейт является оберткой для Wordpress функций get_option, get_site_option, update_option, update_site_option,
16
  * delete_option, delete_site_option. Основная задача была получать, обновлять, удалять опции без использования префиксов,
libs/factory/core/includes/class-factory-plugin-abstract.php CHANGED
@@ -24,42 +24,42 @@ if( !defined('ABSPATH') ) {
24
  * @package factory-core
25
  *
26
  */
27
- abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
28
 
29
  /**
30
- * Instance class Wbcr_Factory446_Request, required manages http requests
31
  *
32
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
33
- * @var Wbcr_Factory446_Request
34
  */
35
  public $request;
36
 
37
  /**
38
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
39
- * @var \WBCR\Factory_446\Premium\Provider
40
  */
41
  public $premium;
42
 
43
  /**
44
  * The Bootstrap Manager class
45
  *
46
- * @var Wbcr_FactoryBootstrap446_Manager
47
  */
48
  public $bootstrap;
49
 
50
  /**
51
  * The Bootstrap Manager class
52
  *
53
- * @var Wbcr_FactoryForms443_Manager
54
  */
55
  public $forms;
56
 
57
  /**
58
- * Простой массив со списком зарегистрированных классов унаследованных от Wbcr_Factory446_Activator.
59
  * Классы активации используются для упаковки набора функций, которые нужно выполнить во время
60
  * активации плагина.
61
  *
62
- * @var array[] Wbcr_Factory446_Activator
63
  */
64
  protected $activator_class = [];
65
 
@@ -86,7 +86,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
88
  * @since 4.1.9
89
- * @var WBCR\Factory_Adverts_124\Base
90
  */
91
  private $adverts;
92
 
@@ -115,8 +115,8 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
115
 
116
  parent::__construct($plugin_path, $data);
117
 
118
- $this->request = new Wbcr_Factory446_Request();
119
- //$this->route = new Wbcr_Factory446_Route();
120
 
121
  // INIT PLUGIN FRAMEWORK MODULES
122
  // Framework modules should always be loaded first,
@@ -144,15 +144,15 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
144
  $this->init_plugin_components();
145
 
146
  if( wp_doing_ajax() && isset($_REQUEST['action']) ) {
147
- if( "wfactory-446-intall-component" == $_REQUEST['action'] ) {
148
- add_action('wp_ajax_wfactory-446-intall-component', [$this, 'ajax_handler_install_components']);
149
  }
150
 
151
- if( "wfactory-446-prepare-component" == $_REQUEST['action'] ) {
152
- add_action('wp_ajax_wfactory-446-prepare-component', [$this, 'ajax_handler_prepare_component']);
153
  }
154
- if( "wfactory-446-creativemotion-install-plugin" == $_REQUEST['action'] ) {
155
- add_action('wp_ajax_wfactory-446-creativemotion-install-plugin', [
156
  $this,
157
  'ajax_handler_install_creativemotion_plugins'
158
  ]);
@@ -165,20 +165,20 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
165
 
166
  public function ajax_handler_install_components()
167
  {
168
- require_once FACTORY_446_DIR . '/ajax/install-addons.php';
169
- wfactory_446_install_components($this);
170
  }
171
 
172
  public function ajax_handler_prepare_component()
173
  {
174
- require_once FACTORY_446_DIR . '/ajax/install-addons.php';
175
- wfactory_446_prepare_component($this);
176
  }
177
 
178
  public function ajax_handler_install_creativemotion_plugins()
179
  {
180
- require_once FACTORY_446_DIR . '/ajax/install-addons.php';
181
- wfactory_446_creativemotion_install_plugin($this);
182
  }
183
  // --------------------------------------------------------
184
 
@@ -186,9 +186,9 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
186
  * Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
187
  * скриптов, стилей) фреймворка.
188
  *
189
- * @param Wbcr_FactoryBootstrap446_Manager $bootstrap
190
  */
191
- public function setBootstap(Wbcr_FactoryBootstrap446_Manager $bootstrap)
192
  {
193
  $this->bootstrap = $bootstrap;
194
  }
@@ -196,9 +196,9 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
196
  /**
197
  * Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
198
  *
199
- * @param Wbcr_FactoryForms443_Manager $forms
200
  */
201
- public function setForms(Wbcr_FactoryForms443_Manager $forms)
202
  {
203
  $this->forms = $forms;
204
  }
@@ -220,7 +220,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
220
  * Устанавливает класс менеджер, которому будет делегирована работа с объявлениями в Wordpress
221
  *
222
  * @param string $class_name Logger class name
223
- * @param array $settings Logger settings
224
  *
225
  * @author Artem Prihodko <webtemyk@yandex.ru>
226
  * @since 4.3.7
@@ -246,8 +246,8 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
246
  */
247
  public function set_license_provider($name, $class_name)
248
  {
249
- if( !isset(WBCR\Factory_446\Premium\Manager::$providers[$name]) ) {
250
- WBCR\Factory_446\Premium\Manager::$providers[$name] = $class_name;
251
  }
252
  }
253
 
@@ -265,8 +265,8 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
265
  */
266
  public function set_update_repository($name, $class_name)
267
  {
268
- if( !isset(WBCR\Factory_446\Updates\Upgrader::$repositories[$name]) ) {
269
- WBCR\Factory_446\Updates\Upgrader::$repositories[$name] = $class_name;
270
  }
271
  }
272
 
@@ -276,7 +276,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
276
  * Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
277
  * рекламных объявлений.
278
  *
279
- * @return \WBCR\Factory_Adverts_124\Base
280
  * @since 1.1
281
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
282
  */
@@ -312,18 +312,18 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
312
 
313
  public function newScriptList()
314
  {
315
- return new Wbcr_Factory446_ScriptList($this);
316
  }
317
 
318
  public function newStyleList()
319
  {
320
- return new Wbcr_Factory446_StyleList($this);
321
  }
322
 
323
  /**
324
  * Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
325
  * фреймворка pages. Разработчик создает собственный класс, унаследованный от
326
- * Wbcr_FactoryPages445_AdminPage, а затем регистрирует его через этот метод.
327
  * Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
328
  * pages.
329
  *
@@ -333,7 +333,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
333
  * @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
334
  *
335
  * @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
336
- * Регистрируемый класс должен быть унаследован от класса Wbcr_FactoryPages445_AdminPage.
337
  * @param string $file_path Абсолютный путь к файлу с классом страницы.
338
  *
339
  * @throws Exception
@@ -355,11 +355,11 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
355
  throw new Exception('A class with this name {' . $class_name . '} does not exist.');
356
  }
357
 
358
- if( !class_exists('Wbcr_FactoryPages445') ) {
359
- throw new Exception('The factory_pages_445 module is not included.');
360
  }
361
 
362
- Wbcr_FactoryPages445::register($this, $class_name);
363
  }
364
 
365
  /**
@@ -409,16 +409,16 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
409
  /**
410
  * @since 4.1.1 - change hook name
411
  */
412
- if( apply_filters("wbcr/factory_446/cancel_plugin_activation_{$this->plugin_name}", false) ) {
413
  return;
414
  }
415
 
416
  /**
417
- * wbcr_factory_446_plugin_activation
418
  *
419
  * @since 4.1.1 - deprecated
420
  */
421
- wbcr_factory_446_do_action_deprecated('wbcr_factory_446_plugin_activation', [
422
  $this
423
  ], '4.1.1', "wbcr/factory/plugin_activation");
424
 
@@ -427,7 +427,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
427
  *
428
  * @since 4.1.2 - deprecated
429
  */
430
- wbcr_factory_446_do_action_deprecated('wbcr/factory/plugin_activation', [
431
  $this
432
  ], '4.1.2', "wbcr/factory/before_plugin_activation");
433
 
@@ -443,16 +443,16 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
443
  *
444
  * @since 4.1.2 - deprecated
445
  */
446
- wbcr_factory_446_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_activation", [
447
  $this
448
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
449
 
450
  /**
451
- * wbcr_factory_446_plugin_activation_' . $this->plugin_name
452
  *
453
  * @since 4.1.1 - deprecated
454
  */
455
- wbcr_factory_446_do_action_deprecated('wbcr_factory_446_plugin_activation_' . $this->plugin_name, [
456
  $this
457
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
458
 
@@ -493,16 +493,16 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
493
  /**
494
  * @since 4.1.1 - change hook name
495
  */
496
- if( apply_filters("wbcr/factory_446/cancel_plugin_deactivation_{$this->plugin_name}", false) ) {
497
  return;
498
  }
499
 
500
  /**
501
- * wbcr_factory_446_plugin_deactivation
502
  *
503
  * @since 4.1.1 - deprecated
504
  */
505
- wbcr_factory_446_do_action_deprecated('wbcr_factory_446_plugin_deactivation', [
506
  $this
507
  ], '4.1.1', "wbcr/factory/plugin_deactivation");
508
 
@@ -511,7 +511,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
511
  *
512
  * @since 4.1.2 - deprecated
513
  */
514
- wbcr_factory_446_do_action_deprecated('wbcr/factory/plugin_deactivation', [
515
  $this
516
  ], '4.1.2', "wbcr/factory/before_plugin_deactivation");
517
 
@@ -523,11 +523,11 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
523
  do_action('wbcr/factory/plugin_deactivation', $this);
524
 
525
  /**
526
- * wbcr_factory_446_plugin_deactivation_ . $this->plugin_name
527
  *
528
  * @since 4.1.1 - deprecated
529
  */
530
- wbcr_factory_446_do_action_deprecated('wbcr_factory_446_plugin_deactivation_' . $this->plugin_name, [
531
  $this
532
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
533
 
@@ -536,7 +536,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
536
  *
537
  * @since 4.1.2 - deprecated
538
  */
539
- wbcr_factory_446_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_deactivation", [
540
  $this
541
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
542
 
@@ -574,8 +574,8 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
574
  */
575
  public function getPluginPageUrl($page_id, $args = [])
576
  {
577
- if( !class_exists('Wbcr_FactoryPages445') ) {
578
- throw new Exception('The factory_pages_445 module is not included.');
579
  }
580
 
581
  if( !is_admin() ) {
@@ -584,7 +584,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
584
  return null;
585
  }
586
 
587
- return Wbcr_FactoryPages445::getPageUrl($this, $page_id, $args);
588
  }
589
 
590
  /**
@@ -594,13 +594,13 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
594
  * @param $slug
595
  * param $premium
596
  *
597
- * @return \WBCR\Factory_446\Components\Install_Button
598
  */
599
  public function get_install_component_button($component_type, $slug)
600
  {
601
- require_once FACTORY_446_DIR . '/includes/components/class-install-component-button.php';
602
 
603
- return new \WBCR\Factory_446\Components\Install_Button($this, $component_type, $slug);
604
  }
605
 
606
  /**
@@ -609,13 +609,13 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
609
  * @param $component_type
610
  * @param $slug
611
  *
612
- * @return \WBCR\Factory_446\Components\Delete_Button
613
  */
614
  public function get_delete_component_button($component_type, $slug)
615
  {
616
- require_once FACTORY_446_DIR . '/includes/components/class-delete-component-button.php';
617
 
618
- return new WBCR\Factory_446\Components\Delete_Button($this, $component_type, $slug);
619
  }
620
 
621
  /**
@@ -798,12 +798,12 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
798
  /**
799
  * @since 4.1.1 - deprecated
800
  */
801
- wbcr_factory_446_do_action_deprecated('wbcr_factory_446_core_modules_loaded-' . $this->plugin_name, [], '4.1.1', "wbcr/factory_446/modules_loaded-" . $this->plugin_name);
802
 
803
  /**
804
  * @since 4.1.1 - add
805
  */
806
- do_action('wbcr/factory_446/modules_loaded-' . $this->plugin_name);
807
  }
808
 
809
 
@@ -830,7 +830,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
830
  });
831
 
832
  if( is_admin() ) {
833
- add_filter('wbcr_factory_446_core_admin_allow_multisite', '__return_true');
834
 
835
  register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
836
  register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
@@ -846,7 +846,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
846
  */
847
  protected function init_plugin_migrations()
848
  {
849
- new WBCR\Factory_446\Migrations($this);
850
  }
851
 
852
  /**
@@ -857,7 +857,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
857
  */
858
  protected function init_plugin_notices()
859
  {
860
- new Wbcr\Factory_446\Notices($this);
861
  }
862
 
863
  /**
@@ -873,7 +873,7 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
873
  protected function init_plugin_updates()
874
  {
875
  if( $this->has_updates ) {
876
- new WBCR\Factory_446\Updates\Upgrader($this);
877
  }
878
  }
879
 
@@ -896,11 +896,11 @@ abstract class Wbcr_Factory446_Plugin extends Wbcr_Factory446_Base {
896
  }
897
 
898
  // Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
899
- $this->premium = WBCR\Factory_446\Premium\Manager::instance($this, $this->license_settings);
900
 
901
  // Подключаем премиум апгрейдер
902
  if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
903
- new WBCR\Factory_446\Updates\Premium_Upgrader($this);
904
  }
905
  }
906
  }
24
  * @package factory-core
25
  *
26
  */
27
+ abstract class Wbcr_Factory454_Plugin extends Wbcr_Factory454_Base {
28
 
29
  /**
30
+ * Instance class Wbcr_Factory454_Request, required manages http requests
31
  *
32
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
33
+ * @var Wbcr_Factory454_Request
34
  */
35
  public $request;
36
 
37
  /**
38
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
39
+ * @var \WBCR\Factory_454\Premium\Provider
40
  */
41
  public $premium;
42
 
43
  /**
44
  * The Bootstrap Manager class
45
  *
46
+ * @var Wbcr_FactoryBootstrap455_Manager
47
  */
48
  public $bootstrap;
49
 
50
  /**
51
  * The Bootstrap Manager class
52
  *
53
+ * @var Wbcr_FactoryForms451_Manager
54
  */
55
  public $forms;
56
 
57
  /**
58
+ * Простой массив со списком зарегистрированных классов унаследованных от Wbcr_Factory454_Activator.
59
  * Классы активации используются для упаковки набора функций, которые нужно выполнить во время
60
  * активации плагина.
61
  *
62
+ * @var array[] Wbcr_Factory454_Activator
63
  */
64
  protected $activator_class = [];
65
 
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
88
  * @since 4.1.9
89
+ * @var WBCR\Factory_Adverts_131\Base
90
  */
91
  private $adverts;
92
 
115
 
116
  parent::__construct($plugin_path, $data);
117
 
118
+ $this->request = new Wbcr_Factory454_Request();
119
+ //$this->route = new Wbcr_Factory454_Route();
120
 
121
  // INIT PLUGIN FRAMEWORK MODULES
122
  // Framework modules should always be loaded first,
144
  $this->init_plugin_components();
145
 
146
  if( wp_doing_ajax() && isset($_REQUEST['action']) ) {
147
+ if( "wfactory-454-intall-component" == $_REQUEST['action'] ) {
148
+ add_action('wp_ajax_wfactory-454-intall-component', [$this, 'ajax_handler_install_components']);
149
  }
150
 
151
+ if( "wfactory-454-prepare-component" == $_REQUEST['action'] ) {
152
+ add_action('wp_ajax_wfactory-454-prepare-component', [$this, 'ajax_handler_prepare_component']);
153
  }
154
+ if( "wfactory-454-creativemotion-install-plugin" == $_REQUEST['action'] ) {
155
+ add_action('wp_ajax_wfactory-454-creativemotion-install-plugin', [
156
  $this,
157
  'ajax_handler_install_creativemotion_plugins'
158
  ]);
165
 
166
  public function ajax_handler_install_components()
167
  {
168
+ require_once FACTORY_454_DIR . '/ajax/install-addons.php';
169
+ wfactory_454_install_components($this);
170
  }
171
 
172
  public function ajax_handler_prepare_component()
173
  {
174
+ require_once FACTORY_454_DIR . '/ajax/install-addons.php';
175
+ wfactory_454_prepare_component($this);
176
  }
177
 
178
  public function ajax_handler_install_creativemotion_plugins()
179
  {
180
+ require_once FACTORY_454_DIR . '/ajax/install-addons.php';
181
+ wfactory_454_creativemotion_install_plugin($this);
182
  }
183
  // --------------------------------------------------------
184
 
186
  * Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
187
  * скриптов, стилей) фреймворка.
188
  *
189
+ * @param Wbcr_FactoryBootstrap455_Manager $bootstrap
190
  */
191
+ public function setBootstap(Wbcr_FactoryBootstrap455_Manager $bootstrap)
192
  {
193
  $this->bootstrap = $bootstrap;
194
  }
196
  /**
197
  * Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
198
  *
199
+ * @param Wbcr_FactoryForms451_Manager $forms
200
  */
201
+ public function setForms(Wbcr_FactoryForms451_Manager $forms)
202
  {
203
  $this->forms = $forms;
204
  }
220
  * Устанавливает класс менеджер, которому будет делегирована работа с объявлениями в Wordpress
221
  *
222
  * @param string $class_name Logger class name
223
+ * @param array $settings Logger settings
224
  *
225
  * @author Artem Prihodko <webtemyk@yandex.ru>
226
  * @since 4.3.7
246
  */
247
  public function set_license_provider($name, $class_name)
248
  {
249
+ if( !isset(WBCR\Factory_454\Premium\Manager::$providers[$name]) ) {
250
+ WBCR\Factory_454\Premium\Manager::$providers[$name] = $class_name;
251
  }
252
  }
253
 
265
  */
266
  public function set_update_repository($name, $class_name)
267
  {
268
+ if( !isset(WBCR\Factory_454\Updates\Upgrader::$repositories[$name]) ) {
269
+ WBCR\Factory_454\Updates\Upgrader::$repositories[$name] = $class_name;
270
  }
271
  }
272
 
276
  * Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
277
  * рекламных объявлений.
278
  *
279
+ * @return \WBCR\Factory_Adverts_131\Base
280
  * @since 1.1
281
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
282
  */
312
 
313
  public function newScriptList()
314
  {
315
+ return new Wbcr_Factory454_ScriptList($this);
316
  }
317
 
318
  public function newStyleList()
319
  {
320
+ return new Wbcr_Factory454_StyleList($this);
321
  }
322
 
323
  /**
324
  * Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
325
  * фреймворка pages. Разработчик создает собственный класс, унаследованный от
326
+ * Wbcr_FactoryPages453_AdminPage, а затем регистрирует его через этот метод.
327
  * Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
328
  * pages.
329
  *
333
  * @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
334
  *
335
  * @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
336
+ * Регистрируемый класс должен быть унаследован от класса Wbcr_FactoryPages453_AdminPage.
337
  * @param string $file_path Абсолютный путь к файлу с классом страницы.
338
  *
339
  * @throws Exception
355
  throw new Exception('A class with this name {' . $class_name . '} does not exist.');
356
  }
357
 
358
+ if( !class_exists('Wbcr_FactoryPages453') ) {
359
+ throw new Exception('The factory_pages_453 module is not included.');
360
  }
361
 
362
+ Wbcr_FactoryPages453::register($this, $class_name);
363
  }
364
 
365
  /**
409
  /**
410
  * @since 4.1.1 - change hook name
411
  */
412
+ if( apply_filters("wbcr/factory_454/cancel_plugin_activation_{$this->plugin_name}", false) ) {
413
  return;
414
  }
415
 
416
  /**
417
+ * wbcr_factory_454_plugin_activation
418
  *
419
  * @since 4.1.1 - deprecated
420
  */
421
+ wbcr_factory_454_do_action_deprecated('wbcr_factory_454_plugin_activation', [
422
  $this
423
  ], '4.1.1', "wbcr/factory/plugin_activation");
424
 
427
  *
428
  * @since 4.1.2 - deprecated
429
  */
430
+ wbcr_factory_454_do_action_deprecated('wbcr/factory/plugin_activation', [
431
  $this
432
  ], '4.1.2', "wbcr/factory/before_plugin_activation");
433
 
443
  *
444
  * @since 4.1.2 - deprecated
445
  */
446
+ wbcr_factory_454_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_activation", [
447
  $this
448
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
449
 
450
  /**
451
+ * wbcr_factory_454_plugin_activation_' . $this->plugin_name
452
  *
453
  * @since 4.1.1 - deprecated
454
  */
455
+ wbcr_factory_454_do_action_deprecated('wbcr_factory_454_plugin_activation_' . $this->plugin_name, [
456
  $this
457
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
458
 
493
  /**
494
  * @since 4.1.1 - change hook name
495
  */
496
+ if( apply_filters("wbcr/factory_454/cancel_plugin_deactivation_{$this->plugin_name}", false) ) {
497
  return;
498
  }
499
 
500
  /**
501
+ * wbcr_factory_454_plugin_deactivation
502
  *
503
  * @since 4.1.1 - deprecated
504
  */
505
+ wbcr_factory_454_do_action_deprecated('wbcr_factory_454_plugin_deactivation', [
506
  $this
507
  ], '4.1.1', "wbcr/factory/plugin_deactivation");
508
 
511
  *
512
  * @since 4.1.2 - deprecated
513
  */
514
+ wbcr_factory_454_do_action_deprecated('wbcr/factory/plugin_deactivation', [
515
  $this
516
  ], '4.1.2', "wbcr/factory/before_plugin_deactivation");
517
 
523
  do_action('wbcr/factory/plugin_deactivation', $this);
524
 
525
  /**
526
+ * wbcr_factory_454_plugin_deactivation_ . $this->plugin_name
527
  *
528
  * @since 4.1.1 - deprecated
529
  */
530
+ wbcr_factory_454_do_action_deprecated('wbcr_factory_454_plugin_deactivation_' . $this->plugin_name, [
531
  $this
532
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
533
 
536
  *
537
  * @since 4.1.2 - deprecated
538
  */
539
+ wbcr_factory_454_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_deactivation", [
540
  $this
541
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
542
 
574
  */
575
  public function getPluginPageUrl($page_id, $args = [])
576
  {
577
+ if( !class_exists('Wbcr_FactoryPages453') ) {
578
+ throw new Exception('The factory_pages_453 module is not included.');
579
  }
580
 
581
  if( !is_admin() ) {
584
  return null;
585
  }
586
 
587
+ return Wbcr_FactoryPages453::getPageUrl($this, $page_id, $args);
588
  }
589
 
590
  /**
594
  * @param $slug
595
  * param $premium
596
  *
597
+ * @return \WBCR\Factory_454\Components\Install_Button
598
  */
599
  public function get_install_component_button($component_type, $slug)
600
  {
601
+ require_once FACTORY_454_DIR . '/includes/components/class-install-component-button.php';
602
 
603
+ return new \WBCR\Factory_454\Components\Install_Button($this, $component_type, $slug);
604
  }
605
 
606
  /**
609
  * @param $component_type
610
  * @param $slug
611
  *
612
+ * @return \WBCR\Factory_454\Components\Delete_Button
613
  */
614
  public function get_delete_component_button($component_type, $slug)
615
  {
616
+ require_once FACTORY_454_DIR . '/includes/components/class-delete-component-button.php';
617
 
618
+ return new WBCR\Factory_454\Components\Delete_Button($this, $component_type, $slug);
619
  }
620
 
621
  /**
798
  /**
799
  * @since 4.1.1 - deprecated
800
  */
801
+ wbcr_factory_454_do_action_deprecated('wbcr_factory_454_core_modules_loaded-' . $this->plugin_name, [], '4.1.1', "wbcr/factory_454/modules_loaded-" . $this->plugin_name);
802
 
803
  /**
804
  * @since 4.1.1 - add
805
  */
806
+ do_action('wbcr/factory_454/modules_loaded-' . $this->plugin_name);
807
  }
808
 
809
 
830
  });
831
 
832
  if( is_admin() ) {
833
+ add_filter('wbcr_factory_454_core_admin_allow_multisite', '__return_true');
834
 
835
  register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
836
  register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
846
  */
847
  protected function init_plugin_migrations()
848
  {
849
+ new WBCR\Factory_454\Migrations($this);
850
  }
851
 
852
  /**
857
  */
858
  protected function init_plugin_notices()
859
  {
860
+ new Wbcr\Factory_454\Notices($this);
861
  }
862
 
863
  /**
873
  protected function init_plugin_updates()
874
  {
875
  if( $this->has_updates ) {
876
+ new WBCR\Factory_454\Updates\Upgrader($this);
877
  }
878
  }
879
 
896
  }
897
 
898
  // Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
899
+ $this->premium = WBCR\Factory_454\Premium\Manager::instance($this, $this->license_settings);
900
 
901
  // Подключаем премиум апгрейдер
902
  if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
903
+ new WBCR\Factory_454\Updates\Premium_Upgrader($this);
904
  }
905
  }
906
  }
libs/factory/core/includes/class-factory-plugin-base.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
  exit;
5
  }
6
 
7
  /**
8
- * Базовый класс для создания нового плагина. Полную реализацию класса смотрите в Wbcr_Factory446_Plugin
9
  *
10
  * Документация по классу: https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/392724484
11
  * Документация по созданию плагина: https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/327828
@@ -17,9 +17,9 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  * @since 1.0.0
18
  * @package factory-core
19
  */
20
- class Wbcr_Factory446_Base {
21
 
22
- use WBCR\Factory_446\Options;
23
 
24
  /**
25
  * Обязательное свойство. Префикс, используется для создания пространство имен.
@@ -81,7 +81,7 @@ class Wbcr_Factory446_Base {
81
  * https://robin-image-optimizer.webcraftic.com/premium-features.
82
  *
83
  * Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
84
- * экземпляр класса \WBCR\Factory_446\Entities\Support, для получения информации о сайте плагина.
85
  * Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
86
  * можете изменить все ссылки в одном месте.
87
  *
@@ -127,7 +127,7 @@ class Wbcr_Factory446_Base {
127
  * к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
128
  * взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
129
  * индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
130
- * WBCR\Factory_446\Premium\Provider > WBCR\Factory_Freemius_000\Premium\Provider
131
  *
132
  * На текущий момент существует только реализация для freemius провайдера.
133
  *
@@ -177,9 +177,9 @@ class Wbcr_Factory446_Base {
177
  * }
178
  */
179
  protected $load_factory_modules = [
180
- [ 'libs/factory/bootstrap', 'factory_bootstrap_446', 'admin' ],
181
- [ 'libs/factory/forms', 'factory_forms_443', 'admin' ],
182
- [ 'libs/factory/pages', 'factory_pages_445', 'admin' ],
183
  ];
184
 
185
  /**
@@ -209,20 +209,20 @@ class Wbcr_Factory446_Base {
209
 
210
 
211
  /**
212
- * Экземпляр класса \WBCR\Factory_446\Entities\Support используется для получения информации
213
  * о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
214
  * ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
215
  *
216
- * @var \WBCR\Factory_446\Entities\Support
217
  */
218
  protected $support;
219
 
220
  /**
221
- * Экземпляр класса \WBCR\Factory_446\Entities\Paths используется для получения информации о
222
  * путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
223
  * или его входного файла.
224
  *
225
- * @var \WBCR\Factory_446\Entities\Paths
226
  */
227
  protected $paths;
228
 
@@ -247,34 +247,35 @@ class Wbcr_Factory446_Base {
247
  * - Выполняет проверку на обязательные настройки
248
  * - Инициализирует сущности support и paths
249
  *
250
- * @since 4.1.1 - добавил две сущности support, paths. Удалил свойства, plugin_build
251
- * plugin_assembly, main_file, plugin_root, relative_path, plugin_url
252
- * @since 4.0.8 - добавлена дополнительная логика
253
- *
254
  * @param string $plugin_file
255
- * @param array $data
256
  *
257
  * @throws Exception
 
 
 
 
258
  */
259
- public function __construct( $plugin_file, $data ) {
 
260
  $this->plugin_file = $plugin_file;
261
  $this->plugin_data = $data;
262
 
263
- foreach ( (array) $data as $option_name => $option_value ) {
264
- if ( property_exists( $this, $option_name ) ) {
265
  $this->$option_name = $option_value;
266
  }
267
  }
268
 
269
- if ( empty( $this->prefix ) || empty( $this->plugin_name ) || empty( $this->plugin_title ) || empty( $this->plugin_version ) || empty( $this->plugin_text_domain ) ) {
270
- throw new Exception( 'One of the required attributes has not been passed (prefix, plugin_title, plugin_name, plugin_version, plugin_text_domain).' );
271
  }
272
 
273
- $this->support = new \WBCR\Factory_446\Entities\Support( $this->support_details );
274
- $this->paths = new \WBCR\Factory_446\Entities\Paths( $plugin_file );
275
 
276
  // used only in the module 'updates'
277
- $this->plugin_slug = ! empty( $this->plugin_name ) ? $this->plugin_name : basename( $plugin_file );
278
  }
279
 
280
  /**
@@ -283,11 +284,12 @@ class Wbcr_Factory446_Base {
283
  * добавляем совместимость со старыми плагинами, но при этом выводим предупреждение, что нужно
284
  * обновить некоторые свойства.
285
  *
286
- * @param string $name Имя свойства класса.
287
  *
288
  * @return mixed
289
  */
290
- public function __get( $name ) {
 
291
 
292
  $deprecated_props = [
293
  'plugin_build',
@@ -298,13 +300,13 @@ class Wbcr_Factory446_Base {
298
  'plugin_url'
299
  ];
300
 
301
- if ( in_array( $name, $deprecated_props ) ) {
302
  $deprecated_message = 'In version 4.1.1 of the Factory framework, the class properties ';
303
- $deprecated_message .= '(' . implode( ',', $deprecated_props ) . ')';
304
  $deprecated_message .= 'have been removed. To get plugin paths, use the new paths property.' . PHP_EOL;
305
 
306
  $backtrace = debug_backtrace();
307
- if ( ! empty( $backtrace ) && isset( $backtrace[1] ) ) {
308
  $deprecated_message .= 'BACKTRACE:(';
309
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
310
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
@@ -312,9 +314,9 @@ class Wbcr_Factory446_Base {
312
  $deprecated_message .= ')';
313
  }
314
 
315
- _deprecated_argument( __METHOD__, '4.1.1', $deprecated_message );
316
 
317
- switch ( $name ) {
318
  case 'plugin_build':
319
  return null;
320
  break;
@@ -344,13 +346,14 @@ class Wbcr_Factory446_Base {
344
  * по прежнему используют удаленные методы. С помощью этого магического метода мы добавляем совместимость
345
  * со старыми плагинами, но при этом выводим предупреждение, что нужно обновить некоторые методы.
346
  *
347
- * @param string $name Имя метода класса.
348
- * @param array $arguments Массив аргументов метода класса.
349
  *
350
  * @return stdClass|null
351
  * @throws Exception
352
  */
353
- public function __call( $name, $arguments ) {
 
354
 
355
  $deprecated_methods = [
356
  'getPluginBuild',
@@ -358,11 +361,11 @@ class Wbcr_Factory446_Base {
358
  'getPluginPathInfo'
359
  ];
360
 
361
- if ( in_array( $name, $deprecated_methods ) ) {
362
- $deprecated_message = 'In version 4.1.1 of the Factory framework, methods (' . implode( ',', $deprecated_methods ) . ') have been removed.';
363
 
364
  $backtrace = debug_backtrace();
365
- if ( ! empty( $backtrace ) && isset( $backtrace[1] ) ) {
366
  $deprecated_message .= 'BACKTRACE:(';
367
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
368
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
@@ -370,77 +373,83 @@ class Wbcr_Factory446_Base {
370
  $deprecated_message .= ')';
371
  }
372
 
373
- _deprecated_argument( __METHOD__, '4.1.1', $deprecated_message );
374
 
375
- if ( 'getPluginPathInfo' == $name ) {
376
  $object = new stdClass;
377
 
378
- $object->main_file = $this->get_paths()->main_file;
379
- $object->plugin_root = $this->get_paths()->absolute;
380
  $object->relative_path = $this->get_paths()->basename;
381
- $object->plugin_url = $this->get_paths()->url;
382
 
383
  return $object;
384
  }
385
  }
386
 
387
- throw new Exception( "Method {$name} does not exist" );
388
  }
389
 
390
  /**
391
  * Проверяет, включен ли премиум для этого плагина или нет.
392
  *
393
  * @return bool Возвращает true, если премиум пакет включен для этого плагина.
394
- * См. Wbcr_Factory446_Base::has_premium
395
  */
396
- public function has_premium() {
 
397
  return $this->has_premium;
398
  }
399
 
400
  /**
401
  * Позволяет получить заголовок плагина.
402
  *
403
- * @return string Возвращает заголовок плагина. См. Wbcr_Factory446_Base::plugin_title
404
  */
405
- public function getPluginTitle() {
406
- return $this->plugin_title;
 
407
  }
408
 
409
  /**
410
  * Позволяет получить префикс плагина.
411
  *
412
- * @return string Возвращает префикс плагина.См. Wbcr_Factory446_Base::prefix
413
  */
414
- public function getPrefix() {
 
415
  return $this->prefix;
416
  }
417
 
418
  /**
419
  * Позволяет получить имя плагина.
420
  *
421
- * @return string Возвращает имя плагина. См. Wbcr_Factory446_Base::plugin_name
422
  */
423
- public function getPluginName() {
 
424
  return $this->plugin_name;
425
  }
426
 
427
  /**
428
  * Позволяет получить версию плагина.
429
  *
430
- * @return string Возвращает версию плагина. См. Wbcr_Factory446_Base::plugin_version
431
  */
432
- public function getPluginVersion() {
 
433
  return $this->plugin_version;
434
  }
435
 
436
  /**
437
  * Позволяет получить список подключаемых к плагином компонентов
438
  *
439
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
440
- * @since 4.2.0
441
  * @return array
 
 
442
  */
443
- public function get_load_plugin_components() {
 
444
  return $this->load_plugin_components;
445
  }
446
 
@@ -448,92 +457,99 @@ class Wbcr_Factory446_Base {
448
  * Предоставляет доступ к сырым данным плагина. Может быть полезен, если вы хотите получить
449
  * какие-то данные не описанные в интерфейсе этого плагина.
450
  *
451
- * @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
452
- * Wbcr_Factory446_Base::plugin_data
453
  *
454
  * @return null
455
  */
456
- public function getPluginInfoAttr( $attr_name ) {
457
- if ( isset( $this->plugin_data[ $attr_name ] ) ) {
458
- return $this->plugin_data[ $attr_name ];
 
459
  }
460
 
461
  return null;
462
  }
463
 
464
  /**
465
- * Предоставляет доступ к экземпляру класса \WBCR\Factory_446\Entities\Support.
466
  *
467
- * @return \WBCR\Factory_446\Entities\Support
468
  */
469
- public function get_support() {
 
470
  return $this->support;
471
  }
472
 
473
  /**
474
- * Предоставляет доступ к экземпляру класса \WBCR\Factory_446\Entities\Paths.
475
  *
476
- * @return \WBCR\Factory_446\Entities\Paths
477
  */
478
- public function get_paths() {
 
479
  return $this->paths;
480
  }
481
 
482
  /**
483
  * Позволяет получить сырые данные плагина в виде объекта StdClass.
484
  *
485
- * @return object Возвращает объект с сырыми данными плагина. См. Wbcr_Factory446_Base::plugin_data
486
  */
487
- public function getPluginInfo() {
488
- return (object) $this->plugin_data;
 
489
  }
490
 
491
  /**
492
  * Проверяет права пользователя
493
  *
494
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
495
- * @since 4.2.0 Добавлен
496
  * @return bool
 
 
497
  */
498
- public function current_user_can( $capability = 'manage_options' ) {
 
499
  // Просмотр страниц: read_pages
500
  // Просмотр уведомлений: read_notices
501
  // Редактирование: edit_forms
502
 
503
- if ( 'manage_options' == $capability && is_multisite() && $this->isNetworkActive() ) {
504
  $capability = 'manage_network';
505
  }
506
 
507
- return current_user_can( $capability );
508
  }
509
 
510
  /**
511
  * Проверят, находится ли пользователь в панели усправления сетью сайтов
512
  *
 
513
  * @since 4.0.8 Добавлен
514
  *
515
- * @return bool
516
  */
517
- public function isNetworkAdmin() {
 
518
  return is_multisite() && is_network_admin();
519
  }
520
 
521
  /**
522
  * Проверяет активирован ли плагин для сети. Если проект работает в режиме мультисайтов..
523
  *
524
- * @since 4.0.8 Добавлен
525
  * @return bool Если true, плагин активирован для сети или в текущий момент активируется для сети.
 
526
  */
527
- public function isNetworkActive() {
 
528
  // Makes sure the plugin is defined before trying to use it
529
- if ( ! function_exists( 'is_plugin_active_for_network' ) ) {
530
- require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
531
  }
532
 
533
- $activate = is_plugin_active_for_network( $this->get_paths()->basename );
534
 
535
- if ( ! $activate && $this->isNetworkAdmin() && isset( $_GET['action'] ) && $_GET['action'] == 'activate' ) {
536
- return isset( $_GET['networkwide'] ) && 1 == (int) $_GET['networkwide'];
537
  }
538
 
539
  return $activate;
@@ -542,29 +558,30 @@ class Wbcr_Factory446_Base {
542
  /**
543
  * Позволяет получить все активные сайты сети. Если проект работает в режиме мультисайтов.
544
  *
545
- * @since 4.0.8
546
  * @return array|int
 
547
  */
548
- public function getActiveSites( $args = [ 'archived' => 0, 'mature' => 0, 'spam' => 0, 'deleted' => 0 ] ) {
 
549
  global $wp_version;
550
 
551
- if ( version_compare( $wp_version, '4.6', '>=' ) ) {
552
- return get_sites( $args );
553
  } else {
554
  $converted_array = [];
555
 
556
- $sites = wp_get_sites( $args );
557
 
558
- if ( empty( $sites ) ) {
559
  return $converted_array;
560
  }
561
 
562
- foreach ( (array) $sites as $key => $site ) {
563
  $obj = new stdClass();
564
- foreach ( $site as $attr => $value ) {
565
  $obj->$attr = $value;
566
  }
567
- $converted_array[ $key ] = $obj;
568
  }
569
 
570
  return $converted_array;
1
  <?php
2
  // Exit if accessed directly
3
+ if( !defined('ABSPATH') ) {
4
  exit;
5
  }
6
 
7
  /**
8
+ * Базовый класс для создания нового плагина. Полную реализацию класса смотрите в Wbcr_Factory454_Plugin
9
  *
10
  * Документация по классу: https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/392724484
11
  * Документация по созданию плагина: https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/327828
17
  * @since 1.0.0
18
  * @package factory-core
19
  */
20
+ class Wbcr_Factory454_Base {
21
 
22
+ use WBCR\Factory_454\Options;
23
 
24
  /**
25
  * Обязательное свойство. Префикс, используется для создания пространство имен.
81
  * https://robin-image-optimizer.webcraftic.com/premium-features.
82
  *
83
  * Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
84
+ * экземпляр класса \WBCR\Factory_454\Entities\Support, для получения информации о сайте плагина.
85
  * Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
86
  * можете изменить все ссылки в одном месте.
87
  *
127
  * к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
128
  * взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
129
  * индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
130
+ * WBCR\Factory_454\Premium\Provider > WBCR\Factory_Freemius_000\Premium\Provider
131
  *
132
  * На текущий момент существует только реализация для freemius провайдера.
133
  *
177
  * }
178
  */
179
  protected $load_factory_modules = [
180
+ ['libs/factory/bootstrap', 'factory_bootstrap_455', 'admin'],
181
+ ['libs/factory/forms', 'factory_forms_451', 'admin'],
182
+ ['libs/factory/pages', 'factory_pages_453', 'admin'],
183
  ];
184
 
185
  /**
209
 
210
 
211
  /**
212
+ * Экземпляр класса \WBCR\Factory_454\Entities\Support используется для получения информации
213
  * о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
214
  * ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
215
  *
216
+ * @var \WBCR\Factory_454\Entities\Support
217
  */
218
  protected $support;
219
 
220
  /**
221
+ * Экземпляр класса \WBCR\Factory_454\Entities\Paths используется для получения информации о
222
  * путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
223
  * или его входного файла.
224
  *
225
+ * @var \WBCR\Factory_454\Entities\Paths
226
  */
227
  protected $paths;
228
 
247
  * - Выполняет проверку на обязательные настройки
248
  * - Инициализирует сущности support и paths
249
  *
 
 
 
 
250
  * @param string $plugin_file
251
+ * @param array $data
252
  *
253
  * @throws Exception
254
+ * @since 4.0.8 - добавлена дополнительная логика
255
+ *
256
+ * @since 4.1.1 - добавил две сущности support, paths. Удалил свойства, plugin_build
257
+ * plugin_assembly, main_file, plugin_root, relative_path, plugin_url
258
  */
259
+ public function __construct($plugin_file, $data)
260
+ {
261
  $this->plugin_file = $plugin_file;
262
  $this->plugin_data = $data;
263
 
264
+ foreach((array)$data as $option_name => $option_value) {
265
+ if( property_exists($this, $option_name) ) {
266
  $this->$option_name = $option_value;
267
  }
268
  }
269
 
270
+ if( empty($this->prefix) || empty($this->plugin_name) || empty($this->plugin_title) || empty($this->plugin_version) || empty($this->plugin_text_domain) ) {
271
+ throw new Exception('One of the required attributes has not been passed (prefix, plugin_title, plugin_name, plugin_version, plugin_text_domain).');
272
  }
273
 
274
+ $this->support = new \WBCR\Factory_454\Entities\Support($this->support_details);
275
+ $this->paths = new \WBCR\Factory_454\Entities\Paths($plugin_file);
276
 
277
  // used only in the module 'updates'
278
+ $this->plugin_slug = !empty($this->plugin_name) ? $this->plugin_name : basename($plugin_file);
279
  }
280
 
281
  /**
284
  * добавляем совместимость со старыми плагинами, но при этом выводим предупреждение, что нужно
285
  * обновить некоторые свойства.
286
  *
287
+ * @param string $name Имя свойства класса.
288
  *
289
  * @return mixed
290
  */
291
+ public function __get($name)
292
+ {
293
 
294
  $deprecated_props = [
295
  'plugin_build',
300
  'plugin_url'
301
  ];
302
 
303
+ if( in_array($name, $deprecated_props) ) {
304
  $deprecated_message = 'In version 4.1.1 of the Factory framework, the class properties ';
305
+ $deprecated_message .= '(' . implode(',', $deprecated_props) . ')';
306
  $deprecated_message .= 'have been removed. To get plugin paths, use the new paths property.' . PHP_EOL;
307
 
308
  $backtrace = debug_backtrace();
309
+ if( !empty($backtrace) && isset($backtrace[1]) ) {
310
  $deprecated_message .= 'BACKTRACE:(';
311
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
312
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
314
  $deprecated_message .= ')';
315
  }
316
 
317
+ _deprecated_argument(__METHOD__, '4.1.1', $deprecated_message);
318
 
319
+ switch( $name ) {
320
  case 'plugin_build':
321
  return null;
322
  break;
346
  * по прежнему используют удаленные методы. С помощью этого магического метода мы добавляем совместимость
347
  * со старыми плагинами, но при этом выводим предупреждение, что нужно обновить некоторые методы.
348
  *
349
+ * @param string $name Имя метода класса.
350
+ * @param array $arguments Массив аргументов метода класса.
351
  *
352
  * @return stdClass|null
353
  * @throws Exception
354
  */
355
+ public function __call($name, $arguments)
356
+ {
357
 
358
  $deprecated_methods = [
359
  'getPluginBuild',
361
  'getPluginPathInfo'
362
  ];
363
 
364
+ if( in_array($name, $deprecated_methods) ) {
365
+ $deprecated_message = 'In version 4.1.1 of the Factory framework, methods (' . implode(',', $deprecated_methods) . ') have been removed.';
366
 
367
  $backtrace = debug_backtrace();
368
+ if( !empty($backtrace) && isset($backtrace[1]) ) {
369
  $deprecated_message .= 'BACKTRACE:(';
370
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
371
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
373
  $deprecated_message .= ')';
374
  }
375
 
376
+ _deprecated_argument(__METHOD__, '4.1.1', $deprecated_message);
377
 
378
+ if( 'getPluginPathInfo' == $name ) {
379
  $object = new stdClass;
380
 
381
+ $object->main_file = $this->get_paths()->main_file;
382
+ $object->plugin_root = $this->get_paths()->absolute;
383
  $object->relative_path = $this->get_paths()->basename;
384
+ $object->plugin_url = $this->get_paths()->url;
385
 
386
  return $object;
387
  }
388
  }
389
 
390
+ throw new Exception("Method {$name} does not exist");
391
  }
392
 
393
  /**
394
  * Проверяет, включен ли премиум для этого плагина или нет.
395
  *
396
  * @return bool Возвращает true, если премиум пакет включен для этого плагина.
397
+ * См. Wbcr_Factory454_Base::has_premium
398
  */
399
+ public function has_premium()
400
+ {
401
  return $this->has_premium;
402
  }
403
 
404
  /**
405
  * Позволяет получить заголовок плагина.
406
  *
407
+ * @return string Возвращает заголовок плагина. См. Wbcr_Factory454_Base::plugin_title
408
  */
409
+ public function getPluginTitle()
410
+ {
411
+ return apply_filters('wbcr/factory/plugin_title', $this->plugin_title, $this->getPluginName());
412
  }
413
 
414
  /**
415
  * Позволяет получить префикс плагина.
416
  *
417
+ * @return string Возвращает префикс плагина.См. Wbcr_Factory454_Base::prefix
418
  */
419
+ public function getPrefix()
420
+ {
421
  return $this->prefix;
422
  }
423
 
424
  /**
425
  * Позволяет получить имя плагина.
426
  *
427
+ * @return string Возвращает имя плагина. См. Wbcr_Factory454_Base::plugin_name
428
  */
429
+ public function getPluginName()
430
+ {
431
  return $this->plugin_name;
432
  }
433
 
434
  /**
435
  * Позволяет получить версию плагина.
436
  *
437
+ * @return string Возвращает версию плагина. См. Wbcr_Factory454_Base::plugin_version
438
  */
439
+ public function getPluginVersion()
440
+ {
441
  return $this->plugin_version;
442
  }
443
 
444
  /**
445
  * Позволяет получить список подключаемых к плагином компонентов
446
  *
 
 
447
  * @return array
448
+ * @since 4.2.0
449
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
450
  */
451
+ public function get_load_plugin_components()
452
+ {
453
  return $this->load_plugin_components;
454
  }
455
 
457
  * Предоставляет доступ к сырым данным плагина. Может быть полезен, если вы хотите получить
458
  * какие-то данные не описанные в интерфейсе этого плагина.
459
  *
460
+ * @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
461
+ * Wbcr_Factory454_Base::plugin_data
462
  *
463
  * @return null
464
  */
465
+ public function getPluginInfoAttr($attr_name)
466
+ {
467
+ if( isset($this->plugin_data[$attr_name]) ) {
468
+ return $this->plugin_data[$attr_name];
469
  }
470
 
471
  return null;
472
  }
473
 
474
  /**
475
+ * Предоставляет доступ к экземпляру класса \WBCR\Factory_454\Entities\Support.
476
  *
477
+ * @return \WBCR\Factory_454\Entities\Support
478
  */
479
+ public function get_support()
480
+ {
481
  return $this->support;
482
  }
483
 
484
  /**
485
+ * Предоставляет доступ к экземпляру класса \WBCR\Factory_454\Entities\Paths.
486
  *
487
+ * @return \WBCR\Factory_454\Entities\Paths
488
  */
489
+ public function get_paths()
490
+ {
491
  return $this->paths;
492
  }
493
 
494
  /**
495
  * Позволяет получить сырые данные плагина в виде объекта StdClass.
496
  *
497
+ * @return object Возвращает объект с сырыми данными плагина. См. Wbcr_Factory454_Base::plugin_data
498
  */
499
+ public function getPluginInfo()
500
+ {
501
+ return (object)$this->plugin_data;
502
  }
503
 
504
  /**
505
  * Проверяет права пользователя
506
  *
 
 
507
  * @return bool
508
+ * @since 4.2.0 Добавлен
509
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
510
  */
511
+ public function current_user_can($capability = 'manage_options')
512
+ {
513
  // Просмотр страниц: read_pages
514
  // Просмотр уведомлений: read_notices
515
  // Редактирование: edit_forms
516
 
517
+ if( 'manage_options' == $capability && is_multisite() && $this->isNetworkActive() ) {
518
  $capability = 'manage_network';
519
  }
520
 
521
+ return current_user_can($capability);
522
  }
523
 
524
  /**
525
  * Проверят, находится ли пользователь в панели усправления сетью сайтов
526
  *
527
+ * @return bool
528
  * @since 4.0.8 Добавлен
529
  *
 
530
  */
531
+ public function isNetworkAdmin()
532
+ {
533
  return is_multisite() && is_network_admin();
534
  }
535
 
536
  /**
537
  * Проверяет активирован ли плагин для сети. Если проект работает в режиме мультисайтов..
538
  *
 
539
  * @return bool Если true, плагин активирован для сети или в текущий момент активируется для сети.
540
+ * @since 4.0.8 Добавлен
541
  */
542
+ public function isNetworkActive()
543
+ {
544
  // Makes sure the plugin is defined before trying to use it
545
+ if( !function_exists('is_plugin_active_for_network') ) {
546
+ require_once(ABSPATH . '/wp-admin/includes/plugin.php');
547
  }
548
 
549
+ $activate = is_plugin_active_for_network($this->get_paths()->basename);
550
 
551
+ if( !$activate && $this->isNetworkAdmin() && isset($_GET['action']) && $_GET['action'] == 'activate' ) {
552
+ return isset($_GET['networkwide']) && 1 == (int)$_GET['networkwide'];
553
  }
554
 
555
  return $activate;
558
  /**
559
  * Позволяет получить все активные сайты сети. Если проект работает в режиме мультисайтов.
560
  *
 
561
  * @return array|int
562
+ * @since 4.0.8
563
  */
564
+ public function getActiveSites($args = ['archived' => 0, 'mature' => 0, 'spam' => 0, 'deleted' => 0])
565
+ {
566
  global $wp_version;
567
 
568
+ if( version_compare($wp_version, '4.6', '>=') ) {
569
+ return get_sites($args);
570
  } else {
571
  $converted_array = [];
572
 
573
+ $sites = wp_get_sites($args);
574
 
575
+ if( empty($sites) ) {
576
  return $converted_array;
577
  }
578
 
579
+ foreach((array)$sites as $key => $site) {
580
  $obj = new stdClass();
581
+ foreach($site as $attr => $value) {
582
  $obj->$attr = $value;
583
  }
584
+ $converted_array[$key] = $obj;
585
  }
586
 
587
  return $converted_array;
libs/factory/core/includes/class-factory-requests.php CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  * @package factory-core
12
  */
13
 
14
- class Wbcr_Factory446_Request {
15
 
16
  /**
17
  * @param null $param
11
  * @package factory-core
12
  */
13
 
14
+ class Wbcr_Factory454_Request {
15
 
16
  /**
17
  * @param null $param
libs/factory/core/includes/class-factory-requirements.php CHANGED
@@ -12,8 +12,8 @@
12
  * @since 4.0.9
13
  */
14
  // @formatter:off
15
- if ( ! class_exists( 'Wbcr_Factory446_Requirements' ) ) {
16
- class Wbcr_Factory446_Requirements {
17
 
18
  /**
19
  * Factory framework version
@@ -242,7 +242,7 @@ if ( ! class_exists( 'Wbcr_Factory446_Requirements' ) ) {
242
  $notice_text = $notice_default_text = '';
243
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
244
 
245
- $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_clearfy_000' ), $this->plugin_title ) . ' ';
246
  $notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
247
 
248
  $has_one = false;
@@ -273,21 +273,21 @@ if ( ! class_exists( 'Wbcr_Factory446_Requirements' ) ) {
273
  * @return string
274
  */
275
  protected function get_php_incompat_text() {
276
- return sprintf( __( 'You need to update the PHP version to %s or higher!', 'wbcr_factory_446' ), $this->required_php_version );
277
  }
278
 
279
  /**
280
  * @return string
281
  */
282
  protected function get_wp_incompat_text() {
283
- return sprintf( __( 'You need to update WordPress to %s or higher!', 'wbcr_factory_446' ), $this->required_wp_version );
284
  }
285
 
286
  /**
287
  * @return string
288
  */
289
  protected function get_plugin_already_activate_text() {
290
- return sprintf( __( 'Plugin %s is already activated, you are trying to activate it again.', 'wbcr_factory_446' ), $this->plugin_title );
291
  }
292
  }
293
  }
12
  * @since 4.0.9
13
  */
14
  // @formatter:off
15
+ if ( ! class_exists( 'Wbcr_Factory454_Requirements' ) ) {
16
+ class Wbcr_Factory454_Requirements {
17
 
18
  /**
19
  * Factory framework version
242
  $notice_text = $notice_default_text = '';
243
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
244
 
245
+ $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_templates_106' ), $this->plugin_title ) . ' ';
246
  $notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
247
 
248
  $has_one = false;
273
  * @return string
274
  */
275
  protected function get_php_incompat_text() {
276
+ return sprintf( __( 'You need to update the PHP version to %s or higher!', 'wbcr_factory_454' ), $this->required_php_version );
277
  }
278
 
279
  /**
280
  * @return string
281
  */
282
  protected function get_wp_incompat_text() {
283
+ return sprintf( __( 'You need to update WordPress to %s or higher!', 'wbcr_factory_454' ), $this->required_wp_version );
284
  }
285
 
286
  /**
287
  * @return string
288
  */
289
  protected function get_plugin_already_activate_text() {
290
+ return sprintf( __( 'Plugin %s is already activated, you are trying to activate it again.', 'wbcr_factory_454' ), $this->plugin_title );
291
  }
292
  }
293
  }
libs/factory/core/includes/components/class-delete-component-button.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
libs/factory/core/includes/components/class-install-component-button.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
@@ -22,7 +22,7 @@ class Install_Button {
22
 
23
  protected $classes = [
24
  'button',
25
- 'wfactory-446-process-button'
26
  ];
27
  protected $data = [];
28
  protected $base_path;
@@ -37,7 +37,7 @@ class Install_Button {
37
  * @throws \Exception
38
  * @since 4.3.3
39
  */
40
- public function __construct(\Wbcr_Factory446_Plugin $plugin, $type, $plugin_slug)
41
  {
42
  if( empty($type) || !is_string($plugin_slug) ) {
43
  throw new \Exception('Empty type or plugin_slug attribute.');
@@ -67,7 +67,7 @@ class Install_Button {
67
 
68
  // Set default data
69
  $this->add_data('storage', $this->type);
70
- $this->add_data('i18n', \WbcrFactoryClearfy000_Helpers::getEscapeJson($this->get_i18n()));
71
  $this->add_data('wpnonce', wp_create_nonce('updates'));
72
  }
73
 
@@ -420,13 +420,13 @@ class Install_Button {
420
  protected function get_i18n()
421
  {
422
  return [
423
- 'activate' => __('Activate', 'wbcr_factory_446'),
424
- 'install' => __('Install', 'wbcr_factory_446'),
425
- 'deactivate' => __('Deactivate', 'wbcr_factory_446'),
426
- 'delete' => __('Delete', 'wbcr_factory_446'),
427
- 'loading' => __('Please wait...', 'wbcr_factory_446'),
428
- 'preparation' => __('Preparation...', 'wbcr_factory_446'),
429
- 'read' => __('Read more', 'wbcr_factory_446')
430
  ];
431
  }
432
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
22
 
23
  protected $classes = [
24
  'button',
25
+ 'wfactory-454-process-button'
26
  ];
27
  protected $data = [];
28
  protected $base_path;
37
  * @throws \Exception
38
  * @since 4.3.3
39
  */
40
+ public function __construct(\Wbcr_Factory454_Plugin $plugin, $type, $plugin_slug)
41
  {
42
  if( empty($type) || !is_string($plugin_slug) ) {
43
  throw new \Exception('Empty type or plugin_slug attribute.');
67
 
68
  // Set default data
69
  $this->add_data('storage', $this->type);
70
+ $this->add_data('i18n', \WBCR\Factory_Templates_106\Helpers::getEscapeJson($this->get_i18n()));
71
  $this->add_data('wpnonce', wp_create_nonce('updates'));
72
  }
73
 
420
  protected function get_i18n()
421
  {
422
  return [
423
+ 'activate' => __('Activate', 'wbcr_factory_454'),
424
+ 'install' => __('Install', 'wbcr_factory_454'),
425
+ 'deactivate' => __('Deactivate', 'wbcr_factory_454'),
426
+ 'delete' => __('Delete', 'wbcr_factory_454'),
427
+ 'loading' => __('Please wait...', 'wbcr_factory_454'),
428
+ 'preparation' => __('Preparation...', 'wbcr_factory_454'),
429
+ 'read' => __('Read more', 'wbcr_factory_454')
430
  ];
431
  }
432
 
libs/factory/core/includes/entities/class-factory-paths.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
libs/factory/core/includes/entities/class-factory-support.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
libs/factory/core/includes/functions.php CHANGED
@@ -53,17 +53,17 @@ if ( ! function_exists( 'get_user_locale' ) ) {
53
  * @param string $message Optional. A message regarding the change.
54
  *
55
  * @return mixed
56
- * @see wbcr_factory_446_deprecated_hook()
57
  *
58
  */
59
- function wbcr_factory_446_apply_filters_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
60
  if ( function_exists( 'apply_filters_deprecated' ) ) {
61
  return apply_filters_deprecated( $tag, $args, $version, $replacement, $message );
62
  }
63
  if ( ! has_filter( $tag ) ) {
64
  return $args[0];
65
  }
66
- wbcr_factory_446_deprecated_hook( $tag, $version, $replacement, $message );
67
 
68
  return apply_filters_ref_array( $tag, $args );
69
  }
@@ -89,7 +89,7 @@ function wbcr_factory_446_apply_filters_deprecated( $tag, $args, $version, $repl
89
  * @see _deprecated_hook()
90
  *
91
  */
92
- function wbcr_factory_446_do_action_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
93
  if ( function_exists( 'do_action_deprecated' ) ) {
94
  do_action_deprecated( $tag, $args, $version, $replacement, $message );
95
 
@@ -98,14 +98,14 @@ function wbcr_factory_446_do_action_deprecated( $tag, $args, $version, $replacem
98
  if ( ! has_action( $tag ) ) {
99
  return;
100
  }
101
- wbcr_factory_446_deprecated_hook( $tag, $version, $replacement, $message );
102
  do_action_ref_array( $tag, $args );
103
  }
104
 
105
  /**
106
  * Marks a deprecated action or filter hook as deprecated and throws a notice.
107
  *
108
- * Use the 'wbcr_factory_446_deprecated_hook_run' action to get the backtrace describing where the
109
  * deprecated hook was called.
110
  *
111
  * Default behavior is to trigger a user error if WP_DEBUG is true.
@@ -123,7 +123,7 @@ function wbcr_factory_446_do_action_deprecated( $tag, $args, $version, $replacem
123
  * @param string $replacement Optional. The hook that should have been used.
124
  * @param string $message Optional. A message regarding the change.
125
  */
126
- function wbcr_factory_446_deprecated_hook( $hook, $version, $replacement = null, $message = null ) {
127
  /**
128
  * Fires when a deprecated hook is called.
129
  *
53
  * @param string $message Optional. A message regarding the change.
54
  *
55
  * @return mixed
56
+ * @see wbcr_factory_454_deprecated_hook()
57
  *
58
  */
59
+ function wbcr_factory_454_apply_filters_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
60
  if ( function_exists( 'apply_filters_deprecated' ) ) {
61
  return apply_filters_deprecated( $tag, $args, $version, $replacement, $message );
62
  }
63
  if ( ! has_filter( $tag ) ) {
64
  return $args[0];
65
  }
66
+ wbcr_factory_454_deprecated_hook( $tag, $version, $replacement, $message );
67
 
68
  return apply_filters_ref_array( $tag, $args );
69
  }
89
  * @see _deprecated_hook()
90
  *
91
  */
92
+ function wbcr_factory_454_do_action_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
93
  if ( function_exists( 'do_action_deprecated' ) ) {
94
  do_action_deprecated( $tag, $args, $version, $replacement, $message );
95
 
98
  if ( ! has_action( $tag ) ) {
99
  return;
100
  }
101
+ wbcr_factory_454_deprecated_hook( $tag, $version, $replacement, $message );
102
  do_action_ref_array( $tag, $args );
103
  }
104
 
105
  /**
106
  * Marks a deprecated action or filter hook as deprecated and throws a notice.
107
  *
108
+ * Use the 'wbcr_factory_454_deprecated_hook_run' action to get the backtrace describing where the
109
  * deprecated hook was called.
110
  *
111
  * Default behavior is to trigger a user error if WP_DEBUG is true.
123
  * @param string $replacement Optional. The hook that should have been used.
124
  * @param string $message Optional. A message regarding the change.
125
  */
126
+ function wbcr_factory_454_deprecated_hook( $hook, $version, $replacement = null, $message = null ) {
127
  /**
128
  * Fires when a deprecated hook is called.
129
  *
libs/factory/core/includes/premium/class-factory-license-interface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Premium\Interfaces;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Premium\Interfaces;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
libs/factory/core/includes/premium/class-factory-manager.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Premium;
4
 
5
  use Exception;
6
- use Wbcr_Factory446_Plugin;
7
 
8
  // Exit if accessed directly
9
  if ( ! defined( 'ABSPATH' ) ) {
@@ -24,7 +24,7 @@ class Manager {
24
  public static $providers;
25
 
26
  /**
27
- * @var Wbcr_Factory446_Plugin
28
  */
29
  protected $plugin;
30
 
@@ -36,24 +36,24 @@ class Manager {
36
  /**
37
  * Manager constructor.
38
  *
39
- * @param Wbcr_Factory446_Plugin $plugin
40
  * @param array $settings
41
  *
42
  * @throws Exception
43
  */
44
- public function __construct( Wbcr_Factory446_Plugin $plugin, array $settings ) {
45
  $this->plugin = $plugin;
46
  $this->settings = $settings;
47
  }
48
 
49
  /**
50
- * @param Wbcr_Factory446_Plugin $plugin
51
  * @param array $settings
52
  *
53
  * @return \WBCR\Factory_Freemius_000\Premium\Provider
54
  * @throws Exception
55
  */
56
- public static function instance( Wbcr_Factory446_Plugin $plugin, array $settings ) {
57
  $premium_manager = new Manager( $plugin, $settings );
58
 
59
  return $premium_manager->instance_provider();
@@ -70,7 +70,7 @@ class Manager {
70
 
71
  if ( isset( self::$providers[ $provider_name ] ) && class_exists( self::$providers[ $provider_name ] ) ) {
72
  if ( self::$providers[ $provider_name ] instanceof Provider ) {
73
- throw new Exception( "Provider {$provider_name} must extend the class WBCR\Factory_446\Premium\Provider interface!" );
74
  }
75
 
76
  return new self::$providers[ $provider_name ]( $this->plugin, $this->settings );
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Premium;
4
 
5
  use Exception;
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  // Exit if accessed directly
9
  if ( ! defined( 'ABSPATH' ) ) {
24
  public static $providers;
25
 
26
  /**
27
+ * @var Wbcr_Factory454_Plugin
28
  */
29
  protected $plugin;
30
 
36
  /**
37
  * Manager constructor.
38
  *
39
+ * @param Wbcr_Factory454_Plugin $plugin
40
  * @param array $settings
41
  *
42
  * @throws Exception
43
  */
44
+ public function __construct( Wbcr_Factory454_Plugin $plugin, array $settings ) {
45
  $this->plugin = $plugin;
46
  $this->settings = $settings;
47
  }
48
 
49
  /**
50
+ * @param Wbcr_Factory454_Plugin $plugin
51
  * @param array $settings
52
  *
53
  * @return \WBCR\Factory_Freemius_000\Premium\Provider
54
  * @throws Exception
55
  */
56
+ public static function instance( Wbcr_Factory454_Plugin $plugin, array $settings ) {
57
  $premium_manager = new Manager( $plugin, $settings );
58
 
59
  return $premium_manager->instance_provider();
70
 
71
  if ( isset( self::$providers[ $provider_name ] ) && class_exists( self::$providers[ $provider_name ] ) ) {
72
  if ( self::$providers[ $provider_name ] instanceof Provider ) {
73
+ throw new Exception( "Provider {$provider_name} must extend the class WBCR\Factory_454\Premium\Provider interface!" );
74
  }
75
 
76
  return new self::$providers[ $provider_name ]( $this->plugin, $this->settings );
libs/factory/core/includes/premium/class-factory-provider-abstract.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Premium;
4
 
5
  use Exception;
6
- use Wbcr_Factory446_Plugin;
7
 
8
  // Exit if accessed directly
9
  if( !defined('ABSPATH') ) {
@@ -21,7 +21,7 @@ if( !defined('ABSPATH') ) {
21
  abstract class Provider {
22
 
23
  /**
24
- * @var Wbcr_Factory446_Plugin
25
  */
26
  protected $plugin;
27
 
@@ -38,10 +38,10 @@ abstract class Provider {
38
  /**
39
  * Provider constructor.
40
  *
41
- * @param Wbcr_Factory446_Plugin $plugin
42
  * @param array $settings
43
  */
44
- public function __construct(Wbcr_Factory446_Plugin $plugin, array $settings)
45
  {
46
  $this->plugin = $plugin;
47
  $this->settings = $settings;
@@ -244,7 +244,7 @@ abstract class Provider {
244
  abstract public function get_billing_cycle();
245
 
246
  /**
247
- * @return \WBCR\Factory_446\Premium\Interfaces\License
248
  */
249
  abstract public function get_license();
250
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Premium;
4
 
5
  use Exception;
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  // Exit if accessed directly
9
  if( !defined('ABSPATH') ) {
21
  abstract class Provider {
22
 
23
  /**
24
+ * @var Wbcr_Factory454_Plugin
25
  */
26
  protected $plugin;
27
 
38
  /**
39
  * Provider constructor.
40
  *
41
+ * @param Wbcr_Factory454_Plugin $plugin
42
  * @param array $settings
43
  */
44
+ public function __construct(Wbcr_Factory454_Plugin $plugin, array $settings)
45
  {
46
  $this->plugin = $plugin;
47
  $this->settings = $settings;
244
  abstract public function get_billing_cycle();
245
 
246
  /**
247
+ * @return \WBCR\Factory_454\Premium\Interfaces\License
248
  */
249
  abstract public function get_license();
250
 
libs/factory/core/includes/updates/class-factory-premium-upgrader.php CHANGED
@@ -1,12 +1,12 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Updates;
4
 
5
  use Exception;
6
  use Plugin_Installer_Skin;
7
  use Plugin_Upgrader;
8
- use Wbcr_Factory446_Plugin;
9
- use Wbcr_FactoryPages445_ImpressiveThemplate;
10
  use WP_Filesystem_Base;
11
  use WP_Upgrader;
12
  use WP_Upgrader_Skin;
@@ -45,13 +45,13 @@ class Premium_Upgrader extends Upgrader {
45
  * @param $args
46
  * @param bool $is_premium
47
  *
48
- * @param Wbcr_Factory446_Plugin $plugin
49
  *
50
  * @throws Exception
51
  * @since 4.1.1
52
  *
53
  */
54
- public function __construct(Wbcr_Factory446_Plugin $plugin)
55
  {
56
  parent::__construct($plugin);
57
 
@@ -242,9 +242,9 @@ class Premium_Upgrader extends Upgrader {
242
  /**
243
  * Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
244
  *
245
- * @param Wbcr_FactoryPages445_ImpressiveThemplate $obj
246
  *
247
- * @param Wbcr_Factory446_Plugin $plugin
248
  *
249
  * @return void
250
  * @since 4.1.1
@@ -809,12 +809,12 @@ class Premium_Upgrader extends Upgrader {
809
  $cancel_license_url = $this->get_action_url('cancel_license');
810
 
811
  $texts = [
812
- 'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', 'wbcr_factory_446'),
813
- 'need_renew_license' => __('Your license has expired. You can no longer get premium plugin updates, premium support and your access to Webcraftic services has been suspended.', 'wbcr_factory_446'),
814
  'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
815
- <a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_446'), $upgrade_url, $cancel_license_url),
816
  'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
817
- <a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_446'), $activate_plugin_url, $cancel_license_url)
818
  ];
819
 
820
  if( isset($texts[$type]) ) {
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Updates;
4
 
5
  use Exception;
6
  use Plugin_Installer_Skin;
7
  use Plugin_Upgrader;
8
+ use Wbcr_Factory454_Plugin;
9
+ use Wbcr_FactoryPages453_ImpressiveThemplate;
10
  use WP_Filesystem_Base;
11
  use WP_Upgrader;
12
  use WP_Upgrader_Skin;
45
  * @param $args
46
  * @param bool $is_premium
47
  *
48
+ * @param Wbcr_Factory454_Plugin $plugin
49
  *
50
  * @throws Exception
51
  * @since 4.1.1
52
  *
53
  */
54
+ public function __construct(Wbcr_Factory454_Plugin $plugin)
55
  {
56
  parent::__construct($plugin);
57
 
242
  /**
243
  * Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
244
  *
245
+ * @param Wbcr_FactoryPages453_ImpressiveThemplate $obj
246
  *
247
+ * @param Wbcr_Factory454_Plugin $plugin
248
  *
249
  * @return void
250
  * @since 4.1.1
809
  $cancel_license_url = $this->get_action_url('cancel_license');
810
 
811
  $texts = [
812
+ 'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', 'wbcr_factory_454'),
813
+ 'need_renew_license' => __('Your license has expired. You can no longer get premium plugin updates, premium support and your access to Webcraftic services has been suspended.', 'wbcr_factory_454'),
814
  'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
815
+ <a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_454'), $upgrade_url, $cancel_license_url),
816
  'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
817
+ <a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_454'), $activate_plugin_url, $cancel_license_url)
818
  ];
819
 
820
  if( isset($texts[$type]) ) {
libs/factory/core/includes/updates/class-factory-upgrader.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Updates;
4
 
5
  use Exception;
6
  use stdClass;
7
- use Wbcr_Factory446_Plugin;
8
 
9
  // Exit if accessed directly
10
  if( !defined('ABSPATH') ) {
@@ -29,7 +29,7 @@ class Upgrader {
29
  * @var array хранит имя репозитория и его имя класса
30
  * [
31
  * 'wordpress' => 'WBCR\Factory_Freemius_000\Updates\Freemius_Repository',
32
- * 'freemius' => '\WBCR\Factory_446\Updates\Wordpress_Repository'
33
  * ]
34
  */
35
  public static $repositories = [];
@@ -42,7 +42,7 @@ class Upgrader {
42
  protected $type = 'default';
43
 
44
  /**
45
- * @var Wbcr_Factory446_Plugin
46
  */
47
  protected $plugin;
48
 
@@ -88,7 +88,7 @@ class Upgrader {
88
  /**
89
  * Manager constructor.
90
  *
91
- * @param Wbcr_Factory446_Plugin $plugin
92
  * @param $args
93
  * @param bool $is_premium
94
  *
@@ -96,7 +96,7 @@ class Upgrader {
96
  * @since 4.1.1
97
  *
98
  */
99
- public function __construct(Wbcr_Factory446_Plugin $plugin)
100
  {
101
 
102
  $this->plugin = $plugin;
@@ -107,8 +107,8 @@ class Upgrader {
107
  $this->is_debug = defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG;
108
 
109
  # Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
110
- self::$repositories['wordpress'] = '\WBCR\Factory_446\Updates\Wordpress_Repository';
111
- self::$repositories['github'] = '\WBCR\Factory_446\Updates\Github_Repository';
112
 
113
  $settings = $this->get_settings();
114
 
@@ -298,7 +298,7 @@ class Upgrader {
298
 
299
  if( isset(self::$repositories[$repository_name]) && class_exists(self::$repositories[$repository_name]) ) {
300
  if( self::$repositories[$repository_name] instanceof Repository ) {
301
- throw new Exception("Repository {$repository_name} must extend the class WBCR\Factory_446\Updates\Repository interface!");
302
  }
303
 
304
  return new self::$repositories[$repository_name]($this->plugin, $this->get_settings());
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Updates;
4
 
5
  use Exception;
6
  use stdClass;
7
+ use Wbcr_Factory454_Plugin;
8
 
9
  // Exit if accessed directly
10
  if( !defined('ABSPATH') ) {
29
  * @var array хранит имя репозитория и его имя класса
30
  * [
31
  * 'wordpress' => 'WBCR\Factory_Freemius_000\Updates\Freemius_Repository',
32
+ * 'freemius' => '\WBCR\Factory_454\Updates\Wordpress_Repository'
33
  * ]
34
  */
35
  public static $repositories = [];
42
  protected $type = 'default';
43
 
44
  /**
45
+ * @var Wbcr_Factory454_Plugin
46
  */
47
  protected $plugin;
48
 
88
  /**
89
  * Manager constructor.
90
  *
91
+ * @param Wbcr_Factory454_Plugin $plugin
92
  * @param $args
93
  * @param bool $is_premium
94
  *
96
  * @since 4.1.1
97
  *
98
  */
99
+ public function __construct(Wbcr_Factory454_Plugin $plugin)
100
  {
101
 
102
  $this->plugin = $plugin;
107
  $this->is_debug = defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG;
108
 
109
  # Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
110
+ self::$repositories['wordpress'] = '\WBCR\Factory_454\Updates\Wordpress_Repository';
111
+ self::$repositories['github'] = '\WBCR\Factory_454\Updates\Github_Repository';
112
 
113
  $settings = $this->get_settings();
114
 
298
 
299
  if( isset(self::$repositories[$repository_name]) && class_exists(self::$repositories[$repository_name]) ) {
300
  if( self::$repositories[$repository_name] instanceof Repository ) {
301
+ throw new Exception("Repository {$repository_name} must extend the class WBCR\Factory_454\Updates\Repository interface!");
302
  }
303
 
304
  return new self::$repositories[$repository_name]($this->plugin, $this->get_settings());
libs/factory/core/includes/updates/repositories/class-factory-github.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory446_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -57,11 +57,11 @@ class Github_Repository extends Repository {
57
  /**
58
  * Wordpress constructor.
59
  *
60
- * @param Wbcr_Factory446_Plugin $plugin
61
  * @param bool $is_premium
62
  * @since 4.4.1
63
  */
64
- public function __construct(Wbcr_Factory446_Plugin $plugin, array $settings = [])
65
  {
66
  $settings = wp_parse_args($settings, [
67
  'github_username' => '',
@@ -220,7 +220,7 @@ class Github_Repository extends Repository {
220
  $response = wp_remote_get($request_uri);
221
 
222
  if( is_wp_error($response) ) {
223
- throw new \Exception($response->get_error_message(), $response->get_error_code());
224
  }
225
 
226
  $data = @json_decode(wp_remote_retrieve_body($response), true); // Get JSON and parse it
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
57
  /**
58
  * Wordpress constructor.
59
  *
60
+ * @param Wbcr_Factory454_Plugin $plugin
61
  * @param bool $is_premium
62
  * @since 4.4.1
63
  */
64
+ public function __construct(Wbcr_Factory454_Plugin $plugin, array $settings = [])
65
  {
66
  $settings = wp_parse_args($settings, [
67
  'github_username' => '',
220
  $response = wp_remote_get($request_uri);
221
 
222
  if( is_wp_error($response) ) {
223
+ throw new \Exception($response->get_error_message());
224
  }
225
 
226
  $data = @json_decode(wp_remote_retrieve_body($response), true); // Get JSON and parse it
libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory446_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -23,17 +23,17 @@ abstract class Repository {
23
  protected $initialized = false;
24
 
25
  /**
26
- * @var Wbcr_Factory446_Plugin
27
  */
28
  protected $plugin;
29
 
30
  /**
31
  * Repository constructor.
32
  *
33
- * @param Wbcr_Factory446_Plugin $plugin
34
  * @param array $settings
35
  */
36
- abstract public function __construct(Wbcr_Factory446_Plugin $plugin, array $settings = []);
37
 
38
  /**
39
  * @return void
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
23
  protected $initialized = false;
24
 
25
  /**
26
+ * @var Wbcr_Factory454_Plugin
27
  */
28
  protected $plugin;
29
 
30
  /**
31
  * Repository constructor.
32
  *
33
+ * @param Wbcr_Factory454_Plugin $plugin
34
  * @param array $settings
35
  */
36
+ abstract public function __construct(Wbcr_Factory454_Plugin $plugin, array $settings = []);
37
 
38
  /**
39
  * @return void
libs/factory/core/includes/updates/repositories/class-factory-wordpress.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_446\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory446_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -20,10 +20,10 @@ class Wordpress_Repository extends Repository {
20
  /**
21
  * Wordpress constructor.
22
  *
23
- * @param Wbcr_Factory446_Plugin $plugin
24
  * @param array $settings
25
  */
26
- public function __construct(Wbcr_Factory446_Plugin $plugin, array $settings = [])
27
  {
28
  $this->plugin = $plugin;
29
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_454\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory454_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
20
  /**
21
  * Wordpress constructor.
22
  *
23
+ * @param Wbcr_Factory454_Plugin $plugin
24
  * @param array $settings
25
  */
26
+ public function __construct(Wbcr_Factory454_Plugin $plugin, array $settings = [])
27
  {
28
  $this->plugin = $plugin;
29
  }
libs/factory/core/langs/{wbcr_factory_446-ru_RU.mo → wbcr_factory_454-ru_RU.mo} RENAMED
File without changes
libs/factory/core/langs/{wbcr_factory_446-ru_RU.po → wbcr_factory_454-ru_RU.po} RENAMED
File without changes
libs/factory/forms/boot.php CHANGED
@@ -22,175 +22,175 @@ if( !is_admin() ) {
22
 
23
  // checks if the module is already loaded in order to
24
  // prevent loading the same version of the module twice.
25
- if( defined('FACTORY_FORMS_443_LOADED') ) {
26
  return;
27
  }
28
 
29
- define('FACTORY_FORMS_443_LOADED', true);
30
 
31
- define('FACTORY_FORMS_443_VERSION', '4.4.3');
32
 
33
  // absolute path and URL to the files and resources of the module.
34
- define('FACTORY_FORMS_443_DIR', dirname(__FILE__));
35
- define('FACTORY_FORMS_443_URL', plugins_url(null, __FILE__));
36
 
37
  #comp merge
38
- require_once(FACTORY_FORMS_443_DIR . '/includes/providers/value-provider.interface.php');
39
- require_once(FACTORY_FORMS_443_DIR . '/includes/providers/meta-value-provider.class.php');
40
- require_once(FACTORY_FORMS_443_DIR . '/includes/providers/options-value-provider.class.php');
41
 
42
- require_once(FACTORY_FORMS_443_DIR . '/includes/form.class.php');
43
  #endcomp
44
 
45
- load_plugin_textdomain('wbcr_factory_forms_443', false, dirname(plugin_basename(__FILE__)) . '/langs');
46
 
47
  /**
48
  * We add this code into the hook because all these controls quite heavy. So in order to get better perfomance,
49
  * we load the form controls only on pages where the forms are created.
50
  *
51
  * @since 3.0.7
52
- * @see the 'wbcr_factory_forms_443_register_controls' hook
53
  *
54
  */
55
- if( !function_exists('wbcr_factory_forms_443_register_default_controls') ) {
56
 
57
  /**
58
- * @param Wbcr_Factory446_Plugin $plugin
59
  *
60
  * @throws Exception
61
  */
62
- function wbcr_factory_forms_443_register_default_controls(Wbcr_Factory446_Plugin $plugin)
63
  {
64
 
65
  if( $plugin && !isset($plugin->forms) ) {
66
  throw new Exception("The module Factory Forms is not loaded for the plugin '{$plugin->getPluginName()}'.");
67
  }
68
 
69
- require_once(FACTORY_FORMS_443_DIR . '/includes/html-builder.class.php');
70
- require_once(FACTORY_FORMS_443_DIR . '/includes/form-element.class.php');
71
- require_once(FACTORY_FORMS_443_DIR . '/includes/control.class.php');
72
- require_once(FACTORY_FORMS_443_DIR . '/includes/complex-control.class.php');
73
- require_once(FACTORY_FORMS_443_DIR . '/includes/holder.class.php');
74
- require_once(FACTORY_FORMS_443_DIR . '/includes/control-holder.class.php');
75
- require_once(FACTORY_FORMS_443_DIR . '/includes/custom-element.class.php');
76
- require_once(FACTORY_FORMS_443_DIR . '/includes/form-layout.class.php');
77
 
78
  // registration of controls
79
  $plugin->forms->registerControls([
80
  [
81
  'type' => 'checkbox',
82
- 'class' => 'Wbcr_FactoryForms443_CheckboxControl',
83
- 'include' => FACTORY_FORMS_443_DIR . '/controls/checkbox.php'
84
  ],
85
  [
86
  'type' => 'list',
87
- 'class' => 'Wbcr_FactoryForms443_ListControl',
88
- 'include' => FACTORY_FORMS_443_DIR . '/controls/list.php'
89
  ],
90
  [
91
  'type' => 'dropdown',
92
- 'class' => 'Wbcr_FactoryForms443_DropdownControl',
93
- 'include' => FACTORY_FORMS_443_DIR . '/controls/dropdown.php'
94
  ],
95
  [
96
  'type' => 'dropdown-and-colors',
97
- 'class' => 'Wbcr_FactoryForms443_DropdownAndColorsControl',
98
- 'include' => FACTORY_FORMS_443_DIR . '/controls/dropdown-and-colors.php'
99
  ],
100
  [
101
  'type' => 'hidden',
102
- 'class' => 'Wbcr_FactoryForms443_HiddenControl',
103
- 'include' => FACTORY_FORMS_443_DIR . '/controls/hidden.php'
104
  ],
105
  [
106
  'type' => 'hidden',
107
- 'class' => 'Wbcr_FactoryForms443_HiddenControl',
108
- 'include' => FACTORY_FORMS_443_DIR . '/controls/hidden.php'
109
  ],
110
  [
111
  'type' => 'radio',
112
- 'class' => 'Wbcr_FactoryForms443_RadioControl',
113
- 'include' => FACTORY_FORMS_443_DIR . '/controls/radio.php'
114
  ],
115
  [
116
  'type' => 'radio-colors',
117
- 'class' => 'Wbcr_FactoryForms443_RadioColorsControl',
118
- 'include' => FACTORY_FORMS_443_DIR . '/controls/radio-colors.php'
119
  ],
120
  [
121
  'type' => 'textarea',
122
- 'class' => 'Wbcr_FactoryForms443_TextareaControl',
123
- 'include' => FACTORY_FORMS_443_DIR . '/controls/textarea.php'
124
  ],
125
  [
126
  'type' => 'textbox',
127
- 'class' => 'Wbcr_FactoryForms443_TextboxControl',
128
- 'include' => FACTORY_FORMS_443_DIR . '/controls/textbox.php'
129
  ],
130
  [
131
  'type' => 'multiple-textbox',
132
- 'class' => 'Wbcr_FactoryForms443_MultipleTextboxControl',
133
- 'include' => FACTORY_FORMS_443_DIR . '/controls/multiple-textbox.php'
134
  ],
135
  [
136
  'type' => 'datetimepicker-range',
137
- 'class' => 'Wbcr_FactoryForms443_DatepickerRangeControl',
138
- 'include' => FACTORY_FORMS_443_DIR . '/controls/datepicker-range.php'
139
  ],
140
  [
141
  'type' => 'url',
142
- 'class' => 'Wbcr_FactoryForms443_UrlControl',
143
- 'include' => FACTORY_FORMS_443_DIR . '/controls/url.php'
144
  ],
145
  [
146
  'type' => 'wp-editor',
147
- 'class' => 'Wbcr_FactoryForms443_WpEditorControl',
148
- 'include' => FACTORY_FORMS_443_DIR . '/controls/wp-editor.php'
149
  ],
150
  [
151
  'type' => 'color',
152
- 'class' => 'Wbcr_FactoryForms443_ColorControl',
153
- 'include' => FACTORY_FORMS_443_DIR . '/controls/color.php'
154
  ],
155
  [
156
  'type' => 'color-and-opacity',
157
- 'class' => 'Wbcr_FactoryForms443_ColorAndOpacityControl',
158
- 'include' => FACTORY_FORMS_443_DIR . '/controls/color-and-opacity.php'
159
  ],
160
  [
161
  'type' => 'gradient',
162
- 'class' => 'Wbcr_FactoryForms443_GradientControl',
163
- 'include' => FACTORY_FORMS_443_DIR . '/controls/gradient.php'
164
  ],
165
  [
166
  'type' => 'font',
167
- 'class' => 'Wbcr_FactoryForms443_FontControl',
168
- 'include' => FACTORY_FORMS_443_DIR . '/controls/font.php'
169
  ],
170
  [
171
  'type' => 'google-font',
172
- 'class' => 'Wbcr_FactoryForms443_GoogleFontControl',
173
- 'include' => FACTORY_FORMS_443_DIR . '/controls/google-font.php'
174
  ],
175
  [
176
  'type' => 'pattern',
177
- 'class' => 'Wbcr_FactoryForms443_PatternControl',
178
- 'include' => FACTORY_FORMS_443_DIR . '/controls/pattern.php'
179
  ],
180
  [
181
  'type' => 'integer',
182
- 'class' => 'Wbcr_FactoryForms443_IntegerControl',
183
- 'include' => FACTORY_FORMS_443_DIR . '/controls/integer.php'
184
  ],
185
  [
186
  'type' => 'control-group',
187
- 'class' => 'Wbcr_FactoryForms443_ControlGroupHolder',
188
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/control-group.php'
189
  ],
190
  [
191
  'type' => 'paddings-editor',
192
- 'class' => 'Wbcr_FactoryForms443_PaddingsEditorControl',
193
- 'include' => FACTORY_FORMS_443_DIR . '/controls/paddings-editor.php'
194
  ],
195
  ]);
196
 
@@ -198,53 +198,53 @@ if( !function_exists('wbcr_factory_forms_443_register_default_controls') ) {
198
  $plugin->forms->registerHolders([
199
  [
200
  'type' => 'tab',
201
- 'class' => 'Wbcr_FactoryForms443_TabHolder',
202
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/tab.php'
203
  ],
204
  [
205
  'type' => 'tab-item',
206
- 'class' => 'Wbcr_FactoryForms443_TabItemHolder',
207
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/tab-item.php'
208
  ],
209
  [
210
  'type' => 'accordion',
211
- 'class' => 'Wbcr_FactoryForms443_AccordionHolder',
212
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/accordion.php'
213
  ],
214
  [
215
  'type' => 'accordion-item',
216
- 'class' => 'Wbcr_FactoryForms443_AccordionItemHolder',
217
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/accordion-item.php'
218
  ],
219
  [
220
  'type' => 'control-group',
221
- 'class' => 'Wbcr_FactoryForms443_ControlGroupHolder',
222
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/control-group.php'
223
  ],
224
  [
225
  'type' => 'control-group-item',
226
- 'class' => 'Wbcr_FactoryForms443_ControlGroupItem',
227
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/control-group-item.php'
228
  ],
229
  [
230
  'type' => 'form-group',
231
- 'class' => 'Wbcr_FactoryForms443_FormGroupHolder',
232
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/form-group.php'
233
  ],
234
  [
235
  'type' => 'more-link',
236
- 'class' => 'Wbcr_FactoryForms443_MoreLinkHolder',
237
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/more-link.php'
238
  ],
239
  [
240
  'type' => 'div',
241
- 'class' => 'Wbcr_FactoryForms443_DivHolder',
242
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/div.php'
243
  ],
244
  [
245
  'type' => 'columns',
246
- 'class' => 'Wbcr_FactoryForms443_ColumnsHolder',
247
- 'include' => FACTORY_FORMS_443_DIR . '/controls/holders/columns.php'
248
  ]
249
  ]);
250
 
@@ -252,23 +252,23 @@ if( !function_exists('wbcr_factory_forms_443_register_default_controls') ) {
252
  $plugin->forms->registerCustomElements([
253
  [
254
  'type' => 'html',
255
- 'class' => 'Wbcr_FactoryForms443_Html',
256
- 'include' => FACTORY_FORMS_443_DIR . '/controls/customs/html.php',
257
  ],
258
  [
259
  'type' => 'separator',
260
- 'class' => 'Wbcr_FactoryForms443_Separator',
261
- 'include' => FACTORY_FORMS_443_DIR . '/controls/customs/separator.php',
262
  ],
263
  ]);
264
 
265
  // registration of form layouts
266
  $plugin->forms->registerFormLayout([
267
  'name' => 'bootstrap-3',
268
- 'class' => 'Wbcr_FactoryForms443_Bootstrap3FormLayout',
269
- 'include' => FACTORY_FORMS_443_DIR . '/layouts/bootstrap-3/bootstrap-3.php'
270
  ]);
271
  }
272
 
273
- add_action('wbcr_factory_forms_443_register_controls', 'wbcr_factory_forms_443_register_default_controls');
274
  }
22
 
23
  // checks if the module is already loaded in order to
24
  // prevent loading the same version of the module twice.
25
+ if( defined('FACTORY_FORMS_451_LOADED') ) {
26
  return;
27
  }
28
 
29
+ define('FACTORY_FORMS_451_LOADED', true);
30
 
31
+ define('FACTORY_FORMS_451_VERSION', '4.5.1');
32
 
33
  // absolute path and URL to the files and resources of the module.
34
+ define('FACTORY_FORMS_451_DIR', dirname(__FILE__));
35
+ define('FACTORY_FORMS_451_URL', plugins_url(null, __FILE__));
36
 
37
  #comp merge
38
+ require_once(FACTORY_FORMS_451_DIR . '/includes/providers/value-provider.interface.php');
39
+ require_once(FACTORY_FORMS_451_DIR . '/includes/providers/meta-value-provider.class.php');
40
+ require_once(FACTORY_FORMS_451_DIR . '/includes/providers/options-value-provider.class.php');
41
 
42
+ require_once(FACTORY_FORMS_451_DIR . '/includes/form.class.php');
43
  #endcomp
44
 
45
+ load_plugin_textdomain('wbcr_factory_forms_451', false, dirname(plugin_basename(__FILE__)) . '/langs');
46
 
47
  /**
48
  * We add this code into the hook because all these controls quite heavy. So in order to get better perfomance,
49
  * we load the form controls only on pages where the forms are created.
50
  *
51
  * @since 3.0.7
52
+ * @see the 'wbcr_factory_forms_451_register_controls' hook
53
  *
54
  */
55
+ if( !function_exists('wbcr_factory_forms_451_register_default_controls') ) {
56
 
57
  /**
58
+ * @param Wbcr_Factory454_Plugin $plugin
59
  *
60
  * @throws Exception
61
  */
62
+ function wbcr_factory_forms_451_register_default_controls(Wbcr_Factory454_Plugin $plugin)
63
  {
64
 
65
  if( $plugin && !isset($plugin->forms) ) {
66
  throw new Exception("The module Factory Forms is not loaded for the plugin '{$plugin->getPluginName()}'.");
67
  }
68
 
69
+ require_once(FACTORY_FORMS_451_DIR . '/includes/html-builder.class.php');
70
+ require_once(FACTORY_FORMS_451_DIR . '/includes/form-element.class.php');
71
+ require_once(FACTORY_FORMS_451_DIR . '/includes/control.class.php');
72
+ require_once(FACTORY_FORMS_451_DIR . '/includes/complex-control.class.php');
73
+ require_once(FACTORY_FORMS_451_DIR . '/includes/holder.class.php');
74
+ require_once(FACTORY_FORMS_451_DIR . '/includes/control-holder.class.php');
75
+ require_once(FACTORY_FORMS_451_DIR . '/includes/custom-element.class.php');
76
+ require_once(FACTORY_FORMS_451_DIR . '/includes/form-layout.class.php');
77
 
78
  // registration of controls
79
  $plugin->forms->registerControls([
80
  [
81
  'type' => 'checkbox',
82
+ 'class' => 'Wbcr_FactoryForms451_CheckboxControl',
83
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/checkbox.php'
84
  ],
85
  [
86
  'type' => 'list',
87
+ 'class' => 'Wbcr_FactoryForms451_ListControl',
88
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/list.php'
89
  ],
90
  [
91
  'type' => 'dropdown',
92
+ 'class' => 'Wbcr_FactoryForms451_DropdownControl',
93
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/dropdown.php'
94
  ],
95
  [
96
  'type' => 'dropdown-and-colors',
97
+ 'class' => 'Wbcr_FactoryForms451_DropdownAndColorsControl',
98
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/dropdown-and-colors.php'
99
  ],
100
  [
101
  'type' => 'hidden',
102
+ 'class' => 'Wbcr_FactoryForms451_HiddenControl',
103
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/hidden.php'
104
  ],
105
  [
106
  'type' => 'hidden',
107
+ 'class' => 'Wbcr_FactoryForms451_HiddenControl',
108
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/hidden.php'
109
  ],
110
  [
111
  'type' => 'radio',
112
+ 'class' => 'Wbcr_FactoryForms451_RadioControl',
113
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/radio.php'
114
  ],
115
  [
116
  'type' => 'radio-colors',
117
+ 'class' => 'Wbcr_FactoryForms451_RadioColorsControl',
118
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/radio-colors.php'
119
  ],
120
  [
121
  'type' => 'textarea',
122
+ 'class' => 'Wbcr_FactoryForms451_TextareaControl',
123
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/textarea.php'
124
  ],
125
  [
126
  'type' => 'textbox',
127
+ 'class' => 'Wbcr_FactoryForms451_TextboxControl',
128
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/textbox.php'
129
  ],
130
  [
131
  'type' => 'multiple-textbox',
132
+ 'class' => 'Wbcr_FactoryForms451_MultipleTextboxControl',
133
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/multiple-textbox.php'
134
  ],
135
  [
136
  'type' => 'datetimepicker-range',
137
+ 'class' => 'Wbcr_FactoryForms451_DatepickerRangeControl',
138
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/datepicker-range.php'
139
  ],
140
  [
141
  'type' => 'url',
142
+ 'class' => 'Wbcr_FactoryForms451_UrlControl',
143
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/url.php'
144
  ],
145
  [
146
  'type' => 'wp-editor',
147
+ 'class' => 'Wbcr_FactoryForms451_WpEditorControl',
148
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/wp-editor.php'
149
  ],
150
  [
151
  'type' => 'color',
152
+ 'class' => 'Wbcr_FactoryForms451_ColorControl',
153
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/color.php'
154
  ],
155
  [
156
  'type' => 'color-and-opacity',
157
+ 'class' => 'Wbcr_FactoryForms451_ColorAndOpacityControl',
158
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/color-and-opacity.php'
159
  ],
160
  [
161
  'type' => 'gradient',
162
+ 'class' => 'Wbcr_FactoryForms451_GradientControl',
163
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/gradient.php'
164
  ],
165
  [
166
  'type' => 'font',
167
+ 'class' => 'Wbcr_FactoryForms451_FontControl',
168
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/font.php'
169
  ],
170
  [
171
  'type' => 'google-font',
172
+ 'class' => 'Wbcr_FactoryForms451_GoogleFontControl',
173
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/google-font.php'
174
  ],
175
  [
176
  'type' => 'pattern',
177
+ 'class' => 'Wbcr_FactoryForms451_PatternControl',
178
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/pattern.php'
179
  ],
180
  [
181
  'type' => 'integer',
182
+ 'class' => 'Wbcr_FactoryForms451_IntegerControl',
183
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/integer.php'
184
  ],
185
  [
186
  'type' => 'control-group',
187
+ 'class' => 'Wbcr_FactoryForms451_ControlGroupHolder',
188
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/control-group.php'
189
  ],
190
  [
191
  'type' => 'paddings-editor',
192
+ 'class' => 'Wbcr_FactoryForms451_PaddingsEditorControl',
193
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/paddings-editor.php'
194
  ],
195
  ]);
196
 
198
  $plugin->forms->registerHolders([
199
  [
200
  'type' => 'tab',
201
+ 'class' => 'Wbcr_FactoryForms451_TabHolder',
202
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/tab.php'
203
  ],
204
  [
205
  'type' => 'tab-item',
206
+ 'class' => 'Wbcr_FactoryForms451_TabItemHolder',
207
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/tab-item.php'
208
  ],
209
  [
210
  'type' => 'accordion',
211
+ 'class' => 'Wbcr_FactoryForms451_AccordionHolder',
212
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/accordion.php'
213
  ],
214
  [
215
  'type' => 'accordion-item',
216
+ 'class' => 'Wbcr_FactoryForms451_AccordionItemHolder',
217
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/accordion-item.php'
218
  ],
219
  [
220
  'type' => 'control-group',
221
+ 'class' => 'Wbcr_FactoryForms451_ControlGroupHolder',
222
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/control-group.php'
223
  ],
224
  [
225
  'type' => 'control-group-item',
226
+ 'class' => 'Wbcr_FactoryForms451_ControlGroupItem',
227
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/control-group-item.php'
228
  ],
229
  [
230
  'type' => 'form-group',
231
+ 'class' => 'Wbcr_FactoryForms451_FormGroupHolder',
232
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/form-group.php'
233
  ],
234
  [
235
  'type' => 'more-link',
236
+ 'class' => 'Wbcr_FactoryForms451_MoreLinkHolder',
237
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/more-link.php'
238
  ],
239
  [
240
  'type' => 'div',
241
+ 'class' => 'Wbcr_FactoryForms451_DivHolder',
242
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/div.php'
243
  ],
244
  [
245
  'type' => 'columns',
246
+ 'class' => 'Wbcr_FactoryForms451_ColumnsHolder',
247
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/holders/columns.php'
248
  ]
249
  ]);
250
 
252
  $plugin->forms->registerCustomElements([
253
  [
254
  'type' => 'html',
255
+ 'class' => 'Wbcr_FactoryForms451_Html',
256
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/customs/html.php',
257
  ],
258
  [
259
  'type' => 'separator',
260
+ 'class' => 'Wbcr_FactoryForms451_Separator',
261
+ 'include' => FACTORY_FORMS_451_DIR . '/controls/customs/separator.php',
262
  ],
263
  ]);
264
 
265
  // registration of form layouts
266
  $plugin->forms->registerFormLayout([
267
  'name' => 'bootstrap-3',
268
+ 'class' => 'Wbcr_FactoryForms451_Bootstrap3FormLayout',
269
+ 'include' => FACTORY_FORMS_451_DIR . '/layouts/bootstrap-3/bootstrap-3.php'
270
  ]);
271
  }
272
 
273
+ add_action('wbcr_factory_forms_451_register_controls', 'wbcr_factory_forms_451_register_default_controls');
274
  }
libs/factory/forms/controls/checkbox.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_CheckboxControl') ) {
24
 
25
- class Wbcr_FactoryForms443_CheckboxControl extends Wbcr_FactoryForms443_Control {
26
 
27
  public $type = 'checkbox';
28
 
@@ -82,8 +82,8 @@
82
  if( void 0 === window.__factory_checkbox_control_events_off_data ) {
83
  window.__factory_checkbox_control_events_off_data = {};
84
  }
85
- window.__factory_checkbox_control_events_on_data['<?php echo $name_on_form ?>'] = <?= $events_on_string_data ?>;
86
- window.__factory_checkbox_control_events_off_data['<?php echo $name_on_form ?>'] = <?= $events_off_string_data ?>;
87
  </script>
88
  <?php
89
  }
@@ -130,11 +130,11 @@
130
  <div <?php $this->attrs() ?>>
131
  <button type="button" class="btn btn-default btn-small btn-sm factory-on <?php if( $value ) {
132
  echo 'active';
133
- } ?>"><?php _e('On', 'wbcr_factory_forms_443') ?></button>
134
  <button type="button" class="btn btn-default btn-small btn-sm factory-off <?php if( !$value ) {
135
  echo 'active';
136
- } ?>" data-value="0"><?php _e('Off', 'wbcr_factory_forms_443') ?></button>
137
- <input type="checkbox" style="display: none" id="<?php echo $name_on_form ?>" class="factory-result" name="<?php echo $name_on_form ?>" value="<?= $value ?>" <?php if( $value ) {
138
  echo 'checked="checked"';
139
  } ?>" />
140
  </div>
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_CheckboxControl') ) {
24
 
25
+ class Wbcr_FactoryForms451_CheckboxControl extends Wbcr_FactoryForms451_Control {
26
 
27
  public $type = 'checkbox';
28
 
82
  if( void 0 === window.__factory_checkbox_control_events_off_data ) {
83
  window.__factory_checkbox_control_events_off_data = {};
84
  }
85
+ window.__factory_checkbox_control_events_on_data['<?php echo $name_on_form ?>'] = <?php echo $events_on_string_data ?>;
86
+ window.__factory_checkbox_control_events_off_data['<?php echo $name_on_form ?>'] = <?php echo $events_off_string_data ?>;
87
  </script>
88
  <?php
89
  }
130
  <div <?php $this->attrs() ?>>
131
  <button type="button" class="btn btn-default btn-small btn-sm factory-on <?php if( $value ) {
132
  echo 'active';
133
+ } ?>"><?php _e('On', 'wbcr_factory_forms_451') ?></button>
134
  <button type="button" class="btn btn-default btn-small btn-sm factory-off <?php if( !$value ) {
135
  echo 'active';
136
+ } ?>" data-value="0"><?php _e('Off', 'wbcr_factory_forms_451') ?></button>
137
+ <input type="checkbox" style="display: none" id="<?php echo $name_on_form ?>" class="factory-result" name="<?php echo $name_on_form ?>" value="<?php echo $value ?>" <?php if( $value ) {
138
  echo 'checked="checked"';
139
  } ?>" />
140
  </div>
libs/factory/forms/controls/color-and-opacity.php CHANGED
@@ -20,10 +20,10 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_ColorAndOpacityControl') ) {
24
  }
25
 
26
- class Wbcr_FactoryForms443_ColorAndOpacityControl extends Wbcr_FactoryForms443_ComplexControl {
27
 
28
  public $type = 'color-and-opacity';
29
 
@@ -57,8 +57,8 @@
57
  'way' => 'slider'
58
  ));
59
 
60
- $this->color = new Wbcr_FactoryForms443_ColorControl($options['color'], $form, $provider);
61
- $this->opacity = new Wbcr_FactoryForms443_IntegerControl($options['opacity'], $form, $provider);
62
 
63
  $this->innerControls = array($this->color, $this->opacity);
64
  }
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_ColorAndOpacityControl') ) {
24
  }
25
 
26
+ class Wbcr_FactoryForms451_ColorAndOpacityControl extends Wbcr_FactoryForms451_ComplexControl {
27
 
28
  public $type = 'color-and-opacity';
29
 
57
  'way' => 'slider'
58
  ));
59
 
60
+ $this->color = new Wbcr_FactoryForms451_ColorControl($options['color'], $form, $provider);
61
+ $this->opacity = new Wbcr_FactoryForms451_IntegerControl($options['opacity'], $form, $provider);
62
 
63
  $this->innerControls = array($this->color, $this->opacity);
64
  }
libs/factory/forms/controls/color.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_ColorControl') ) {
24
 
25
- class Wbcr_FactoryForms443_ColorControl extends Wbcr_FactoryForms443_Control {
26
 
27
  public $type = 'color';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_ColorControl') ) {
24
 
25
+ class Wbcr_FactoryForms451_ColorControl extends Wbcr_FactoryForms451_Control {
26
 
27
  public $type = 'color';
28
 
libs/factory/forms/controls/customs/html.php CHANGED
@@ -14,9 +14,9 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_Html') ) {
18
 
19
- class Wbcr_FactoryForms443_Html extends Wbcr_FactoryForms443_CustomElement {
20
 
21
  public $type = 'html';
22
 
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_Html') ) {
18
 
19
+ class Wbcr_FactoryForms451_Html extends Wbcr_FactoryForms451_CustomElement {
20
 
21
  public $type = 'html';
22
 
libs/factory/forms/controls/customs/separator.php CHANGED
@@ -14,8 +14,8 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_Separator') ) {
18
- class Wbcr_FactoryForms443_Separator extends Wbcr_FactoryForms443_CustomElement {
19
 
20
  public $type = 'separator';
21
 
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_Separator') ) {
18
+ class Wbcr_FactoryForms451_Separator extends Wbcr_FactoryForms451_CustomElement {
19
 
20
  public $type = 'separator';
21
 
libs/factory/forms/controls/datepicker-range.php CHANGED
@@ -29,9 +29,9 @@
29
  exit;
30
  }
31
 
32
- if( !class_exists('Wbcr_FactoryForms443_DatepickerRangeControl') ) {
33
 
34
- class Wbcr_FactoryForms443_DatepickerRangeControl extends Wbcr_FactoryForms443_ComplexControl {
35
 
36
  public $type = 'datetimepicker-range';
37
 
@@ -65,8 +65,8 @@
65
  'default' => date('Y/m/d H:i', strtotime("+1 month"))
66
  ), $options['range_2']);
67
 
68
- $this->range_1 = new Wbcr_FactoryForms443_TextboxControl($options['range_1'], $form, $provider);
69
- $this->range_2 = new Wbcr_FactoryForms443_TextboxControl($options['range_2'], $form, $provider);
70
  $this->inner_controls = array($this->range_1, $this->range_2);
71
 
72
  foreach($this->inner_controls as $key => $control) {
29
  exit;
30
  }
31
 
32
+ if( !class_exists('Wbcr_FactoryForms451_DatepickerRangeControl') ) {
33
 
34
+ class Wbcr_FactoryForms451_DatepickerRangeControl extends Wbcr_FactoryForms451_ComplexControl {
35
 
36
  public $type = 'datetimepicker-range';
37
 
65
  'default' => date('Y/m/d H:i', strtotime("+1 month"))
66
  ), $options['range_2']);
67
 
68
+ $this->range_1 = new Wbcr_FactoryForms451_TextboxControl($options['range_1'], $form, $provider);
69
+ $this->range_2 = new Wbcr_FactoryForms451_TextboxControl($options['range_2'], $form, $provider);
70
  $this->inner_controls = array($this->range_1, $this->range_2);
71
 
72
  foreach($this->inner_controls as $key => $control) {
libs/factory/forms/controls/dropdown-and-colors.php CHANGED
@@ -5,14 +5,14 @@
5
  *
6
  * Main options:
7
  * name => a name of the control
8
- * // see FactoryForms443_DropdownControl
9
  * 'dropdown' => array(
10
  * // a callback to return items or an array of items to select
11
  * 'data' => OPanda_ThemeManager::getThemes(OPanda_Items::getCurrentItemName(), 'dropdown'),
12
  * 'default' => 'default',
13
  * 'value' => 'value' // a value to show in the control
14
  * ),
15
- * // see FactoryForms443_RadioColorsControl
16
  * 'colors' => array(
17
  * // a callback to return items or an array of items to select
18
  * 'data' => array(
@@ -37,9 +37,9 @@
37
  exit;
38
  }
39
 
40
- if( !class_exists('Wbcr_FactoryForms443_DropdownAndColorsControl') ) {
41
 
42
- class Wbcr_FactoryForms443_DropdownAndColorsControl extends Wbcr_FactoryForms443_ComplexControl {
43
 
44
  public $type = 'dropdown-and-colors';
45
 
@@ -69,8 +69,8 @@
69
  'name' => $this->options['name'] . '__colors',
70
  ));
71
 
72
- $this->dropdown = new Wbcr_FactoryForms443_DropdownControl($options['dropdown'], $form, $provider);
73
- $this->colors = new Wbcr_FactoryForms443_RadioColorsControl($options['colors'], $form, $provider);
74
  $this->inner_controls = array($this->dropdown, $this->colors);
75
 
76
  $colors = $this->colors->getOption('data');
5
  *
6
  * Main options:
7
  * name => a name of the control
8
+ * // see FactoryForms451_DropdownControl
9
  * 'dropdown' => array(
10
  * // a callback to return items or an array of items to select
11
  * 'data' => OPanda_ThemeManager::getThemes(OPanda_Items::getCurrentItemName(), 'dropdown'),
12
  * 'default' => 'default',
13
  * 'value' => 'value' // a value to show in the control
14
  * ),
15
+ * // see FactoryForms451_RadioColorsControl
16
  * 'colors' => array(
17
  * // a callback to return items or an array of items to select
18
  * 'data' => array(
37
  exit;
38
  }
39
 
40
+ if( !class_exists('Wbcr_FactoryForms451_DropdownAndColorsControl') ) {
41
 
42
+ class Wbcr_FactoryForms451_DropdownAndColorsControl extends Wbcr_FactoryForms451_ComplexControl {
43
 
44
  public $type = 'dropdown-and-colors';
45
 
69
  'name' => $this->options['name'] . '__colors',
70
  ));
71
 
72
+ $this->dropdown = new Wbcr_FactoryForms451_DropdownControl($options['dropdown'], $form, $provider);
73
+ $this->colors = new Wbcr_FactoryForms451_RadioColorsControl($options['colors'], $form, $provider);
74
  $this->inner_controls = array($this->dropdown, $this->colors);
75
 
76
  $colors = $this->colors->getOption('data');
libs/factory/forms/controls/dropdown.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if ( ! class_exists( 'Wbcr_FactoryForms443_DropdownControl' ) ) {
25
 
26
- class Wbcr_FactoryForms443_DropdownControl extends Wbcr_FactoryForms443_Control {
27
 
28
  public $type = 'dropdown';
29
 
@@ -100,7 +100,7 @@
100
  if( void 0 === window.factory_dropdown_control_events_data ) {
101
  window.factory_dropdown_control_events_data = {};
102
  }
103
- window.factory_dropdown_control_events_data['<?php echo $name_on_form ?>'] = <?= $events_string_data ?>;
104
  </script>
105
  <?php
106
  }
@@ -123,7 +123,7 @@
123
  'url': '<?php echo $data['url'] ?>',
124
  'data': <?php echo json_encode( $data['data'] ) ?>,
125
  'selected': '<?php echo $value ?>',
126
- 'empty_list': '<?php echo $this->getOption( 'empty', __( 'The list is empty.', 'wbcr_factory_forms_443' ) ) ?>'
127
  };
128
  </script>
129
  <?php
@@ -268,7 +268,7 @@
268
  }
269
 
270
  $is_empty = $this->isAjax() || empty( $items );
271
- $empty_list = $this->getOption( 'empty', __( '- empty -', 'wbcr_factory_forms_443' ) );
272
 
273
  ?>
274
  <select <?php $this->attrs() ?>>
@@ -323,7 +323,7 @@
323
  $styles = ( $is_visible ) ? 'style="display: none;"' : '';
324
 
325
  ?>
326
- <div style="display: none;" class="factory-hint factory-hint-<?= esc_attr( $name ) ?>"<?= $styles ?>><?php echo $hint ?></div>
327
  <?php
328
  }
329
  }
@@ -349,7 +349,7 @@
349
  }
350
 
351
  $value = isset( $item['value'] ) ? $item['value'] : '';
352
- $title = isset( $item['title'] ) ? $item['title'] : __( '- empty -', 'wbcr_factory_forms_443' );
353
 
354
  $data = isset( $item['data'] ) ? $item['data'] : null;
355
  } else {
21
  exit;
22
  }
23
 
24
+ if ( ! class_exists( 'Wbcr_FactoryForms451_DropdownControl' ) ) {
25
 
26
+ class Wbcr_FactoryForms451_DropdownControl extends Wbcr_FactoryForms451_Control {
27
 
28
  public $type = 'dropdown';
29
 
100
  if( void 0 === window.factory_dropdown_control_events_data ) {
101
  window.factory_dropdown_control_events_data = {};
102
  }
103
+ window.factory_dropdown_control_events_data['<?php echo $name_on_form ?>'] = <?php echo $events_string_data ?>;
104
  </script>
105
  <?php
106
  }
123
  'url': '<?php echo $data['url'] ?>',
124
  'data': <?php echo json_encode( $data['data'] ) ?>,
125
  'selected': '<?php echo $value ?>',
126
+ 'empty_list': '<?php echo $this->getOption( 'empty', __( 'The list is empty.', 'wbcr_factory_forms_451' ) ) ?>'
127
  };
128
  </script>
129
  <?php
268
  }
269
 
270
  $is_empty = $this->isAjax() || empty( $items );
271
+ $empty_list = $this->getOption( 'empty', __( '- empty -', 'wbcr_factory_forms_451' ) );
272
 
273
  ?>
274
  <select <?php $this->attrs() ?>>
323
  $styles = ( $is_visible ) ? 'style="display: none;"' : '';
324
 
325
  ?>
326
+ <div style="display: none;" class="factory-hint factory-hint-<?php echo esc_attr( $name ) ?>"<?php echo $styles ?>><?php echo $hint ?></div>
327
  <?php
328
  }
329
  }
349
  }
350
 
351
  $value = isset( $item['value'] ) ? $item['value'] : '';
352
+ $title = isset( $item['title'] ) ? $item['title'] : __( '- empty -', 'wbcr_factory_forms_451' );
353
 
354
  $data = isset( $item['data'] ) ? $item['data'] : null;
355
  } else {
libs/factory/forms/controls/font.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_FontControl') ) {
24
 
25
- class Wbcr_FactoryForms443_FontControl extends Wbcr_FactoryForms443_ComplexControl {
26
 
27
  public $type = 'font';
28
 
@@ -54,9 +54,9 @@
54
  'pickerTarget' => '.factory-control-' . $this->options['name'] . ' .factory-picker-target'
55
  );
56
 
57
- $this->size = new Wbcr_FactoryForms443_IntegerControl($option_font_size, $form, $provider);
58
- $this->family = new Wbcr_FactoryForms443_DropdownControl($option_font_family, $form, $provider);
59
- $this->color = new Wbcr_FactoryForms443_ColorControl($optionFontColor, $form, $provider);
60
 
61
  $this->innerControls = array($this->family, $this->size, $this->color);
62
  }
@@ -66,8 +66,8 @@
66
 
67
  $fonts = $this->getDefaultFonts();
68
 
69
- $fonts = apply_filters('wbcr_factory_forms_443_fonts', $fonts);
70
- $fonts = apply_filters('wbcr_factory_forms_443_fonts-' . $this->options['name'], $fonts);
71
 
72
  return $fonts;
73
  }
@@ -77,10 +77,10 @@
77
 
78
  $fonts = array(
79
 
80
- array('inherit', __('(use default website font)', 'wbcr_factory_forms_443')),
81
  array(
82
  'group',
83
- __('Sans Serif:', 'wbcr_factory_forms_443'),
84
  array(
85
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
86
  array('"Arial Black", "Arial Bold", Gadget, sans-serif', 'Arial Black'),
@@ -131,7 +131,7 @@
131
  ),
132
  array(
133
  'group',
134
- __('Serif:', 'wbcr_factory_forms_443'),
135
  array(
136
  array(
137
  'Baskerville, "Baskerville Old Face", "Hoefler Text", Garamond, "Times New Roman", serif',
@@ -187,7 +187,7 @@
187
  ),
188
  array(
189
  'group',
190
- __('Monospaced:', 'wbcr_factory_forms_443'),
191
  array(
192
  array('"Andale Mono", AndaleMono, monospace', 'Andale Mono'),
193
  array('Consolas, monaco, monospace', 'Consolas'),
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_FontControl') ) {
24
 
25
+ class Wbcr_FactoryForms451_FontControl extends Wbcr_FactoryForms451_ComplexControl {
26
 
27
  public $type = 'font';
28
 
54
  'pickerTarget' => '.factory-control-' . $this->options['name'] . ' .factory-picker-target'
55
  );
56
 
57
+ $this->size = new Wbcr_FactoryForms451_IntegerControl($option_font_size, $form, $provider);
58
+ $this->family = new Wbcr_FactoryForms451_DropdownControl($option_font_family, $form, $provider);
59
+ $this->color = new Wbcr_FactoryForms451_ColorControl($optionFontColor, $form, $provider);
60
 
61
  $this->innerControls = array($this->family, $this->size, $this->color);
62
  }
66
 
67
  $fonts = $this->getDefaultFonts();
68
 
69
+ $fonts = apply_filters('wbcr_factory_forms_451_fonts', $fonts);
70
+ $fonts = apply_filters('wbcr_factory_forms_451_fonts-' . $this->options['name'], $fonts);
71
 
72
  return $fonts;
73
  }
77
 
78
  $fonts = array(
79
 
80
+ array('inherit', __('(use default website font)', 'wbcr_factory_forms_451')),
81
  array(
82
  'group',
83
+ __('Sans Serif:', 'wbcr_factory_forms_451'),
84
  array(
85
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
86
  array('"Arial Black", "Arial Bold", Gadget, sans-serif', 'Arial Black'),
131
  ),
132
  array(
133
  'group',
134
+ __('Serif:', 'wbcr_factory_forms_451'),
135
  array(
136
  array(
137
  'Baskerville, "Baskerville Old Face", "Hoefler Text", Garamond, "Times New Roman", serif',
187
  ),
188
  array(
189
  'group',
190
+ __('Monospaced:', 'wbcr_factory_forms_451'),
191
  array(
192
  array('"Andale Mono", AndaleMono, monospace', 'Andale Mono'),
193
  array('Consolas, monaco, monospace', 'Consolas'),
libs/factory/forms/controls/google-font.php CHANGED
@@ -15,7 +15,7 @@
15
  * @package core
16
  * @since 1.0.0
17
  */
18
- class Wbcr_FactoryForms443_GoogleFontControl extends Wbcr_FactoryForms443_FontControl {
19
 
20
  public $type = 'google-font';
21
  const APIKEY = 'AIzaSyB-3vazYv7Q-5QZA04bmSKFrWcw_VhC40w';
@@ -30,7 +30,7 @@
30
  'cssClass' => 'factory-google-font-data'
31
  );
32
 
33
- $this->google_font_data = new Wbcr_FactoryForms443_HiddenControl($option_google_font_data, $form, $provider);
34
  $this->inner_controls[] = $this->google_font_data;
35
  }
36
 
@@ -49,12 +49,12 @@
49
  $google_fonts = $this->getGoogleFonts();
50
 
51
  $fonts = array(
52
- array('inherit', __('(use default website font)', 'wbcr_factory_forms_443'))
53
  );
54
 
55
  $fontsCommon = array(
56
  'group',
57
- __('Standard:', 'wbcr_factory_forms_443'),
58
  array(
59
 
60
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
@@ -65,7 +65,7 @@
65
  )
66
  );
67
 
68
- $fontsGoogleFonts = array('group', __('Google Fonts:', 'wbcr_factory_forms_443'), array());
69
 
70
  foreach($google_fonts->items as $item) {
71
 
@@ -115,7 +115,7 @@
115
 
116
  if( is_wp_error($response) ) {
117
 
118
- $this->error = __('Unable to retrieve the list of Google Fonts.', 'wbcr_factory_forms_443');
119
  $this->defailed_error = $response->get_error_message();
120
 
121
  return $body;
@@ -123,7 +123,7 @@
123
 
124
  if( !isset($response['body']) ) {
125
 
126
- $this->error = __('Invalide response from the Google Fonts API.', 'wbcr_factory_forms_443');
127
  $this->defailed_error = $response['body'];
128
 
129
  return $body;
@@ -133,7 +133,7 @@
133
 
134
  if( empty($body->items) ) {
135
 
136
- $this->error = __('Unexpected error. The list of Google Fonts are empty.', 'wbcr_factory_forms_443');
137
 
138
  return $body;
139
  }
15
  * @package core
16
  * @since 1.0.0
17
  */
18
+ class Wbcr_FactoryForms451_GoogleFontControl extends Wbcr_FactoryForms451_FontControl {
19
 
20
  public $type = 'google-font';
21
  const APIKEY = 'AIzaSyB-3vazYv7Q-5QZA04bmSKFrWcw_VhC40w';
30
  'cssClass' => 'factory-google-font-data'
31
  );
32
 
33
+ $this->google_font_data = new Wbcr_FactoryForms451_HiddenControl($option_google_font_data, $form, $provider);
34
  $this->inner_controls[] = $this->google_font_data;
35
  }
36
 
49
  $google_fonts = $this->getGoogleFonts();
50
 
51
  $fonts = array(
52
+ array('inherit', __('(use default website font)', 'wbcr_factory_forms_451'))
53
  );
54
 
55
  $fontsCommon = array(
56
  'group',
57
+ __('Standard:', 'wbcr_factory_forms_451'),
58
  array(
59
 
60
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
65
  )
66
  );
67
 
68
+ $fontsGoogleFonts = array('group', __('Google Fonts:', 'wbcr_factory_forms_451'), array());
69
 
70
  foreach($google_fonts->items as $item) {
71
 
115
 
116
  if( is_wp_error($response) ) {
117
 
118
+ $this->error = __('Unable to retrieve the list of Google Fonts.', 'wbcr_factory_forms_451');
119
  $this->defailed_error = $response->get_error_message();
120
 
121
  return $body;
123
 
124
  if( !isset($response['body']) ) {
125
 
126
+ $this->error = __('Invalide response from the Google Fonts API.', 'wbcr_factory_forms_451');
127
  $this->defailed_error = $response['body'];
128
 
129
  return $body;
133
 
134
  if( empty($body->items) ) {
135
 
136
+ $this->error = __('Unexpected error. The list of Google Fonts are empty.', 'wbcr_factory_forms_451');
137
 
138
  return $body;
139
  }
libs/factory/forms/controls/gradient.php CHANGED
@@ -25,8 +25,8 @@
25
  exit;
26
  }
27
 
28
- if( !class_exists('Wbcr_FactoryForms443_GradientControl') ) {
29
- class Wbcr_FactoryForms443_GradientControl extends Wbcr_FactoryForms443_Control {
30
 
31
  public $type = 'gradient';
32
 
@@ -66,8 +66,8 @@
66
  if( !window.factory.res ) {
67
  window.factory.res = {};
68
  }
69
- factory.res.resVertical = '<?php _e( 'vertical', 'wbcr_factory_forms_443' ) ?>';
70
- factory.res.resHorizontal = '<?php _e( 'horizontal', 'wbcr_factory_forms_443' ) ?>';
71
  </script>
72
  <div <?php $this->attrs() ?>>
73
  <div class="factory-gradient-picker">
25
  exit;
26
  }
27
 
28
+ if( !class_exists('Wbcr_FactoryForms451_GradientControl') ) {
29
+ class Wbcr_FactoryForms451_GradientControl extends Wbcr_FactoryForms451_Control {
30
 
31
  public $type = 'gradient';
32
 
66
  if( !window.factory.res ) {
67
  window.factory.res = {};
68
  }
69
+ factory.res.resVertical = '<?php _e( 'vertical', 'wbcr_factory_forms_451' ) ?>';
70
+ factory.res.resHorizontal = '<?php _e( 'horizontal', 'wbcr_factory_forms_451' ) ?>';
71
  </script>
72
  <div <?php $this->attrs() ?>>
73
  <div class="factory-gradient-picker">
libs/factory/forms/controls/hidden.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_HiddenControl') ) {
24
 
25
- class Wbcr_FactoryForms443_HiddenControl extends Wbcr_FactoryForms443_Control {
26
 
27
  public $type = 'hidden';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_HiddenControl') ) {
24
 
25
+ class Wbcr_FactoryForms451_HiddenControl extends Wbcr_FactoryForms451_Control {
26
 
27
  public $type = 'hidden';
28
 
libs/factory/forms/controls/holders/accordion-item.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_AccordionItemHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms443_AccordionItemHolder extends Wbcr_FactoryForms443_Holder {
25
 
26
  /**
27
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_AccordionItemHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms451_AccordionItemHolder extends Wbcr_FactoryForms451_Holder {
25
 
26
  /**
27
  * A holder type.
libs/factory/forms/controls/holders/accordion.php CHANGED
@@ -13,13 +13,13 @@
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
- if( !class_exists('Wbcr_FactoryForms443_AccordionHolder') ) {
17
  /**
18
  * Tab Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_FactoryForms443_AccordionHolder extends Wbcr_FactoryForms443_Holder {
23
 
24
  /**
25
  * A holder type.
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
+ if( !class_exists('Wbcr_FactoryForms451_AccordionHolder') ) {
17
  /**
18
  * Tab Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_FactoryForms451_AccordionHolder extends Wbcr_FactoryForms451_Holder {
23
 
24
  /**
25
  * A holder type.
libs/factory/forms/controls/holders/columns.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_ColumnsHolder') ) {
18
  /**
19
  * Columns Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms443_ColumnsHolder extends Wbcr_FactoryForms443_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_ColumnsHolder') ) {
18
  /**
19
  * Columns Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms451_ColumnsHolder extends Wbcr_FactoryForms451_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/control-group-item.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_ControlGroupItem') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms443_ControlGroupItem extends Wbcr_FactoryForms443_Holder {
25
 
26
  /**
27
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_ControlGroupItem') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms451_ControlGroupItem extends Wbcr_FactoryForms451_Holder {
25
 
26
  /**
27
  * A holder type.
libs/factory/forms/controls/holders/control-group.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_ControlGroupHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms443_ControlGroupHolder extends Wbcr_FactoryForms443_ControlHolder {
25
 
26
  /**
27
  * A holder type.
@@ -61,7 +61,7 @@
61
  continue;
62
  }
63
 
64
- $builder = new Wbcr_FactoryForms443_HtmlAttributeBuilder();
65
 
66
  $builder->addCssClass('factory-control-group-nav-label');
67
  $builder->addCssClass('factory-control-group-nav-label-' . $element->getOption('name'));
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_ControlGroupHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms451_ControlGroupHolder extends Wbcr_FactoryForms451_ControlHolder {
25
 
26
  /**
27
  * A holder type.
61
  continue;
62
  }
63
 
64
+ $builder = new Wbcr_FactoryForms451_HtmlAttributeBuilder();
65
 
66
  $builder->addCssClass('factory-control-group-nav-label');
67
  $builder->addCssClass('factory-control-group-nav-label-' . $element->getOption('name'));
libs/factory/forms/controls/holders/div.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_DivHolder') ) {
18
  /**
19
  * Div Control Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms443_DivHolder extends Wbcr_FactoryForms443_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_DivHolder') ) {
18
  /**
19
  * Div Control Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms451_DivHolder extends Wbcr_FactoryForms451_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/form-group.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_FormGroupHolder') ) {
18
  /**
19
  * Group Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms443_FormGroupHolder extends Wbcr_FactoryForms443_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_FormGroupHolder') ) {
18
  /**
19
  * Group Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms451_FormGroupHolder extends Wbcr_FactoryForms451_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/more-link.php CHANGED
@@ -1,75 +1,73 @@
1
  <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  /**
3
- * The file contains the class of More Link Holder.
4
  *
5
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
6
- * @copyright (c) 2018, Webcraftic Ltd
7
- *
8
- * @package factory-forms
9
  * @since 1.0.0
10
  */
11
-
12
- // Exit if accessed directly
13
- if( !defined('ABSPATH') ) {
14
- exit;
15
- }
16
-
17
- if( !class_exists('Wbcr_FactoryForms443_MoreLinkHolder') ) {
18
 
19
  /**
20
- * Collapsed Group Holder
21
  *
22
  * @since 1.0.0
 
23
  */
24
- class Wbcr_FactoryForms443_MoreLinkHolder extends Wbcr_FactoryForms443_Holder {
25
 
26
- /**
27
- * A holder type.
28
- *
29
- * @since 1.0.0
30
- * @var string
31
- */
32
- public $type = 'more-link';
33
-
34
- /**
35
- * Here we should render a beginning html of the tab.
36
- *
37
- * @since 1.0.0
38
- * @return void
39
- */
40
- public function beforeRendering()
41
- {
42
- $count = isset($this->options['count'])
43
- ? $this->options['count']
44
- : 0;
45
 
46
- $id = 'factory-more-link-' . $this->getName();
47
 
48
- ?>
49
- <div <?php $this->attrs() ?>>
50
- <div class="form-group">
51
- <div class="control-label col-sm-2"></div>
52
- <div class="control-group col-sm-10">
53
- <a href="#<?php echo $id ?>" class="factory-more-link-show"><?php $this->title() ?>
54
- (<?php echo $count ?>)</a>
55
- </div>
56
  </div>
57
- <div class='factory-more-link-content' id="<?php echo $id ?>" style="display: none;">
58
- <a href="#<?php echo $id ?>" class='factory-more-link-hide'><?php _e('hide extra options', 'factory'); ?></a>
 
59
  <?php
60
- }
61
 
62
- /**
63
- * Here we should render an end html of the tab.
64
- *
65
- * @since 1.0.0
66
- * @return void
67
- */
68
- public function afterRendering()
69
- {
70
- ?>
71
- </div></div>
72
  <?php
73
- }
74
  }
75
- }
 
1
  <?php
2
+ /**
3
+ * The file contains the class of More Link Holder.
4
+ *
5
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
6
+ * @copyright (c) 2018, Webcraftic Ltd
7
+ *
8
+ * @package factory-forms
9
+ * @since 1.0.0
10
+ */
11
+
12
+ // Exit if accessed directly
13
+ if( !defined('ABSPATH') ) {
14
+ exit;
15
+ }
16
+
17
+ if( !class_exists('Wbcr_FactoryForms451_MoreLinkHolder') ) {
18
+
19
  /**
20
+ * Collapsed Group Holder
21
  *
 
 
 
 
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms451_MoreLinkHolder extends Wbcr_FactoryForms451_Holder {
 
 
 
 
 
 
25
 
26
  /**
27
+ * A holder type.
28
  *
29
  * @since 1.0.0
30
+ * @var string
31
  */
32
+ public $type = 'more-link';
33
 
34
+ /**
35
+ * Here we should render a beginning html of the tab.
36
+ *
37
+ * @return void
38
+ * @since 1.0.0
39
+ */
40
+ public function beforeRendering()
41
+ {
42
+ $count = isset($this->options['count']) ? $this->options['count'] : 0;
 
 
 
 
 
 
 
 
 
 
43
 
44
+ $id = 'factory-more-link-' . $this->getName();
45
 
46
+ ?>
47
+ <div <?php $this->attrs() ?>>
48
+ <div class="form-group">
49
+ <div class="control-label col-sm-4"></div>
50
+ <div class="control-group col-sm-8">
51
+ <a href="#<?php echo $id ?>" class="factory-more-link-show btn btn-default"><?php $this->title() ?>
52
+ (<?php echo $count ?>)</a>
 
53
  </div>
54
+ </div>
55
+ <div class='factory-more-link-content' id="<?php echo $id ?>" style="display: none;">
56
+ <a href="#<?php echo $id ?>" class='factory-more-link-hide'><?php _e('hide extra options', 'factory'); ?></a>
57
  <?php
58
+ }
59
 
60
+ /**
61
+ * Here we should render an end html of the tab.
62
+ *
63
+ * @return void
64
+ * @since 1.0.0
65
+ */
66
+ public function afterRendering()
67
+ {
68
+ ?>
69
+ </div></div>
70
  <?php
 
71
  }
72
+ }
73
+ }
libs/factory/forms/controls/holders/tab-item.php CHANGED
@@ -13,13 +13,13 @@
13
  exit;
14
  }
15
 
16
- if( !class_exists('Wbcr_FactoryForms443_TabItemHolder') ) {
17
  /**
18
  * Tab Item Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_FactoryForms443_TabItemHolder extends Wbcr_FactoryForms443_Holder {
23
 
24
  /**
25
  * A holder type.
13
  exit;
14
  }
15
 
16
+ if( !class_exists('Wbcr_FactoryForms451_TabItemHolder') ) {
17
  /**
18
  * Tab Item Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_FactoryForms451_TabItemHolder extends Wbcr_FactoryForms451_Holder {
23
 
24
  /**
25
  * A holder type.
libs/factory/forms/controls/holders/tab.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_TabHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms443_TabHolder extends Wbcr_FactoryForms443_Holder {
25
 
26
  /**
27
  * A holder type.
@@ -44,7 +44,7 @@
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
- * @param FactoryForms443_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
@@ -88,7 +88,7 @@
88
  $tab_icon = $element->options['icon'];
89
  }
90
 
91
- $builder = new Wbcr_FactoryForms443_HtmlAttributeBuilder();
92
 
93
  $builder->addCssClass('factory-tab-item-header');
94
  $builder->addCssClass('factory-tab-item-header-' . $element->getName());
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_TabHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms451_TabHolder extends Wbcr_FactoryForms451_Holder {
25
 
26
  /**
27
  * A holder type.
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
+ * @param FactoryForms451_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
88
  $tab_icon = $element->options['icon'];
89
  }
90
 
91
+ $builder = new Wbcr_FactoryForms451_HtmlAttributeBuilder();
92
 
93
  $builder->addCssClass('factory-tab-item-header');
94
  $builder->addCssClass('factory-tab-item-header-' . $element->getName());
libs/factory/forms/controls/integer.php CHANGED
@@ -32,9 +32,9 @@
32
  exit;
33
  }
34
 
35
- if( !class_exists('Wbcr_FactoryForms443_IntegerControl') ) {
36
 
37
- class Wbcr_FactoryForms443_IntegerControl extends Wbcr_FactoryForms443_Control {
38
 
39
  public $type = 'integer';
40
 
32
  exit;
33
  }
34
 
35
+ if( !class_exists('Wbcr_FactoryForms451_IntegerControl') ) {
36
 
37
+ class Wbcr_FactoryForms451_IntegerControl extends Wbcr_FactoryForms451_Control {
38
 
39
  public $type = 'integer';
40
 
libs/factory/forms/controls/list.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if( !class_exists('Wbcr_FactoryForms443_ListControl') ) {
25
 
26
- class Wbcr_FactoryForms443_ListControl extends Wbcr_FactoryForms443_Control {
27
 
28
  public $type = 'list';
29
 
@@ -93,7 +93,7 @@
93
  'url': '<?php echo $data['url'] ?>',
94
  'data': <?php echo json_encode( $data['data'] ) ?>,
95
  'selected': <?php echo json_encode( $value ) ?>,
96
- 'emptyList': '<?php echo $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_443') ) ?>'
97
  };
98
  </script>
99
  <?php
@@ -136,7 +136,7 @@
136
  : array();
137
 
138
  $is_empty = $this->isAjax() || empty($items);
139
- $emptyList = $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_443'));
140
 
141
  if( $is_empty ) {
142
  $this->addCssClass('factory-empty');
21
  exit;
22
  }
23
 
24
+ if( !class_exists('Wbcr_FactoryForms451_ListControl') ) {
25
 
26
+ class Wbcr_FactoryForms451_ListControl extends Wbcr_FactoryForms451_Control {
27
 
28
  public $type = 'list';
29
 
93
  'url': '<?php echo $data['url'] ?>',
94
  'data': <?php echo json_encode( $data['data'] ) ?>,
95
  'selected': <?php echo json_encode( $value ) ?>,
96
+ 'emptyList': '<?php echo $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_451') ) ?>'
97
  };
98
  </script>
99
  <?php
136
  : array();
137
 
138
  $is_empty = $this->isAjax() || empty($items);
139
+ $emptyList = $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_451'));
140
 
141
  if( $is_empty ) {
142
  $this->addCssClass('factory-empty');
libs/factory/forms/controls/multiple-textbox.php CHANGED
@@ -15,9 +15,9 @@
15
  exit;
16
  }
17
 
18
- if( !class_exists('Wbcr_FactoryForms443_MultipleTextboxControl') ) {
19
 
20
- class Wbcr_FactoryForms443_MultipleTextboxControl extends Wbcr_FactoryForms443_Control {
21
 
22
  public $type = 'multiple-textbox';
23
 
@@ -75,7 +75,7 @@
75
  <?php $counter = 0; ?>
76
  <?php foreach($values as $value): ?>
77
  <div class="factory-mtextbox-item">
78
- <input value="<?= esc_attr($value) ?>"<?php $this->attrs() ?>/>
79
  <?php if( $counter >= 1 ): ?>
80
  <button class="btn btn-default btn-small factory-mtextbox-remove-item">
81
  <i class="fa fa-times" aria-hidden="true"></i></button>
@@ -86,7 +86,7 @@
86
  <?php endif; ?>
87
  </div>
88
  <button class="btn btn-default btn-small factory-mtextbox-add-item">
89
- <i class="fa fa-plus" aria-hidden="true"></i> <?php _e('Add new', 'wbcr_factory_forms_443') ?>
90
  </button>
91
  </div>
92
 
15
  exit;
16
  }
17
 
18
+ if( !class_exists('Wbcr_FactoryForms451_MultipleTextboxControl') ) {
19
 
20
+ class Wbcr_FactoryForms451_MultipleTextboxControl extends Wbcr_FactoryForms451_Control {
21
 
22
  public $type = 'multiple-textbox';
23
 
75
  <?php $counter = 0; ?>
76
  <?php foreach($values as $value): ?>
77
  <div class="factory-mtextbox-item">
78
+ <input value="<?php echo esc_attr($value) ?>"<?php $this->attrs() ?>/>
79
  <?php if( $counter >= 1 ): ?>
80
  <button class="btn btn-default btn-small factory-mtextbox-remove-item">
81
  <i class="fa fa-times" aria-hidden="true"></i></button>
86
  <?php endif; ?>
87
  </div>
88
  <button class="btn btn-default btn-small factory-mtextbox-add-item">
89
+ <i class="fa fa-plus" aria-hidden="true"></i> <?php _e('Add new', 'wbcr_factory_forms_451') ?>
90
  </button>
91
  </div>
92
 
libs/factory/forms/controls/paddings-editor.php CHANGED
@@ -14,9 +14,9 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_PaddingsEditorControl') ) {
18
 
19
- class Wbcr_FactoryForms443_PaddingsEditorControl extends Wbcr_FactoryForms443_Control {
20
 
21
  public $type = 'paddings-editor';
22
 
@@ -67,7 +67,7 @@
67
  </div>
68
  <div class="factory-slider-container">
69
  <label class="factory-title">
70
- <?php _e('Select a side and move the slider to set up:', 'wbcr_factory_forms_443') ?>
71
  </label>
72
 
73
  <div class="factory-slider">
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_PaddingsEditorControl') ) {
18
 
19
+ class Wbcr_FactoryForms451_PaddingsEditorControl extends Wbcr_FactoryForms451_Control {
20
 
21
  public $type = 'paddings-editor';
22
 
67
  </div>
68
  <div class="factory-slider-container">
69
  <label class="factory-title">
70
+ <?php _e('Select a side and move the slider to set up:', 'wbcr_factory_forms_451') ?>
71
  </label>
72
 
73
  <div class="factory-slider">
libs/factory/forms/controls/pattern.php CHANGED
@@ -15,9 +15,9 @@
15
  exit;
16
  }
17
 
18
- if( !class_exists('Wbcr_FactoryForms443_PatternControl') ) {
19
 
20
- class Wbcr_FactoryForms443_PatternControl extends Wbcr_FactoryForms443_Control {
21
 
22
  public $type = 'pattern';
23
 
@@ -52,12 +52,12 @@
52
  $name = $this->getOption('name');
53
 
54
  // filters to get available patterns for the given background contols
55
- $this->patterns = apply_filters('wbcr_factory_forms_443_patterns', array());
56
- $this->patterns = apply_filters('wbcr_factory_forms_443_patterns-' . $name, $this->patterns);
57
 
58
  $this->custom_patterns = $this->getOption('patterns', array());
59
 
60
- $this->color = new Wbcr_FactoryForms443_ColorControl($options['color'], $form, $provider);
61
  }
62
 
63
  /**
@@ -102,19 +102,19 @@
102
  </div>
103
  <a href="#" class="button button-default factory-button factory-change-color-btn <?php if( $hasColor ) {
104
  echo 'button-active';
105
- } ?>" title="<?php _e('Change color', 'wbcr_factory_forms_443') ?>">
106
  <i class="fa fa-flask"></i>
107
- <span><?php _e('re-color', 'wbcr_factory_forms_443') ?></span>
108
  </a>
109
  <input type="hidden" id="<?php echo $name[0]; ?>" name="<?php echo $name[0]; ?>" value="<?php echo esc_url($values['url']); ?>" class="factory-pattern-result">
110
  <input type="hidden" id="<?php echo $name[1]; ?>" name="<?php echo $name[1]; ?>" value="<?php echo esc_attr($values['color']); ?>" class="factory-color-result">
111
  </div>
112
  <div class="factory-color-panel">
113
  <div class="factory-color-wrap">
114
- <span class="factory-color-label"><?php _e('Select color:', 'wbcr_factory_forms_443') ?></span>
115
  <?php $this->color->html() ?>
116
  <div class="factory-hint">
117
- <i><?php _e('Changing the color may takes a minute or more. Please be patient.', 'wbcr_factory_forms_443') ?></i>
118
  </div>
119
  </div>
120
  <div class="factory-picker-target"></div>
15
  exit;
16
  }
17
 
18
+ if( !class_exists('Wbcr_FactoryForms451_PatternControl') ) {
19
 
20
+ class Wbcr_FactoryForms451_PatternControl extends Wbcr_FactoryForms451_Control {
21
 
22
  public $type = 'pattern';
23
 
52
  $name = $this->getOption('name');
53
 
54
  // filters to get available patterns for the given background contols
55
+ $this->patterns = apply_filters('wbcr_factory_forms_451_patterns', array());
56
+ $this->patterns = apply_filters('wbcr_factory_forms_451_patterns-' . $name, $this->patterns);
57
 
58
  $this->custom_patterns = $this->getOption('patterns', array());
59
 
60
+ $this->color = new Wbcr_FactoryForms451_ColorControl($options['color'], $form, $provider);
61
  }
62
 
63
  /**
102
  </div>
103
  <a href="#" class="button button-default factory-button factory-change-color-btn <?php if( $hasColor ) {
104
  echo 'button-active';
105
+ } ?>" title="<?php _e('Change color', 'wbcr_factory_forms_451') ?>">
106
  <i class="fa fa-flask"></i>
107
+ <span><?php _e('re-color', 'wbcr_factory_forms_451') ?></span>
108
  </a>
109
  <input type="hidden" id="<?php echo $name[0]; ?>" name="<?php echo $name[0]; ?>" value="<?php echo esc_url($values['url']); ?>" class="factory-pattern-result">
110
  <input type="hidden" id="<?php echo $name[1]; ?>" name="<?php echo $name[1]; ?>" value="<?php echo esc_attr($values['color']); ?>" class="factory-color-result">
111
  </div>
112
  <div class="factory-color-panel">
113
  <div class="factory-color-wrap">
114
+ <span class="factory-color-label"><?php _e('Select color:', 'wbcr_factory_forms_451') ?></span>
115
  <?php $this->color->html() ?>
116
  <div class="factory-hint">
117
+ <i><?php _e('Changing the color may takes a minute or more. Please be patient.', 'wbcr_factory_forms_451') ?></i>
118
  </div>
119
  </div>
120
  <div class="factory-picker-target"></div>
libs/factory/forms/controls/radio-colors.php CHANGED
@@ -27,9 +27,9 @@
27
  exit;
28
  }
29
 
30
- if( !class_exists('Wbcr_FactoryForms443_RadioColorsControl') ) {
31
 
32
- class Wbcr_FactoryForms443_RadioColorsControl extends Wbcr_FactoryForms443_Control {
33
 
34
  public $type = 'radio-color';
35
 
@@ -102,7 +102,7 @@
102
  <span class="factory-form-radio-item">
103
  <lable class="factory-from-radio-label">
104
  <input type="radio" <?php $this->attrs() ?> value="<?php echo esc_attr($item[0]) ?>" <?php echo $checked ?>/>
105
- <span style="background-color:<?= esc_attr($item[1]) ?>"></span>
106
  </lable>
107
  </span>
108
  <?php }
27
  exit;
28
  }
29
 
30
+ if( !class_exists('Wbcr_FactoryForms451_RadioColorsControl') ) {
31
 
32
+ class Wbcr_FactoryForms451_RadioColorsControl extends Wbcr_FactoryForms451_Control {
33
 
34
  public $type = 'radio-color';
35
 
102
  <span class="factory-form-radio-item">
103
  <lable class="factory-from-radio-label">
104
  <input type="radio" <?php $this->attrs() ?> value="<?php echo esc_attr($item[0]) ?>" <?php echo $checked ?>/>
105
+ <span style="background-color:<?php echo esc_attr($item[1]) ?>"></span>
106
  </lable>
107
  </span>
108
  <?php }
libs/factory/forms/controls/radio.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if( !class_exists('Wbcr_FactoryForms443_RadioControl') ) {
25
 
26
- class Wbcr_FactoryForms443_RadioControl extends Wbcr_FactoryForms443_Control {
27
 
28
  public $type = 'radio';
29
 
@@ -76,7 +76,7 @@
76
  : '';
77
  ?>
78
  <span class="factory-form-radio-item">
79
- <lable class="factory-from-radio-label"><?= esc_html($item[1]); ?></lable>
80
  <input type="radio" <?php $this->attrs() ?> value="<?php echo esc_attr($item[0]) ?>" <?php echo $checked ?>/>
81
  </span>
82
  <?php }
21
  exit;
22
  }
23
 
24
+ if( !class_exists('Wbcr_FactoryForms451_RadioControl') ) {
25
 
26
+ class Wbcr_FactoryForms451_RadioControl extends Wbcr_FactoryForms451_Control {
27
 
28
  public $type = 'radio';
29
 
76
  : '';
77
  ?>
78
  <span class="factory-form-radio-item">
79
+ <lable class="factory-from-radio-label"><?php echo esc_html($item[1]); ?></lable>
80
  <input type="radio" <?php $this->attrs() ?> value="<?php echo esc_attr($item[0]) ?>" <?php echo $checked ?>/>
81
  </span>
82
  <?php }
libs/factory/forms/controls/textarea.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms443_TextareaControl') ) {
24
 
25
- class Wbcr_FactoryForms443_TextareaControl extends Wbcr_FactoryForms443_Control {
26
 
27
  public $type = 'textarea';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms451_TextareaControl') ) {
24
 
25
+ class Wbcr_FactoryForms451_TextareaControl extends Wbcr_FactoryForms451_Control {
26
 
27
  public $type = 'textarea';
28
 
libs/factory/forms/controls/textbox.php CHANGED
@@ -29,9 +29,9 @@
29
  exit;
30
  }
31
 
32
- if( !class_exists('Wbcr_FactoryForms443_TextboxControl') ) {
33
 
34
- class Wbcr_FactoryForms443_TextboxControl extends Wbcr_FactoryForms443_Control {
35
 
36
  public $type = 'textbox';
37
 
29
  exit;
30
  }
31
 
32
+ if( !class_exists('Wbcr_FactoryForms451_TextboxControl') ) {
33
 
34
+ class Wbcr_FactoryForms451_TextboxControl extends Wbcr_FactoryForms451_Control {
35
 
36
  public $type = 'textbox';
37
 
libs/factory/forms/controls/url.php CHANGED
@@ -4,7 +4,7 @@
4
  * Url Control
5
  *
6
  * Main options:
7
- * @see FactoryForms443_TextboxControl
8
  *
9
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
10
  * @copyright (c) 2018, Webcraftic Ltd
@@ -18,9 +18,9 @@
18
  exit;
19
  }
20
 
21
- if( !class_exists('Wbcr_FactoryForms443_UrlControl') ) {
22
 
23
- class Wbcr_FactoryForms443_UrlControl extends Wbcr_FactoryForms443_TextboxControl {
24
 
25
  public $type = 'url';
26
 
4
  * Url Control
5
  *
6
  * Main options:
7
+ * @see FactoryForms451_TextboxControl
8
  *
9
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
10
  * @copyright (c) 2018, Webcraftic Ltd
18
  exit;
19
  }
20
 
21
+ if( !class_exists('Wbcr_FactoryForms451_UrlControl') ) {
22
 
23
+ class Wbcr_FactoryForms451_UrlControl extends Wbcr_FactoryForms451_TextboxControl {
24
 
25
  public $type = 'url';
26
 
libs/factory/forms/controls/wp-editor.php CHANGED
@@ -22,9 +22,9 @@
22
  exit;
23
  }
24
 
25
- if( !class_exists('Wbcr_FactoryForms443_WpEditorControl') ) {
26
 
27
- class Wbcr_FactoryForms443_WpEditorControl extends Wbcr_FactoryForms443_Control {
28
 
29
  public $type = 'wp-editor';
30
 
@@ -42,7 +42,7 @@
42
  }
43
 
44
  if( !isset($this->options['tinymce']['content_css']) ) {
45
- $this->options['tinymce']['content_css'] = FACTORY_FORMS_443_URL . '/assets/css/editor.css';
46
  }
47
  }
48
 
@@ -64,7 +64,9 @@
64
  'textarea_name' => $name_on_form,
65
  'wpautop' => false,
66
  'teeny' => true,
67
- 'tinymce' => $this->getOption('tinymce', array())
 
 
68
  )); ?>
69
  </div>
70
  <?php
22
  exit;
23
  }
24
 
25
+ if( !class_exists('Wbcr_FactoryForms451_WpEditorControl') ) {
26
 
27
+ class Wbcr_FactoryForms451_WpEditorControl extends Wbcr_FactoryForms451_Control {
28
 
29
  public $type = 'wp-editor';
30
 
42
  }
43
 
44
  if( !isset($this->options['tinymce']['content_css']) ) {
45
+ $this->options['tinymce']['content_css'] = FACTORY_FORMS_451_URL . '/assets/css/editor.css';
46
  }
47
  }
48
 
64
  'textarea_name' => $name_on_form,
65
  'wpautop' => false,
66
  'teeny' => true,
67
+ 'tinymce' => $this->getOption('tinymce', array()),
68
+ 'editor_height' => 213, // In pixels, takes precedence and has no default value
69
+ 'textarea_rows' => 10, // Has no visible effect if editor_height is set, default is 20
70
  )); ?>
71
  </div>
72
  <?php
libs/factory/forms/includes/complex-control.class.php CHANGED
@@ -13,13 +13,13 @@
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
- if( !class_exists('Wbcr_FactoryForms443_ComplexControl') ) {
17
  /**
18
  * The base class for all controls.
19
  *
20
  * @since 1.0.0
21
  */
22
- abstract class Wbcr_FactoryForms443_ComplexControl extends Wbcr_FactoryForms443_Control {
23
 
24
  /**
25
  * Is this element a complex control?
@@ -33,7 +33,7 @@
33
  * Contains a set of internal controls.
34
  *
35
  * @since 1.0.0
36
- * @var Wbcr_FactoryForms443_Control[]
37
  */
38
  public $inner_controls = array();
39
 
@@ -41,7 +41,7 @@
41
  * Sets a provider for the control.
42
  *
43
  * @since 1.0.0
44
- * @param Wbcr_IFactoryForms443_ValueProvider $provider
45
  * @return void
46
  */
47
  public function setProvider($provider)
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
+ if( !class_exists('Wbcr_FactoryForms451_ComplexControl') ) {
17
  /**
18
  * The base class for all controls.
19
  *
20
  * @since 1.0.0
21
  */
22
+ abstract class Wbcr_FactoryForms451_ComplexControl extends Wbcr_FactoryForms451_Control {
23
 
24
  /**
25
  * Is this element a complex control?
33
  * Contains a set of internal controls.
34
  *
35
  * @since 1.0.0
36
+ * @var Wbcr_FactoryForms451_Control[]
37
  */
38
  public $inner_controls = array();
39
 
41
  * Sets a provider for the control.
42
  *
43
  * @since 1.0.0
44
+ * @param Wbcr_IFactoryForms451_ValueProvider $provider
45
  * @return void
46
  */
47
  public function setProvider($provider)
libs/factory/forms/includes/control-holder.class.php CHANGED
@@ -14,19 +14,19 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_ControlHolder') ) {
18
  /**
19
  * The base class for control holders.
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_FactoryForms443_ControlHolder extends Wbcr_FactoryForms443_Control {
24
 
25
  /**
26
  * Holder Elements.
27
  *
28
  * @since 1.0.0
29
- * @var Wbcr_FactoryForms443_Control[]
30
  */
31
  protected $elements = array();
32
 
@@ -43,7 +43,7 @@
43
  *
44
  * @since 1.0.0
45
  * @param mixed[] $options A holder options.
46
- * @param Wbcr_FactoryForms443_Form $form A parent form.
47
  */
48
  public function __construct($options, $form)
49
  {
@@ -60,7 +60,7 @@
60
  * Returns holder elements.
61
  *
62
  * @since 1.0.0
63
- * @return Wbcr_FactoryForms443_FormElement[].
64
  */
65
  public function getElements()
66
  {
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_ControlHolder') ) {
18
  /**
19
  * The base class for control holders.
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_FactoryForms451_ControlHolder extends Wbcr_FactoryForms451_Control {
24
 
25
  /**
26
  * Holder Elements.
27
  *
28
  * @since 1.0.0
29
+ * @var Wbcr_FactoryForms451_Control[]
30
  */
31
  protected $elements = array();
32
 
43
  *
44
  * @since 1.0.0
45
  * @param mixed[] $options A holder options.
46
+ * @param Wbcr_FactoryForms451_Form $form A parent form.
47
  */
48
  public function __construct($options, $form)
49
  {
60
  * Returns holder elements.
61
  *
62
  * @since 1.0.0
63
+ * @return Wbcr_FactoryForms451_FormElement[].
64
  */
65
  public function getElements()
66
  {
libs/factory/forms/includes/control.class.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_Control') ) {
18
 
19
  /**
20
  * The base class for all controls.
21
  *
22
  * @since 1.0.0
23
  */
24
- abstract class Wbcr_FactoryForms443_Control extends Wbcr_FactoryForms443_FormElement {
25
 
26
  /**
27
  * Is this element a control?
@@ -43,7 +43,7 @@
43
  * A provider that is used to get values.
44
  *
45
  * @since 1.0.0
46
- * @var Wbcr_IFactoryForms443_ValueProvider
47
  */
48
  protected $provider = null;
49
 
@@ -51,7 +51,7 @@
51
  * Create a new instance of the control.
52
  *
53
  * @param mixed[] $options
54
- * @param FactoryForms443_Form $form
55
  * @param null $provider
56
  * @since 1.0.0
57
  * @return void
@@ -66,7 +66,7 @@
66
  * Sets a provider for the control.
67
  *
68
  * @since 1.0.0
69
- * @param IFactoryForms443_ValueProvider $provider
70
  * @return void
71
  */
72
  public function setProvider($provider)
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_Control') ) {
18
 
19
  /**
20
  * The base class for all controls.
21
  *
22
  * @since 1.0.0
23
  */
24
+ abstract class Wbcr_FactoryForms451_Control extends Wbcr_FactoryForms451_FormElement {
25
 
26
  /**
27
  * Is this element a control?
43
  * A provider that is used to get values.
44
  *
45
  * @since 1.0.0
46
+ * @var Wbcr_IFactoryForms451_ValueProvider
47
  */
48
  protected $provider = null;
49
 
51
  * Create a new instance of the control.
52
  *
53
  * @param mixed[] $options
54
+ * @param FactoryForms451_Form $form
55
  * @param null $provider
56
  * @since 1.0.0
57
  * @return void
66
  * Sets a provider for the control.
67
  *
68
  * @since 1.0.0
69
+ * @param IFactoryForms451_ValueProvider $provider
70
  * @return void
71
  */
72
  public function setProvider($provider)
libs/factory/forms/includes/custom-element.class.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_CustomElement') ) {
18
  /**
19
  * The base class for all controls.
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_FactoryForms443_CustomElement extends Wbcr_FactoryForms443_FormElement {
24
 
25
  /**
26
  * Is this element a custom form element?
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_CustomElement') ) {
18
  /**
19
  * The base class for all controls.
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_FactoryForms451_CustomElement extends Wbcr_FactoryForms451_FormElement {
24
 
25
  /**
26
  * Is this element a custom form element?
libs/factory/forms/includes/form-element.class.php CHANGED
@@ -14,7 +14,7 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_FormElement') ) {
18
 
19
  /**
20
  * The base class for all form element (controls, holders).
@@ -23,7 +23,7 @@
23
  *
24
  * @since 1.0.0
25
  */
26
- abstract class Wbcr_FactoryForms443_FormElement {
27
 
28
  /**
29
  * A type of an elemnt.
@@ -37,7 +37,7 @@
37
  * An html attribute builder.
38
  *
39
  * @since 1.0.0
40
- * @var Wbcr_FactoryForms443_HtmlAttributeBuilder
41
  */
42
  private $html_builder;
43
 
@@ -53,7 +53,7 @@
53
  * A parent form.
54
  *
55
  * @since 1.0.0
56
- * @var Wbcr_FactoryForms443_Form
57
  */
58
  protected $form;
59
 
@@ -61,7 +61,7 @@
61
  * A form layout.
62
  *
63
  * @since 1.0.0
64
- * @var Wbcr_FactoryForms443_FormLayout
65
  */
66
  protected $layout;
67
 
@@ -94,7 +94,7 @@
94
  *
95
  * @since 1.0.0
96
  * @param mixed[] $options A holder options.
97
- * @param Wbcr_FactoryForms443_Form $form A parent form.
98
  */
99
  public function __construct($options, $form)
100
  {
@@ -102,7 +102,7 @@
102
  $this->form = $form;
103
  $this->layout = $form->layout;
104
 
105
- $this->html_builder = new Wbcr_FactoryForms443_HtmlAttributeBuilder();
106
 
107
  if( isset($this->options['cssClass']) ) {
108
  $this->html_builder->addCssClass($this->options['cssClass']);
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_FormElement') ) {
18
 
19
  /**
20
  * The base class for all form element (controls, holders).
23
  *
24
  * @since 1.0.0
25
  */
26
+ abstract class Wbcr_FactoryForms451_FormElement {
27
 
28
  /**
29
  * A type of an elemnt.
37
  * An html attribute builder.
38
  *
39
  * @since 1.0.0
40
+ * @var Wbcr_FactoryForms451_HtmlAttributeBuilder
41
  */
42
  private $html_builder;
43
 
53
  * A parent form.
54
  *
55
  * @since 1.0.0
56
+ * @var Wbcr_FactoryForms451_Form
57
  */
58
  protected $form;
59
 
61
  * A form layout.
62
  *
63
  * @since 1.0.0
64
+ * @var Wbcr_FactoryForms451_FormLayout
65
  */
66
  protected $layout;
67
 
94
  *
95
  * @since 1.0.0
96
  * @param mixed[] $options A holder options.
97
+ * @param Wbcr_FactoryForms451_Form $form A parent form.
98
  */
99
  public function __construct($options, $form)
100
  {
102
  $this->form = $form;
103
  $this->layout = $form->layout;
104
 
105
+ $this->html_builder = new Wbcr_FactoryForms451_HtmlAttributeBuilder();
106
 
107
  if( isset($this->options['cssClass']) ) {
108
  $this->html_builder->addCssClass($this->options['cssClass']);
libs/factory/forms/includes/form-layout.class.php CHANGED
@@ -14,12 +14,12 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_FormLayout') ) {
18
 
19
  /**
20
  * The base class for all form layouts.
21
  */
22
- abstract class Wbcr_FactoryForms443_FormLayout extends Wbcr_FactoryForms443_Holder {
23
 
24
  /**
25
  * A form layout name.
@@ -42,7 +42,7 @@
42
  *
43
  * @since 1.0.0
44
  * @param mixed[] $options A holder options.
45
- * @param Wbcr_FactoryForms443_Form $form A parent form.
46
  */
47
  public function __construct($options, $form)
48
  {
@@ -52,8 +52,8 @@
52
 
53
  parent::__construct($options, $form);
54
 
55
- $this->addCssClass('factory-forms-443-' . $this->type);
56
- $this->addCssClass('factory-forms-443-' . $this->name);
57
  }
58
 
59
  /**
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_FormLayout') ) {
18
 
19
  /**
20
  * The base class for all form layouts.
21
  */
22
+ abstract class Wbcr_FactoryForms451_FormLayout extends Wbcr_FactoryForms451_Holder {
23
 
24
  /**
25
  * A form layout name.
42
  *
43
  * @since 1.0.0
44
  * @param mixed[] $options A holder options.
45
+ * @param Wbcr_FactoryForms451_Form $form A parent form.
46
  */
47
  public function __construct($options, $form)
48
  {
52
 
53
  parent::__construct($options, $form);
54
 
55
+ $this->addCssClass('factory-forms-451-' . $this->type);
56
+ $this->addCssClass('factory-forms-451-' . $this->name);
57
  }
58
 
59
  /**
libs/factory/forms/includes/form.class.php CHANGED
@@ -15,16 +15,16 @@
15
  }
16
 
17
  // creating a license manager for each plugin created via the factory
18
- add_action('wbcr_factory_forms_443_plugin_created', 'wbcr_factory_forms_443_plugin_created');
19
 
20
- function wbcr_factory_forms_443_plugin_created($plugin)
21
  {
22
- $plugin->forms = new Wbcr_FactoryForms443_Manager($plugin);
23
  }
24
 
25
- if( !class_exists('Wbcr_FactoryForms443_Manager') ) {
26
 
27
- class Wbcr_FactoryForms443_Manager {
28
 
29
  // ----------------------------------------------------
30
  // Static fields and methods
@@ -57,7 +57,7 @@
57
  /**
58
  * Registers a set of new controls.
59
  *
60
- * @see FactoryForms443_Form::registerControl()
61
  *
62
  * @since 1.0.0
63
  * @return void
@@ -95,7 +95,7 @@
95
  /**
96
  * Registers a set of new holder controls.
97
  *
98
- * @see FactoryForms443_Form::registerHolder()
99
  *
100
  * @since 1.0.0
101
  * @return void
@@ -129,7 +129,7 @@
129
  /**
130
  * Registers a set of new custom form elements.
131
  *
132
- * @see FactoryForms443_Form::registerCustomElement()
133
  *
134
  * @since 1.0.0
135
  * @return void
@@ -180,11 +180,11 @@
180
  public static $controls_registered = false;
181
  }
182
  }
183
- if( !class_exists('Wbcr_FactoryForms443_Form') ) {
184
  /**
185
  * An abstraction for forms.
186
  */
187
- class Wbcr_FactoryForms443_Form {
188
 
189
  // ----------------------------------------------------
190
  // Object fields and methods
@@ -194,7 +194,7 @@
194
  * A value provider of the form that is used to save and load values.
195
  *
196
  * @since 1.0.0
197
- * @var Wbcr_IFactoryForms443_ValueProvider
198
  */
199
  private $provider;
200
 
@@ -245,7 +245,7 @@
245
  * A current form layout used to render a form.
246
  *
247
  * @since 1.0.0
248
- * @var Wbcr_FactoryForms443_FormLayout
249
  */
250
  public $layout;
251
 
@@ -261,20 +261,20 @@
261
  *
262
  * @since 1.0.0
263
  * @param array $options
264
- * @param Wbcr_Factory446_Plugin $plugin
265
  */
266
- public function __construct(array $options, Wbcr_Factory446_Plugin $plugin)
267
  {
268
  // register controls once, when the first form is created
269
- if( !Wbcr_FactoryForms443_Manager::$controls_registered ) {
270
 
271
- do_action('wbcr_factory_forms_443_register_controls', $plugin);
272
 
273
  //if( !empty($plugin) ) {
274
- do_action('wbcr_factory_forms_443_register_controls_' . $plugin->getPluginName(), $plugin);
275
  //}
276
 
277
- Wbcr_FactoryForms443_Manager::$controls_registered = true;
278
  }
279
 
280
  $this->scope = isset($options['scope']) ? $options['scope'] : null;
@@ -289,14 +289,14 @@
289
  $this->form_layout = 'bootstrap-3';
290
  }
291
 
292
- Wbcr_FactoryForms443_Manager::$temper = 'flat';
293
  }
294
 
295
  /**
296
  * Sets a provider for the control.
297
  *
298
  * @since 1.0.0
299
- * @param Wbcr_IFactoryForms443_ValueProvider $provider
300
  * @return void
301
  */
302
  public function setProvider($provider)
@@ -332,14 +332,14 @@
332
  */
333
  public function getItems()
334
  {
335
- return apply_filters('wbcr_factory_446_form_items', $this->items, $this->name);
336
  }
337
 
338
  /**
339
  * Returns form controls (control objects).
340
  *
341
  * @since 1.0.0
342
- * @return Wbcr_FactoryForms443_Control[]
343
  */
344
  public function getControls()
345
  {
@@ -355,7 +355,7 @@
355
  * Builds a form items to the control objects ready to use.
356
  *
357
  * @param null $holder
358
- * @return Wbcr_FactoryForms443_Control[]
359
  */
360
 
361
  public function createControls($holder = null)
@@ -395,7 +395,7 @@
395
  *
396
  * @since 1.0.0
397
  * @param array $item Item data.
398
- * @return Wbcr_FactoryForms443_FormElement|null A form element.
399
  */
400
  public function createElement($item)
401
  {
@@ -417,7 +417,7 @@
417
  *
418
  * @since 1.0.0
419
  * @param mixed[] $item Data of items.
420
- * @return Wbcr_FactoryForms443_FormElement[] Created elements.
421
  */
422
  public function createElements($items = array())
423
  {
@@ -433,7 +433,7 @@
433
  *
434
  * @since 1.0.0
435
  * @param array $item Item data.
436
- * @return Wbcr_FactoryForms443_Control A control object.
437
  */
438
  public function createControl($item)
439
  {
@@ -441,7 +441,7 @@
441
 
442
  if( is_array($item) ) {
443
 
444
- $control_data = Wbcr_FactoryForms443_Manager::$registered_controls[$item['type']];
445
 
446
  require_once($control_data['include']);
447
 
@@ -465,7 +465,7 @@
465
  *
466
  * @since 1.0.0
467
  * @param array $item Item data.
468
- * @return Wbcr_FactoryForms443_Holder A control holder object.
469
  */
470
  public function createHolder($item)
471
  {
@@ -473,7 +473,7 @@
473
 
474
  if( is_array($item) ) {
475
 
476
- $holderData = Wbcr_FactoryForms443_Manager::$registered_holders[$item['type']];
477
  require_once($holderData['include']);
478
 
479
  $object = new $holderData['class']($item, $this);
@@ -491,7 +491,7 @@
491
  *
492
  * @since 1.0.0
493
  * @param mixed $item Item data.
494
- * @return Wbcr_FactoryForms443_FormElement A custom form element object.
495
  */
496
  public function createCustomElement($item)
497
  {
@@ -499,7 +499,7 @@
499
 
500
  if( is_array($item) ) {
501
 
502
- $data = Wbcr_FactoryForms443_Manager::$registered_custom_elements[$item['type']];
503
  require_once($data['include']);
504
 
505
  $options = $item;
@@ -523,12 +523,12 @@
523
  public function html($options = array())
524
  {
525
 
526
- if( !isset(Wbcr_FactoryForms443_Manager::$form_layouts[$this->form_layout]) ) {
527
  die(sprintf('[ERROR] The form layout %s was not found.', $this->form_layout));
528
  }
529
 
530
  // include a render code
531
- $layout_data = Wbcr_FactoryForms443_Manager::$form_layouts[$this->form_layout];
532
  require_once($layout_data['include']);
533
 
534
  $this->connectAssets();
@@ -552,7 +552,7 @@
552
  {
553
 
554
  $this->connectAssetsForItems();
555
- $layout_data = Wbcr_FactoryForms443_Manager::$form_layouts[$this->form_layout];
556
 
557
  if( $layout_data['name'] == 'default' ) {
558
  if( isset($layout_data['style']) ) {
@@ -602,9 +602,9 @@
602
 
603
  $haystack = array();
604
  if( self::isControl($type) ) {
605
- $haystack = Wbcr_FactoryForms443_Manager::$registered_controls;
606
  } elseif( self::isControlHolder($type) ) {
607
- $haystack = Wbcr_FactoryForms443_Manager::$registered_holders;
608
  }
609
 
610
  if( isset($haystack[$type]) ) {
@@ -660,7 +660,7 @@
660
  */
661
  public static function isControl($item)
662
  {
663
- return isset(Wbcr_FactoryForms443_Manager::$registered_controls[$item['type']]);
664
  }
665
 
666
  /**
@@ -672,7 +672,7 @@
672
  */
673
  public static function isControlHolder($item)
674
  {
675
- return isset(Wbcr_FactoryForms443_Manager::$registered_holders[$item['type']]);
676
  }
677
 
678
  /**
@@ -684,7 +684,7 @@
684
  */
685
  public static function isCustomElement($item)
686
  {
687
- return isset(Wbcr_FactoryForms443_Manager::$registered_custom_elements[$item['type']]);
688
  }
689
  }
690
  }
15
  }
16
 
17
  // creating a license manager for each plugin created via the factory
18
+ add_action('wbcr_factory_forms_451_plugin_created', 'wbcr_factory_forms_451_plugin_created');
19
 
20
+ function wbcr_factory_forms_451_plugin_created($plugin)
21
  {
22
+ $plugin->forms = new Wbcr_FactoryForms451_Manager($plugin);
23
  }
24
 
25
+ if( !class_exists('Wbcr_FactoryForms451_Manager') ) {
26
 
27
+ class Wbcr_FactoryForms451_Manager {
28
 
29
  // ----------------------------------------------------
30
  // Static fields and methods
57
  /**
58
  * Registers a set of new controls.
59
  *
60
+ * @see FactoryForms451_Form::registerControl()
61
  *
62
  * @since 1.0.0
63
  * @return void
95
  /**
96
  * Registers a set of new holder controls.
97
  *
98
+ * @see FactoryForms451_Form::registerHolder()
99
  *
100
  * @since 1.0.0
101
  * @return void
129
  /**
130
  * Registers a set of new custom form elements.
131
  *
132
+ * @see FactoryForms451_Form::registerCustomElement()
133
  *
134
  * @since 1.0.0
135
  * @return void
180
  public static $controls_registered = false;
181
  }
182
  }
183
+ if( !class_exists('Wbcr_FactoryForms451_Form') ) {
184
  /**
185
  * An abstraction for forms.
186
  */
187
+ class Wbcr_FactoryForms451_Form {
188
 
189
  // ----------------------------------------------------
190
  // Object fields and methods
194
  * A value provider of the form that is used to save and load values.
195
  *
196
  * @since 1.0.0
197
+ * @var Wbcr_IFactoryForms451_ValueProvider
198
  */
199
  private $provider;
200
 
245
  * A current form layout used to render a form.
246
  *
247
  * @since 1.0.0
248
+ * @var Wbcr_FactoryForms451_FormLayout
249
  */
250
  public $layout;
251
 
261
  *
262
  * @since 1.0.0
263
  * @param array $options
264
+ * @param Wbcr_Factory454_Plugin $plugin
265
  */
266
+ public function __construct(array $options, Wbcr_Factory454_Plugin $plugin)
267
  {
268
  // register controls once, when the first form is created
269
+ if( !Wbcr_FactoryForms451_Manager::$controls_registered ) {
270
 
271
+ do_action('wbcr_factory_forms_451_register_controls', $plugin);
272
 
273
  //if( !empty($plugin) ) {
274
+ do_action('wbcr_factory_forms_451_register_controls_' . $plugin->getPluginName(), $plugin);
275
  //}
276
 
277
+ Wbcr_FactoryForms451_Manager::$controls_registered = true;
278
  }
279
 
280
  $this->scope = isset($options['scope']) ? $options['scope'] : null;
289
  $this->form_layout = 'bootstrap-3';
290
  }
291
 
292
+ Wbcr_FactoryForms451_Manager::$temper = 'flat';
293
  }
294
 
295
  /**
296
  * Sets a provider for the control.
297
  *
298
  * @since 1.0.0
299
+ * @param Wbcr_IFactoryForms451_ValueProvider $provider
300
  * @return void
301
  */
302
  public function setProvider($provider)
332
  */
333
  public function getItems()
334
  {
335
+ return apply_filters('wbcr_factory_454_form_items', $this->items, $this->name);
336
  }
337
 
338
  /**
339
  * Returns form controls (control objects).
340
  *
341
  * @since 1.0.0
342
+ * @return Wbcr_FactoryForms451_Control[]
343
  */
344
  public function getControls()
345
  {
355
  * Builds a form items to the control objects ready to use.
356
  *
357
  * @param null $holder
358
+ * @return Wbcr_FactoryForms451_Control[]
359
  */
360
 
361
  public function createControls($holder = null)
395
  *
396
  * @since 1.0.0
397
  * @param array $item Item data.
398
+ * @return Wbcr_FactoryForms451_FormElement|null A form element.
399
  */
400
  public function createElement($item)
401
  {
417
  *
418
  * @since 1.0.0
419
  * @param mixed[] $item Data of items.
420
+ * @return Wbcr_FactoryForms451_FormElement[] Created elements.
421
  */
422
  public function createElements($items = array())
423
  {
433
  *
434
  * @since 1.0.0
435
  * @param array $item Item data.
436
+ * @return Wbcr_FactoryForms451_Control A control object.
437
  */
438
  public function createControl($item)
439
  {
441
 
442
  if( is_array($item) ) {
443
 
444
+ $control_data = Wbcr_FactoryForms451_Manager::$registered_controls[$item['type']];
445
 
446
  require_once($control_data['include']);
447
 
465
  *
466
  * @since 1.0.0
467
  * @param array $item Item data.
468
+ * @return Wbcr_FactoryForms451_Holder A control holder object.
469
  */
470
  public function createHolder($item)
471
  {
473
 
474
  if( is_array($item) ) {
475
 
476
+ $holderData = Wbcr_FactoryForms451_Manager::$registered_holders[$item['type']];
477
  require_once($holderData['include']);
478
 
479
  $object = new $holderData['class']($item, $this);
491
  *
492
  * @since 1.0.0
493
  * @param mixed $item Item data.
494
+ * @return Wbcr_FactoryForms451_FormElement A custom form element object.
495
  */
496
  public function createCustomElement($item)
497
  {
499
 
500
  if( is_array($item) ) {
501
 
502
+ $data = Wbcr_FactoryForms451_Manager::$registered_custom_elements[$item['type']];
503
  require_once($data['include']);
504
 
505
  $options = $item;
523
  public function html($options = array())
524
  {
525
 
526
+ if( !isset(Wbcr_FactoryForms451_Manager::$form_layouts[$this->form_layout]) ) {
527
  die(sprintf('[ERROR] The form layout %s was not found.', $this->form_layout));
528
  }
529
 
530
  // include a render code
531
+ $layout_data = Wbcr_FactoryForms451_Manager::$form_layouts[$this->form_layout];
532
  require_once($layout_data['include']);
533
 
534
  $this->connectAssets();
552
  {
553
 
554
  $this->connectAssetsForItems();
555
+ $layout_data = Wbcr_FactoryForms451_Manager::$form_layouts[$this->form_layout];
556
 
557
  if( $layout_data['name'] == 'default' ) {
558
  if( isset($layout_data['style']) ) {
602
 
603
  $haystack = array();
604
  if( self::isControl($type) ) {
605
+ $haystack = Wbcr_FactoryForms451_Manager::$registered_controls;
606
  } elseif( self::isControlHolder($type) ) {
607
+ $haystack = Wbcr_FactoryForms451_Manager::$registered_holders;
608
  }
609
 
610
  if( isset($haystack[$type]) ) {
660
  */
661
  public static function isControl($item)
662
  {
663
+ return isset(Wbcr_FactoryForms451_Manager::$registered_controls[$item['type']]);
664
  }
665
 
666
  /**
672
  */
673
  public static function isControlHolder($item)
674
  {
675
+ return isset(Wbcr_FactoryForms451_Manager::$registered_holders[$item['type']]);
676
  }
677
 
678
  /**
684
  */
685
  public static function isCustomElement($item)
686
  {
687
+ return isset(Wbcr_FactoryForms451_Manager::$registered_custom_elements[$item['type']]);
688
  }
689
  }
690
  }
libs/factory/forms/includes/holder.class.php CHANGED
@@ -14,20 +14,20 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_Holder') ) {
18
 
19
  /**
20
  * The base class for control holders.
21
  *
22
  * @since 1.0.0
23
  */
24
- abstract class Wbcr_FactoryForms443_Holder extends Wbcr_FactoryForms443_FormElement {
25
 
26
  /**
27
  * Holder Elements.
28
  *
29
  * @since 1.0.0
30
- * @var Wbcr_FactoryForms443_Control[]
31
  */
32
  protected $elements = array();
33
 
@@ -44,7 +44,7 @@
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
- * @param Wbcr_FactoryForms443_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
@@ -56,7 +56,7 @@
56
  * Returns holder elements.
57
  *
58
  * @since 1.0.0
59
- * @return Wbcr_FactoryForms443_Control[].
60
  */
61
  public function getElements()
62
  {
@@ -84,7 +84,7 @@
84
  $is_first_item = false;
85
  }
86
 
87
- do_action('wbcr_factory_446_form_before_element_' . $element->getOption('name'));
88
 
89
  // if a current item is a control holder
90
  if( $element->is_holder ) {
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_Holder') ) {
18
 
19
  /**
20
  * The base class for control holders.
21
  *
22
  * @since 1.0.0
23
  */
24
+ abstract class Wbcr_FactoryForms451_Holder extends Wbcr_FactoryForms451_FormElement {
25
 
26
  /**
27
  * Holder Elements.
28
  *
29
  * @since 1.0.0
30
+ * @var Wbcr_FactoryForms451_Control[]
31
  */
32
  protected $elements = array();
33
 
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
+ * @param Wbcr_FactoryForms451_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
56
  * Returns holder elements.
57
  *
58
  * @since 1.0.0
59
+ * @return Wbcr_FactoryForms451_Control[].
60
  */
61
  public function getElements()
62
  {
84
  $is_first_item = false;
85
  }
86
 
87
+ do_action('wbcr_factory_454_form_before_element_' . $element->getOption('name'));
88
 
89
  // if a current item is a control holder
90
  if( $element->is_holder ) {
libs/factory/forms/includes/html-builder.class.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_HtmlAttributeBuilder') ) {
18
  /**
19
  * Html Attribute Builder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms443_HtmlAttributeBuilder {
24
 
25
  /**
26
  * An array to store css classes.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_HtmlAttributeBuilder') ) {
18
  /**
19
  * Html Attribute Builder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms451_HtmlAttributeBuilder {
24
 
25
  /**
26
  * An array to store css classes.
libs/factory/forms/includes/providers/meta-value-provider.class.php CHANGED
@@ -14,7 +14,7 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_OptionsValueProvider') ) {
18
 
19
  /**
20
  * Factory Meta Value Provider
@@ -24,7 +24,7 @@
24
  *
25
  * @since 1.0.0
26
  */
27
- class Wbcr_FactoryForms443_MetaValueProvider implements Wbcr_IFactoryForms443_ValueProvider {
28
 
29
 
30
  public $scope;
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_OptionsValueProvider') ) {
18
 
19
  /**
20
  * Factory Meta Value Provider
24
  *
25
  * @since 1.0.0
26
  */
27
+ class Wbcr_FactoryForms451_MetaValueProvider implements Wbcr_IFactoryForms451_ValueProvider {
28
 
29
 
30
  public $scope;
libs/factory/forms/includes/providers/options-value-provider.class.php CHANGED
@@ -13,7 +13,7 @@
13
  exit;
14
  }
15
 
16
- if( !class_exists('Wbcr_FactoryForms443_OptionsValueProvider') ) {
17
 
18
  /**
19
  * Factory Options Value Provider
@@ -22,7 +22,7 @@
22
  *
23
  * @since 1.0.0
24
  */
25
- class Wbcr_FactoryForms443_OptionsValueProvider implements Wbcr_IFactoryForms443_ValueProvider {
26
 
27
  /**
28
  * A prefix that will be added to all option names.
@@ -43,7 +43,7 @@
43
  /**
44
  * Creates a new instance of an options value provider.
45
  */
46
- public function __construct(Wbcr_Factory446_Plugin $plugin)
47
  {
48
  $this->plugin = $plugin;
49
  }
13
  exit;
14
  }
15
 
16
+ if( !class_exists('Wbcr_FactoryForms451_OptionsValueProvider') ) {
17
 
18
  /**
19
  * Factory Options Value Provider
22
  *
23
  * @since 1.0.0
24
  */
25
+ class Wbcr_FactoryForms451_OptionsValueProvider implements Wbcr_IFactoryForms451_ValueProvider {
26
 
27
  /**
28
  * A prefix that will be added to all option names.
43
  /**
44
  * Creates a new instance of an options value provider.
45
  */
46
+ public function __construct(Wbcr_Factory454_Plugin $plugin)
47
  {
48
  $this->plugin = $plugin;
49
  }
libs/factory/forms/includes/providers/value-provider.interface.php CHANGED
@@ -14,13 +14,13 @@
14
  if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
- if( !class_exists('Wbcr_IFactoryForms443_ValueProvider') ) {
18
  /**
19
  * The interface for all value provides.
20
  *
21
  * @since 1.0.0
22
  */
23
- interface Wbcr_IFactoryForms443_ValueProvider {
24
 
25
  /**
26
  * Inits a form a provider to get data from a storage.
14
  if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
+ if( !class_exists('Wbcr_IFactoryForms451_ValueProvider') ) {
18
  /**
19
  * The interface for all value provides.
20
  *
21
  * @since 1.0.0
22
  */
23
+ interface Wbcr_IFactoryForms451_ValueProvider {
24
 
25
  /**
26
  * Inits a form a provider to get data from a storage.
libs/factory/forms/langs/{wbcr_factory_forms_443-ru_RU.mo → wbcr_factory_forms_451-ru_RU.mo} RENAMED
File without changes
libs/factory/forms/langs/{wbcr_factory_forms_443-ru_RU.po → wbcr_factory_forms_451-ru_RU.po} RENAMED
File without changes
libs/factory/forms/layouts/bootstrap-3/bootstrap-3.php CHANGED
@@ -14,11 +14,11 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms443_Bootstrap3FormLayout') ) {
18
  /**
19
  * A form layout based on Twitter Bootstrap 3
20
  */
21
- class Wbcr_FactoryForms443_Bootstrap3FormLayout extends Wbcr_FactoryForms443_FormLayout {
22
 
23
  public $name = 'default';
24
 
@@ -27,7 +27,7 @@
27
  *
28
  * @since 1.0.0
29
  * @param array $options A holder options.
30
- * @param Wbcr_FactoryForms443_Form $form A parent form.
31
  */
32
  public function __construct($options, $form)
33
  {
@@ -68,7 +68,7 @@
68
  }
69
 
70
  /**
71
- * @param Wbcr_FactoryForms443_Control $control
72
  */
73
  public function beforeControl($control)
74
  {
@@ -90,7 +90,7 @@
90
  $col_right = $control->getLayoutOption('column-right', '10');
91
  ?>
92
  <div class="form-group form-group-<?php echo $control->getType() ?> <?php echo $theme_class ?> <?php echo $control_name_class ?>">
93
- <label for="<?php $control->printNameOnForm() ?>" class="col-sm-<?= $col_left ?> control-label">
94
  <?php if( $control->hasIcon() ) { ?>
95
  <img class="control-icon" src="<?php $control->icon() ?>"/>
96
  <?php } ?>
@@ -101,7 +101,7 @@
101
  if( $control->hasHint() ) {
102
  if( $hint_type == 'icon' ): ?>
103
  <?php $hint_icon_color = $control->getLayoutOption('hint-icon-color', 'green'); ?>
104
- <span class="factory-hint-icon factory-hint-icon-<?= $hint_icon_color ?>" data-toggle="factory-tooltip" data-placement="right" title="<?php $control->hint(true) ?>">
105
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC" alt=""/>
106
 
107
  </span>
@@ -111,12 +111,12 @@
111
  <?php endif; ?>
112
  <?php } ?>
113
  </label>
114
- <div class="control-group col-sm-<?= $col_right ?>">
115
  <?php
116
  }
117
 
118
  /**
119
- * @param Wbcr_FactoryForms443_Control $control
120
  */
121
  public function afterControl($control)
122
  {
@@ -168,7 +168,7 @@
168
  }
169
 
170
  /**
171
- * @param Wbcr_FactoryForms443_Control $control
172
  * @param int $index
173
  * @param int $total
174
  */
@@ -193,7 +193,7 @@
193
  }
194
 
195
  /**
196
- * @param Wbcr_FactoryForms443_Control $control
197
  * @param int $index
198
  * @param int $total
199
  */
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms451_Bootstrap3FormLayout') ) {
18
  /**
19
  * A form layout based on Twitter Bootstrap 3
20
  */
21
+ class Wbcr_FactoryForms451_Bootstrap3FormLayout extends Wbcr_FactoryForms451_FormLayout {
22
 
23
  public $name = 'default';
24
 
27
  *
28
  * @since 1.0.0
29
  * @param array $options A holder options.
30
+ * @param Wbcr_FactoryForms451_Form $form A parent form.
31
  */
32
  public function __construct($options, $form)
33
  {
68
  }
69
 
70
  /**
71
+ * @param Wbcr_FactoryForms451_Control $control
72
  */
73
  public function beforeControl($control)
74
  {
90
  $col_right = $control->getLayoutOption('column-right', '10');
91
  ?>
92
  <div class="form-group form-group-<?php echo $control->getType() ?> <?php echo $theme_class ?> <?php echo $control_name_class ?>">
93
+ <label for="<?php $control->printNameOnForm() ?>" class="col-sm-<?php echo $col_left ?> control-label">
94
  <?php if( $control->hasIcon() ) { ?>
95
  <img class="control-icon" src="<?php $control->icon() ?>"/>
96
  <?php } ?>
101
  if( $control->hasHint() ) {
102
  if( $hint_type == 'icon' ): ?>
103
  <?php $hint_icon_color = $control->getLayoutOption('hint-icon-color', 'green'); ?>
104
+ <span class="factory-hint-icon factory-hint-icon-<?php echo $hint_icon_color ?>" data-toggle="factory-tooltip" data-placement="right" title="<?php $control->hint(true) ?>">
105
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC" alt=""/>
106
 
107
  </span>
111
  <?php endif; ?>
112
  <?php } ?>
113
  </label>
114
+ <div class="control-group col-sm-<?php echo $col_right ?>">
115
  <?php
116
  }
117
 
118
  /**
119
+ * @param Wbcr_FactoryForms451_Control $control
120
  */
121
  public function afterControl($control)
122
  {
168
  }
169
 
170
  /**
171
+ * @param Wbcr_FactoryForms451_Control $control
172
  * @param int $index
173
  * @param int $total
174
  */
193
  }
194
 
195
  /**
196
+ * @param Wbcr_FactoryForms451_Control $control
197
  * @param int $index
198
  * @param int $total
199
  */
libs/factory/pages/boot.php CHANGED
@@ -19,25 +19,25 @@ if( !is_admin() ) {
19
  return;
20
  }
21
 
22
- if( defined('FACTORY_PAGES_445_LOADED') ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_PAGES_445_LOADED', true);
27
 
28
- define('FACTORY_PAGES_445_VERSION', '4.4.5');
29
 
30
- define('FACTORY_PAGES_445_DIR', dirname(__FILE__));
31
- define('FACTORY_PAGES_445_URL', plugins_url(null, __FILE__));
32
 
33
  if( !defined('FACTORY_FLAT_ADMIN') ) {
34
  define('FACTORY_FLAT_ADMIN', true);
35
  }
36
 
37
- load_plugin_textdomain('wbcr_factory_pages_445', false, dirname(plugin_basename(__FILE__)) . '/langs');
 
 
 
 
38
 
39
- require(FACTORY_PAGES_445_DIR . '/pages.php');
40
- require(FACTORY_PAGES_445_DIR . '/includes/page.class.php');
41
- require(FACTORY_PAGES_445_DIR . '/includes/admin-page.class.php');
42
- require(FACTORY_PAGES_445_DIR . '/templates/impressive-page.class.php');
43
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_PAGES_453_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_PAGES_453_LOADED', true);
27
 
28
+ define('FACTORY_PAGES_453_VERSION', '4.5.3');
29
 
30
+ define('FACTORY_PAGES_453_DIR', dirname(__FILE__));
31
+ define('FACTORY_PAGES_453_URL', plugins_url(null, __FILE__));
32
 
33
  if( !defined('FACTORY_FLAT_ADMIN') ) {
34
  define('FACTORY_FLAT_ADMIN', true);
35
  }
36
 
37
+ load_plugin_textdomain('wbcr_factory_pages_453', false, dirname(plugin_basename(__FILE__)) . '/langs');
38
+
39
+ require(FACTORY_PAGES_453_DIR . '/pages.php');
40
+ require(FACTORY_PAGES_453_DIR . '/includes/page.class.php');
41
+ require(FACTORY_PAGES_453_DIR . '/includes/admin-page.class.php');
42
 
 
 
 
 
43
 
libs/factory/pages/includes/admin-page.class.php CHANGED
@@ -14,9 +14,9 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryPages445_AdminPage') ) {
18
 
19
- class Wbcr_FactoryPages445_AdminPage extends Wbcr_FactoryPages445_Page {
20
 
21
  /**
22
  * Visible page title.
@@ -209,7 +209,7 @@ if( !class_exists('Wbcr_FactoryPages445_AdminPage') ) {
209
  */
210
  public $add_link_to_plugin_actions = false;
211
 
212
- public function __construct(Wbcr_Factory446_Plugin $plugin)
213
  {
214
  parent::__construct($plugin);
215
  $this->configure();
@@ -325,13 +325,13 @@ if( !class_exists('Wbcr_FactoryPages445_AdminPage') ) {
325
  {
326
  $result_id = $this->getResultId();
327
 
328
- $this->hidden = apply_filters('wbcr_factory_446_page_is_hidden_' . $result_id, $this->hidden);
329
 
330
  if( $this->hidden ) {
331
  return;
332
  }
333
 
334
- $this->internal = apply_filters('wbcr_factory_446_page_is_internal_' . $result_id, $this->internal);
335
 
336
  if( $this->internal ) {
337
  $this->menu_target = null;
@@ -370,7 +370,7 @@ if( !class_exists('Wbcr_FactoryPages445_AdminPage') ) {
370
  $this->assets($this->scripts, $this->styles);
371
 
372
  if( !$this->scripts->isEmpty('bootstrap') || !$this->styles->isEmpty('bootstrap') ) {
373
- add_action('wbcr_factory_446_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), [
374
  $this,
375
  'actionAdminBootstrapScripts'
376
  ]);
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryPages453_AdminPage') ) {
18
 
19
+ class Wbcr_FactoryPages453_AdminPage extends Wbcr_FactoryPages453_Page {
20
 
21
  /**
22
  * Visible page title.
209
  */
210
  public $add_link_to_plugin_actions = false;
211
 
212
+ public function __construct(Wbcr_Factory454_Plugin $plugin)
213
  {
214
  parent::__construct($plugin);
215
  $this->configure();
325
  {
326
  $result_id = $this->getResultId();
327
 
328
+ $this->hidden = apply_filters('wbcr_factory_454_page_is_hidden_' . $result_id, $this->hidden);
329
 
330
  if( $this->hidden ) {
331
  return;
332
  }
333
 
334
+ $this->internal = apply_filters('wbcr_factory_454_page_is_internal_' . $result_id, $this->internal);
335
 
336
  if( $this->internal ) {
337
  $this->menu_target = null;
370
  $this->assets($this->scripts, $this->styles);
371
 
372
  if( !$this->scripts->isEmpty('bootstrap') || !$this->styles->isEmpty('bootstrap') ) {
373
+ add_action('wbcr_factory_454_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), [
374
  $this,
375
  'actionAdminBootstrapScripts'
376
  ]);
libs/factory/pages/includes/page.class.php CHANGED
@@ -14,9 +14,9 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- if ( ! class_exists( 'Wbcr_FactoryPages445_Page' ) ) {
18
 
19
- class Wbcr_FactoryPages445_Page {
20
 
21
 
22
  /**
@@ -30,7 +30,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages445_Page' ) ) {
30
  * Чтобы не было конфликтов с другими плагинами, используйте префиксы.
31
  *
32
  * @since 1.0.0
33
- * @see FactoryPages445_AdminPage
34
  *
35
  * @var string
36
  */
@@ -39,7 +39,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages445_Page' ) ) {
39
  /**
40
  * Current Factory Plugin.
41
  *
42
- * @var Wbcr_Factory446_Plugin
43
  */
44
  public $plugin;
45
 
@@ -51,11 +51,11 @@ if ( ! class_exists( 'Wbcr_FactoryPages445_Page' ) ) {
51
  //private $default_actions = array();
52
 
53
  /**
54
- * @param Wbcr_Factory446_Plugin $plugin
55
  *
56
  * @throws Exception
57
  */
58
- public function __construct( Wbcr_Factory446_Plugin $plugin ) {
59
  $this->plugin = $plugin;
60
 
61
  if ( $plugin ) {
@@ -111,7 +111,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages445_Page' ) ) {
111
 
112
  if ( ! method_exists( $this, $actionFunction ) ) {
113
  // todo: продумать и доработать выполнение произвольных и глобальных дейтсвия для всех страниц
114
- /*$custom_actions = apply_filters('wbcr/factory_pages_445/custom_actions', array(), $raw_action_name);
115
 
116
  if(isset($custom_actions[$raw_action_name])) {
117
  $custom_actions[$raw_action_name]();
14
  exit;
15
  }
16
 
17
+ if ( ! class_exists( 'Wbcr_FactoryPages453_Page' ) ) {
18
 
19
+ class Wbcr_FactoryPages453_Page {
20
 
21
 
22
  /**
30
  * Чтобы не было конфликтов с другими плагинами, используйте префиксы.
31
  *
32
  * @since 1.0.0
33
+ * @see FactoryPages453_AdminPage
34
  *
35
  * @var string
36
  */
39
  /**
40
  * Current Factory Plugin.
41
  *
42
+ * @var Wbcr_Factory454_Plugin
43
  */
44
  public $plugin;
45
 
51
  //private $default_actions = array();
52
 
53
  /**
54
+ * @param Wbcr_Factory454_Plugin $plugin
55
  *
56
  * @throws Exception
57
  */
58
+ public function __construct( Wbcr_Factory454_Plugin $plugin ) {
59
  $this->plugin = $plugin;
60
 
61
  if ( $plugin ) {
111
 
112
  if ( ! method_exists( $this, $actionFunction ) ) {
113
  // todo: продумать и доработать выполнение произвольных и глобальных дейтсвия для всех страниц
114
+ /*$custom_actions = apply_filters('wbcr/factory_pages_453/custom_actions', array(), $raw_action_name);
115
 
116
  if(isset($custom_actions[$raw_action_name])) {
117
  $custom_actions[$raw_action_name]();
libs/factory/pages/langs/{wbcr_factory_pages_445-fr_FR.mo → wbcr_factory_pages_453-fr_FR.mo} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_445-fr_FR.po → wbcr_factory_pages_453-fr_FR.po} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_445-ru_RU.mo → wbcr_factory_pages_453-ru_RU.mo} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_445-ru_RU.po → wbcr_factory_pages_453-ru_RU.po} RENAMED
File without changes
libs/factory/pages/pages.php CHANGED
@@ -14,24 +14,24 @@
14
  exit;
15
  }
16
 
17
- add_action('admin_menu', 'Wbcr_FactoryPages445::actionAdminMenu');
18
- add_action('network_admin_menu', 'Wbcr_FactoryPages445::actionAdminMenu');
19
 
20
- if( !class_exists('Wbcr_FactoryPages445') ) {
21
  /**
22
  * A base class to manage pages.
23
  *
24
  * @since 1.0.0
25
  */
26
- class Wbcr_FactoryPages445 {
27
 
28
  /**
29
- * @var Wbcr_FactoryPages445_Page[]
30
  */
31
  private static $pages = array();
32
 
33
  /**
34
- * @param Wbcr_Factory446_Plugin $plugin
35
  * @param $class_name
36
  */
37
  public static function register($plugin, $class_name)
@@ -59,7 +59,7 @@
59
  }
60
  }
61
 
62
- public static function getPageUrl(Wbcr_Factory446_Plugin $plugin, $page_id, $args = array())
63
  {
64
  if( isset(self::$pages[$plugin->getPluginName()]) ) {
65
  $pages = self::$pages[$plugin->getPluginName()];
@@ -75,7 +75,7 @@
75
  }
76
 
77
  /**
78
- * @param Wbcr_Factory446_Plugin $plugin
79
  * @return array
80
  */
81
  public static function getIds($plugin)
@@ -93,14 +93,14 @@
93
  }
94
  }
95
 
96
- if( !function_exists('wbcr_factory_pages_445_get_page_id') ) {
97
  /**
98
  *
99
- * @param Wbcr_Factory446_Plugin $plugin
100
  * @param string $page_id
101
  * @return string
102
  */
103
- function wbcr_factory_pages_445_get_page_id($plugin, $page_id)
104
  {
105
  return $page_id . '-' . $plugin->getPluginName();
106
  }
14
  exit;
15
  }
16
 
17
+ add_action('admin_menu', 'Wbcr_FactoryPages453::actionAdminMenu');
18
+ add_action('network_admin_menu', 'Wbcr_FactoryPages453::actionAdminMenu');
19
 
20
+ if( !class_exists('Wbcr_FactoryPages453') ) {
21
  /**
22
  * A base class to manage pages.
23
  *
24
  * @since 1.0.0
25
  */
26
+ class Wbcr_FactoryPages453 {
27
 
28
  /**
29
+ * @var Wbcr_FactoryPages453_Page[]
30
  */
31
  private static $pages = array();
32
 
33
  /**
34
+ * @param Wbcr_Factory454_Plugin $plugin
35
  * @param $class_name
36
  */
37
  public static function register($plugin, $class_name)
59
  }
60
  }
61
 
62
+ public static function getPageUrl(Wbcr_Factory454_Plugin $plugin, $page_id, $args = array())
63
  {
64
  if( isset(self::$pages[$plugin->getPluginName()]) ) {
65
  $pages = self::$pages[$plugin->getPluginName()];
75
  }
76
 
77
  /**
78
+ * @param Wbcr_Factory454_Plugin $plugin
79
  * @return array
80
  */
81
  public static function getIds($plugin)
93
  }
94
  }
95
 
96
+ if( !function_exists('wbcr_factory_pages_453_get_page_id') ) {
97
  /**
98
  *
99
+ * @param Wbcr_Factory454_Plugin $plugin
100
  * @param string $page_id
101
  * @return string
102
  */
103
+ function wbcr_factory_pages_453_get_page_id($plugin, $page_id)
104
  {
105
  return $page_id . '-' . $plugin->getPluginName();
106
  }
libs/factory/pages/templates/assets/css/impressive.page.template.css DELETED
@@ -1,552 +0,0 @@
1
- /**
2
- * General styles
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
- #WBCR .updated,
7
- #WBCR .notice,
8
- #WBCR .error,
9
- #WBCR .wdan-notices-compact-panel {
10
- display: none !important;
11
- }
12
- #WBCR .wbcr-factory-pages-445-impressive-page-template {
13
- position: relative;
14
- /**
15
- Content sections
16
- */
17
- /**
18
- Widget in the sidebar of the plugin
19
- */
20
- }
21
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-color-grey {
22
- color: #9a9a9a;
23
- }
24
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-orange-color {
25
- color: #ffc107;
26
- }
27
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-light-orange-color {
28
- color: #ffeb3b;
29
- }
30
- #WBCR .wbcr-factory-pages-445-impressive-page-template .form-group {
31
- padding: 0 20px;
32
- }
33
- #WBCR .wbcr-factory-pages-445-impressive-page-template .form-group label {
34
- font-weight: normal;
35
- }
36
- #WBCR .wbcr-factory-pages-445-impressive-page-template .form-horizontal .control-label {
37
- max-width: 300px;
38
- }
39
- #WBCR .wbcr-factory-pages-445-impressive-page-template .factory-control-buttons {
40
- text-align: right;
41
- padding-right: 20px;
42
- }
43
- #WBCR .wbcr-factory-pages-445-impressive-page-template .factory-from-control-list label span {
44
- display: inline-block;
45
- vertical-align: bottom;
46
- }
47
- #WBCR .wbcr-factory-pages-445-impressive-page-template .factory-from-control-list label span input[type="checkbox"],
48
- #WBCR .wbcr-factory-pages-445-impressive-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
49
- outline: none;
50
- }
51
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert {
52
- font-weight: bold;
53
- margin: 0 !important;
54
- border: 0;
55
- border-radius: 0;
56
- padding: 15px;
57
- }
58
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert + .wbcr-factory-page-group-header {
59
- margin-top: 0 !important;
60
- }
61
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-warning {
62
- background: #fff3d0;
63
- }
64
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-warning:nth-child(2n+1) {
65
- background: #fffde9;
66
- }
67
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-danger {
68
- background: #de716d;
69
- }
70
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-danger:nth-child(2n+1) {
71
- background: #ec8c89;
72
- }
73
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-success {
74
- background: #d0ecc4;
75
- }
76
- #WBCR .wbcr-factory-pages-445-impressive-page-template .alert.alert-success:nth-child(2n+1) {
77
- background: #e0eadb;
78
- }
79
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-header {
80
- padding: 20px 20px 40px;
81
- }
82
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-recomended-text {
83
- display: block;
84
- font-size: 11px;
85
- font-weight: lighter;
86
- color: #179347;
87
- }
88
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-options,
89
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page {
90
- position: relative;
91
- background: #e6e6e6;
92
- overflow: hidden;
93
- }
94
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-options:after,
95
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page:after {
96
- display: block;
97
- content: '';
98
- clear: both;
99
- }
100
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-group-header {
101
- background: #efefef;
102
- padding: 20px 0 10px 20px;
103
- margin: 30px 0;
104
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
105
- }
106
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-group-header:first-child {
107
- margin-top: 0;
108
- }
109
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-group-header strong {
110
- font-size: 15px;
111
- }
112
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-group-header p {
113
- color: #8c8888;
114
- font-size: 12px;
115
- }
116
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap {
117
- margin-left: 230px;
118
- padding: 80px 0 0 0;
119
- vertical-align: top;
120
- background: #fff;
121
- }
122
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-wrapper,
123
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap h2.nav-tab-wrapper,
124
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap h1.nav-tab-wrapper {
125
- border: 0;
126
- }
127
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-active {
128
- background: #efefef !important;
129
- margin-bottom: -2px !important;
130
- border-bottom: 1px solid #efefef !important;
131
- }
132
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:first-child {
133
- margin: 0;
134
- }
135
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:hover {
136
- background: #f7f7f7;
137
- }
138
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab {
139
- border: 2px solid #dedede;
140
- border-bottom: 0;
141
- box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
142
- }
143
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:active,
144
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:focus {
145
- box-shadow: none;
146
- outline: none;
147
- }
148
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header {
149
- position: absolute;
150
- z-index: 13;
151
- top: 0;
152
- left: 0;
153
- right: 0;
154
- overflow: hidden;
155
- background-color: #32373c;
156
- color: #fff;
157
- border-radius: 5px 5px 0 0;
158
- }
159
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
160
- float: left;
161
- padding: 25px 0;
162
- font-size: 20px;
163
- line-height: 30px;
164
- font-weight: 400;
165
- text-align: center;
166
- background-color: #464b50;
167
- color: #ccc;
168
- padding-left: 25px;
169
- margin-right: 10px;
170
- background: none;
171
- }
172
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
173
- display: inline-block;
174
- vertical-align: middle;
175
- }
176
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
177
- font-size: 18px;
178
- line-height: 30px;
179
- font-weight: 300;
180
- margin-top: 26px;
181
- padding: 0 !important;
182
- overflow: hidden;
183
- white-space: nowrap;
184
- text-overflow: ellipsis;
185
- color: #fff;
186
- }
187
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-control {
188
- position: relative;
189
- float: right;
190
- margin: 12px;
191
- }
192
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button {
193
- display: inline-block;
194
- vertical-align: top;
195
- font-size: 13px;
196
- font-weight: 600;
197
- line-height: 20px;
198
- text-transform: uppercase;
199
- margin: 10px 0 0;
200
- padding: 8px 30px;
201
- cursor: pointer;
202
- position: relative;
203
- overflow: hidden;
204
- border: none;
205
- border-radius: 50px;
206
- box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) inset;
207
- background-color: #f1f1f1;
208
- color: inherit;
209
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
210
- text-align: center;
211
- outline: none;
212
- text-decoration: none;
213
- z-index: 3;
214
- }
215
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save {
216
- box-shadow: none;
217
- min-width: 100px;
218
- background-color: #8bc34a;
219
- color: #fff;
220
- }
221
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:hover {
222
- background: #9dbb7b;
223
- color: #fff;
224
- }
225
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:active {
226
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
227
- }
228
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings {
229
- box-shadow: none;
230
- min-width: 200px;
231
- background-color: #9e9e9e;
232
- color: #fff;
233
- }
234
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:hover {
235
- background: #797979;
236
- color: #fff;
237
- }
238
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:active {
239
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
240
- }
241
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar {
242
- float: left;
243
- vertical-align: top;
244
- width: 230px;
245
- background: #e6e6e6;
246
- }
247
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul {
248
- padding: 0;
249
- margin-bottom: 0;
250
- margin-top: 80px;
251
- }
252
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
253
- display: block;
254
- background: #efefef;
255
- margin: 1px 0;
256
- }
257
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
258
- display: block;
259
- width: 100%;
260
- padding: 20px 20px;
261
- font-size: 12px;
262
- color: #585858;
263
- text-decoration: none;
264
- text-transform: uppercase;
265
- text-align: left;
266
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
267
- }
268
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
269
- display: block;
270
- font-weight: bold;
271
- }
272
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
273
- display: block;
274
- font-size: 13px;
275
- font-weight: normal;
276
- text-transform: none;
277
- color: #9a9a9a;
278
- }
279
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
280
- float: right;
281
- color: #ccc;
282
- }
283
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
284
- clear: both;
285
- }
286
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
287
- background: #f7f6f6;
288
- }
289
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
290
- color: #9a9a9a;
291
- }
292
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
293
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
294
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
295
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
296
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
297
- outline: 0 !important;
298
- box-shadow: none !important;
299
- }
300
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
301
- background: #fff;
302
- border-left: 5px solid #ff5722;
303
- }
304
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
305
- color: #ff5722;
306
- font-weight: bold;
307
- }
308
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
309
- color: #9a9a9a;
310
- }
311
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
312
- padding: 0;
313
- margin: 0;
314
- }
315
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
316
- margin: 1px 0 0;
317
- padding: 0;
318
- }
319
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
320
- display: block;
321
- font-weight: normal;
322
- color: #222;
323
- border: 0;
324
- margin: 0;
325
- padding: 5px 5px 5px 30px;
326
- background: #f5f5f5;
327
- text-decoration: none;
328
- outline: none;
329
- }
330
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
331
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
332
- outline: 0 !important;
333
- text-shadow: none !important;
334
- }
335
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
336
- color: #9a9a9a;
337
- font-size: 13px;
338
- border: 0;
339
- -moz-transform: scaleX(-1);
340
- -webkit-transform: scaleX(-1);
341
- -o-transform: scaleX(-1);
342
- transform: scaleX(-1);
343
- -ms-filter: fliph;
344
- filter: fliph;
345
- }
346
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
347
- background: #fff;
348
- color: #ff5722;
349
- font-weight: 600;
350
- }
351
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
352
- color: #ff5722;
353
- }
354
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section,
355
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-right-sidebar-section {
356
- display: inline-block;
357
- vertical-align: top;
358
- }
359
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section {
360
- width: 74.6%;
361
- }
362
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section.wbcr-fullwidth {
363
- width: 100%;
364
- }
365
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section .nav-tab-wrapper {
366
- margin-top: 15px;
367
- }
368
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content {
369
- background: #f7f7f7;
370
- padding: 0 0 20px 0;
371
- border: 1px solid #dad8d8;
372
- box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
373
- }
374
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
375
- padding-top: 0 !important;
376
- }
377
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-right-sidebar-section {
378
- width: 25%;
379
- padding: 10px;
380
- margin: 0 0 -20px;
381
- background-color: #f9f9f9;
382
- box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
383
- }
384
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
385
- margin: 0 0 20px;
386
- }
387
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget {
388
- display: inline-block;
389
- min-height: 230px;
390
- width: 100%;
391
- margin-top: 20px;
392
- background-color: #fff;
393
- padding: 20px 15px;
394
- vertical-align: top;
395
- }
396
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
397
- display: none;
398
- }
399
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
400
- background: #fff4d0;
401
- }
402
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
403
- background: #e2ffc0;
404
- }
405
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
406
- background: #ffebe9;
407
- }
408
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
409
- display: inline-block;
410
- width: 16px;
411
- height: 16px;
412
- line-height: 13px;
413
- padding: 0;
414
- font-size: 11px;
415
- text-align: center;
416
- color: #fff;
417
- background: #E91E63;
418
- border-radius: 3px;
419
- }
420
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
421
- background: #E91E63;
422
- }
423
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
424
- background: #9e9e9e;
425
- }
426
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
427
- background: #8bc34a;
428
- }
429
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
430
- display: block;
431
- width: 80px;
432
- height: 17px;
433
- background: url('../img/5-stars22.png') no-repeat;
434
- vertical-align: middle;
435
- margin-bottom: 5px;
436
- }
437
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
438
- display: block;
439
- margin: 30px auto 0;
440
- outline: none;
441
- }
442
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
443
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
444
- box-shadow: none;
445
- }
446
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
447
- font-size: 50px;
448
- margin-top: 30px;
449
- text-align: center;
450
- font-weight: 600;
451
- color: #8BC34A;
452
- }
453
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
454
- min-height: 240px;
455
- margin-bottom: 20px;
456
- text-align: center;
457
- background: #fdfcf7;
458
- padding: 30px;
459
- border: 1px solid #f3f1e7;
460
- }
461
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
462
- width: 50px;
463
- height: 50px;
464
- font-size: 50px;
465
- color: #FFC107;
466
- line-height: normal;
467
- }
468
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
469
- color: #7b6111;
470
- }
471
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
472
- color: #9e9e9e;
473
- }
474
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
475
- margin-top: 20px;
476
- text-align: center;
477
- }
478
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
479
- display: inline-block;
480
- padding: 20px 60px;
481
- background-color: #FFC107;
482
- color: #866605;
483
- text-decoration: none;
484
- text-transform: uppercase;
485
- font-weight: bold;
486
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
487
- }
488
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
489
- background-color: #ffce3a;
490
- }
491
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog {
492
- padding: 20px;
493
- background: #ffffff;
494
- }
495
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog .updated,
496
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog .alert {
497
- display: none;
498
- }
499
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog h2 {
500
- font-size: 18px;
501
- margin-top: 10px;
502
- }
503
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
504
- padding: 10px;
505
- background: #ffedeb;
506
- border: 1px solid #ffdfdc;
507
- margin: 15px 0;
508
- }
509
- #WBCR .wbcr-factory-pages-445-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
510
- margin-bottom: 15px;
511
- color: #7b7b7b;
512
- }
513
- @media screen and (max-width: 1367px) {
514
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section {
515
- width: 69.6%;
516
- }
517
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-right-sidebar-section {
518
- width: 30%;
519
- }
520
- }
521
- @media screen and (max-width: 1320px) {
522
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-content-section {
523
- width: 100%;
524
- }
525
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-right-sidebar-section {
526
- display: none !important;
527
- }
528
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-header-logo .dash {
529
- display: none !important;
530
- }
531
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-header-title {
532
- display: none !important;
533
- }
534
- }
535
- @media screen and (max-width: 950px) {
536
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar {
537
- width: 70px;
538
- }
539
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
540
- font-size: 0;
541
- }
542
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
543
- font-size: 0;
544
- }
545
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
546
- display: none !important;
547
- }
548
- #WBCR .wbcr-factory-pages-445-impressive-page-template .wbcr-factory-page-inner-wrap {
549
- margin-left: 70px;
550
- }
551
- }
552
- /*# sourceMappingURL=impressive.page.template.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/pages/templates/assets/css/impressive.page.template.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["impressive.page.template.less"],"names":[],"mappings":";;;;;AAMA,KACE;AADF,KACY;AADZ,KACqB;AADrB,KAC6B;EACzB,wBAAA;;AAFJ,KAKE;EACE,kBAAA;;;;;;;;AANJ,KAKE,iDAGE;EACE,cAAA;;AATN,KAKE,iDAOE;EACE,cAAA;;AAbN,KAKE,iDAWE;EACE,cAAA;;AAjBN,KAKE,iDAeE;EACE,eAAA;;AArBN,KAKE,iDAeE,YAGE;EACE,mBAAA;;AAxBR,KAKE,iDAuBE,iBAAiB;EACf,gBAAA;;AA7BN,KAKE,iDA2BE;EACE,iBAAA;EACA,mBAAA;;AAlCN,KAKE,iDAgCE,2BACE,MACE;EACE,qBAAA;EACA,sBAAA;;AAzCV,KAKE,iDAgCE,2BACE,MACE,KAIE,MAAK;AA3Cf,KAKE,iDAgCE,2BACE,MACE,KAI0B,MAAK,iBAAiB;EAC5C,aAAA;;AA5CZ,KAKE,iDA6CE;EACE,iBAAA;EACA,oBAAA;EACA,SAAA;EACA,gBAAA;EACA,aAAA;;AAEA,KApDJ,iDA6CE,OAOI;EACA,wBAAA;;AAGF,KAxDJ,iDA6CE,OAWG;EACC,mBAAA;;AAGF,KA5DJ,iDA6CE,OAeG,cAAc,UAAU;EACvB,mBAAA;;AAGF,KAhEJ,iDA6CE,OAmBG;EACC,mBAAA;;AAGF,KApEJ,iDA6CE,OAuBG,aAAa,UAAU;EACtB,mBAAA;;AAGF,KAxEJ,iDA6CE,OA2BG;EACC,mBAAA;;AAGF,KA5EJ,iDA6CE,OA+BG,cAAc,UAAU;EACvB,mBAAA;;AAlFR,KAKE,iDAiFE;EACE,uBAAA;;AAvFN,KAKE,iDAqFE;EACE,cAAA;EACA,eAAA;EACA,oBAAA;EACA,cAAA;;AA9FN,KAKE,iDA4FE;AAjGJ,KAKE,iDA4FyB;EACrB,kBAAA;EACA,mBAAA;EACA,gBAAA;;AASA,KAxGJ,iDA4FE,sBAYG;AAAD,KAxGJ,iDA4FyB,mBAYpB;EACC,cAAA;EACA,SAAS,EAAT;EACA,WAAA;;AAhHR,KAKE,iDA+GE;EACE,mBAAA;EACA,yBAAA;EACA,cAAA;EACA,sCAAA;;AAEA,KArHJ,iDA+GE,gCAMG;EACC,aAAA;;AA3HR,KAKE,iDA+GE,gCAUE;EACE,eAAA;;AA/HR,KAKE,iDA+GE,gCAcE;EACE,cAAA;EACA,eAAA;;AApIR,KAKE,iDAwIE;EAIE,kBAAA;EAEA,mBAAA;EACA,mBAAA;EACA,gBAAA;;AArJN,KAKE,iDAwIE,8BAUE;AAvJN,KAKE,iDAwIE,8BAUoB,GAAE;AAvJ1B,KAKE,iDAwIE,8BAUwC,GAAE;EACtC,SAAA;;AAxJR,KAKE,iDAwIE,8BAcE;EACE,mBAAA;EACA,mBAAA;EACA,gCAAA;;AA9JR,KAKE,iDAwIE,8BAoBE,SAAQ;EACN,SAAA;;AAlKR,KAKE,iDAwIE,8BAwBE,SAAQ;EACN,mBAAA;;AAtKR,KAKE,iDAwIE,8BA4BE;EACE,yBAAA;EACA,gBAAA;EACA,uCAAA;;AAEA,KAzKN,iDAwIE,8BA4BE,SAKG;AAAS,KAzKhB,iDAwIE,8BA4BE,SAKa;EACT,gBAAA;EACA,aAAA;;AAhLV,KAKE,iDAgLE;EACE,kBAAA;EACA,WAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;EACA,0BAAA;;AA9LN,KAKE,iDAgLE,0BAWE;EACE,WAAA;EACA,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EAEA,yBAAA;EACA,WAAA;EACA,kBAAA;EACA,kBAAA;EACA,gBAAA;;AA5MR,KAKE,iDAgLE,0BA0BE;EACE,qBAAA;EACA,sBAAA;;AAjNR,KAKE,iDAgLE,0BA0BE,2BAIE;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,gBAAA;EACA,qBAAA;EAEA,gBAAA;EACA,mBAAA;EACA,uBAAA;EACA,WAAA;;AA7NV,KAKE,iDAgLE,0BA4CE;EACE,kBAAA;EACA,YAAA;EACA,YAAA;;AApOR,KAKE,iDAgLE,0BAkDE;EACE,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,yBAAA;EACA,gBAAA;EACA,iBAAA;EACA,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,8CAAA;EACA,yBAAA;EACA,cAAA;EACA,8EAAA;EACA,kBAAA;EACA,aAAA;EACA,qBAAA;EACA,UAAA;;AAEA,KAzPN,iDAgLE,0BAkDE,qBAuBG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KA/PR,iDAgLE,0BAkDE,qBAuBG,uBAME;EACC,mBAAA;EACA,WAAA;;AAGF,KApQR,iDAgLE,0BAkDE,qBAuBG,uBAWE;EACC,iDAAA;;AAIJ,KAzQN,iDAgLE,0BAkDE,qBAuCG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KA/QR,iDAgLE,0BAkDE,qBAuCG,2BAME;EACC,mBAAA;EACA,WAAA;;AAGF,KApRR,iDAgLE,0BAkDE,qBAuCG,2BAWE;EACC,iDAAA;;AA1RZ,KAKE,iDA2RE;EAEE,WAAA;EACA,mBAAA;EACA,YAAA;EACA,mBAAA;;AArSN,KAKE,iDA2RE,kCAOE;EACE,UAAA;EACA,gBAAA;EACA,gBAAA;;AA1SR,KAKE,iDA2RE,kCAOE,GAKE;EACE,cAAA;EACA,mBAAA;EAEA,aAAA;;AAhTV,KAKE,iDA2RE,kCAOE,GAKE,sBAME;EACE,cAAA;EACA,WAAA;EACA,kBAAA;EACA,eAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,gBAAA;EACA,gDAAgD,oDAAoD,4BAApG;;AA3TZ,KAKE,iDA2RE,kCAOE,GAKE,sBAME,wBAWE;EACE,cAAA;EACA,iBAAA;;AA/Td,KAKE,iDA2RE,kCAOE,GAKE,sBAME,wBAgBE;EACE,cAAA;EACA,eAAA;EACA,mBAAA;EACA,oBAAA;EACA,cAAA;;AAvUd,KAKE,iDA2RE,kCAOE,GAKE,sBAME,wBAwBE;EACE,YAAA;EAEA,WAAA;;AAGF,KA3UV,iDA2RE,kCAOE,GAKE,sBAME,wBA8BG;EACC,WAAA;;AAGF,KA/UV,iDA2RE,kCAOE,GAKE,sBAME,wBAkCG;EACC,mBAAA;;AADF,KA/UV,iDA2RE,kCAOE,GAKE,sBAME,wBAkCG,MAGC;EACE,cAAA;;AAIJ,KAvVV,iDA2RE,kCAOE,GAKE,sBAME;AA0CK,KAvVb,iDA2RE,kCAOE,GAKE,sBAME,wBA0CM;AAAS,KAvVvB,iDA2RE,kCAOE,GAKE,sBAME,wBA0CgB;AAAQ,KAvVhC,iDA2RE,kCAOE,GAKE,sBAME,wBA0CyB;AAAS,KAvV1C,iDA2RE,kCAOE,GAKE,sBAME,wBA0CmC;EAC/B,qBAAA;EACA,2BAAA;;AAKJ,KA9VR,iDA2RE,kCAOE,GAKE,sBAuDG;EACC,gBAAA;EACA,8BAAA;;AAFF,KA9VR,iDA2RE,kCAOE,GAKE,sBAuDG,wBAIC;EACE,cAAA;EACA,iBAAA;;AANJ,KA9VR,iDA2RE,kCAOE,GAKE,sBAuDG,wBAIC,EAKE;EACE,cAAA;;AA7WhB,KAKE,iDA2RE,kCAOE,GAKE,sBAsEE;EACE,UAAA;EACA,SAAA;;AApXZ,KAKE,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE;EACE,eAAA;EACA,UAAA;;AAxXd,KAKE,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE;EACE,cAAA;EACA,mBAAA;EACA,WAAA;EACA,SAAA;EACA,SAAA;EACA,yBAAA;EACA,mBAAA;EACA,qBAAA;EACA,aAAA;;AAEA,KAhYd,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWG;AAAQ,KAhYvB,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWY;EACR,qBAAA;EACA,4BAAA;;AAvYlB,KAKE,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAgBE;EACE,cAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAgB,UAAhB;EACA,mBAAmB,UAAnB;EACA,cAAc,UAAd;EACA,WAAW,UAAX;EACA,iBAAA;EACA,aAAA;;AAGF,KAjZd,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG;EACC,gBAAA;EACA,cAAA;EACA,gBAAA;;AAHF,KAjZd,iDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG,wBAMC;EACE,cAAA;;AA7ZpB,KAKE,iDAsaE;AA3aJ,KAKE,iDAsaiC;EAC7B,qBAAA;EACA,mBAAA;;AA7aN,KAKE,iDA2aE;EACE,YAAA;;AAEA,KA9aJ,iDA2aE,8BAGG;EACC,WAAA;;AApbR,KAKE,iDA2aE,8BAOE;EACE,gBAAA;;AAxbR,KAKE,iDA2aE,8BAWE;EACE,mBAAA;EACA,mBAAA;EACA,yBAAA;EACA,2CAAA;;AAEA,KA5bN,iDA2aE,8BAWE,sBAMI;EACA,yBAAA;;AAlcV,KAKE,iDAkcE;EACE,UAAA;EACA,aAAA;EACA,iBAAA;EACA,yBAAA;EACA,2CAAA;;AA5cN,KAKE,iDAkcE,oCAOE;EACE,gBAAA;;AA/cR,KAKE,iDAkdE;EACE,qBAAA;EACA,iBAAA;EACA,WAAA;EACA,gBAAA;EACA,sBAAA;EACA,kBAAA;EACA,mBAAA;;AAEA,KA3dJ,iDAkdE,6BASG;EACC,aAAA;;AAGF,KA/dJ,iDAkdE,6BAaG;EACC,mBAAA;;AAGF,KAneJ,iDAkdE,6BAiBG;EACC,mBAAA;;AAGF,KAveJ,iDAkdE,6BAqBG;EACC,mBAAA;;AA7eR,KAKE,iDAkdE,6BAyBE;EACE,qBAAA;EACA,WAAA;EACA,YAAA;EACA,iBAAA;EACA,UAAA;EACA,eAAA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,kBAAA;;AA1fR,KAKE,iDAkdE,6BAsCE;EACE,mBAAA;;AA9fR,KAKE,iDAkdE,6BA0CE;EACE,mBAAA;;AAlgBR,KAKE,iDAkdE,6BA8CE;EACE,mBAAA;;AAtgBR,KAKE,iDAkdE,6BAkDE;EACE,cAAA;EACA,WAAA;EACA,YAAA;EACA,gBAAgB,iCAAhB;EACA,sBAAA;EACA,kBAAA;;AA/gBR,KAKE,iDAkdE,6BA2DE,mCACE,MAAK;EACH,cAAA;EACA,mBAAA;EACA,aAAA;;AAthBV,KAKE,iDAkdE,6BA2DE,mCACE,MAAK,cAKH;AAxhBV,KAKE,iDAkdE,6BA2DE,mCACE,MAAK,cAKK;EACN,gBAAA;;AAzhBZ,KAKE,iDAkdE,6BA2DE,mCAWE;EACE,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,cAAA;;AAliBV,KAKE,iDAkiBE,iCACE;EAEE,iBAAA;EACA,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,aAAA;EACA,yBAAA;;AA/iBR,KAKE,iDAkiBE,iCACE,0BASE;EACE,WAAA;EACA,YAAA;EACA,eAAA;EACA,cAAA;EACA,mBAAA;;AAtjBV,KAKE,iDAkiBE,iCACE,0BAiBE;EACE,cAAA;;AA1jBV,KAKE,iDAkiBE,iCACE,0BAqBE;EACE,cAAA;;AA9jBV,KAKE,iDAkiBE,iCA2BE;EACE,gBAAA;EACA,kBAAA;;AApkBR,KAKE,iDAkiBE,iCAgCE;EACE,qBAAA;EACA,kBAAA;EACA,yBAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,iBAAA;EACA,8EAAA;;AAEA,KA5kBN,iDAkiBE,iCAgCE,6BAUG;EACC,yBAAA;;AAllBV,KAKE,iDAklBE;EACE,aAAA;EACA,mBAAA;;AAzlBN,KAKE,iDAklBE,6BAIE;AA3lBN,KAKE,iDAklBE,6BAIY;EACR,aAAA;;AA5lBR,KAKE,iDAklBE,6BAQE;EACE,eAAA;EACA,gBAAA;;AAjmBR,KAKE,iDAklBE,6BAaE;EACE,aAAA;EACA,mBAAA;EACA,yBAAA;EACA,cAAA;;AAxmBR,KAKE,iDAklBE,6BAoBE;EACE,mBAAA;EACA,cAAA;;AAMR,mBAAsC;EACpC,KACE,iDACE;IACE,YAAA;;EAHN,KACE,iDAKE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,iDACE;IACE,WAAA;;EAHN,KACE,iDAKE;IACE,wBAAA;;EAPN,KACE,iDASE,0BACE;IACE,wBAAA;;EAZR,KACE,iDAeE;IACE,wBAAA;;;AAMR,mBAAqC;EACnC,KACE,iDACE;IACE,WAAA;;EAHN,KACE,iDACE,kCAGE,GACE,sBACE;IACE,YAAA;;EARZ,KACE,iDACE,kCAGE,GACE,sBAKE;IACE,YAAA;;EAZZ,KACE,iDACE,kCAGE,GACE,sBASE;IACE,wBAAA;;EAhBZ,KACE,iDAqBE;IACE,iBAAA","file":"impressive.page.template.css"}
 
libs/factory/pages/templates/assets/css/impressive.page.template.less DELETED
@@ -1,701 +0,0 @@
1
- /**
2
- * General styles
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
-
7
- #WBCR {
8
- .updated, .notice, .error, .wdan-notices-compact-panel {
9
- display: none !important;
10
- }
11
-
12
- .wbcr-factory-pages-000-impressive-page-template {
13
- position: relative;
14
-
15
- .wbcr-factory-color-grey {
16
- color: #9a9a9a;
17
- }
18
-
19
- .wbcr-factory-orange-color {
20
- color: #ffc107;
21
- }
22
-
23
- .wbcr-factory-light-orange-color {
24
- color: #ffeb3b;
25
- }
26
-
27
- .form-group {
28
- padding: 0 20px;
29
-
30
- label {
31
- font-weight: normal;
32
- }
33
- }
34
-
35
- .form-horizontal .control-label {
36
- max-width: 300px;
37
- }
38
-
39
- .factory-control-buttons {
40
- text-align: right;
41
- padding-right: 20px;
42
- }
43
-
44
- .factory-from-control-list {
45
- label {
46
- span {
47
- display: inline-block;
48
- vertical-align: bottom;
49
-
50
- input[type="checkbox"], input[type="checkbox"]:focus {
51
- outline: none;
52
- }
53
- }
54
- }
55
- }
56
-
57
- .alert {
58
- font-weight: bold;
59
- margin: 0 !important;
60
- border: 0;
61
- border-radius: 0;
62
- padding: 15px;
63
-
64
- & + .wbcr-factory-page-group-header {
65
- margin-top: 0 !important;
66
- }
67
-
68
- &.alert-warning {
69
- background: #fff3d0;
70
- }
71
-
72
- &.alert-warning:nth-child(2n+1) {
73
- background: #fffde9;
74
- }
75
-
76
- &.alert-danger {
77
- background: #de716d;
78
- }
79
-
80
- &.alert-danger:nth-child(2n+1) {
81
- background: #ec8c89;
82
- }
83
-
84
- &.alert-success {
85
- background: #d0ecc4;
86
- }
87
-
88
- &.alert-success:nth-child(2n+1) {
89
- background: #e0eadb;
90
- }
91
- }
92
-
93
- .wbcr-factory-header {
94
- padding: 20px 20px 40px;
95
- }
96
-
97
- .wbcr-factory-recomended-text {
98
- display: block;
99
- font-size: 11px;
100
- font-weight: lighter;
101
- color: #179347;
102
- }
103
-
104
- .wbcr-factory-options, .wbcr-factory-page {
105
- position: relative;
106
- background: #e6e6e6;
107
- overflow: hidden;
108
- //padding-left: 230px;
109
-
110
- form.form-horizontal {
111
- //min-height: 500px;
112
- //position: relative;
113
- //padding: 0 0 50px 100px;
114
- }
115
-
116
- &:after {
117
- display: block;
118
- content: '';
119
- clear: both;
120
- }
121
- }
122
-
123
- .wbcr-factory-page-group-header {
124
- background: #efefef;
125
- padding: 20px 0 10px 20px;
126
- margin: 30px 0;
127
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
128
-
129
- &:first-child {
130
- margin-top: 0;
131
- }
132
-
133
- strong {
134
- font-size: 15px;
135
- }
136
-
137
- p {
138
- color: #8c8888;
139
- font-size: 12px;
140
- }
141
- }
142
-
143
- .wbcr-factory-page {
144
- //min-height: 500px;
145
- // padding: 80px 20px 50px 230px;
146
- }
147
-
148
- .wbcr-factory-page-inner-wrap {
149
- //float: left;
150
- //display: inline-block;
151
- //min-height: 800px;
152
- margin-left: 230px;
153
- //padding: 120px 0 20px 20px;
154
- padding: 80px 0 0 0;
155
- vertical-align: top;
156
- background: #fff;
157
- //min-height: 800px;
158
- .nav-tab-wrapper, h2.nav-tab-wrapper, h1.nav-tab-wrapper {
159
- border: 0;
160
- }
161
-
162
- .nav-tab-active {
163
- background: #efefef !important;
164
- margin-bottom: -2px !important;
165
- border-bottom: 1px solid #efefef !important;
166
- }
167
-
168
- .nav-tab:first-child {
169
- margin: 0;
170
- }
171
-
172
- .nav-tab:hover {
173
- background: #f7f7f7;
174
- }
175
-
176
- .nav-tab {
177
- border: 2px solid #dedede;
178
- border-bottom: 0;
179
- box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
180
-
181
- &:active, &:focus {
182
- box-shadow: none;
183
- outline: none;
184
- }
185
- }
186
- }
187
-
188
- .wbcr-factory-page-header {
189
- position: absolute;
190
- z-index: 13;
191
- top: 0;
192
- left: 0;
193
- right: 0;
194
- overflow: hidden;
195
- background-color: #32373c;
196
- color: #fff;
197
- border-radius: 5px 5px 0 0;
198
-
199
- .wbcr-factory-header-logo {
200
- float: left;
201
- padding: 25px 0;
202
- font-size: 20px;
203
- line-height: 30px;
204
- font-weight: 400;
205
- text-align: center;
206
- //width: 170px;
207
- background-color: #464b50;
208
- color: #ccc;
209
- padding-left: 25px;
210
- margin-right: 10px;
211
- background: none;
212
- }
213
-
214
- .wbcr-factory-header-title {
215
- display: inline-block;
216
- vertical-align: middle;
217
-
218
- h2 {
219
- font-size: 18px;
220
- line-height: 30px;
221
- font-weight: 300;
222
- margin-top: 26px;
223
- padding: 0 !important;
224
- //margin: 0 !important;
225
- overflow: hidden;
226
- white-space: nowrap;
227
- text-overflow: ellipsis;
228
- color: #fff;
229
- }
230
- }
231
-
232
- .wbcr-factory-control {
233
- position: relative;
234
- float: right;
235
- margin: 12px;
236
- }
237
-
238
- .wbcr-factory-button {
239
- display: inline-block;
240
- vertical-align: top;
241
- font-size: 13px;
242
- font-weight: 600;
243
- line-height: 20px;
244
- text-transform: uppercase;
245
- margin: 10px 0 0;
246
- padding: 8px 30px;
247
- cursor: pointer;
248
- position: relative;
249
- overflow: hidden;
250
- border: none;
251
- border-radius: 50px;
252
- box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) inset;
253
- background-color: #f1f1f1;
254
- color: inherit;
255
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
256
- text-align: center;
257
- outline: none;
258
- text-decoration: none;
259
- z-index: 3;
260
-
261
- &.wbcr-factory-type-save {
262
- box-shadow: none;
263
- min-width: 100px;
264
- background-color: #8bc34a;
265
- color: #fff;
266
-
267
- &:hover {
268
- background: #9dbb7b;
269
- color: #fff;
270
- }
271
-
272
- &:active {
273
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
274
- }
275
- }
276
-
277
- &.wbcr-factory-type-settings {
278
- box-shadow: none;
279
- min-width: 200px;
280
- background-color: #9e9e9e;
281
- color: #fff;
282
-
283
- &:hover {
284
- background: #797979;
285
- color: #fff;
286
- }
287
-
288
- &:active {
289
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
290
- }
291
- }
292
- }
293
- }
294
-
295
- .wbcr-factory-left-navigation-bar {
296
- //display: inline-block;
297
- float: left;
298
- vertical-align: top;
299
- width: 230px;
300
- background: #e6e6e6;
301
-
302
- ul {
303
- padding: 0;
304
- margin-bottom: 0;
305
- margin-top: 80px;
306
-
307
- .wbcr-factory-nav-tab {
308
- display: block;
309
- background: #efefef;
310
- //padding: 15px 20px;
311
- margin: 1px 0;
312
-
313
- .wbcr-factory-tab__link {
314
- display: block;
315
- width: 100%;
316
- padding: 20px 20px;
317
- font-size: 12px;
318
- color: #585858;
319
- text-decoration: none;
320
- text-transform: uppercase;
321
- text-align: left;
322
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
323
-
324
- .wbcr-factory-tab__title {
325
- display: block;
326
- font-weight: bold;
327
- }
328
-
329
- .wbcr-factory-tab__short-description {
330
- display: block;
331
- font-size: 13px;
332
- font-weight: normal;
333
- text-transform: none;
334
- color: #9a9a9a;
335
- }
336
-
337
- .dashicons {
338
- float: right;
339
- //font-size: 22px;
340
- color: #ccc;
341
- }
342
-
343
- &::after {
344
- clear: both;
345
- }
346
-
347
- &:hover {
348
- background: #f7f6f6;
349
-
350
- .dashicons {
351
- color: #9a9a9a;
352
- }
353
- }
354
-
355
- &, &:active, &:hover, &:active, &:focus {
356
- outline: 0 !important;
357
- box-shadow: none !important;
358
- }
359
-
360
- }
361
-
362
- &.wbcr-factory-active-tab {
363
- background: #fff;
364
- border-left: 5px solid #ff5722;
365
-
366
- a {
367
- color: #ff5722;
368
- font-weight: bold;
369
-
370
-
371
- .dashicons {
372
- color: #9a9a9a;
373
- }
374
- }
375
- }
376
-
377
- .wbcr-factory-submenu {
378
- padding: 0;
379
- margin: 0;
380
-
381
- li {
382
- margin: 1px 0 0;
383
- padding: 0;
384
-
385
- a {
386
- display: block;
387
- font-weight: normal;
388
- color: #222;
389
- border: 0;
390
- margin: 0;
391
- padding: 5px 5px 5px 30px;
392
- background: #f5f5f5;
393
- text-decoration: none;
394
- outline: none;
395
-
396
- &:focus, &:link {
397
- outline: 0 !important;
398
- text-shadow: none !important;
399
- }
400
-
401
- .dashicons {
402
- color: #9a9a9a;
403
- font-size: 13px;
404
- border: 0;
405
- -moz-transform: scaleX(-1);
406
- -webkit-transform: scaleX(-1);
407
- -o-transform: scaleX(-1);
408
- transform: scaleX(-1);
409
- -ms-filter: fliph;
410
- filter: fliph;
411
- }
412
-
413
- &.wbcr-factory-tab-active {
414
- background: #fff;
415
- color: #ff5722;
416
- font-weight: 600;
417
-
418
-
419
- .dashicons {
420
- color: #ff5722;
421
- }
422
- }
423
- }
424
- }
425
- }
426
- }
427
- }
428
- }
429
-
430
- /**
431
- Content sections
432
- */
433
-
434
- .wbcr-factory-content-section, .wbcr-factory-right-sidebar-section {
435
- display: inline-block;
436
- vertical-align: top;
437
- }
438
-
439
- .wbcr-factory-content-section {
440
- width: 74.6%;
441
-
442
- &.wbcr-fullwidth {
443
- width: 100%;
444
- }
445
-
446
- .nav-tab-wrapper {
447
- margin-top: 15px;
448
- }
449
-
450
- .wbcr-factory-content {
451
- background: #f7f7f7;
452
- padding: 0 0 20px 0;
453
- border: 1px solid #dad8d8;
454
- box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
455
-
456
- & > form {
457
- padding-top: 0 !important;
458
- }
459
- }
460
- }
461
-
462
- .wbcr-factory-right-sidebar-section {
463
- width: 25%;
464
- padding: 10px;
465
- margin: 0 0 -20px;
466
- background-color: #f9f9f9;
467
- box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
468
-
469
- .wbcr-factory-sidebar-widget {
470
- margin: 0 0 20px;
471
- }
472
- }
473
-
474
- /**
475
- Widget in the sidebar of the plugin
476
- */
477
-
478
- .wbcr-factory-sidebar-widget {
479
- display: inline-block;
480
- min-height: 230px;
481
- width: 100%;
482
- margin-top: 20px;
483
- background-color: #fff;
484
- padding: 20px 15px;
485
- vertical-align: top;
486
-
487
- &.wbcr-factory-hide {
488
- display: none;
489
- }
490
-
491
- &.wbcr-factory-warning {
492
- background: #fff4d0;
493
- }
494
-
495
- &.wbcr-factory-danger {
496
- background: #e2ffc0;
497
- }
498
-
499
- &.wbcr-factory-success {
500
- background: #ffebe9;
501
- }
502
-
503
- .wbcr-factory-hint-icon-simple {
504
- display: inline-block;
505
- width: 16px;
506
- height: 16px;
507
- line-height: 13px;
508
- padding: 0;
509
- font-size: 11px;
510
- text-align: center;
511
- color: #fff;
512
- background: #E91E63;
513
- border-radius: 3px;
514
- }
515
-
516
- .wbcr-factory-simple-grey {
517
- background: #E91E63;
518
- }
519
-
520
- .wbcr-factory-simple-red {
521
- background: #9e9e9e;
522
- }
523
-
524
- .wbcr-factory-simple-green {
525
- background: #8bc34a;
526
- }
527
-
528
- .wbcr-factory-icon-5stars {
529
- display: block;
530
- width: 80px;
531
- height: 17px;
532
- background: url('../img/5-stars22.png') no-repeat;
533
- vertical-align: middle;
534
- margin-bottom: 5px;
535
- }
536
-
537
- #wbcr-factory-paypal-donation-form {
538
- input[type="image"] {
539
- display: block;
540
- margin: 30px auto 0;
541
- outline: none;
542
-
543
- :focus, :active {
544
- box-shadow: none;
545
- }
546
- }
547
-
548
- .wbcr-factory-donation-price {
549
- font-size: 50px;
550
- margin-top: 30px;
551
- text-align: center;
552
- font-weight: 600;
553
- color: #8BC34A;
554
- }
555
- }
556
- }
557
-
558
- .wbcr-factory-page-more_features {
559
- .wbcr-factory-feature-box {
560
- //margin: 20px 0 0 20px;
561
- min-height: 240px;
562
- margin-bottom: 20px;
563
- text-align: center;
564
- background: #fdfcf7;
565
- padding: 30px;
566
- border: 1px solid #f3f1e7;
567
-
568
- .dashicons {
569
- width: 50px;
570
- height: 50px;
571
- font-size: 50px;
572
- color: #FFC107;
573
- line-height: normal;
574
- }
575
-
576
- h3 {
577
- color: #7b6111;
578
- }
579
-
580
- p {
581
- color: #9e9e9e;
582
- }
583
- }
584
-
585
- .wbcr-factory-buttons-wrap {
586
- margin-top: 20px;
587
- text-align: center;
588
- }
589
-
590
- .wbcr-factory-premium-button {
591
- display: inline-block;
592
- padding: 20px 60px;
593
- background-color: #FFC107;
594
- color: #866605;
595
- text-decoration: none;
596
- text-transform: uppercase;
597
- font-weight: bold;
598
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
599
-
600
- &:hover {
601
- background-color: #ffce3a
602
- }
603
- }
604
- }
605
-
606
- #wbcr-factory-confirm-dialog {
607
- padding: 20px;
608
- background: #ffffff;
609
-
610
- .updated, .alert {
611
- display: none;
612
- }
613
-
614
- h2 {
615
- font-size: 18px;
616
- margin-top: 10px;
617
- }
618
-
619
- .wbcr-factory-confirm-description {
620
- padding: 10px;
621
- background: #ffedeb;
622
- border: 1px solid #ffdfdc;
623
- margin: 15px 0;
624
- }
625
-
626
- .wbcr-factory-confirm-hint {
627
- margin-bottom: 15px;
628
- color: #7b7b7b;
629
- }
630
- }
631
- }
632
- }
633
-
634
- @media screen and (max-width: 1367px) {
635
- #WBCR {
636
- .wbcr-factory-pages-000-impressive-page-template {
637
- .wbcr-factory-content-section {
638
- width: 69.6%;
639
- }
640
-
641
- .wbcr-factory-right-sidebar-section {
642
- width: 30%;
643
- }
644
- }
645
- }
646
- }
647
-
648
- @media screen and (max-width: 1320px) {
649
- #WBCR {
650
- .wbcr-factory-pages-000-impressive-page-template {
651
- .wbcr-factory-content-section {
652
- width: 100%;
653
- }
654
-
655
- .wbcr-factory-right-sidebar-section {
656
- display: none !important;
657
- }
658
-
659
- .wbcr-factory-header-logo {
660
- .dash {
661
- display: none !important;
662
- }
663
- }
664
-
665
- .wbcr-factory-header-title {
666
- display: none !important;
667
- }
668
- }
669
- }
670
- }
671
-
672
- @media screen and (max-width: 950px) {
673
- #WBCR {
674
- .wbcr-factory-pages-000-impressive-page-template {
675
- .wbcr-factory-left-navigation-bar {
676
- width: 70px;
677
-
678
- ul {
679
- .wbcr-factory-nav-tab {
680
- a {
681
- font-size: 0;
682
- }
683
-
684
- .wbcr-factory-tab__title {
685
- font-size: 0;
686
- }
687
-
688
- .wbcr-factory-tab__short-description {
689
- display: none !important;
690
- }
691
- }
692
- }
693
- }
694
-
695
- .wbcr-factory-page-inner-wrap {
696
- margin-left: 70px;
697
- }
698
-
699
- }
700
- }
701
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/pages/templates/assets/img/5-stars22.png DELETED
Binary file
libs/factory/pages/templates/assets/img/paypal-donate.png DELETED
Binary file
libs/factory/pages/templates/assets/img/webcraftic-plugin-icon.png DELETED
Binary file
libs/factory/pages/templates/impressive-page.class.php DELETED
@@ -1,906 +0,0 @@
1
- <?php
2
- /**
3
- * Impressive page themplate class
4
- *
5
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
6
- * @since 1.0.0
7
- * @package factory-pages
8
- * @copyright (c) 2018, Webcraftic Ltd
9
- *
10
- */
11
-
12
- // Exit if accessed directly
13
- if( !defined('ABSPATH') ) {
14
- exit;
15
- }
16
-
17
- if( !class_exists('Wbcr_FactoryPages445_ImpressiveThemplate') ) {
18
- /**
19
- * Class Wbcr_FactoryPages445_ImpressiveThemplate
20
- */
21
- abstract class Wbcr_FactoryPages445_ImpressiveThemplate extends Wbcr_FactoryPages445_AdminPage {
22
-
23
- /**
24
- * Тип страницы:
25
- *
26
- * Существует только два типа страниц:
27
- * options - предназначена для создании страниц с набором опций и настроек.
28
- * page - предназначена для произвольного контента, любой html код.
29
- *
30
- * @var string
31
- */
32
- public $type = 'options';
33
-
34
- /**
35
- * ID родительской страницы, если указан, тогда эта страница будет внутренней странтцей
36
- *
37
- * @var string
38
- */
39
- public $page_parent_page;
40
-
41
- /**
42
- * Иконка меню в интерфейсе плагина
43
- *
44
- * Отображается в левом меню интерфейса плагина. Вы должны указать css класс dashicons.
45
- * Иконки можно найти тут: https://developer.wordpress.org/resource/dashicons/#admin-site-alt
46
- *
47
- * @var string
48
- */
49
- public $page_menu_dashicon;
50
-
51
- /**
52
- * Короткое описание пункта меню в интерфейсе плагина
53
- *
54
- * Используется для справки, что содержится в разделе меню. По умолчанию
55
- * описание не используется.
56
- *
57
- * @var string
58
- */
59
- public $page_menu_short_description;
60
-
61
- /**
62
- * Позиция закладки на страницу в главном меню плагина
63
- *
64
- * Может быть полезно, если вы хотите, что закладка на вашу страницу
65
- * была выше всех остальных закладок.
66
- * Вы должны установить число от 0 до 100, чем выше число, тем ниже
67
- * будет расположена закладка в меню.
68
- *
69
- * Пример: 0 - в самом конце, 100 - в самом начале
70
- *
71
- * @var int
72
- */
73
- public $page_menu_position = 10;
74
-
75
- /**
76
- * Показывать заголовок страницы?
77
- *
78
- * Заголовок страницы печатается в шапке интерфейса плагина, по некоторым
79
- * причинам вам может понадобиться его скрыть. Установите false, чтобы скрыть
80
- * заголовок страницы.
81
- *
82
- * @var bool
83
- */
84
- public $show_page_title = true;
85
-
86
- /**
87
- * Показывать правый сайдбар в контенте страницы?
88
- *
89
- * Сайдбар для рекламы, уведомлений, виджетов. Если вы планируете
90
- * например выводить рекламу для покупки премиум версии плагина,
91
- * вы можете включить правый сайдбар и вставить в него виджет с рекламой.
92
- *
93
- * Внимание! Сайбар будет показан только на страницах с типом options.
94
- *
95
- * @var bool
96
- */
97
- public $show_right_sidebar_in_options = false;
98
-
99
- /**
100
- * Показывать нижний сайдбар в контенте страницы?
101
- * Сайдбар для рекламы, уведомлений, виджетов. Если вы планируете
102
- * например выводить рекламу для покупки премиум версии плагина,
103
- * вы можете включить правый сайдбар и вставить в него виджет с рекламой.
104
- *
105
- * @var bool
106
- */
107
- public $show_bottom_sidebar = true;
108
-
109
- /**
110
- * @var array
111
- */
112
- public $page_menu = [];
113
-
114
- /**
115
- * @param Wbcr_Factory446_Plugin $plugin
116
- */
117
- public function __construct(Wbcr_Factory446_Plugin $plugin)
118
- {
119
- $this->menuIcon = FACTORY_PAGES_445_URL . '/templates/assets/img/webcraftic-plugin-icon.png';
120
- //$allow_multisite = apply_filters('wbcr_factory_446_core_admin_allow_multisite', false);
121
-
122
- if( is_multisite() && $this->available_for_multisite && $plugin->isNetworkActive() ) {
123
- $this->network = true;
124
- $this->menu_target = 'settings.php';
125
- $this->capabilitiy = 'manage_network';
126
- }
127
-
128
- parent::__construct($plugin);
129
-
130
- $this->title_plugin_action_link = __('Settings', 'wbcr_factory_pages_445');
131
-
132
- $this->setPageMenu();
133
- }
134
-
135
- /**
136
- * Requests assets (js and css) for the page.
137
- *
138
- * @return void
139
- * @since 1.0.0
140
- * @see FactoryPages445_AdminPage
141
- *
142
- */
143
- public function assets($scripts, $styles)
144
- {
145
-
146
- $this->scripts->request('jquery');
147
-
148
- $this->scripts->request([
149
- 'control.checkbox',
150
- 'control.dropdown',
151
- 'bootstrap.tooltip'
152
- ], 'bootstrap');
153
-
154
- $this->styles->request([
155
- 'bootstrap.core',
156
- 'bootstrap.form-group',
157
- 'bootstrap.separator',
158
- 'control.dropdown',
159
- 'control.checkbox'
160
- ], 'bootstrap');
161
-
162
- $this->styles->add(FACTORY_PAGES_445_URL . '/templates/assets/css/impressive.page.template.css');
163
- }
164
-
165
- /**
166
- * Получает заголовок плагина (обычно используется для брендинга)
167
- *
168
- * @return string
169
- */
170
- public function getPluginTitle()
171
- {
172
- /**
173
- * @since 4.0.9 - является устаревшим
174
- */
175
- $plugin_title = apply_filters('wbcr/factory/pages/impressive/plugin_title', $this->plugin->getPluginTitle(), $this->plugin->getPluginName());
176
-
177
- return $plugin_title;
178
- }
179
-
180
- /**
181
- * Получает полную ссылку текущей страницы
182
- *
183
- * @return string
184
- */
185
- public function getPageUrl()
186
- {
187
- /**
188
- * @since 4.0.9 - добавлен
189
- */
190
- return apply_filters('wbcr/factory/pages/impressive/base_url', $this->getBaseUrl(), $this->plugin->getPluginName(), $this->id);
191
- }
192
-
193
- /**
194
- * Get options with namespace
195
- *
196
- * @param $option_name
197
- * @param bool $default
198
- *
199
- * @return mixed|void
200
- */
201
- public function getOption($option_name, $default = false)
202
- {
203
- _deprecated_function(__METHOD__, '4.0.9', '$this->plugin->getOption()');
204
-
205
- return $this->plugin->getOption($option_name, $default);
206
- }
207
-
208
- /**
209
- * Shows a page or options
210
- *
211
- * @sinve 1.0.0
212
- * @return void
213
- */
214
- public function indexAction()
215
- {
216
- $page_menu = $this->getPageMenu();
217
- if( 'options' === $page_menu[$this->getResultId()]['type'] ) {
218
- $this->showOptions();
219
- } else {
220
- $this->showPage();
221
- }
222
- }
223
-
224
- /**
225
- * Flush cache and rules
226
- *
227
- * @sinve 4.0.0
228
- * @return void
229
- */
230
- public function flushCacheAndRulesAction()
231
- {
232
- check_admin_referer('wbcr_factory_' . $this->getResultId() . '_flush_action');
233
-
234
- if( class_exists('WbcrFactoryClearfy000_Helpers') ) {
235
- WbcrFactoryClearfy000_Helpers::flushPageCache();
236
- }
237
-
238
- /**
239
- * @since 4.0.1 - добавлен
240
- * @since 4.0.9 - изменено название экшена, без привязки к версии фреймворка
241
- */
242
- do_action('wbcr/factory/pages/impressive/after_form_save', $this->plugin, $this);
243
-
244
- $this->afterFormSave();
245
-
246
- $redirect_args = [
247
- $this->plugin->getPluginName() . '_saved' => 1
248
- ];
249
-
250
- /**
251
- * @since 4.0.1 - добавлен
252
- * @since 4.0.9 - изменено название экшена, без привязки к версии фреймворка
253
- */
254
- $redirect_args = apply_filters('wbcr/factory/pages/impressive/save_redirect_args', $redirect_args);
255
-
256
- $this->redirectToAction('index', $redirect_args);
257
- }
258
-
259
-
260
- /**
261
- * Вызывается всегда при загрузке страницы, перед опциями формы с типом страницы options
262
- */
263
- protected function warningNotice()
264
- {
265
- /*if( WP_CACHE ) {
266
- $this->printWarningNotice(__("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_445'));
267
- }*/
268
- // Метод предназначен для вызова в дочернем классе
269
- }
270
-
271
- /**
272
- * Вызывается всегда при загрузке страницы, перед опциями формы с типом страницы options
273
- *
274
- * @param array $notices
275
- *
276
- * @return array
277
- * @since 4.0.0
278
- *
279
- */
280
- protected function getActionNotices($notices)
281
- {
282
- // Метод предназначен для вызова в дочернем классе
283
- return $notices;
284
- }
285
-
286
- /**
287
- * Вызывается перед сохранением опций формы
288
- *
289
- * @return void
290
- * @since 4.0.0
291
- */
292
- protected function beforeFormSave()
293
- {
294
- // Метод предназначен для вызова в дочернем классе
295
- }
296
-
297
- /**
298
- * Вызывается после сохранением опций формы, когда выполнен сброс кеша и совершен редирект
299
- *
300
- * @return void
301
- * @since 4.0.0
302
- */
303
- protected function afterFormSave()
304
- {
305
- // Метод предназначен для вызова в дочернем классе
306
- }
307
-
308
- /**
309
- * Вызывается в процессе выполнения сохранения, но после сохранения всех опций
310
- *
311
- * @return void
312
- * @since 4.0.0
313
- */
314
- protected function formSaved()
315
- {
316
- // Метод предназначен для вызова в дочернем классе
317
- }
318
-
319
- public function printWarningNotice($message)
320
- {
321
- echo '<div class="alert alert-warning wbcr-factory-warning-notice"><p><span class="dashicons dashicons-warning"></span> ' . $message . '</p></div>';
322
- }
323
-
324
- public function printErrorNotice($message)
325
- {
326
- echo '<div class="alert alert-danger wbcr-factory-warning-notice"><p><span class="dashicons dashicons-dismiss"></span> ' . $message . '</p></div>';
327
- }
328
-
329
- public function printSuccessNotice($message)
330
- {
331
- echo '<div class="alert alert-success wbcr-factory-warning-notice"><p><span class="dashicons dashicons-plus"></span> ' . $message . '</p></div>';
332
- }
333
-
334
- /**
335
- * Печатает все зарегистрированные системные уведомления внутри интерфейса плагина
336
- * Типы уведомлений: предупреждения, ошибки, успешные выполнения задач
337
- */
338
- protected function printAllNotices()
339
- {
340
- $this->warningNotice();
341
- $this->showActionsNotice();
342
-
343
- /**
344
- * @since 4.0.1 - добавлен
345
- * @since 4.0.9 - изменено имя
346
- */
347
- do_action('wbcr/factory/pages/impressive/print_all_notices', $this->plugin, $this);
348
- }
349
-
350
- private function showActionsNotice()
351
- {
352
- $notices = [
353
- [
354
- 'conditions' => [
355
- $this->plugin->getPluginName() . '_saved' => '1'
356
- ],
357
- 'type' => 'success',
358
- 'message' => __('The settings have been updated successfully!', 'wbcr_factory_pages_445') . (WP_CACHE ? '<br>' . __("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_445') : '')
359
- ]
360
- ];
361
-
362
- /**
363
- * @since 4.0.1 - добавлен
364
- * @since 4.0.9 - изменено имя
365
- */
366
- $notices = apply_filters('wbcr/factory/pages/impressive/actions_notice', $notices, $this->plugin, $this->id);
367
-
368
- $notices = $this->getActionNotices($notices);
369
-
370
- foreach($notices as $key => $notice) {
371
- $show_message = true;
372
-
373
- if( isset($notice['conditions']) && !empty($notice['conditions']) ) {
374
- foreach($notice['conditions'] as $condition_name => $value) {
375
- if( !isset($_REQUEST[$condition_name]) || $_REQUEST[$condition_name] != $value ) {
376
- $show_message = false;
377
- }
378
- }
379
- }
380
- if( !$show_message ) {
381
- continue;
382
- }
383
-
384
- $notice_type = isset($notice['type']) ? $notice['type'] : 'success';
385
-
386
- switch( $notice_type ) {
387
- case 'success':
388
- $this->printSuccessNotice($notice['message']);
389
- break;
390
- case 'danger':
391
- $this->printErrorNotice($notice['message']);
392
- break;
393
- default:
394
- $this->printWarningNotice($notice['message']);
395
- break;
396
- }
397
- }
398
- }
399
-
400
- /**
401
- * Set page menu item
402
- */
403
- public function setPageMenu()
404
- {
405
- global $factory_impressive_page_menu;
406
-
407
- $dashicon = (!empty($this->page_menu_dashicon)) ? ' ' . $this->page_menu_dashicon : '';
408
- $short_description = (!empty($this->page_menu_short_description)) ? ' ' . $this->page_menu_short_description : '';
409
-
410
- if( is_multisite() && is_network_admin() && !$this->network ) {
411
- return;
412
- }
413
-
414
- $factory_impressive_page_menu[$this->getMenuScope()][$this->getResultId()] = [
415
- 'type' => $this->type, // page, options
416
- 'url' => $this->getBaseUrl(),
417
- 'title' => $this->getPageTitle() . ' <span class="dashicons' . $dashicon . '"></span>',
418
- 'short_description' => $short_description,
419
- 'position' => $this->page_menu_position,
420
- 'parent' => $this->page_parent_page
421
- ];
422
- }
423
-
424
- /**
425
- * Пространство имен для меню плагина
426
- * Можно приклеить меню к другому плагину, просто перезаписав этот метод в дочернем классе
427
- *
428
- * @return string
429
- */
430
- public function getMenuScope()
431
- {
432
- /**
433
- * @since 4.0.9 - добавлен
434
- */
435
- return apply_filters('wbcr/factory/pages/impressive/menu_scope', $this->plugin->getPluginName(), $this->plugin->getPluginName(), $this->id);
436
- }
437
-
438
- /**
439
- * Get page menu items
440
- *
441
- * @return mixed
442
- */
443
- protected function getPageMenu()
444
- {
445
- global $factory_impressive_page_menu;
446
-
447
- return $factory_impressive_page_menu[$this->getMenuScope()];
448
- }
449
-
450
- protected function getPageSubMenu($current_page = null)
451
- {
452
- $page_menu = $this->getPageMenu();
453
-
454
- $page_submenu = [];
455
- foreach($page_menu as $page_screen => $page) {
456
- if( !empty($page['parent']) ) {
457
- $page_parent_id = $this->getResultId($page['parent']);
458
-
459
- if( isset($page_menu[$page_parent_id]) ) {
460
- $page['title'] = strip_tags($page['title']);
461
- $page_submenu[$page_parent_id][$page_screen] = $page;
462
- }
463
- }
464
- }
465
-
466
- return isset($page_submenu[$current_page]) ? $page_submenu[$current_page] : null;
467
- }
468
-
469
- /**
470
- * @param int $a
471
- * @param int $b
472
- *
473
- * @return bool
474
- */
475
- protected function pageMenuSort($a, $b)
476
- {
477
- return $b['position'] <=> $a['position'];
478
- }
479
-
480
- protected function showPageMenu()
481
- {
482
- $page_menu = $this->getPageMenu();
483
- $self_page_id = $this->getResultId();
484
- $current_page = isset($page_menu[$self_page_id]) ? $page_menu[$self_page_id] : null;
485
-
486
- $parent_page_id = !empty($current_page['parent']) ? $this->getResultId($current_page['parent']) : null;
487
-
488
- uasort($page_menu, [$this, 'pageMenuSort']);
489
-
490
- ?>
491
- <ul>
492
- <?php foreach($page_menu as $page_screen => $page): ?>
493
- <?php
494
- if( !empty($page['parent']) ) {
495
- continue;
496
- }
497
- $active_tab = '';
498
- if( $page_screen == $self_page_id || $page_screen == $parent_page_id ) {
499
- $active_tab = ' wbcr-factory-active-tab';
500
- }
501
- ?>
502
- <li class="wbcr-factory-nav-tab<?php echo esc_attr($active_tab) ?>">
503
- <a href="<?php echo $page['url'] ?>" id="<?php echo esc_attr($page_screen) ?>-tab"
504
- class="wbcr-factory-tab__link">
505
- <div class="wbcr-factory-tab__title">
506
- <?php echo $page['title'] ?>
507
- </div>
508
- <?php if( !empty($page['short_description']) ): ?>
509
- <div class="wbcr-factory-tab__short-description">
510
- <?php echo $page['short_description'] ?>
511
- </div>
512
- <?php endif; ?>
513
- </a>
514
-
515
- <?php
516
- $sub_menu = $this->getPageSubMenu($page_screen);
517
- if( !empty($sub_menu) && $page_screen == $self_page_id || $page_screen == $parent_page_id ):
518
- ?>
519
- <ul class="wbcr-factory-submenu">
520
- <?php foreach($sub_menu as $s_menu_page_screen => $s_menu_page): ?>
521
- <?php
522
- $active_tab = '';
523
- if( $s_menu_page_screen == $this->getResultId() ) {
524
- $active_tab = 'wbcr-factory-tab-active';
525
- }
526
- ?>
527
- <li>
528
- <a href="<?php echo $s_menu_page['url'] ?>" id="<?= esc_attr($s_menu_page_screen) ?>-tab"
529
- class="<?= esc_attr($active_tab) ?>">
530
- <span class="dashicons dashicons-editor-break"></span><?php echo $s_menu_page['title'] ?>
531
- </a>
532
- </li>
533
- <?php endforeach; ?>
534
- </ul>
535
- <?php endif; ?>
536
- </li>
537
-
538
-
539
- <?php endforeach; ?>
540
- </ul>
541
- <?php
542
- }
543
-
544
-
545
- protected function showPageSubMenu()
546
- {
547
- $self_page_id = $this->getResultId();
548
- $page_menu = $this->getPageMenu();
549
- $current_page = isset($page_menu[$self_page_id]) ? $page_menu[$self_page_id] : null;
550
-
551
- $page_submenu = [];
552
- foreach($page_menu as $page_screen => $page) {
553
- if( !empty($page['parent']) ) {
554
- $page_parent_id = $this->getResultId($page['parent']);
555
-
556
- if( isset($page_menu[$page_parent_id]) ) {
557
- $page['title'] = strip_tags($page['title']);
558
- $page_submenu[$page_parent_id][$page_screen] = $page;
559
- }
560
- }
561
- }
562
-
563
- if( empty($page_submenu) ) {
564
- return;
565
- }
566
-
567
- $get_menu_id = null;
568
- $has_parent = !empty($current_page) && !empty($current_page['parent']);
569
- $parent_page_id = $has_parent ? $this->getResultId($current_page['parent']) : null;
570
-
571
- if( ($has_parent && isset($page_submenu[$parent_page_id])) ) {
572
- $get_menu_id = $parent_page_id;
573
- } else if( !$has_parent && isset($page_submenu[$self_page_id]) ) {
574
- $get_menu_id = $self_page_id;
575
- }
576
-
577
- if( !isset($page_submenu[$get_menu_id]) ) {
578
- return;
579
- }
580
-
581
- $unshift = [];
582
- if( isset($page_menu[$get_menu_id]) ) {
583
- $page_menu[$get_menu_id]['title'] = strip_tags($page_menu[$get_menu_id]['title']);
584
-
585
- $unshift[$get_menu_id][$get_menu_id] = $page_menu[$get_menu_id];
586
- $page_submenu[$get_menu_id] = $unshift[$get_menu_id] + $page_submenu[$get_menu_id];
587
- }
588
-
589
- ?>
590
- <h2 class="nav-tab-wrapper wp-clearfix">
591
- <?php foreach((array)$page_submenu[$get_menu_id] as $page_screen => $page): ?>
592
- <?php
593
- $active_tab = '';
594
- if( $page_screen == $this->getResultId() ) {
595
- $active_tab = ' nav-tab-active';
596
- }
597
- ?>
598
- <a href="<?php echo $page['url'] ?>" id="<?= esc_attr($page_screen) ?>-tab"
599
- class="nav-tab<?= esc_attr($active_tab) ?>">
600
- <?php echo $page['title'] ?>
601
- </a>
602
- <?php endforeach; ?>
603
- </h2>
604
- <?php
605
- }
606
-
607
- protected function showHeader()
608
- {
609
- ?>
610
- <style>
611
- .updated, .notice, .error {
612
- display: none !important;
613
- }
614
- </style>
615
- <div class="wbcr-factory-page-header">
616
- <div class="wbcr-factory-header-logo"><?= $this->getPluginTitle(); ?>
617
- <span class="version"><?= $this->plugin->getPluginVersion() ?> </span>
618
- <?php if( $this->show_page_title ): ?><span class="dash">—</span><?php endif; ?>
619
- </div>
620
- <?php if( $this->show_page_title ): ?>
621
- <div class="wbcr-factory-header-title">
622
- <h2><?php _e('Page') ?>: <?= $this->getPageTitle() ?></h2>
623
- </div>
624
- <?php endif; ?>
625
- <div class="wbcr-factory-control">
626
- <?php do_action('wbcr/factory/pages/impressive/header', $this->plugin->getPluginName()) ?>
627
-
628
- <?php if( $this->type == 'options' ): ?>
629
- <input name="<?= $this->plugin->getPluginName() ?>_save_action"
630
- class="wbcr-factory-button wbcr-factory-type-save" type="submit"
631
- value="<?php _e('Save', 'wbcr_factory_pages_445'); ?>">
632
- <?php wp_nonce_field('wbcr_factory_' . $this->getResultId() . '_save_action'); ?>
633
- <?php endif; ?>
634
- </div>
635
- </div>
636
- <?php
637
- }
638
-
639
- protected function isShowRightSidebar()
640
- {
641
- $widgets = $this->getPageWidgets('right');
642
-
643
- return !empty($widgets) && $this->show_right_sidebar_in_options;
644
- }
645
-
646
- protected function showRightSidebar()
647
- {
648
- $widgets = $this->getPageWidgets('right');
649
-
650
- if( empty($widgets) ) {
651
- return;
652
- }
653
-
654
- foreach($widgets as $widget_content):
655
- echo $widget_content;
656
- endforeach;
657
- }
658
-
659
- protected function showBottomSidebar()
660
- {
661
- $widgets = $this->getPageWidgets('bottom');
662
-
663
- if( empty($widgets) ) {
664
- return;
665
- }
666
- ?>
667
- <div class="row">
668
- <div class="wbcr-factory-top-sidebar">
669
- <?php foreach($widgets as $widget_content): ?>
670
- <div class="col-sm-4">
671
- <?= $widget_content ?>
672
- </div>
673
- <?php endforeach; ?>
674
- </div>
675
- <?php
676
- }
677
-
678
- /**
679
- * @param string $position
680
- *
681
- * @return mixed|void
682
- */
683
- protected function getPageWidgets($position = 'bottom')
684
- {
685
- $widgets = [];
686
-
687
- /**
688
- * @since 4.0.1 - добавлен
689
- * @since 4.0.9 - изменено имя
690
- */
691
- $widgets = apply_filters('wbcr/factory/pages/impressive/widgets', $widgets, $position, $this->plugin, $this);
692
-
693
- return $widgets;
694
- }
695
-
696
- protected function showOptions()
697
- {
698
- $form = new Wbcr_FactoryForms443_Form([
699
- 'scope' => rtrim($this->plugin->getPrefix(), '_'),
700
- 'name' => $this->getResultId() . "-options"
701
- ], $this->plugin);
702
-
703
- $form->setProvider(new Wbcr_FactoryForms443_OptionsValueProvider($this->plugin));
704
-
705
- $options = $this->getPageOptions();
706
-
707
- if( isset($options[0]) && isset($options[0]['items']) && is_array($options[0]['items']) ) {
708
- foreach($options[0]['items'] as $key => $value) {
709
-
710
- if( $value['type'] == 'div' || $value['type'] == 'more-link' ) {
711
- if( isset($options[0]['items'][$key]['items']) && !empty($options[0]['items'][$key]['items']) ) {
712
- foreach($options[0]['items'][$key]['items'] as $group_key => $group_value) {
713
- $options[0]['items'][$key]['items'][$group_key]['layout']['column-left'] = '4';
714
- $options[0]['items'][$key]['items'][$group_key]['layout']['column-right'] = '8';
715
- }
716
-
717
- continue;
718
- }
719
- }
720
-
721
- if( in_array($value['type'], [
722
- 'checkbox',
723
- 'textarea',
724
- 'integer',
725
- 'textbox',
726
- 'dropdown',
727
- 'list',
728
- 'wp-editor'
729
- ]) ) {
730
- $options[0]['items'][$key]['layout']['column-left'] = '4';
731
- $options[0]['items'][$key]['layout']['column-right'] = '8';
732
- }
733
- }
734
- }
735
-
736
- $form->add($options);
737
-
738
- if( isset($_POST[$this->plugin->getPluginName() . '_save_action']) ) {
739
-
740
- check_admin_referer('wbcr_factory_' . $this->getResultId() . '_save_action');
741
-
742
- if( !current_user_can('administrator') && !current_user_can($this->capabilitiy) ) {
743
- wp_die(__('You do not have permission to edit page.', 'wbcr_factory_pages_445'));
744
- }
745
-
746
- /**
747
- * @since 4.0.1 - добавлен
748
- * @since 4.0.9 - изменено имя
749
- */
750
- do_action('wbcr/factory/pages/impressive/before_form_save', $form, $this->plugin, $this);
751
-
752
- $this->beforeFormSave();
753
-
754
- $form->save();
755
-
756
- /**
757
- * @since 4.0.1 - добавлен
758
- * @since 4.0.9 - изменено имя
759
- */
760
- do_action('wbcr/factory/pages/impressive/form_saved', $form, $this->plugin, $this);
761
-
762
- $this->formSaved();
763
-
764
- $this->redirectToAction('flush-cache-and-rules', [
765
- '_wpnonce' => wp_create_nonce('wbcr_factory_' . $this->getResultId() . '_flush_action')
766
- ]);
767
- }
768
-
769
- ?>
770
- <div id="WBCR" class="wrap">
771
- <div class="wbcr-factory-pages-445-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
772
- <div class="wbcr-factory-options wbcr-factory-options-<?= esc_attr($this->id) ?>">
773
- <div class="wbcr-factory-left-navigation-bar">
774
- <?php $this->showPageMenu() ?>
775
- </div>
776
- <?php
777
- $min_height = 0;
778
- foreach($this->getPageMenu() as $page) {
779
- if( !isset($page['parent']) || empty($page['parent']) ) {
780
- $min_height += 77;
781
- }
782
- }
783
- ?>
784
- <div class="wbcr-factory-page-inner-wrap">
785
- <div class="wbcr-factory-content-section<?php if( !$this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
786
- <?php //$this->showPageSubMenu()
787
- ?>
788
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
789
- <form method="post" class="form-horizontal">
790
- <?php $this->showHeader(); ?>
791
- <?php $this->printAllNotices(); ?>
792
- <?php $form->html(); ?>
793
- </form>
794
- </div>
795
- </div>
796
- <?php if( $this->isShowRightSidebar() ): ?>
797
- <div class="wbcr-factory-right-sidebar-section">
798
- <?php $this->showRightSidebar(); ?>
799
- </div>
800
- <?php endif; ?>
801
- </div>
802
- </div>
803
- <?php
804
- if( $this->show_bottom_sidebar ) {
805
- $this->showBottomSidebar();
806
- }
807
- ?>
808
- <div class="clearfix"></div>
809
- </div>
810
- </div>
811
- </div>
812
- <?php
813
- }
814
-
815
- protected function showPage($content = null)
816
- { ?>
817
- <div id="WBCR" class="wrap">
818
- <div class="wbcr-factory-pages-445-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
819
- <div class="wbcr-factory-page wbcr-factory-page-<?= $this->id ?>">
820
- <?php $this->showHeader(); ?>
821
- <div class="wbcr-factory-left-navigation-bar">
822
- <?php $this->showPageMenu() ?>
823
- </div>
824
- <?php
825
- $min_height = 0;
826
- foreach($this->getPageMenu() as $page) {
827
- if( !isset($page['parent']) || empty($page['parent']) ) {
828
- $min_height += 77;
829
- }
830
- }
831
- ?>
832
- <div class="wbcr-factory-page-inner-wrap">
833
- <div class="wbcr-factory-content-section<?php if( !$this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
834
- <?php //$this->showPageSubMenu()
835
- ?>
836
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
837
- <?php $this->printAllNotices(); ?>
838
- <?php if( empty($content) ): ?>
839
- <?php $this->showPageContent() ?>
840
- <?php else: ?>
841
- <?php echo $content; ?>
842
- <?php endif; ?>
843
- </div>
844
- </div>
845
- <?php if( $this->isShowRightSidebar() ): ?>
846
- <div class="wbcr-factory-right-sidebar-section" style="min-height:<?= $min_height ?>px">
847
- <?php $this->showRightSidebar(); ?>
848
- </div>
849
- <?php endif; ?>
850
- </div>
851
- </div>
852
- <div class="clearfix"></div>
853
- <?php $this->showBottomSidebar(); ?>
854
- </div>
855
- </div>
856
- <?php
857
- }
858
-
859
- /**
860
- * @return array
861
- */
862
- public function getPageOptions()
863
- {
864
- // используется в классе потомке
865
- }
866
-
867
- /**
868
- * @return void
869
- */
870
- public function showPageContent()
871
- {
872
- // используется в классе потомке
873
- }
874
-
875
- /**
876
- * Shows the html block with a confirmation dialog.
877
- *
878
- * @sinve 1.0.0
879
- * @return void
880
- */
881
- public function confirmPageTemplate($data)
882
- {
883
- ?>
884
- <div id="WBCR" class="wrap">
885
- <div class="wbcr-factory-pages-445-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
886
- <div id="wbcr-factory-confirm-dialog">
887
- <h2><?php echo $data['title'] ?></h2>
888
- <p class="wbcr-factory-confirm-description"><?php echo $data['description'] ?></p>
889
- <?php if( isset($data['hint']) ): ?>
890
- <p class="wbcr-factory-confirm-hint"><?php echo $data['hint'] ?></p>
891
- <?php endif; ?>
892
- <div class='wbcr-factory-confirm-actions'>
893
- <?php foreach($data['actions'] as $action) { ?>
894
- <a href='<?php echo $action['url'] ?>' class='<?php echo $action['class'] ?>'>
895
- <?php echo $action['title'] ?>
896
- </a>
897
- <?php } ?>
898
- </div>
899
- </div>
900
- </div>
901
- </div>
902
- <?php
903
- }
904
- }
905
- }
906
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/pages/templates/index.php DELETED
@@ -1,2 +0,0 @@
1
- <?php
2
- // Silence is golden.
 
 
libs/factory/templates/assets/css/clearfy-base.css CHANGED
@@ -8,7 +8,7 @@
8
  #WBCR {
9
  /* subscribe widget */
10
  }
11
- #WBCR .wbcr-factory-templates-103-impressive-page-template .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
12
  display: inline-block;
13
  position: relative;
14
  content: 'PRO';
@@ -26,18 +26,18 @@
26
  right: auto;
27
  z-index: 11;
28
  }
29
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion {
30
  padding: 30px 80px;
31
  }
32
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion h3 {
33
  margin: 0 0 20px;
34
  }
35
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion .wbcr-factory-inner-contanier {
36
  border: 2px dashed #8bc34a;
37
  background: #fff;
38
  padding: 20px;
39
  }
40
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion .wbcr-factory-activate-premium {
41
  display: inline-block;
42
  cursor: pointer;
43
  line-height: 16px;
@@ -56,16 +56,16 @@
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-templates-103-impressive-page-template .wbcr-factory-templates-103-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-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion .wbcr-factory-activate-premium:focus {
65
  outline: none;
66
  border: 0;
67
  }
68
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion .wbcr-factory-purchase-premium {
69
  display: inline-block;
70
  cursor: pointer;
71
  line-height: 16px;
@@ -84,22 +84,22 @@
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-templates-103-impressive-page-template .wbcr-factory-templates-103-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-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-suggetion .wbcr-factory-purchase-premium:focus {
93
  outline: none;
94
  border: 0;
95
  }
96
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion {
97
  background: #fff;
98
  color: #353535;
99
  font-weight: 600;
100
  border: 2px dashed #8bc34a;
101
  }
102
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion h3 {
103
  margin: 0 0 20px;
104
  padding: 10px 0;
105
  text-align: center;
@@ -110,16 +110,16 @@
110
  vertical-align: middle;
111
  text-transform: uppercase;
112
  }
113
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion ul {
114
  position: relative;
115
  margin-bottom: 20px;
116
  }
117
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion ul li {
118
  font-size: 15px;
119
  padding: 7px;
120
  padding-left: 20px;
121
  }
122
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion ul li:before {
123
  content: " ";
124
  display: inline-block;
125
  width: 0.4em;
@@ -133,7 +133,7 @@
133
  -o-transform: rotate(45deg);
134
  transform: rotate(45deg);
135
  }
136
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion .wbcr-factory-purchase-premium {
137
  display: block;
138
  cursor: pointer;
139
  line-height: 16px;
@@ -152,12 +152,12 @@
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-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-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-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion .wbcr-factory-purchase-premium:focus {
161
  outline: none;
162
  border: 0;
163
  }
@@ -220,34 +220,34 @@
220
  font-size: 12px;
221
  }
222
  @media screen and (max-width: 1550px) {
223
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-templates-103-multisite-pro-suggetion {
224
  padding: 10px 80px;
225
  }
226
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion {
227
  padding: 10px;
228
  }
229
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-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-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion ul {
236
  margin-bottom: 20px;
237
  }
238
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion ul li {
239
  font-size: 13px;
240
  padding: 2px;
241
  padding-left: 10px;
242
  }
243
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-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-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-103-pro-suggettion .wbcr-factory-purchase-premium {
251
  font-weight: 700;
252
  line-height: 16px;
253
  font-size: 12px;
8
  #WBCR {
9
  /* subscribe widget */
10
  }
11
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
12
  display: inline-block;
13
  position: relative;
14
  content: 'PRO';
26
  right: auto;
27
  z-index: 11;
28
  }
29
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-suggetion {
30
  padding: 30px 80px;
31
  }
32
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-suggetion h3 {
33
  margin: 0 0 20px;
34
  }
35
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-suggetion .wbcr-factory-inner-contanier {
36
  border: 2px dashed #8bc34a;
37
  background: #fff;
38
  padding: 20px;
39
  }
40
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-suggetion .wbcr-factory-activate-premium:focus {
65
  outline: none;
66
  border: 0;
67
  }
68
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-suggetion .wbcr-factory-purchase-premium:focus {
93
  outline: none;
94
  border: 0;
95
  }
96
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion {
97
  background: #fff;
98
  color: #353535;
99
  font-weight: 600;
100
  border: 2px dashed #8bc34a;
101
  }
102
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion ul {
114
  position: relative;
115
  margin-bottom: 20px;
116
  }
117
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion ul li {
118
  font-size: 15px;
119
  padding: 7px;
120
  padding-left: 20px;
121
  }
122
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion .wbcr-factory-purchase-premium:focus {
161
  outline: none;
162
  border: 0;
163
  }
220
  font-size: 12px;
221
  }
222
  @media screen and (max-width: 1550px) {
223
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-templates-106-multisite-pro-suggetion {
224
  padding: 10px 80px;
225
  }
226
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion {
227
  padding: 10px;
228
  }
229
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion ul {
236
  margin-bottom: 20px;
237
  }
238
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion ul li {
239
  font-size: 13px;
240
  padding: 2px;
241
  padding-left: 10px;
242
  }
243
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-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-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-106-pro-suggettion .wbcr-factory-purchase-premium {
251
  font-weight: 700;
252
  line-height: 16px;
253
  font-size: 12px;
libs/factory/templates/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-templates-103-components {
7
  padding: 0 20px 20px;
8
  text-align: center;
9
  }
10
- #WBCR .wbc-factory-templates-103-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-templates-103-components .plugin-card:first-child {
22
  margin-left: 0;
23
  }
24
- #WBCR .wbc-factory-templates-103-components .plugin-card .plugin-card-bottom {
25
  position: absolute;
26
  bottom: 0;
27
  right: 0;
28
  left: 0;
29
  }
30
- #WBCR .wbc-factory-templates-103-components .plugin-card .plugin-card-top {
31
  min-height: 163px;
32
  }
33
- #WBCR .wbc-factory-templates-103-components .plugin-card .desc,
34
- #WBCR .wbc-factory-templates-103-components .plugin-card .name {
35
  margin-right: 0 !important;
36
  }
37
- #WBCR .wbc-factory-templates-103-components .plugin-card .name h3 {
38
  font-size: 17px;
39
  margin-top: 0 !important;
40
  }
41
- #WBCR .wbc-factory-templates-103-components .plugin-card .install-now {
42
  float: right;
43
  }
44
- #WBCR .wbc-factory-templates-103-components .plugin-card .delete-now {
45
  float: right;
46
  margin-left: 5px;
47
  }
48
- #WBCR .wbc-factory-templates-103-components .plugin-card .delete-now .dashicons,
49
- #WBCR .wbc-factory-templates-103-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-templates-103-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-templates-103-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-templates-103-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-templates-103-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-templates-103-components .plugin-card.premium {
109
  border-color: #e8d7b2;
110
  background-color: #fff9eb;
111
  }
112
- #WBCR .wbc-factory-templates-103-components .plugin-card.plugin-status-deactive {
113
  background-color: #f1f1f1;
114
  }
115
- #WBCR .wbc-factory-templates-103-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-templates-103-components .plugin-card.plugin-status-deactive .plugin-icon {
122
  opacity: 0.3;
123
  }
124
- #WBCR .wbc-factory-templates-103-components .plugin-card.plugin-status-deactive .desc {
125
  color: #afafaf;
126
  }
127
- #WBCR .wbc-factory-templates-103-components .plugin-card.plugin-status-deactive.premium {
128
  background-color: #f9f2f1;
129
  }
130
  @media screen and (max-width: 1750px) {
131
- #WBCR .wbc-factory-templates-103-components .plugin-card {
132
  width: 49%;
133
  }
134
  }
135
  @media screen and (max-width: 1350px) {
136
- #WBCR .wbc-factory-templates-103-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-templates-106-components {
7
  padding: 0 20px 20px;
8
  text-align: center;
9
  }
10
+ #WBCR .wbc-factory-templates-106-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-templates-106-components .plugin-card:first-child {
22
  margin-left: 0;
23
  }
24
+ #WBCR .wbc-factory-templates-106-components .plugin-card .plugin-card-bottom {
25
  position: absolute;
26
  bottom: 0;
27
  right: 0;
28
  left: 0;
29
  }
30
+ #WBCR .wbc-factory-templates-106-components .plugin-card .plugin-card-top {
31
  min-height: 163px;
32
  }
33
+ #WBCR .wbc-factory-templates-106-components .plugin-card .desc,
34
+ #WBCR .wbc-factory-templates-106-components .plugin-card .name {
35
  margin-right: 0 !important;
36
  }
37
+ #WBCR .wbc-factory-templates-106-components .plugin-card .name h3 {
38
  font-size: 17px;
39
  margin-top: 0 !important;
40
  }
41
+ #WBCR .wbc-factory-templates-106-components .plugin-card .install-now {
42
  float: right;
43
  }
44
+ #WBCR .wbc-factory-templates-106-components .plugin-card .delete-now {
45
  float: right;
46
  margin-left: 5px;
47
  }
48
+ #WBCR .wbc-factory-templates-106-components .plugin-card .delete-now .dashicons,
49
+ #WBCR .wbc-factory-templates-106-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-templates-106-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-templates-106-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-templates-106-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-templates-106-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-templates-106-components .plugin-card.premium {
109
  border-color: #e8d7b2;
110
  background-color: #fff9eb;
111
  }
112
+ #WBCR .wbc-factory-templates-106-components .plugin-card.plugin-status-deactive {
113
  background-color: #f1f1f1;
114
  }
115
+ #WBCR .wbc-factory-templates-106-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-templates-106-components .plugin-card.plugin-status-deactive .plugin-icon {
122
  opacity: 0.3;
123
  }
124
+ #WBCR .wbc-factory-templates-106-components .plugin-card.plugin-status-deactive .desc {
125
  color: #afafaf;
126
  }
127
+ #WBCR .wbc-factory-templates-106-components .plugin-card.plugin-status-deactive.premium {
128
  background-color: #f9f2f1;
129
  }
130
  @media screen and (max-width: 1750px) {
131
+ #WBCR .wbc-factory-templates-106-components .plugin-card {
132
  width: 49%;
133
  }
134
  }
135
  @media screen and (max-width: 1350px) {
136
+ #WBCR .wbc-factory-templates-106-components .plugin-card {
137
  width: 100%;
138
  }
139
  }
libs/factory/templates/assets/css/libs/autocomplete.css CHANGED
@@ -5,44 +5,44 @@
5
  *
6
  * @since 2.2.0
7
  */
8
- #wbcr-factory-templates-103__search_options_form #wbcr-factory-templates-103__autocomplete {
9
  width: 100%;
10
  box-sizing: border-box;
11
  border-color: #d6d4d4;
12
  }
13
- #wbcr-factory-templates-103__search_options_form #wbcr-factory-templates-103__autocomplete::placeholder,
14
- #wbcr-factory-templates-103__search_options_form #wbcr-factory-templates-103__autocomplete::-moz-placeholder,
15
- #wbcr-factory-templates-103__search_options_form #wbcr-factory-templates-103__autocomplete::-webkit-input-placeholder {
16
  color: #eae9e9;
17
  }
18
- #wbcr-factory-templates-103__search_options_form.wbcr-factory-templates-103__autocomplete-wrap {
19
  padding: 10px;
20
  }
21
- #wbcr-factory-templates-103__search_options_form .wbcr-factory-templates-103__autocomplete-label {
22
  display: block !important;
23
  }
24
- .wbcr-factory-templates-103__autocomplete-suggestions {
25
  border: 1px solid #999;
26
  background: #FFF;
27
  overflow: auto;
28
  }
29
- .wbcr-factory-templates-103__autocomplete-suggestion {
30
  padding: 2px 5px;
31
  white-space: nowrap;
32
  overflow: hidden;
33
  cursor: pointer;
34
  }
35
- .wbcr-factory-templates-103__autocomplete-selected {
36
  background: #F0F0F0;
37
  }
38
- .wbcr-factory-templates-103__autocomplete-suggestions strong {
39
  font-weight: normal;
40
  color: #3399FF;
41
  }
42
- .wbcr-factory-templates-103__autocomplete-group {
43
  padding: 2px 5px;
44
  }
45
- .wbcr-factory-templates-103__autocomplete-group strong {
46
  display: block;
47
  border-bottom: 1px solid #000;
48
  }
5
  *
6
  * @since 2.2.0
7
  */
8
+ #wbcr-factory-templates-106__search_options_form #wbcr-factory-templates-106__autocomplete {
9
  width: 100%;
10
  box-sizing: border-box;
11
  border-color: #d6d4d4;
12
  }
13
+ #wbcr-factory-templates-106__search_options_form #wbcr-factory-templates-106__autocomplete::placeholder,
14
+ #wbcr-factory-templates-106__search_options_form #wbcr-factory-templates-106__autocomplete::-moz-placeholder,
15
+ #wbcr-factory-templates-106__search_options_form #wbcr-factory-templates-106__autocomplete::-webkit-input-placeholder {
16
  color: #eae9e9;
17
  }
18
+ #wbcr-factory-templates-106__search_options_form.wbcr-factory-templates-106__autocomplete-wrap {
19
  padding: 10px;
20
  }
21
+ #wbcr-factory-templates-106__search_options_form .wbcr-factory-templates-106__autocomplete-label {
22
  display: block !important;
23
  }
24
+ .wbcr-factory-templates-106__autocomplete-suggestions {
25
  border: 1px solid #999;
26
  background: #FFF;
27
  overflow: auto;
28
  }
29
+ .wbcr-factory-templates-106__autocomplete-suggestion {
30
  padding: 2px 5px;
31
  white-space: nowrap;
32
  overflow: hidden;
33
  cursor: pointer;
34
  }
35
+ .wbcr-factory-templates-106__autocomplete-selected {
36
  background: #F0F0F0;
37
  }
38
+ .wbcr-factory-templates-106__autocomplete-suggestions strong {
39
  font-weight: normal;
40
  color: #3399FF;
41
  }
42
+ .wbcr-factory-templates-106__autocomplete-group {
43
  padding: 2px 5px;
44
  }
45
+ .wbcr-factory-templates-106__autocomplete-group strong {
46
  display: block;
47
  border-bottom: 1px solid #000;
48
  }
libs/factory/templates/assets/css/page-setup.css CHANGED
@@ -2,13 +2,13 @@
2
  margin: 0;
3
  padding: 0;
4
  }
5
- .w-factory-templates-103__form-buttons {
6
  text-align: right;
7
  padding: 10px;
8
  background: #f7f7f7;
9
  border-top: 1px solid #e8e8e8;
10
  }
11
- .w-factory-templates-103__form-buttons .w-factory-templates-103__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-templates-103__form-buttons .w-factory-templates-103__skip-button:active,
20
- .w-factory-templates-103__form-buttons .w-factory-templates-103__skip-button:hover,
21
- .w-factory-templates-103__form-buttons .w-factory-templates-103__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-templates-103__form-buttons .w-factory-templates-103__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-templates-103__form-buttons .w-factory-templates-103__continue-button:active,
35
- .w-factory-templates-103__form-buttons .w-factory-templates-103__continue-button:hover,
36
- .w-factory-templates-103__form-buttons .w-factory-templates-103__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-templates-103-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-templates-103-setup__inner-wrap,
50
- .w-factory-templates-103__setup-form .factory-form-layout {
51
  padding: 30px;
52
  }
53
- .w-factory-templates-103-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-templates-103-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-templates-103-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-templates-103-setup-steps li.active {
87
  border-color: #ff1c40 !important;
88
  color: #222;
89
  font-weight: 700;
90
  }
91
- .w-factory-templates-103-setup-steps li.active::before {
92
  border-color: #ff1c40 !important;
93
  }
94
- .w-factory-templates-103-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-templates-103-setup-steps li a:focus,
103
- .w-factory-templates-103-setup-steps li a:hover {
104
  color: #111;
105
  text-decoration: underline;
106
  }
107
- /*.w-factory-templates-103-setup-steps li.done {
108
  border-color: #f57d4f;
109
  color: #f57d4f
110
  }
111
 
112
- .w-factory-templates-103-setup-steps li.done::before {
113
  border-color: #f57d4f;
114
  background: #f57d4f
115
  }*/
116
- .w-factory-templates-103-setup .w-factory-templates-103-setup-actions {
117
  overflow: hidden;
118
  margin: 20px 0 0;
119
  position: relative;
120
  }
121
- .w-factory-templates-103-setup-content p:last-child {
122
  margin-bottom: 0;
123
  }
124
- .w-factory-templates-103-setup-content p.store-setup {
125
  margin-top: 0;
126
  }
127
- .w-factory-templates-103-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-templates-103-logo {
135
  text-align: center;
136
  }
137
- .w-factory-templates-103-logo img {
138
  max-width: 250px;
139
  }
140
- .w-factory-templates-103-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-templates-103-setup-content table {
148
  font-size: 1em;
149
  line-height: 1.75;
150
  color: #666;
151
  }
152
- .w-factory-templates-103-setup-content table thead {
153
  background: #f1f1f1;
154
  }
155
- .w-factory-templates-103-setup-content table th,
156
- .w-factory-templates-103-setup-content table td {
157
  padding: 10px 15px;
158
  }
159
- .w-factory-templates-103-setup-content h1,
160
- .w-factory-templates-103-setup-content h2,
161
- .w-factory-templates-103-setup-content h3,
162
- .w-factory-templates-103-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-templates-103-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-templates-103-setup-step__new_onboarding-welcome {
178
  font-size: 22px !important;
179
  }
180
- .w-factory-templates-103-setup-content a {
181
  color: #f57d4f;
182
  }
183
- .w-factory-templates-103-setup-content a:focus,
184
- .w-factory-templates-103-setup-content a:hover {
185
  color: #111;
186
  }
187
- .w-factory-templates-103-setup-content table.tax-rates {
188
  width: 100%;
189
  font-size: 0.92em;
190
  }
191
- .w-factory-templates-103-setup-content table.tax-rates th {
192
  padding: 0;
193
  text-align: center;
194
  width: auto;
195
  vertical-align: middle;
196
  }
197
- .w-factory-templates-103-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-templates-103-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-templates-103-setup-content table.tax-rates td.sort {
212
  cursor: move;
213
  color: #ccc;
214
  }
215
- .w-factory-templates-103-setup-content table.tax-rates td.sort::before {
216
  content: "\f333";
217
  font-family: dashicons;
218
  }
219
- .w-factory-templates-103-setup-content table.tax-rates td.readonly {
220
  background: #f5f5f5;
221
  }
222
- .w-factory-templates-103-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-templates-103-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-templates-103-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-templates-103-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-templates-103-setup-content .w-factory-templates-103-setup-pages {
259
  width: 100%;
260
  border-top: 1px solid #eee;
261
  }
262
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages thead th {
263
  display: none;
264
  }
265
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages .page-name {
266
  width: 30%;
267
  font-weight: 700;
268
  }
269
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages td,
270
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages th {
271
  padding: 14px 0;
272
  border-bottom: 1px solid #eee;
273
  }
274
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages td:first-child,
275
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages th:first-child {
276
  padding-right: 9px;
277
  }
278
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages th {
279
  padding-top: 0;
280
  }
281
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-pages .page-options p {
282
  color: #777;
283
  margin: 6px 0 0 24px;
284
  line-height: 1.75;
285
  }
286
- .w-factory-templates-103-setup-content .w-factory-templates-103-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-templates-103-setup-content .w-factory-templates-103-setup-pages .page-options p label {
294
  line-height: 1;
295
  }
296
  @media screen and (max-width: 782px) {
297
- .w-factory-templates-103-setup-content .form-table tbody th {
298
  width: auto;
299
  }
300
  }
301
- .w-factory-templates-103-setup-content .twitter-share-button {
302
  float: right;
303
  }
304
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps {
305
  overflow: hidden;
306
  margin: 0 0 24px;
307
  padding-bottom: 2px;
308
  }
309
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps h2 {
310
  margin-bottom: 12px;
311
  }
312
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps .w-factory-templates-103-setup-next-steps-first {
313
  float: left;
314
  width: 50%;
315
  box-sizing: border-box;
316
  }
317
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps .w-factory-templates-103-setup-next-steps-last {
318
  float: right;
319
  width: 50%;
320
  box-sizing: border-box;
321
  }
322
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul {
323
  padding: 0 2em 0 0;
324
  list-style: none outside;
325
  margin: 0;
326
  }
327
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul li a {
328
  display: block;
329
  padding: 0 0 0.75em;
330
  }
331
- .w-factory-templates-103-setup-content .w-factory-templates-103-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-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .setup-product a.button:active,
346
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .setup-product a.button:focus,
347
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .setup-product a.button:hover {
348
  background: #f5f5f5;
349
  border-color: #aaa;
350
  }
351
- .w-factory-templates-103-setup-content .w-factory-templates-103-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-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .setup-product a.button-primary:active,
359
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .setup-product a.button-primary:focus,
360
- .w-factory-templates-103-setup-content .w-factory-templates-103-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-templates-103-setup-content .w-factory-templates-103-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-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .learn-more a::before {
378
  content: "\f105";
379
  }
380
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .video-walkthrough a::before {
381
  content: "\f126";
382
  }
383
- .w-factory-templates-103-setup-content .w-factory-templates-103-setup-next-steps ul .newsletter a::before {
384
  content: "\f465";
385
  }
386
- .w-factory-templates-103-setup-content .updated,
387
- .w-factory-templates-103-setup-content .woocommerce-newsletter {
388
  padding: 24px 24px 0;
389
  margin: 0 0 24px;
390
  overflow: hidden;
391
  background: #f5f5f5;
392
  }
393
- .w-factory-templates-103-setup-content .updated p,
394
- .w-factory-templates-103-setup-content .woocommerce-newsletter p {
395
  padding: 0;
396
  margin: 0 0 12px;
397
  }
398
- .w-factory-templates-103-setup-content .updated form,
399
- .w-factory-templates-103-setup-content .updated p:last-child,
400
- .w-factory-templates-103-setup-content .woocommerce-newsletter form,
401
- .w-factory-templates-103-setup-content .woocommerce-newsletter p:last-child {
402
  margin: 0 0 24px;
403
  }
404
- .w-factory-templates-103-setup-content .checkbox input[type=checkbox] {
405
  opacity: 0;
406
  position: absolute;
407
  left: -9999px;
408
  }
409
- .w-factory-templates-103-setup-content .checkbox label {
410
  position: relative;
411
  display: inline-block;
412
  padding-left: 28px;
413
  }
414
- .w-factory-templates-103-setup-content .checkbox label::after,
415
- .w-factory-templates-103-setup-content .checkbox label::before {
416
  position: absolute;
417
  content: "";
418
  display: inline-block;
419
  }
420
- .w-factory-templates-103-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-templates-103-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-templates-103-setup-content .checkbox input[type=checkbox] + label::after {
442
  content: none;
443
  }
444
- .w-factory-templates-103-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
  content: "";
446
  }
447
- .w-factory-templates-103-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
  outline: #3b99fc auto 5px;
449
  }
450
- .w-factory-templates-103-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-templates-106__form-buttons {
6
  text-align: right;
7
  padding: 10px;
8
  background: #f7f7f7;
9
  border-top: 1px solid #e8e8e8;
10
  }
11
+ .w-factory-templates-106__form-buttons .w-factory-templates-106__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-templates-106__form-buttons .w-factory-templates-106__skip-button:active,
20
+ .w-factory-templates-106__form-buttons .w-factory-templates-106__skip-button:hover,
21
+ .w-factory-templates-106__form-buttons .w-factory-templates-106__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-templates-106__form-buttons .w-factory-templates-106__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-templates-106__form-buttons .w-factory-templates-106__continue-button:active,
35
+ .w-factory-templates-106__form-buttons .w-factory-templates-106__continue-button:hover,
36
+ .w-factory-templates-106__form-buttons .w-factory-templates-106__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-templates-106-setup {
42
  text-align: center;
43
  max-width: 900px;
44
  margin: 65px auto 24px;
46
  background: #f1f1f1;
47
  padding: 0;
48
  }
49
+ .w-factory-templates-106-setup__inner-wrap,
50
+ .w-factory-templates-106__setup-form .factory-form-layout {
51
  padding: 30px;
52
  }
53
+ .w-factory-templates-106-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-templates-106-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-templates-106-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-templates-106-setup-steps li.active {
87
  border-color: #ff1c40 !important;
88
  color: #222;
89
  font-weight: 700;
90
  }
91
+ .w-factory-templates-106-setup-steps li.active::before {
92
  border-color: #ff1c40 !important;
93
  }
94
+ .w-factory-templates-106-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-templates-106-setup-steps li a:focus,
103
+ .w-factory-templates-106-setup-steps li a:hover {
104
  color: #111;
105
  text-decoration: underline;
106
  }
107
+ /*.w-factory-templates-106-setup-steps li.done {
108
  border-color: #f57d4f;
109
  color: #f57d4f
110
  }
111
 
112
+ .w-factory-templates-106-setup-steps li.done::before {
113
  border-color: #f57d4f;
114
  background: #f57d4f
115
  }*/
116
+ .w-factory-templates-106-setup .w-factory-templates-106-setup-actions {
117
  overflow: hidden;
118
  margin: 20px 0 0;
119
  position: relative;
120
  }
121
+ .w-factory-templates-106-setup-content p:last-child {
122
  margin-bottom: 0;
123
  }
124
+ .w-factory-templates-106-setup-content p.store-setup {
125
  margin-top: 0;
126
  }
127
+ .w-factory-templates-106-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-templates-106-logo {
135
  text-align: center;
136
  }
137
+ .w-factory-templates-106-logo img {
138
  max-width: 250px;
139
  }
140
+ .w-factory-templates-106-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-templates-106-setup-content table {
148
  font-size: 1em;
149
  line-height: 1.75;
150
  color: #666;
151
  }
152
+ .w-factory-templates-106-setup-content table thead {
153
  background: #f1f1f1;
154
  }
155
+ .w-factory-templates-106-setup-content table th,
156
+ .w-factory-templates-106-setup-content table td {
157
  padding: 10px 15px;
158
  }
159
+ .w-factory-templates-106-setup-content h1,
160
+ .w-factory-templates-106-setup-content h2,
161
+ .w-factory-templates-106-setup-content h3,
162
+ .w-factory-templates-106-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-templates-106-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-templates-106-setup-step__new_onboarding-welcome {
178
  font-size: 22px !important;
179
  }
180
+ .w-factory-templates-106-setup-content a {
181
  color: #f57d4f;
182
  }
183
+ .w-factory-templates-106-setup-content a:focus,
184
+ .w-factory-templates-106-setup-content a:hover {
185
  color: #111;
186
  }
187
+ .w-factory-templates-106-setup-content table.tax-rates {
188
  width: 100%;
189
  font-size: 0.92em;
190
  }
191
+ .w-factory-templates-106-setup-content table.tax-rates th {
192
  padding: 0;
193
  text-align: center;
194
  width: auto;
195
  vertical-align: middle;
196
  }
197
+ .w-factory-templates-106-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-templates-106-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-templates-106-setup-content table.tax-rates td.sort {
212
  cursor: move;
213
  color: #ccc;
214
  }
215
+ .w-factory-templates-106-setup-content table.tax-rates td.sort::before {
216
  content: "\f333";
217
  font-family: dashicons;
218
  }
219
+ .w-factory-templates-106-setup-content table.tax-rates td.readonly {
220
  background: #f5f5f5;
221
  }
222
+ .w-factory-templates-106-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-templates-106-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-templates-106-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-templates-106-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-templates-106-setup-content .w-factory-templates-106-setup-pages {
259
  width: 100%;
260
  border-top: 1px solid #eee;
261
  }
262
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages thead th {
263
  display: none;
264
  }
265
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages .page-name {
266
  width: 30%;
267
  font-weight: 700;
268
  }
269
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages td,
270
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages th {
271
  padding: 14px 0;
272
  border-bottom: 1px solid #eee;
273
  }
274
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages td:first-child,
275
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages th:first-child {
276
  padding-right: 9px;
277
  }
278
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages th {
279
  padding-top: 0;
280
  }
281
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-pages .page-options p {
282
  color: #777;
283
  margin: 6px 0 0 24px;
284
  line-height: 1.75;
285
  }
286
+ .w-factory-templates-106-setup-content .w-factory-templates-106-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-templates-106-setup-content .w-factory-templates-106-setup-pages .page-options p label {
294
  line-height: 1;
295
  }
296
  @media screen and (max-width: 782px) {
297
+ .w-factory-templates-106-setup-content .form-table tbody th {
298
  width: auto;
299
  }
300
  }
301
+ .w-factory-templates-106-setup-content .twitter-share-button {
302
  float: right;
303
  }
304
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps {
305
  overflow: hidden;
306
  margin: 0 0 24px;
307
  padding-bottom: 2px;
308
  }
309
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps h2 {
310
  margin-bottom: 12px;
311
  }
312
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps .w-factory-templates-106-setup-next-steps-first {
313
  float: left;
314
  width: 50%;
315
  box-sizing: border-box;
316
  }
317
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps .w-factory-templates-106-setup-next-steps-last {
318
  float: right;
319
  width: 50%;
320
  box-sizing: border-box;
321
  }
322
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul {
323
  padding: 0 2em 0 0;
324
  list-style: none outside;
325
  margin: 0;
326
  }
327
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul li a {
328
  display: block;
329
  padding: 0 0 0.75em;
330
  }
331
+ .w-factory-templates-106-setup-content .w-factory-templates-106-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-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .setup-product a.button:active,
346
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .setup-product a.button:focus,
347
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .setup-product a.button:hover {
348
  background: #f5f5f5;
349
  border-color: #aaa;
350
  }
351
+ .w-factory-templates-106-setup-content .w-factory-templates-106-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-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .setup-product a.button-primary:active,
359
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .setup-product a.button-primary:focus,
360
+ .w-factory-templates-106-setup-content .w-factory-templates-106-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-templates-106-setup-content .w-factory-templates-106-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-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .learn-more a::before {
378
  content: "\f105";
379
  }
380
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .video-walkthrough a::before {
381
  content: "\f126";
382
  }
383
+ .w-factory-templates-106-setup-content .w-factory-templates-106-setup-next-steps ul .newsletter a::before {
384
  content: "\f465";
385
  }
386
+ .w-factory-templates-106-setup-content .updated,
387
+ .w-factory-templates-106-setup-content .woocommerce-newsletter {
388
  padding: 24px 24px 0;
389
  margin: 0 0 24px;
390
  overflow: hidden;
391
  background: #f5f5f5;
392
  }
393
+ .w-factory-templates-106-setup-content .updated p,
394
+ .w-factory-templates-106-setup-content .woocommerce-newsletter p {
395
  padding: 0;
396
  margin: 0 0 12px;
397
  }
398
+ .w-factory-templates-106-setup-content .updated form,
399
+ .w-factory-templates-106-setup-content .updated p:last-child,
400
+ .w-factory-templates-106-setup-content .woocommerce-newsletter form,
401
+ .w-factory-templates-106-setup-content .woocommerce-newsletter p:last-child {
402
  margin: 0 0 24px;
403
  }
404
+ .w-factory-templates-106-setup-content .checkbox input[type=checkbox] {
405
  opacity: 0;
406
  position: absolute;
407
  left: -9999px;
408
  }
409
+ .w-factory-templates-106-setup-content .checkbox label {
410
  position: relative;
411
  display: inline-block;
412
  padding-left: 28px;
413
  }
414
+ .w-factory-templates-106-setup-content .checkbox label::after,
415
+ .w-factory-templates-106-setup-content .checkbox label::before {
416
  position: absolute;
417
  content: "";
418
  display: inline-block;
419
  }
420
+ .w-factory-templates-106-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-templates-106-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-templates-106-setup-content .checkbox input[type=checkbox] + label::after {
442
  content: none;
443
  }
444
+ .w-factory-templates-106-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
  content: "";
446
  }
447
+ .w-factory-templates-106-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
  outline: #3b99fc auto 5px;
449
  }
450
+ .w-factory-templates-106-setup-content .checkbox input[type=checkbox]:checked + label::before {
451
  background: #935687;
452
  border-color: #935687;
453
  }
libs/factory/templates/assets/js/clearfy-globals.js CHANGED
@@ -2,8 +2,8 @@
2
  * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
  * и самого Clearfy.
4
  *
5
- * $.wbcr_factory_templates_103.app - методы для работы с приложением. Скрыть, показать уведомления.
6
- * $.wbcr_factory_templates_103.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_templates_103 ) {
17
- $.wbcr_factory_templates_103 = {};
18
  }
19
 
20
  //todo: Переопредление для совместимости со старыми версиями плагинов.
21
- $.wbcr_factory_templates_103.filters = $.wbcr_factory_templates_103.filters || $.wfactory_446.filters;
22
  //todo: Переопредление для совместимости со старыми версиями плагинов.
23
- $.wbcr_factory_templates_103.hooks = $.wbcr_factory_templates_103.hooks || $.wfactory_446.hooks;
24
 
25
- $.wbcr_factory_templates_103.app = $.wbcr_factory_templates_103.app || {
26
  /**
27
  * Создает и показывает уведомление внутри интерфейса Clearfy
28
  *
@@ -68,12 +68,12 @@
68
  /**
69
  * Хук выполняет проивольную функцию, после того как уведомление отображено
70
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
- * Пример регистрации хука $.wfactory_446.hooks.add('wbcr/factory_templates_103/updated',
72
  * function(noticeId) {});
73
  * @param {string} noticeId - id уведомления
74
  */
75
- $.wfactory_446.hooks.run('wbcr/factory_templates_103/showed_notice', [noticeId]);
76
- $.wfactory_446.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_446.hooks.add('wbcr/factory_templates_103/updated',
102
  * function(noticeId)
103
  * {});
104
  * @param {string} noticeId - id уведомления
105
  */
106
- $.wfactory_446.hooks.run('wbcr/factory_templates_103/hidded_notice', [noticeId]);
107
- $.wfactory_446.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
  });
109
  },
110
 
@@ -121,7 +121,7 @@
121
 
122
  };
123
 
124
- $.wfactory_446.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_446.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_446.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_446.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
- if( !($('#WBCR').length && $.wbcr_factory_templates_103) ) {
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_templates_103.app.showNotice(response.data.error_message, 'danger');
188
  }
189
  });
190
 
191
- $.wfactory_446.hooks.add('core/components/update_error', function(button, data, response) {
192
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
- if( !($('#WBCR').length && $.wbcr_factory_templates_103) ) {
194
  return false;
195
  }
196
 
197
  if( response.data && response.data.error_message ) {
198
- $.wbcr_factory_templates_103.app.showNotice(response.data.error_message, 'danger');
199
  }
200
 
201
  });
202
 
203
- $.wfactory_446.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_446.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
- if( !($('#WBCR').length && $.wbcr_factory_templates_103) ) {
215
  return false;
216
  }
217
 
218
- $.wbcr_factory_templates_103.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_templates_106.app - методы для работы с приложением. Скрыть, показать уведомления.
6
+ * $.wbcr_factory_templates_106.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
  *
8
  * Copyright 2018, Webcraftic, http://webcraftic.com
9
  *
13
  (function($) {
14
  'use strict';
15
 
16
+ if( !$.wbcr_factory_templates_106 ) {
17
+ $.wbcr_factory_templates_106 = {};
18
  }
19
 
20
  //todo: Переопредление для совместимости со старыми версиями плагинов.
21
+ $.wbcr_factory_templates_106.filters = $.wbcr_factory_templates_106.filters || $.wfactory_454.filters;
22
  //todo: Переопредление для совместимости со старыми версиями плагинов.
23
+ $.wbcr_factory_templates_106.hooks = $.wbcr_factory_templates_106.hooks || $.wfactory_454.hooks;
24
 
25
+ $.wbcr_factory_templates_106.app = $.wbcr_factory_templates_106.app || {
26
  /**
27
  * Создает и показывает уведомление внутри интерфейса Clearfy
28
  *
68
  /**
69
  * Хук выполняет проивольную функцию, после того как уведомление отображено
70
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
+ * Пример регистрации хука $.wfactory_454.hooks.add('wbcr/factory_templates_106/updated',
72
  * function(noticeId) {});
73
  * @param {string} noticeId - id уведомления
74
  */
75
+ $.wfactory_454.hooks.run('wbcr/factory_templates_106/showed_notice', [noticeId]);
76
+ $.wfactory_454.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
77
  });
78
 
79
  return noticeId;
98
  /**
99
  * Хук выполняет проивольную функцию, после того как уведомление скрыто
100
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
101
+ * Пример регистрации хука $.wfactory_454.hooks.add('wbcr/factory_templates_106/updated',
102
  * function(noticeId)
103
  * {});
104
  * @param {string} noticeId - id уведомления
105
  */
106
+ $.wfactory_454.hooks.run('wbcr/factory_templates_106/hidded_notice', [noticeId]);
107
+ $.wfactory_454.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
  });
109
  },
110
 
121
 
122
  };
123
 
124
+ $.wfactory_454.hooks.add('core/components/pre_activate', function(button) {
125
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
  if( !$('#WBCR').length ) {
127
  return false;
137
  }
138
  });
139
 
140
+ $.wfactory_454.hooks.add('core/components/deactivated', function(button, data, response) {
141
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
  if( !$('#WBCR').length ) {
143
  return false;
156
  }
157
  });
158
 
159
+ $.wfactory_454.hooks.add('core/components/deleted', function(button) {
160
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
  if( !$('#WBCR').length ) {
162
  return false;
175
  }
176
  });
177
 
178
+ $.wfactory_454.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
+ if( !($('#WBCR').length && $.wbcr_factory_templates_106) ) {
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_templates_106.app.showNotice(response.data.error_message, 'danger');
188
  }
189
  });
190
 
191
+ $.wfactory_454.hooks.add('core/components/update_error', function(button, data, response) {
192
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
+ if( !($('#WBCR').length && $.wbcr_factory_templates_106) ) {
194
  return false;
195
  }
196
 
197
  if( response.data && response.data.error_message ) {
198
+ $.wbcr_factory_templates_106.app.showNotice(response.data.error_message, 'danger');
199
  }
200
 
201
  });
202
 
203
+ $.wfactory_454.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_454.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
+ if( !($('#WBCR').length && $.wbcr_factory_templates_106) ) {
215
  return false;
216
  }
217
 
218
+ $.wbcr_factory_templates_106.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
219
  });
220
 
221
  })(jQuery);
libs/factory/templates/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_templates_103.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_templates_103.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_templates_103.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_templates_103.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_templates_106.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_templates_106.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_templates_106.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_templates_106.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
libs/factory/templates/assets/js/clearfy-search-options.js CHANGED
@@ -39,10 +39,10 @@
39
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
40
  }
41
 
42
- $('#wbcr-factory-templates-103__autocomplete').wfactory_clearfy_autocomplete({
43
  lookup: wfactory_clearfy_search_options,
44
  onSelect: function(suggestion) {
45
- $('#wbcr-factory-templates-103__autocomplete').prop("disabled", true);
46
  window.location.href = suggestion.data.page_url;
47
  }
48
  });
39
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
40
  }
41
 
42
+ $('#wbcr-factory-templates-106__autocomplete').wfactory_clearfy_autocomplete({
43
  lookup: wfactory_clearfy_search_options,
44
  onSelect: function(suggestion) {
45
+ $('#wbcr-factory-templates-106__autocomplete').prop("disabled", true);
46
  window.location.href = suggestion.data.page_url;
47
  }
48
  });
libs/factory/templates/assets/js/clearfy-widgets.js CHANGED
@@ -25,9 +25,9 @@ jQuery(function($) {
25
  if( !response || !response.success ) {
26
  if( response.data ) {
27
  console.log(response.data.error_message);
28
- noticeId = $.wbcr_factory_templates_103.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
29
  setTimeout(function() {
30
- $.wbcr_factory_templates_103.app.hideNotice(noticeId);
31
  }, 5000);
32
  } else {
33
  console.log(response);
@@ -52,9 +52,9 @@ jQuery(function($) {
52
  console.log(xhr.responseText);
53
  console.log(thrownError);
54
 
55
- var noticeId = $.wbcr_factory_templates_103.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
56
  setTimeout(function() {
57
- $.wbcr_factory_templates_103.app.hideNotice(noticeId);
58
  }, 5000);
59
  }
60
  });
25
  if( !response || !response.success ) {
26
  if( response.data ) {
27
  console.log(response.data.error_message);
28
+ noticeId = $.wbcr_factory_templates_106.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
29
  setTimeout(function() {
30
+ $.wbcr_factory_templates_106.app.hideNotice(noticeId);
31
  }, 5000);
32
  } else {
33
  console.log(response);
52
  console.log(xhr.responseText);
53
  console.log(thrownError);
54
 
55
+ var noticeId = $.wbcr_factory_templates_106.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
56
  setTimeout(function() {
57
+ $.wbcr_factory_templates_106.app.hideNotice(noticeId);
58
  }, 5000);
59
  }
60
  });
libs/factory/templates/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-templates-103__autocomplete-selected",suggestion:"wbcr-factory-templates-103__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-templates-103__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-templates-103__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-templates-106__autocomplete-selected",suggestion:"wbcr-factory-templates-106__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-templates-106__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-templates-106__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/templates/boot.php CHANGED
@@ -14,22 +14,22 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( defined('FACTORY_TEMPLATES_103_LOADED') ) {
18
  return;
19
  }
20
 
21
- define('FACTORY_TEMPLATES_103_LOADED', true);
22
 
23
- define('FACTORY_TEMPLATES_103', '1.0.3');
24
 
25
- define('FACTORY_TEMPLATES_103_DIR', dirname(__FILE__));
26
- define('FACTORY_TEMPLATES_103_URL', plugins_url(null, __FILE__));
27
 
28
- load_plugin_textdomain('wbcr_factory_templates_103', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
- require(FACTORY_TEMPLATES_103_DIR . '/includes/ajax-handlers.php');
31
- require(FACTORY_TEMPLATES_103_DIR . '/includes/class-helpers.php');
32
- require(FACTORY_TEMPLATES_103_DIR . '/includes/class-configurate.php');
33
 
34
  // module provides function only for the admin area
35
  if( is_admin() ) {
@@ -38,13 +38,13 @@ if( is_admin() ) {
38
  * на все страницы админпанели.
39
  */
40
  add_action('admin_enqueue_scripts', function ($hook) {
41
- wp_enqueue_script('wbcr-factory-templates-103-global', FACTORY_TEMPLATES_103_URL . '/assets/js/clearfy-globals.js', [
42
  'jquery',
43
- 'wfactory-446-core-general'
44
- ], FACTORY_TEMPLATES_103);
45
 
46
- require_once FACTORY_TEMPLATES_103_DIR . '/includes/class-search-options.php';
47
- $all_options = \WBCR\Factory_Templates_103\Search_Options::get_all_options();
48
 
49
  if( empty($all_options) ) {
50
  return;
@@ -72,21 +72,21 @@ if( is_admin() ) {
72
  //return;
73
  //}
74
 
75
- wp_localize_script('wbcr-factory-templates-103-global', 'wfactory_clearfy_search_options', $formated_options);
76
  });
77
 
78
- if( defined('FACTORY_PAGES_445_LOADED') ) {
79
- require(FACTORY_TEMPLATES_103_DIR . '/pages/templates/impressive/class-page-template-impressive.php');
80
- require(FACTORY_TEMPLATES_103_DIR . '/pages/templates/impressive/class-pages.php');
81
- require(FACTORY_TEMPLATES_103_DIR . '/pages/templates/impressive-lite/class-page-template-impressive-lite.php');
82
 
83
- require(FACTORY_TEMPLATES_103_DIR . '/pages/class-page-more-features.php');
84
- require(FACTORY_TEMPLATES_103_DIR . '/pages/class-page-license.php');
85
- require(FACTORY_TEMPLATES_103_DIR . '/pages/class-pages-components.php');
86
 
87
- require(FACTORY_TEMPLATES_103_DIR . '/pages/setup-parts/class-step.php');
88
- require(FACTORY_TEMPLATES_103_DIR . '/pages/setup-parts/class-step-form.php');
89
- require(FACTORY_TEMPLATES_103_DIR . '/pages/setup-parts/class-step-custom.php');
90
- require(FACTORY_TEMPLATES_103_DIR . '/pages/class-page-setup.php');
91
  }
92
  }
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_TEMPLATES_106_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_TEMPLATES_106_LOADED', true);
22
 
23
+ define('FACTORY_TEMPLATES_106', '1.0.6');
24
 
25
+ define('FACTORY_TEMPLATES_106_DIR', dirname(__FILE__));
26
+ define('FACTORY_TEMPLATES_106_URL', plugins_url(null, __FILE__));
27
 
28
+ load_plugin_textdomain('wbcr_factory_templates_106', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
+ require(FACTORY_TEMPLATES_106_DIR . '/includes/ajax-handlers.php');
31
+ require(FACTORY_TEMPLATES_106_DIR . '/includes/class-helpers.php');
32
+ require(FACTORY_TEMPLATES_106_DIR . '/includes/class-configurate.php');
33
 
34
  // module provides function only for the admin area
35
  if( is_admin() ) {
38
  * на все страницы админпанели.
39
  */
40
  add_action('admin_enqueue_scripts', function ($hook) {
41
+ wp_enqueue_script('wbcr-factory-templates-106-global', FACTORY_TEMPLATES_106_URL . '/assets/js/clearfy-globals.js', [
42
  'jquery',
43
+ 'wfactory-454-core-general'
44
+ ], FACTORY_TEMPLATES_106);
45
 
46
+ require_once FACTORY_TEMPLATES_106_DIR . '/includes/class-search-options.php';
47
+ $all_options = \WBCR\Factory_Templates_106\Search_Options::get_all_options();
48
 
49
  if( empty($all_options) ) {
50
  return;
72
  //return;
73
  //}
74
 
75
+ wp_localize_script('wbcr-factory-templates-106-global', 'wfactory_clearfy_search_options', $formated_options);
76
  });
77
 
78
+ if( defined('FACTORY_PAGES_453_LOADED') ) {
79
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/templates/impressive/class-page-template-impressive.php');
80
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/templates/impressive/class-pages.php');
81
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/templates/impressive-lite/class-page-template-impressive-lite.php');
82
 
83
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/class-page-more-features.php');
84
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/class-page-license.php');
85
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/class-pages-components.php');
86
 
87
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/setup-parts/class-step.php');
88
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/setup-parts/class-step-form.php');
89
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/setup-parts/class-step-custom.php');
90
+ require(FACTORY_TEMPLATES_106_DIR . '/pages/class-page-setup.php');
91
  }
92
  }
libs/factory/templates/includes/ajax-handlers.php CHANGED
@@ -15,12 +15,12 @@ if( !defined('ABSPATH') ) {
15
  /**
16
  * Обработчик ajax запросов для виджета подписки на новости
17
  *
18
- * @param Wbcr_Factory446_Plugin $plugin_instance
19
  *
20
  * @since 2.3.0
21
  *
22
  */
23
- function wbcr_factory_templates_103_subscribe($plugin_instance)
24
  {
25
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
26
 
@@ -34,11 +34,11 @@ function wbcr_factory_templates_103_subscribe($plugin_instance)
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_templates_103')]);
38
  }
39
 
40
  if( empty($group_id) ) {
41
- wp_send_json_error(['error_message' => __('Group ID is empty!', 'wbcr_factory_templates_103')]);
42
  }
43
 
44
  $response = wp_remote_post('https://clearfy.pro/wp-json/mailerlite/v1/subscribe/', [
@@ -63,7 +63,7 @@ function wbcr_factory_templates_103_subscribe($plugin_instance)
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_templates_103')]);
67
 
68
  die();
69
  }
@@ -71,12 +71,12 @@ function wbcr_factory_templates_103_subscribe($plugin_instance)
71
  /**
72
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
73
  *
74
- * @param Wbcr_Factory446_Plugin $plugin_instance
75
  *
76
  * @since 2.0.7
77
  *
78
  */
79
- function wbcr_factory_templates_103_check_license($plugin_instance)
80
  {
81
 
82
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
@@ -91,7 +91,7 @@ function wbcr_factory_templates_103_check_license($plugin_instance)
91
  check_admin_referer("clearfy_activate_license_for_{$plugin_name}");
92
 
93
  if( empty($action) || !in_array($action, ['activate', 'deactivate', 'sync', 'unsubscribe']) ) {
94
- wp_send_json_error(['error_message' => __('Licensing action not passed or this action is prohibited!', 'wbcr_factory_templates_103')]);
95
  die();
96
  }
97
 
@@ -102,23 +102,23 @@ function wbcr_factory_templates_103_check_license($plugin_instance)
102
  switch( $action ) {
103
  case 'activate':
104
  if( empty($license_key) || strlen($license_key) > 32 ) {
105
- wp_send_json_error(['error_message' => __('License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_templates_103')]);
106
  } else {
107
  $plugin_instance->premium->activate($license_key);
108
- $success_message = __('Your license has been successfully activated', 'wbcr_factory_templates_103');
109
  }
110
  break;
111
  case 'deactivate':
112
  $plugin_instance->premium->deactivate();
113
- $success_message = __('The license is deactivated', 'wbcr_factory_templates_103');
114
  break;
115
  case 'sync':
116
  $plugin_instance->premium->sync();
117
- $success_message = __('The license has been updated', 'wbcr_factory_templates_103');
118
  break;
119
  case 'unsubscribe':
120
  $plugin_instance->premium->cancel_paid_subscription();
121
- $success_message = __('Subscription success cancelled', 'wbcr_factory_templates_103');
122
  break;
123
  }
124
  } catch( Exception $e ) {
15
  /**
16
  * Обработчик ajax запросов для виджета подписки на новости
17
  *
18
+ * @param Wbcr_Factory454_Plugin $plugin_instance
19
  *
20
  * @since 2.3.0
21
  *
22
  */
23
+ function wbcr_factory_templates_106_subscribe($plugin_instance)
24
  {
25
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
26
 
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_templates_106')]);
38
  }
39
 
40
  if( empty($group_id) ) {
41
+ wp_send_json_error(['error_message' => __('Group ID is empty!', 'wbcr_factory_templates_106')]);
42
  }
43
 
44
  $response = wp_remote_post('https://clearfy.pro/wp-json/mailerlite/v1/subscribe/', [
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_templates_106')]);
67
 
68
  die();
69
  }
71
  /**
72
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
73
  *
74
+ * @param Wbcr_Factory454_Plugin $plugin_instance
75
  *
76
  * @since 2.0.7
77
  *
78
  */
79
+ function wbcr_factory_templates_106_check_license($plugin_instance)
80
  {
81
 
82
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
91
  check_admin_referer("clearfy_activate_license_for_{$plugin_name}");
92
 
93
  if( empty($action) || !in_array($action, ['activate', 'deactivate', 'sync', 'unsubscribe']) ) {
94
+ wp_send_json_error(['error_message' => __('Licensing action not passed or this action is prohibited!', 'wbcr_factory_templates_106')]);
95
  die();
96
  }
97
 
102
  switch( $action ) {
103
  case 'activate':
104
  if( empty($license_key) || strlen($license_key) > 32 ) {
105
+ wp_send_json_error(['error_message' => __('License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_templates_106')]);
106
  } else {
107
  $plugin_instance->premium->activate($license_key);
108
+ $success_message = __('Your license has been successfully activated', 'wbcr_factory_templates_106');
109
  }
110
  break;
111
  case 'deactivate':
112
  $plugin_instance->premium->deactivate();
113
+ $success_message = __('The license is deactivated', 'wbcr_factory_templates_106');
114
  break;
115
  case 'sync':
116
  $plugin_instance->premium->sync();
117
+ $success_message = __('The license has been updated', 'wbcr_factory_templates_106');
118
  break;
119
  case 'unsubscribe':
120
  $plugin_instance->premium->cancel_paid_subscription();
121
+ $success_message = __('Subscription success cancelled', 'wbcr_factory_templates_106');
122
  break;
123
  }
124
  } catch( Exception $e ) {
libs/factory/templates/includes/class-configurate.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -19,9 +19,9 @@ if( !defined('ABSPATH') ) {
19
  abstract class Configurate {
20
 
21
  /**
22
- * @param \Wbcr_Factory446_Plugin $plugin
23
  */
24
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
25
  {
26
  $this->plugin = $plugin;
27
  $this->registerActionsAndFilters();
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
19
  abstract class Configurate {
20
 
21
  /**
22
+ * @param \Wbcr_Factory454_Plugin $plugin
23
  */
24
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
25
  {
26
  $this->plugin = $plugin;
27
  $this->registerActionsAndFilters();
libs/factory/templates/includes/class-helpers.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php
2
- namespace WBCR\Factory_Templates_103;
3
 
4
  // Exit if accessed directly
5
  if( !defined('ABSPATH') ) {
1
  <?php
2
+ namespace WBCR\Factory_Templates_106;
3
 
4
  // Exit if accessed directly
5
  if( !defined('ABSPATH') ) {
libs/factory/templates/includes/class-search-options.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103;
4
 
5
  /**
6
  * Class Search options
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106;
4
 
5
  /**
6
  * Class Search options
libs/factory/templates/pages/class-page-license.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -82,7 +82,7 @@ class License extends PageBase {
82
 
83
  /**
84
  * @since 2.0.7
85
- * @var \WBCR\Factory_446\Premium\Provider
86
  */
87
  protected $premium;
88
 
@@ -100,7 +100,7 @@ class License extends PageBase {
100
 
101
  /**
102
  * @since 2.0.7
103
- * @var \WBCR\Factory_446\Premium\Interfaces\License
104
  */
105
  protected $premium_license;
106
 
@@ -109,9 +109,9 @@ class License extends PageBase {
109
 
110
  /**
111
  * {@inheritdoc}
112
- * @param \Wbcr_Factory446_Plugin $plugin
113
  */
114
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
115
  {
116
  $this->plugin = $plugin;
117
 
@@ -138,8 +138,8 @@ class License extends PageBase {
138
  {
139
  parent::assets($scripts, $styles);
140
 
141
- $this->styles->add(FACTORY_TEMPLATES_103_URL . '/assets/css/license-manager.css');
142
- $this->scripts->add(FACTORY_TEMPLATES_103_URL . '/assets/js/clearfy-license-manager.js');
143
  }
144
 
145
  /**
@@ -149,7 +149,7 @@ class License extends PageBase {
149
  */
150
  public function ajax_handler()
151
  {
152
- wbcr_factory_templates_103_check_license($this->plugin);
153
  }
154
 
155
  /**
@@ -159,7 +159,7 @@ class License extends PageBase {
159
  {
160
  ?>
161
  <div id="wcl-license-wrapper"
162
- data-loader="<?php echo FACTORY_TEMPLATES_103_URL . '/assets/img/loader.gif'; ?>"
163
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
164
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
165
  <?php $this->show_license_form(); ?>
@@ -265,11 +265,11 @@ class License extends PageBase {
265
  if( $this->is_premium ):
266
  ?>
267
  <p style="margin-top: 10px;">
268
- <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_templates_103'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
269
  </p>
270
  <?php else: ?>
271
  <p style="margin-top: 10px;">
272
- <?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_templates_103'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
273
  </p>
274
  <?php endif;
275
  }
@@ -281,16 +281,16 @@ class License extends PageBase {
281
  {
282
  ?>
283
  <div id="license-manager"
284
- class="factory-bootstrap-446 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
285
  <div>
286
- <h3><?php printf(__('Activate %s', 'wbcr_factory_templates_103'), $this->plan_name) ?></h3>
287
  <?php echo $this->get_plan_description() ?>
288
  </div>
289
  <br>
290
  <?php if( is_wp_error($notice) ) : ?>
291
- <div class="license-message <?= $this->get_license_type() ?>-license-message">
292
  <div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
293
- <h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_templates_103') ?></h4>
294
  </div>
295
  </div>
296
  <?php endif; ?>
@@ -300,20 +300,20 @@ class License extends PageBase {
300
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
301
  class="purchase-premium" target="_blank" rel="noopener">
302
  <span class="btn btn-gold btn-inner-wrap">
303
- <?php _e('Upgrade to Premium', 'wbcr_factory_templates_103') ?>
304
  </span>
305
  </a>
306
- <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_templates_103'), $this->plugin->getPluginTitle()) ?></p>
307
  <?php endif; ?>
308
- <div class="license-details-block <?= $this->get_license_type() ?>-details-block">
309
  <?php if( $this->is_premium ): ?>
310
  <a data-action="deactivate" href="#"
311
  class="btn btn-default btn-small license-delete-button wcl-control-btn">
312
- <?php _e('Delete Key', 'wbcr_factory_templates_103') ?>
313
  </a>
314
  <a data-action="sync" href="#"
315
  class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
316
- <?php _e('Synchronization', 'wbcr_factory_templates_103') ?>
317
  </a>
318
  <?php endif; ?>
319
  <h3>
@@ -327,24 +327,24 @@ class License extends PageBase {
327
  </h3>
328
  <?php if( $this->is_premium ): ?>
329
  <div class="license-key-identity">
330
- <code><?= esc_attr($this->get_hidden_license_key()) ?></code>
331
  </div>
332
  <?php endif; ?>
333
  <div class="license-key-description">
334
  <?php if( !$this->is_premium ): ?>
335
- <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_templates_103') ?></p>
336
  <?php else: ?>
337
- <p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_templates_103') ?></p>
338
  <?php endif; ?>
339
  <?php if( $this->is_premium && $this->premium_has_subscription ): ?>
340
  <p class="activate-trial-hint">
341
- <?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_templates_103') ?>
342
  </p>
343
  <?php endif; ?>
344
 
345
  <?php if( $this->get_license_type() == 'trial' ): ?>
346
  <p class="activate-error-hint">
347
- <?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_templates_103'), '') ?>
348
  </p>
349
  <?php endif; ?>
350
  </div>
@@ -352,30 +352,30 @@ class License extends PageBase {
352
  <tr>
353
  <!--<td class="license-param license-param-domain">
354
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
355
- <span class="license-value-name"><?php _e('domain', 'wbcr_factory_templates_103') ?></span>
356
  </td>-->
357
  <td class="license-param license-param-days">
358
- <span class="license-value"><?= $this->get_plan() ?></span>
359
- <span class="license-value-name"><?php _e('plan', 'wbcr_factory_templates_103') ?></span>
360
  </td>
361
  <?php if( $this->is_premium ) : ?>
362
  <td class="license-param license-param-sites">
363
  <span class="license-value">
364
  <?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
365
- <?php _e('of', 'wbcr_factory_templates_103') ?>
366
  <?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
367
- <span class="license-value-name"><?php _e('active sites', 'wbcr_factory_templates_103') ?></span>
368
  </td>
369
  <?php endif; ?>
370
  <td class="license-param license-param-version">
371
- <span class="license-value"><?= $this->plugin->getPluginVersion() ?></span>
372
  <span class="license-value-name"><span>version</span></span>
373
  </td>
374
  <?php if( $this->is_premium ): ?>
375
  <td class="license-param license-param-days">
376
  <?php if( $this->get_license_type() == 'trial' ): ?>
377
- <span class="license-value"><?php _e('EXPIRED!', 'wbcr_factory_templates_103') ?></span>
378
- <span class="license-value-name"><?php _e('please update the key', 'wbcr_factory_templates_103') ?></span>
379
  <?php else: ?>
380
  <span class="license-value">
381
  <?php
@@ -385,9 +385,9 @@ class License extends PageBase {
385
  echo $this->get_expiration_days();
386
  }
387
  ?>
388
- <small> <?php _e('day(s)', 'wbcr_factory_templates_103') ?></small>
389
  </span>
390
- <span class="license-value-name"><?php _e('remained', 'wbcr_factory_templates_103') ?></span>
391
  <?php endif; ?>
392
  </td>
393
  <?php endif; ?>
@@ -398,14 +398,14 @@ class License extends PageBase {
398
  <div class="license-input">
399
  <form action="" method="post">
400
  <?php if($this->is_premium): ?>
401
- <p><?php _e('Have a key to activate the premium version? Paste it here:', 'wbcr_factory_templates_103') ?><p>
402
  <?php else: ?>
403
- <p><?php _e('Have a key to activate the plugin? Paste it here:', 'wbcr_factory_templates_103') ?>
404
  <p>
405
  <?php endif; ?>
406
  <button data-action="activate" class="btn btn-default wcl-control-btn" type="button"
407
  id="license-submit">
408
- <?php _e('Submit Key', 'wbcr_factory_templates_103') ?>
409
  </button>
410
  <div class="license-key-wrap">
411
  <input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
82
 
83
  /**
84
  * @since 2.0.7
85
+ * @var \WBCR\Factory_454\Premium\Provider
86
  */
87
  protected $premium;
88
 
100
 
101
  /**
102
  * @since 2.0.7
103
+ * @var \WBCR\Factory_454\Premium\Interfaces\License
104
  */
105
  protected $premium_license;
106
 
109
 
110
  /**
111
  * {@inheritdoc}
112
+ * @param \Wbcr_Factory454_Plugin $plugin
113
  */
114
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
115
  {
116
  $this->plugin = $plugin;
117
 
138
  {
139
  parent::assets($scripts, $styles);
140
 
141
+ $this->styles->add(FACTORY_TEMPLATES_106_URL . '/assets/css/license-manager.css');
142
+ $this->scripts->add(FACTORY_TEMPLATES_106_URL . '/assets/js/clearfy-license-manager.js');
143
  }
144
 
145
  /**
149
  */
150
  public function ajax_handler()
151
  {
152
+ wbcr_factory_templates_106_check_license($this->plugin);
153
  }
154
 
155
  /**
159
  {
160
  ?>
161
  <div id="wcl-license-wrapper"
162
+ data-loader="<?php echo FACTORY_TEMPLATES_106_URL . '/assets/img/loader.gif'; ?>"
163
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
164
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
165
  <?php $this->show_license_form(); ?>
265
  if( $this->is_premium ):
266
  ?>
267
  <p style="margin-top: 10px;">
268
+ <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_templates_106'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
269
  </p>
270
  <?php else: ?>
271
  <p style="margin-top: 10px;">
272
+ <?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_templates_106'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
273
  </p>
274
  <?php endif;
275
  }
281
  {
282
  ?>
283
  <div id="license-manager"
284
+ class="factory-bootstrap-455 onp-page-wrap <?php echo $this->get_license_type() ?>-license-manager-content">
285
  <div>
286
+ <h3><?php printf(__('Activate %s', 'wbcr_factory_templates_106'), $this->plan_name) ?></h3>
287
  <?php echo $this->get_plan_description() ?>
288
  </div>
289
  <br>
290
  <?php if( is_wp_error($notice) ) : ?>
291
+ <div class="license-message <?php echo $this->get_license_type() ?>-license-message">
292
  <div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
293
+ <h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_templates_106') ?></h4>
294
  </div>
295
  </div>
296
  <?php endif; ?>
300
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
301
  class="purchase-premium" target="_blank" rel="noopener">
302
  <span class="btn btn-gold btn-inner-wrap">
303
+ <?php _e('Upgrade to Premium', 'wbcr_factory_templates_106') ?>
304
  </span>
305
  </a>
306
+ <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_templates_106'), $this->plugin->getPluginTitle()) ?></p>
307
  <?php endif; ?>
308
+ <div class="license-details-block <?php echo $this->get_license_type() ?>-details-block">
309
  <?php if( $this->is_premium ): ?>
310
  <a data-action="deactivate" href="#"
311
  class="btn btn-default btn-small license-delete-button wcl-control-btn">
312
+ <?php _e('Delete Key', 'wbcr_factory_templates_106') ?>
313
  </a>
314
  <a data-action="sync" href="#"
315
  class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
316
+ <?php _e('Synchronization', 'wbcr_factory_templates_106') ?>
317
  </a>
318
  <?php endif; ?>
319
  <h3>
327
  </h3>
328
  <?php if( $this->is_premium ): ?>
329
  <div class="license-key-identity">
330
+ <code><?php echo esc_attr($this->get_hidden_license_key()) ?></code>
331
  </div>
332
  <?php endif; ?>
333
  <div class="license-key-description">
334
  <?php if( !$this->is_premium ): ?>
335
+ <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_templates_106') ?></p>
336
  <?php else: ?>
337
+ <p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_templates_106') ?></p>
338
  <?php endif; ?>
339
  <?php if( $this->is_premium && $this->premium_has_subscription ): ?>
340
  <p class="activate-trial-hint">
341
+ <?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_templates_106') ?>
342
  </p>
343
  <?php endif; ?>
344
 
345
  <?php if( $this->get_license_type() == 'trial' ): ?>
346
  <p class="activate-error-hint">
347
+ <?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_templates_106'), '') ?>
348
  </p>
349
  <?php endif; ?>
350
  </div>
352
  <tr>
353
  <!--<td class="license-param license-param-domain">
354
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
355
+ <span class="license-value-name"><?php _e('domain', 'wbcr_factory_templates_106') ?></span>
356
  </td>-->
357
  <td class="license-param license-param-days">
358
+ <span class="license-value"><?php echo $this->get_plan() ?></span>
359
+ <span class="license-value-name"><?php _e('plan', 'wbcr_factory_templates_106') ?></span>
360
  </td>
361
  <?php if( $this->is_premium ) : ?>
362
  <td class="license-param license-param-sites">
363
  <span class="license-value">
364
  <?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
365
+ <?php _e('of', 'wbcr_factory_templates_106') ?>
366
  <?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
367
+ <span class="license-value-name"><?php _e('active sites', 'wbcr_factory_templates_106') ?></span>
368
  </td>
369
  <?php endif; ?>
370
  <td class="license-param license-param-version">
371
+ <span class="license-value"><?php echo $this->plugin->getPluginVersion() ?></span>
372
  <span class="license-value-name"><span>version</span></span>
373
  </td>
374
  <?php if( $this->is_premium ): ?>
375
  <td class="license-param license-param-days">
376
  <?php if( $this->get_license_type() == 'trial' ): ?>
377
+ <span class="license-value"><?php _e('EXPIRED!', 'wbcr_factory_templates_106') ?></span>
378
+ <span class="license-value-name"><?php _e('please update the key', 'wbcr_factory_templates_106') ?></span>
379
  <?php else: ?>
380
  <span class="license-value">
381
  <?php
385
  echo $this->get_expiration_days();
386
  }
387
  ?>
388
+ <small> <?php _e('day(s)', 'wbcr_factory_templates_106') ?></small>
389
  </span>
390
+ <span class="license-value-name"><?php _e('remained', 'wbcr_factory_templates_106') ?></span>
391
  <?php endif; ?>
392
  </td>
393
  <?php endif; ?>
398
  <div class="license-input">
399
  <form action="" method="post">
400
  <?php if($this->is_premium): ?>
401
+ <p><?php _e('Have a key to activate the premium version? Paste it here:', 'wbcr_factory_templates_106') ?><p>
402
  <?php else: ?>
403
+ <p><?php _e('Have a key to activate the plugin? Paste it here:', 'wbcr_factory_templates_106') ?>
404
  <p>
405
  <?php endif; ?>
406
  <button data-action="activate" class="btn btn-default wcl-control-btn" type="button"
407
  id="license-submit">
408
+ <?php _e('Submit Key', 'wbcr_factory_templates_106') ?>
409
  </button>
410
  <div class="license-key-wrap">
411
  <input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
libs/factory/templates/pages/class-page-more-features.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * The page Settings.
@@ -18,7 +18,7 @@ if( !defined('ABSPATH') ) {
18
  }
19
 
20
 
21
- class MoreFeatures extends \WBCR\Factory_Templates_103\Impressive {
22
 
23
  /**
24
  * {@inheritDoc}
@@ -63,9 +63,9 @@ class MoreFeatures extends \WBCR\Factory_Templates_103\Impressive {
63
  */
64
  public $internal = true;
65
 
66
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
67
  {
68
- $this->menu_title = __('More features (<b>free</b>)', 'wbcr_factory_templates_103');
69
 
70
  parent::__construct($plugin);
71
 
@@ -79,7 +79,7 @@ class MoreFeatures extends \WBCR\Factory_Templates_103\Impressive {
79
  */
80
  public function getPageTitle()
81
  {
82
- return __('More features', 'wbcr_factory_templates_103');
83
  }
84
 
85
  /**
@@ -94,66 +94,66 @@ class MoreFeatures extends \WBCR\Factory_Templates_103\Impressive {
94
  <div class="col-sm-4">
95
  <div class="wbcr-factory-feature-box">
96
  <span class="dashicons dashicons-yes"></span>
97
- <h3><?php _e('Code cleaning', 'wbcr_factory_templates_103') ?></h3>
98
- <p><?php _e('Clears the source code of the page from unused code.', 'wbcr_factory_templates_103') ?></p>
99
  </div>
100
  </div>
101
  <div class="col-sm-4">
102
  <div class="wbcr-factory-feature-box">
103
  <span class="dashicons dashicons-chart-bar"></span>
104
- <h3><?php _e('Improve SEO', 'wbcr_factory_templates_103') ?></h3>
105
- <p><?php _e('Removes duplicate pages, closes external links, changes the headers of the server.', 'wbcr_factory_templates_103') ?></p>
106
  </div>
107
  </div>
108
  <div class="col-sm-4">
109
  <div class="wbcr-factory-feature-box">
110
  <span class="dashicons dashicons-shield-alt"></span>
111
- <h3><?php _e('Site protection', 'wbcr_factory_templates_103') ?></h3>
112
- <p><?php _e('Enables and disables features that improve the protection of your site.', 'wbcr_factory_templates_103') ?></p>
113
  </div>
114
  </div>
115
  <div class="col-sm-4">
116
  <div class="wbcr-factory-feature-box">
117
  <span class="dashicons dashicons-welcome-comments"></span>
118
- <h3><?php _e('Disable comments', 'wbcr_factory_templates_103') ?></h3>
119
- <p><?php _e('Disables comments on the entire site or on specific pages.', 'wbcr_factory_templates_103') ?></p>
120
  </div>
121
  </div>
122
  <div class="col-sm-4">
123
  <div class="wbcr-factory-feature-box">
124
  <span class="dashicons dashicons-update"></span>
125
- <h3><?php _e('Manage updates', 'wbcr_factory_templates_103') ?></h3>
126
  <p><?php _e('Enables or disables automatically updates for plugins, themes and core. It is also possible
127
- to disable all updates.', 'wbcr_factory_templates_103') ?></p>
128
  </div>
129
  </div>
130
  <div class="col-sm-4">
131
  <div class="wbcr-factory-feature-box">
132
  <span class="dashicons dashicons-admin-plugins"></span>
133
- <h3><?php _e('Manage widgets', 'wbcr_factory_templates_103') ?></h3>
134
- <p><?php _e('Allows you to remove unused widgets.', 'wbcr_factory_templates_103') ?></p>
135
  </div>
136
  </div>
137
  <div class="col-sm-4">
138
  <div class="wbcr-factory-feature-box">
139
  <span class="dashicons dashicons-dashboard"></span>
140
- <h3><?php _e('Speed Optimization', 'wbcr_factory_templates_103') ?></h3>
141
- <p><?php _e('Increases performance by disabling unused functions and reducing the number of requests.', 'wbcr_factory_templates_103') ?></p>
142
  </div>
143
  </div>
144
  <div class="col-sm-4">
145
  <div class="wbcr-factory-feature-box">
146
  <span class="dashicons dashicons-visibility"></span>
147
- <h3><?php _e('Site privacy', 'wbcr_factory_templates_103') ?></h3>
148
  <p><?php _e('Allows you to hide the version of the site and plugins. Allows you to hide your
149
- WordPress.', 'wbcr_factory_templates_103') ?></p>
150
  </div>
151
  </div>
152
  <div class="col-sm-4">
153
  <div class="wbcr-factory-feature-box">
154
  <span class="dashicons dashicons-admin-settings"></span>
155
- <h3><?php _e('Easy setup', 'wbcr_factory_templates_103') ?></h3>
156
- <p><?php _e('In quick mode, you can easily configure the plugin according to your needs.', 'wbcr_factory_templates_103') ?></p>
157
  </div>
158
  </div>
159
  </div>
@@ -166,8 +166,8 @@ class MoreFeatures extends \WBCR\Factory_Templates_103\Impressive {
166
  }
167
  $url .= '?utm_source=wordpress.org&utm_campaign=' . $this->plugin->getPluginName();
168
  ?>
169
- <a href="<?= $url ?>" class="wbcr-factory-premium-button" target="_blank">
170
- <?php _e('Get the ultimate plugin 100% FREE', 'wbcr_factory_templates_103') ?>
171
  </a>
172
  </div>
173
  <?php
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * The page Settings.
18
  }
19
 
20
 
21
+ class MoreFeatures extends \WBCR\Factory_Templates_106\Impressive {
22
 
23
  /**
24
  * {@inheritDoc}
63
  */
64
  public $internal = true;
65
 
66
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
67
  {
68
+ $this->menu_title = __('More features (<b>free</b>)', 'wbcr_factory_templates_106');
69
 
70
  parent::__construct($plugin);
71
 
79
  */
80
  public function getPageTitle()
81
  {
82
+ return __('More features', 'wbcr_factory_templates_106');
83
  }
84
 
85
  /**
94
  <div class="col-sm-4">
95
  <div class="wbcr-factory-feature-box">
96
  <span class="dashicons dashicons-yes"></span>
97
+ <h3><?php _e('Code cleaning', 'wbcr_factory_templates_106') ?></h3>
98
+ <p><?php _e('Clears the source code of the page from unused code.', 'wbcr_factory_templates_106') ?></p>
99
  </div>
100
  </div>
101
  <div class="col-sm-4">
102
  <div class="wbcr-factory-feature-box">
103
  <span class="dashicons dashicons-chart-bar"></span>
104
+ <h3><?php _e('Improve SEO', 'wbcr_factory_templates_106') ?></h3>
105
+ <p><?php _e('Removes duplicate pages, closes external links, changes the headers of the server.', 'wbcr_factory_templates_106') ?></p>
106
  </div>
107
  </div>
108
  <div class="col-sm-4">
109
  <div class="wbcr-factory-feature-box">
110
  <span class="dashicons dashicons-shield-alt"></span>
111
+ <h3><?php _e('Site protection', 'wbcr_factory_templates_106') ?></h3>
112
+ <p><?php _e('Enables and disables features that improve the protection of your site.', 'wbcr_factory_templates_106') ?></p>
113
  </div>
114
  </div>
115
  <div class="col-sm-4">
116
  <div class="wbcr-factory-feature-box">
117
  <span class="dashicons dashicons-welcome-comments"></span>
118
+ <h3><?php _e('Disable comments', 'wbcr_factory_templates_106') ?></h3>
119
+ <p><?php _e('Disables comments on the entire site or on specific pages.', 'wbcr_factory_templates_106') ?></p>
120
  </div>
121
  </div>
122
  <div class="col-sm-4">
123
  <div class="wbcr-factory-feature-box">
124
  <span class="dashicons dashicons-update"></span>
125
+ <h3><?php _e('Manage updates', 'wbcr_factory_templates_106') ?></h3>
126
  <p><?php _e('Enables or disables automatically updates for plugins, themes and core. It is also possible
127
+ to disable all updates.', 'wbcr_factory_templates_106') ?></p>
128
  </div>
129
  </div>
130
  <div class="col-sm-4">
131
  <div class="wbcr-factory-feature-box">
132
  <span class="dashicons dashicons-admin-plugins"></span>
133
+ <h3><?php _e('Manage widgets', 'wbcr_factory_templates_106') ?></h3>
134
+ <p><?php _e('Allows you to remove unused widgets.', 'wbcr_factory_templates_106') ?></p>
135
  </div>
136
  </div>
137
  <div class="col-sm-4">
138
  <div class="wbcr-factory-feature-box">
139
  <span class="dashicons dashicons-dashboard"></span>
140
+ <h3><?php _e('Speed Optimization', 'wbcr_factory_templates_106') ?></h3>
141
+ <p><?php _e('Increases performance by disabling unused functions and reducing the number of requests.', 'wbcr_factory_templates_106') ?></p>
142
  </div>
143
  </div>
144
  <div class="col-sm-4">
145
  <div class="wbcr-factory-feature-box">
146
  <span class="dashicons dashicons-visibility"></span>
147
+ <h3><?php _e('Site privacy', 'wbcr_factory_templates_106') ?></h3>
148
  <p><?php _e('Allows you to hide the version of the site and plugins. Allows you to hide your
149
+ WordPress.', 'wbcr_factory_templates_106') ?></p>
150
  </div>
151
  </div>
152
  <div class="col-sm-4">
153
  <div class="wbcr-factory-feature-box">
154
  <span class="dashicons dashicons-admin-settings"></span>
155
+ <h3><?php _e('Easy setup', 'wbcr_factory_templates_106') ?></h3>
156
+ <p><?php _e('In quick mode, you can easily configure the plugin according to your needs.', 'wbcr_factory_templates_106') ?></p>
157
  </div>
158
  </div>
159
  </div>
166
  }
167
  $url .= '?utm_source=wordpress.org&utm_campaign=' . $this->plugin->getPluginName();
168
  ?>
169
+ <a href="<?php echo $url ?>" class="wbcr-factory-premium-button" target="_blank">
170
+ <?php _e('Get the ultimate plugin 100% FREE', 'wbcr_factory_templates_106') ?>
171
  </a>
172
  </div>
173
  <?php
libs/factory/templates/pages/class-page-setup.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -10,15 +10,15 @@ if( !defined('ABSPATH') ) {
10
  /**
11
  * Класс страницы, которая реализует функции мастера установки.
12
  *
13
- * Этот класс унаследован от стандартного шаблона страницы \Wbcr_FactoryPages445_ImpressiveThemplate,
14
  * поэтому все его инструменты могут быть применены и в этом классе. Но вы должны учитывать, что
15
  * поведение экшенов страницы было изменено. В данной реализации экшены используется для пагинации шагов.
16
  *
17
- * @package WBCR\Factory_Templates_103\Pages
18
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @since 2.2.2
20
  */
21
- class Setup extends \WBCR\Factory_Templates_103\Impressive {
22
 
23
  const DEFAULT_STEP = 'step0';
24
 
@@ -68,20 +68,20 @@ class Setup extends \WBCR\Factory_Templates_103\Impressive {
68
  private $steps = [];
69
 
70
  /**
71
- * @param \Wbcr_Factory446_Plugin $plugin
72
  */
73
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
74
  {
75
  $this->id = 'setup';
76
 
77
- $this->menu_title = __('Setup master', 'wbcr_factory_templates_103');
78
- $this->page_menu_short_description = __('Setup master', 'wbcr_factory_templates_103');
79
  parent::__construct($plugin);
80
  }
81
 
82
  public function getPageTitle()
83
  {
84
- return __('Setup', 'wbcr_factory_templates_103');
85
  }
86
 
87
  public function get_close_wizard_url()
@@ -135,18 +135,18 @@ class Setup extends \WBCR\Factory_Templates_103\Impressive {
135
  /**
136
  * Requests assets (js and css) for the page.
137
  *
138
- * @param \Wbcr_Factory446_ScriptList $scripts
139
- * @param \Wbcr_Factory446_StyleList $styles
140
  *
141
  * @return void
142
- * @see Wbcr_FactoryPages445_AdminPage
143
  *
144
  */
145
  public function assets($scripts, $styles)
146
  {
147
  parent::assets($scripts, $styles);
148
 
149
- $this->styles->add(FACTORY_TEMPLATES_103_URL . '/assets/css/page-setup.css');
150
 
151
  // Require step assets
152
  if( isset($_GET['action']) && false !== strpos($_GET['action'], 'step') && isset($this->steps[$_GET['action']]) ) {
@@ -163,8 +163,8 @@ class Setup extends \WBCR\Factory_Templates_103\Impressive {
163
  protected function showPage($content = null)
164
  {
165
  ?>
166
- <div class="w-factory-templates-103-setup">
167
- <ol class="w-factory-templates-103-setup-steps">
168
  <?php foreach($this->steps as $step): ?>
169
  <?php if( self::DEFAULT_STEP === $step->get_id() ) {
170
  continue;
@@ -172,11 +172,11 @@ class Setup extends \WBCR\Factory_Templates_103\Impressive {
172
  <li <?php if($this->current_step === $step->get_id()): ?>class="active"<?php endif; ?>><?php echo $step->get_title(); ?></li>
173
  <?php endforeach; ?>
174
  </ol>
175
- <div class="w-factory-templates-103-setup-content">
176
  <?php echo $content; ?>
177
  </div>
178
- <a class="w-factory-templates-103-setup-footer-links" href="<?php echo esc_url($this->get_close_wizard_url()); ?>">
179
- <?php _e('Not now', 'wbcr_factory_templates_103') ?>
180
  </a>
181
  </div>
182
  <?php
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
10
  /**
11
  * Класс страницы, которая реализует функции мастера установки.
12
  *
13
+ * Этот класс унаследован от стандартного шаблона страницы \Wbcr_FactoryPages453_ImpressiveThemplate,
14
  * поэтому все его инструменты могут быть применены и в этом классе. Но вы должны учитывать, что
15
  * поведение экшенов страницы было изменено. В данной реализации экшены используется для пагинации шагов.
16
  *
17
+ * @package WBCR\Factory_Templates_106\Pages
18
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @since 2.2.2
20
  */
21
+ class Setup extends \WBCR\Factory_Templates_106\Impressive {
22
 
23
  const DEFAULT_STEP = 'step0';
24
 
68
  private $steps = [];
69
 
70
  /**
71
+ * @param \Wbcr_Factory454_Plugin $plugin
72
  */
73
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
74
  {
75
  $this->id = 'setup';
76
 
77
+ $this->menu_title = __('Setup master', 'wbcr_factory_templates_106');
78
+ $this->page_menu_short_description = __('Setup master', 'wbcr_factory_templates_106');
79
  parent::__construct($plugin);
80
  }
81
 
82
  public function getPageTitle()
83
  {
84
+ return __('Setup', 'wbcr_factory_templates_106');
85
  }
86
 
87
  public function get_close_wizard_url()
135
  /**
136
  * Requests assets (js and css) for the page.
137
  *
138
+ * @param \Wbcr_Factory454_ScriptList $scripts
139
+ * @param \Wbcr_Factory454_StyleList $styles
140
  *
141
  * @return void
142
+ * @see Wbcr_FactoryPages453_AdminPage
143
  *
144
  */
145
  public function assets($scripts, $styles)
146
  {
147
  parent::assets($scripts, $styles);
148
 
149
+ $this->styles->add(FACTORY_TEMPLATES_106_URL . '/assets/css/page-setup.css');
150
 
151
  // Require step assets
152
  if( isset($_GET['action']) && false !== strpos($_GET['action'], 'step') && isset($this->steps[$_GET['action']]) ) {
163
  protected function showPage($content = null)
164
  {
165
  ?>
166
+ <div class="w-factory-templates-106-setup">
167
+ <ol class="w-factory-templates-106-setup-steps">
168
  <?php foreach($this->steps as $step): ?>
169
  <?php if( self::DEFAULT_STEP === $step->get_id() ) {
170
  continue;
172
  <li <?php if($this->current_step === $step->get_id()): ?>class="active"<?php endif; ?>><?php echo $step->get_title(); ?></li>
173
  <?php endforeach; ?>
174
  </ol>
175
+ <div class="w-factory-templates-106-setup-content">
176
  <?php echo $content; ?>
177
  </div>
178
+ <a class="w-factory-templates-106-setup-footer-links" href="<?php echo esc_url($this->get_close_wizard_url()); ?>">
179
+ <?php _e('Not now', 'wbcr_factory_templates_106') ?>
180
  </a>
181
  </div>
182
  <?php
libs/factory/templates/pages/class-pages-components.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * This file is the add-ons page.
@@ -16,7 +16,7 @@ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
19
- class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
@@ -24,7 +24,7 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
- * @see FactoryPages445_AdminPage
28
  *
29
  * @var string
30
  */
@@ -41,12 +41,12 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
41
  public $available_for_multisite = true;
42
 
43
  /**
44
- * @param \Wbcr_Factory446_Plugin $plugin
45
  */
46
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
47
  {
48
- $this->menu_title = __('Components', 'wbcr_factory_templates_103');
49
- $this->page_menu_short_description = __('More features for plugin', 'wbcr_factory_templates_103');
50
 
51
  parent::__construct($plugin);
52
 
@@ -58,18 +58,18 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
58
  *
59
  * @return void
60
  * @since 1.0.0
61
- * @see FactoryPages445_AdminPage
62
  *
63
  */
64
  public function assets($scripts, $styles)
65
  {
66
  parent::assets($scripts, $styles);
67
 
68
- $this->styles->add(FACTORY_TEMPLATES_103_URL . '/assets/css/components.css');
69
 
70
  /**
71
- * @param \Wbcr_Factory446_StyleList $styles
72
- * @param \Wbcr_Factory446_ScriptList $scripts
73
  * @since 1.4.0
74
  *
75
  */
@@ -80,10 +80,10 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
80
  * We register notifications for some actions
81
  *
82
  * @param $notices
83
- * @param \Wbcr_Factory446_Plugin $plugin
84
  *
85
  * @return array
86
- * @see libs\factory\pages\themplates\FactoryPages445_ImpressiveThemplate
87
  */
88
  public function getActionNotices($notices)
89
  {
@@ -92,7 +92,7 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
92
  'wbcr-force-update-components-success' => 1
93
  ],
94
  'type' => 'success',
95
- 'message' => __('Components have been successfully updated to the latest version.', 'wbcr_factory_templates_103')
96
  ];
97
 
98
  $notices[] = [
@@ -100,7 +100,7 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
100
  'wbcr-force-update-components-error' => 'inactive_licence'
101
  ],
102
  'type' => 'danger',
103
- 'message' => __('To use premium components, you need activate a license!', 'wbcr_factory_templates_103') . '<a href="admin.php?page=license-wbcr_clearfy" class="btn btn-gold">' . __('Activate license', 'wbcr_factory_templates_103') . '</a>'
104
  ];
105
 
106
  $notices[] = [
@@ -173,12 +173,12 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
173
  $components = apply_filters('wbcr/clearfy/components/items_list', $components);
174
 
175
  ?>
176
- <div class="wbcr-factory-page-group-header"><?php _e('<strong>Plugin Components</strong>.', 'wbcr_factory_templates_103') ?>
177
  <p>
178
- <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'wbcr_factory_templates_103') ?>
179
  </p>
180
  </div>
181
- <div class="wbc-factory-templates-103-components">
182
  <?php
183
  /**
184
  * @since 1.4.0
@@ -229,7 +229,7 @@ class Components extends \WBCR\Factory_Templates_103\Pages\PageBase {
229
  <div class="plugin-card-bottom">
230
  <?php if( !(isset($component['disable_button']) && $component['disable_button']) ): ?>
231
  <?php if( 'premium' === $component['build'] && !($this->plugin->premium->is_activate() && $this->plugin->premium->is_install_package()) ): ?>
232
- <a target="_blank" href="<?php echo esc_url($component['url']) ?>" class="button button-default install-now"><?php _e('Read more', 'wbcr_factory_templates_103'); ?></a>
233
  <?php else: ?>
234
  <?php $delete_button->render_button(); ?><?php $install_button->render_button(); ?>
235
  <?php endif; ?>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * This file is the add-ons page.
16
  exit;
17
  }
18
 
19
+ class Components extends \WBCR\Factory_Templates_106\Pages\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 FactoryPages453_AdminPage
28
  *
29
  * @var string
30
  */
41
  public $available_for_multisite = true;
42
 
43
  /**
44
+ * @param \Wbcr_Factory454_Plugin $plugin
45
  */
46
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
47
  {
48
+ $this->menu_title = __('Components', 'wbcr_factory_templates_106');
49
+ $this->page_menu_short_description = __('More features for plugin', 'wbcr_factory_templates_106');
50
 
51
  parent::__construct($plugin);
52
 
58
  *
59
  * @return void
60
  * @since 1.0.0
61
+ * @see FactoryPages453_AdminPage
62
  *
63
  */
64
  public function assets($scripts, $styles)
65
  {
66
  parent::assets($scripts, $styles);
67
 
68
+ $this->styles->add(FACTORY_TEMPLATES_106_URL . '/assets/css/components.css');
69
 
70
  /**
71
+ * @param \Wbcr_Factory454_StyleList $styles
72
+ * @param \Wbcr_Factory454_ScriptList $scripts
73
  * @since 1.4.0
74
  *
75
  */
80
  * We register notifications for some actions
81
  *
82
  * @param $notices
83
+ * @param \Wbcr_Factory454_Plugin $plugin
84
  *
85
  * @return array
86
+ * @see libs\factory\pages\themplates\FactoryPages453_ImpressiveThemplate
87
  */
88
  public function getActionNotices($notices)
89
  {
92
  'wbcr-force-update-components-success' => 1
93
  ],
94
  'type' => 'success',
95
+ 'message' => __('Components have been successfully updated to the latest version.', 'wbcr_factory_templates_106')
96
  ];
97
 
98
  $notices[] = [
100
  'wbcr-force-update-components-error' => 'inactive_licence'
101
  ],
102
  'type' => 'danger',
103
+ 'message' => __('To use premium components, you need activate a license!', 'wbcr_factory_templates_106') . '<a href="admin.php?page=license-wbcr_clearfy" class="btn btn-gold">' . __('Activate license', 'wbcr_factory_templates_106') . '</a>'
104
  ];
105
 
106
  $notices[] = [
173
  $components = apply_filters('wbcr/clearfy/components/items_list', $components);
174
 
175
  ?>
176
+ <div class="wbcr-factory-page-group-header"><?php _e('<strong>Plugin Components</strong>.', 'wbcr_factory_templates_106') ?>
177
  <p>
178
+ <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'wbcr_factory_templates_106') ?>
179
  </p>
180
  </div>
181
+ <div class="wbc-factory-templates-106-components">
182
  <?php
183
  /**
184
  * @since 1.4.0
229
  <div class="plugin-card-bottom">
230
  <?php if( !(isset($component['disable_button']) && $component['disable_button']) ): ?>
231
  <?php if( 'premium' === $component['build'] && !($this->plugin->premium->is_activate() && $this->plugin->premium->is_install_package()) ): ?>
232
+ <a target="_blank" href="<?php echo esc_url($component['url']) ?>" class="button button-default install-now"><?php _e('Read more', 'wbcr_factory_templates_106'); ?></a>
233
  <?php else: ?>
234
  <?php $delete_button->render_button(); ?><?php $install_button->render_button(); ?>
235
  <?php endif; ?>
libs/factory/templates/pages/setup-parts/class-step-custom.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * Step
@@ -18,10 +18,10 @@ class Step_Custom extends Step {
18
  public function render_button($continue = true, $skip = false, $custom_title = null, $align = 'right')
19
  {
20
  $this->set_button_handler();
21
- $button_title = !empty($custom_title) ? $custom_title : __('Continue', 'wbcr_factory_templates_103');
22
 
23
  if( !$this->get_next_id() ) {
24
- $button_title = __('Finish', 'wbcr_factory_templates_103');
25
  }
26
 
27
  if( !in_array($align, ['center', 'left', 'right']) ) {
@@ -29,13 +29,13 @@ class Step_Custom extends Step {
29
  }
30
 
31
  ?>
32
- <form method="post" id="w-factory-templates-103__setup-form-<?php echo $this->get_id() ?>" class="form-horizontal">
33
- <div class="w-factory-templates-103__form-buttons" style="text-align: <?php echo esc_attr($align); ?>">
34
  <?php if( $skip ): ?>
35
- <input type="submit" name="skip_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-103__skip-button" value="<?php _e('Skip', 'wbcr_factory_templates_103') ?>">
36
  <?php endif; ?>
37
  <?php if( $continue ): ?>
38
- <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-103__continue-button" value="<?php echo $button_title; ?>">
39
  <?php endif; ?>
40
  </div>
41
  </form>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * Step
18
  public function render_button($continue = true, $skip = false, $custom_title = null, $align = 'right')
19
  {
20
  $this->set_button_handler();
21
+ $button_title = !empty($custom_title) ? $custom_title : __('Continue', 'wbcr_factory_templates_106');
22
 
23
  if( !$this->get_next_id() ) {
24
+ $button_title = __('Finish', 'wbcr_factory_templates_106');
25
  }
26
 
27
  if( !in_array($align, ['center', 'left', 'right']) ) {
29
  }
30
 
31
  ?>
32
+ <form method="post" id="w-factory-templates-106__setup-form-<?php echo $this->get_id() ?>" class="form-horizontal">
33
+ <div class="w-factory-templates-106__form-buttons" style="text-align: <?php echo esc_attr($align); ?>">
34
  <?php if( $skip ): ?>
35
+ <input type="submit" name="skip_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-106__skip-button" value="<?php _e('Skip', 'wbcr_factory_templates_106') ?>">
36
  <?php endif; ?>
37
  <?php if( $continue ): ?>
38
+ <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-106__continue-button" value="<?php echo $button_title; ?>">
39
  <?php endif; ?>
40
  </div>
41
  </form>
libs/factory/templates/pages/setup-parts/class-step-form.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * Step
@@ -10,7 +10,7 @@ namespace WBCR\Factory_Templates_103\Pages;
10
  */
11
  class Step_Form extends Step {
12
 
13
- public function __construct(\WBCR\Factory_Templates_103\Pages\Setup $page)
14
  {
15
  parent::__construct($page);
16
  }
@@ -33,12 +33,12 @@ class Step_Form extends Step {
33
  protected function instance_form($options)
34
  {
35
 
36
- $form = new \Wbcr_FactoryForms443_Form([
37
  'scope' => rtrim($this->plugin->getPrefix(), '_'),
38
  'name' => $this->page->getResultId() . "-options-" . $this->get_id()
39
  ], $this->plugin);
40
 
41
- $form->setProvider(new \Wbcr_FactoryForms443_OptionsValueProvider($this->plugin));
42
 
43
  $form_options = [];
44
 
@@ -83,20 +83,20 @@ class Step_Form extends Step {
83
  return $form;
84
  }
85
 
86
- protected function render_form(\Wbcr_FactoryForms443_Form $form)
87
  {
88
  ?>
89
- <form method="post" id="w-factory-templates-103__setup-form-<?php echo $this->get_id() ?>" class="w-factory-templates-103__setup-form form-horizontal">
90
  <?php $form->html(); ?>
91
- <div class="w-factory-templates-103__form-buttons">
92
- <!--<input type="submit" name="skip_button_<?php /*echo $this->get_id() */ ?>" class="button-primary button button-large w-factory-templates-103__skip-button" value="<?php /*_e('Skip', 'wbcr_factory_templates_103') */ ?>">-->
93
- <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-103__continue-button" value="<?php _e('Continue', 'wbcr_factory_templates_103') ?>">
94
  </div>
95
  </form>
96
  <?php
97
  }
98
 
99
- protected function set_form_handler(\Wbcr_FactoryForms443_Form $form)
100
  {
101
  if( isset($_POST['continue_button_' . $this->get_id()]) ) {
102
  $form->save();
@@ -123,8 +123,8 @@ class Step_Form extends Step {
123
  $form = $this->instance_form($this->get_form_options());
124
  ?>
125
  <div id="WBCR" class="wrap">
126
- <div class="wbcr-factory-templates-103-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
127
- <div class="w-factory-templates-103-setup__inner-wrap">
128
  <h3><?php echo $this->get_title(); ?></h3>
129
  <p style="text-align: left;"><?php echo $this->get_form_description(); ?></p>
130
  </div>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * Step
10
  */
11
  class Step_Form extends Step {
12
 
13
+ public function __construct(\WBCR\Factory_Templates_106\Pages\Setup $page)
14
  {
15
  parent::__construct($page);
16
  }
33
  protected function instance_form($options)
34
  {
35
 
36
+ $form = new \Wbcr_FactoryForms451_Form([
37
  'scope' => rtrim($this->plugin->getPrefix(), '_'),
38
  'name' => $this->page->getResultId() . "-options-" . $this->get_id()
39
  ], $this->plugin);
40
 
41
+ $form->setProvider(new \Wbcr_FactoryForms451_OptionsValueProvider($this->plugin));
42
 
43
  $form_options = [];
44
 
83
  return $form;
84
  }
85
 
86
+ protected function render_form(\Wbcr_FactoryForms451_Form $form)
87
  {
88
  ?>
89
+ <form method="post" id="w-factory-templates-106__setup-form-<?php echo $this->get_id() ?>" class="w-factory-templates-106__setup-form form-horizontal">
90
  <?php $form->html(); ?>
91
+ <div class="w-factory-templates-106__form-buttons">
92
+ <!--<input type="submit" name="skip_button_<?php /*echo $this->get_id() */ ?>" class="button-primary button button-large w-factory-templates-106__skip-button" value="<?php /*_e('Skip', 'wbcr_factory_templates_106') */ ?>">-->
93
+ <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-106__continue-button" value="<?php _e('Continue', 'wbcr_factory_templates_106') ?>">
94
  </div>
95
  </form>
96
  <?php
97
  }
98
 
99
+ protected function set_form_handler(\Wbcr_FactoryForms451_Form $form)
100
  {
101
  if( isset($_POST['continue_button_' . $this->get_id()]) ) {
102
  $form->save();
123
  $form = $this->instance_form($this->get_form_options());
124
  ?>
125
  <div id="WBCR" class="wrap">
126
+ <div class="wbcr-factory-templates-106-impressive-page-template factory-bootstrap-455 factory-fontawesome-000">
127
+ <div class="w-factory-templates-106-setup__inner-wrap">
128
  <h3><?php echo $this->get_title(); ?></h3>
129
  <p style="text-align: left;"><?php echo $this->get_form_description(); ?></p>
130
  </div>
libs/factory/templates/pages/setup-parts/class-step.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * Step
@@ -16,16 +16,16 @@ abstract class Step {
16
  protected $next_id = false;
17
 
18
  /**
19
- * @var \WBCR\Factory_Templates_103\Pages\Setup
20
  */
21
  protected $page;
22
 
23
  /**
24
- * @var \Wbcr_Factory446_Plugin
25
  */
26
  protected $plugin;
27
 
28
- public function __construct(\WBCR\Factory_Templates_103\Pages\Setup $page)
29
  {
30
  $this->page = $page;
31
  $this->plugin = $page->plugin;
@@ -51,7 +51,7 @@ abstract class Step {
51
  *
52
  * @return void
53
  * @since 1.0.0
54
- * @see FactoryPages445_AdminPage
55
  *
56
  */
57
  public function assets($scripts, $styles)
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * Step
16
  protected $next_id = false;
17
 
18
  /**
19
+ * @var \WBCR\Factory_Templates_106\Pages\Setup
20
  */
21
  protected $page;
22
 
23
  /**
24
+ * @var \Wbcr_Factory454_Plugin
25
  */
26
  protected $plugin;
27
 
28
+ public function __construct(\WBCR\Factory_Templates_106\Pages\Setup $page)
29
  {
30
  $this->page = $page;
31
  $this->plugin = $page->plugin;
51
  *
52
  * @return void
53
  * @since 1.0.0
54
+ * @see FactoryPages453_AdminPage
55
  *
56
  */
57
  public function assets($scripts, $styles)
libs/factory/templates/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css CHANGED
@@ -24,7 +24,7 @@
24
  #WBCR .wdan-notices-compact-panel {
25
  display: none !important;
26
  }
27
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template {
28
  position: relative;
29
  background-color: #32373c;
30
  /**
@@ -34,83 +34,83 @@
34
  Widget in the sidebar of the plugin
35
  */
36
  }
37
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .row {
38
  margin: 0 10px;
39
  }
40
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-color-grey {
41
  color: #9a9a9a;
42
  }
43
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-orange-color {
44
  color: #ffc107;
45
  }
46
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-light-orange-color {
47
  color: #ffeb3b;
48
  }
49
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .form-group {
50
  padding: 0 20px;
51
  }
52
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .form-group label {
53
  font-weight: normal;
54
  }
55
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .form-horizontal .control-label {
56
  max-width: 300px;
57
  }
58
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .factory-control-buttons {
59
  text-align: right;
60
  padding-right: 20px;
61
  }
62
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .factory-from-control-list label span {
63
  display: inline-block;
64
  vertical-align: bottom;
65
  }
66
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"],
67
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
68
  outline: none;
69
  }
70
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-header {
71
  padding: 20px 20px 40px;
72
  }
73
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-recomended-text {
74
  display: block;
75
  font-size: 11px;
76
  font-weight: lighter;
77
  color: #179347;
78
  }
79
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-options,
80
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page {
81
  position: relative;
82
  overflow: hidden;
83
  }
84
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-options:after,
85
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page:after {
86
  display: block;
87
  content: '';
88
  clear: both;
89
  }
90
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-group-header {
91
  background: #efefef;
92
  padding: 20px 0 10px 20px;
93
  margin: 30px 0;
94
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
95
  }
96
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-group-header:first-child {
97
  margin-top: 0;
98
  }
99
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-group-header strong {
100
  font-size: 15px;
101
  }
102
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-group-header p {
103
  color: #8c8888;
104
  font-size: 12px;
105
  }
106
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-inner-wrap {
107
  margin: 0 15px;
108
  padding: 10px 0 0 0;
109
  vertical-align: top;
110
  background: #f7f7f7;
111
  border-radius: 0 5px 0 0;
112
  }
113
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-header {
114
  display: flex;
115
  overflow: hidden;
116
  background-color: #32373c;
@@ -121,7 +121,7 @@
121
  flex-wrap: nowrap;
122
  justify-content: space-between;
123
  }
124
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
125
  float: left;
126
  padding: 15px 0;
127
  font-size: 24px;
@@ -132,11 +132,11 @@
132
  padding-left: 25px;
133
  margin-right: 10px;
134
  }
135
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
136
  display: inline-block;
137
  vertical-align: middle;
138
  }
139
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
140
  font-size: 18px;
141
  line-height: 30px;
142
  font-weight: 300;
@@ -147,12 +147,12 @@
147
  text-overflow: ellipsis;
148
  color: #fff;
149
  }
150
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-control {
151
  position: relative;
152
  float: right;
153
  margin: 12px;
154
  }
155
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu {
156
  border: 0;
157
  padding: 0;
158
  margin: 0 0 0 15px;
@@ -162,12 +162,12 @@
162
  font-size: 14px;
163
  font-weight: 500;
164
  }
165
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab:active,
166
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab:focus {
167
  box-shadow: none;
168
  outline: none;
169
  }
170
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab {
171
  background: #efefef;
172
  color: #585858;
173
  padding: 5px 20px 5px 10px;
@@ -180,32 +180,32 @@
180
  justify-content: center;
181
  align-items: center;
182
  }
183
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab-active {
184
  background: #f7f7f7;
185
  border-color: #f7f7f7;
186
  color: #222;
187
  font-weight: bold;
188
  z-index: 1;
189
  }
190
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab:hover {
191
  background: #f7f7f7;
192
  border-color: #f7f7f7;
193
  z-index: 1;
194
  }
195
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab-active:hover {
196
  font-weight: bold !important;
197
  }
198
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab .dashicons {
199
  display: inline-block;
200
  font-size: 25px;
201
  margin-right: 10px;
202
  color: #d4d4d4;
203
  vertical-align: sub;
204
  }
205
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab-active .dashicons {
206
  color: #222;
207
  }
208
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu__nav-tab_short-description {
209
  color: #868686;
210
  padding: 0;
211
  margin: 0;
@@ -213,23 +213,23 @@
213
  text-transform: none;
214
  font-weight: normal;
215
  }
216
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
217
  float: left;
218
  vertical-align: top;
219
  width: 230px;
220
  background: #e6e6e6;
221
  }
222
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul {
223
  padding: 0;
224
  margin-bottom: 0;
225
  margin-top: 80px;
226
  }
227
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
228
  display: block;
229
  background: #efefef;
230
  margin: 1px 0;
231
  }
232
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
233
  display: block;
234
  width: 100%;
235
  padding: 20px 20px;
@@ -240,58 +240,58 @@
240
  text-align: left;
241
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
242
  }
243
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
244
  display: block;
245
  font-weight: bold;
246
  }
247
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
248
  display: block;
249
  font-size: 13px;
250
  font-weight: normal;
251
  text-transform: none;
252
  color: #9a9a9a;
253
  }
254
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
255
  float: right;
256
  color: #ccc;
257
  }
258
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
259
  clear: both;
260
  }
261
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
262
  background: #f7f6f6;
263
  }
264
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
265
  color: #9a9a9a;
266
  }
267
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
268
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
269
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
270
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
271
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
272
  outline: 0 !important;
273
  box-shadow: none !important;
274
  }
275
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
276
  background: #fff;
277
  border-left: 5px solid #ff5722;
278
  }
279
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
280
  color: #ff5722;
281
  font-weight: bold;
282
  }
283
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
284
  color: #9a9a9a;
285
  }
286
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
287
  padding: 0;
288
  margin: 0;
289
  }
290
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
291
  margin: 1px 0 0;
292
  padding: 0;
293
  }
294
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
295
  display: block;
296
  font-weight: normal;
297
  color: #222;
@@ -302,12 +302,12 @@
302
  text-decoration: none;
303
  outline: none;
304
  }
305
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
306
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
307
  outline: 0 !important;
308
  text-shadow: none !important;
309
  }
310
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
311
  color: #9a9a9a;
312
  font-size: 13px;
313
  border: 0;
@@ -318,35 +318,35 @@
318
  -ms-filter: fliph;
319
  filter: fliph;
320
  }
321
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
322
  background: #fff;
323
  color: #ff5722;
324
  font-weight: 600;
325
  }
326
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
327
  color: #ff5722;
328
  }
329
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section,
330
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
331
  display: inline-block;
332
  vertical-align: top;
333
  }
334
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section {
335
  width: 74.6%;
336
  }
337
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section.wbcr-fullwidth {
338
  width: 100%;
339
  }
340
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .nav-tab-wrapper {
341
  margin-top: 15px;
342
  }
343
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content {
344
  padding: 0 0 20px 0;
345
  }
346
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
347
  padding-top: 0 !important;
348
  }
349
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button {
350
  display: inline-block;
351
  vertical-align: top;
352
  font-size: 13px;
@@ -369,7 +369,7 @@
369
  text-decoration: none;
370
  z-index: 3;
371
  }
372
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button {
373
  position: fixed;
374
  top: 80px;
375
  right: 30px;
@@ -383,13 +383,13 @@
383
  border-color: #0074a2;
384
  color: #fff;
385
  }
386
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button:hover {
387
  box-shadow: inset 0 1px 3px #0074a2;
388
  }
389
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button:active {
390
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
391
  }
392
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert {
393
  font-weight: bold;
394
  /*margin: 3px;*/
395
  border: 0;
@@ -397,49 +397,49 @@
397
  padding: 15px;
398
  margin: 0 5px 10px 5px;
399
  }
400
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert + .wbcr-factory-page-group-header {
401
  margin-top: 0 !important;
402
  }
403
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-warning {
404
  background: #fff3d0;
405
  border-left: 5px solid #ffe800;
406
  }
407
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-warning:nth-child(2n+1) {
408
  background: #fffde9;
409
  }
410
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-danger {
411
  background: #de716d;
412
  border-left: 5px solid #ff0a00;
413
  }
414
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-danger:nth-child(2n+1) {
415
  background: #ec8c89;
416
  }
417
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-success {
418
  background: #d0ecc4;
419
  border-left: 5px solid #36b300;
420
  }
421
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-success:nth-child(2n+1) {
422
  background: #e0eadb;
423
  }
424
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
425
  width: 25%;
426
  padding: 10px;
427
  margin: 0 0 -20px;
428
  background-color: #f9f9f9;
429
  box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
430
  }
431
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
432
  margin: 0 0 20px;
433
  }
434
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-bottom-sidebar {
435
  display: flex;
436
  justify-content: space-between;
437
  }
438
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-bottom-sidebar .wbcr-factory-bottom-sidebar-widget {
439
  width: 100%;
440
  margin: 0 5px;
441
  }
442
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget {
443
  display: inline-block;
444
  min-height: 230px;
445
  width: 100%;
@@ -448,19 +448,19 @@
448
  padding: 20px 15px;
449
  vertical-align: top;
450
  }
451
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
452
  display: none;
453
  }
454
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
455
  background: #fff4d0;
456
  }
457
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
458
  background: #e2ffc0;
459
  }
460
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
461
  background: #ffebe9;
462
  }
463
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
464
  display: inline-block;
465
  width: 16px;
466
  height: 16px;
@@ -472,16 +472,16 @@
472
  background: #E91E63;
473
  border-radius: 3px;
474
  }
475
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
476
  background: #E91E63;
477
  }
478
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
479
  background: #9e9e9e;
480
  }
481
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
482
  background: #8bc34a;
483
  }
484
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
485
  display: block;
486
  width: 80px;
487
  height: 17px;
@@ -489,23 +489,23 @@
489
  vertical-align: middle;
490
  margin-bottom: 5px;
491
  }
492
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
493
  display: block;
494
  margin: 30px auto 0;
495
  outline: none;
496
  }
497
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
498
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
499
  box-shadow: none;
500
  }
501
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
502
  font-size: 50px;
503
  margin-top: 30px;
504
  text-align: center;
505
  font-weight: 600;
506
  color: #8BC34A;
507
  }
508
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
509
  min-height: 240px;
510
  margin-bottom: 20px;
511
  text-align: center;
@@ -513,24 +513,24 @@
513
  padding: 30px;
514
  border: 1px solid #f3f1e7;
515
  }
516
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
517
  width: 50px;
518
  height: 50px;
519
  font-size: 50px;
520
  color: #FFC107;
521
  line-height: normal;
522
  }
523
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
524
  color: #7b6111;
525
  }
526
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
527
  color: #9e9e9e;
528
  }
529
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
530
  margin-top: 20px;
531
  text-align: center;
532
  }
533
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
534
  display: inline-block;
535
  padding: 20px 60px;
536
  background-color: #FFC107;
@@ -540,72 +540,72 @@
540
  font-weight: bold;
541
  transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
542
  }
543
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
544
  background-color: #ffce3a;
545
  }
546
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog {
547
  padding: 20px;
548
  background: #ffffff;
549
  }
550
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog .updated,
551
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog .alert {
552
  display: none;
553
  }
554
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog h2 {
555
  font-size: 18px;
556
  margin-top: 10px;
557
  }
558
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
559
  padding: 10px;
560
  background: #ffedeb;
561
  border: 1px solid #ffdfdc;
562
  margin: 15px 0;
563
  }
564
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
565
  margin-bottom: 15px;
566
  color: #7b7b7b;
567
  }
568
  @media screen and (max-width: 1367px) {
569
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section {
570
  width: 69.6%;
571
  }
572
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
573
  width: 30%;
574
  }
575
  }
576
  @media screen and (max-width: 1320px) {
577
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-content-section {
578
  width: 100%;
579
  }
580
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
581
  display: none !important;
582
  }
583
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-header-logo .dash {
584
  display: none !important;
585
  }
586
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-header-title {
587
  display: none !important;
588
  }
589
  }
590
  @media screen and (max-width: 950px) {
591
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template {
592
  /* .wbcr-factory-page-inner-wrap {
593
  margin-left: 70px;
594
  }*/
595
  }
596
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
597
  width: 70px;
598
  }
599
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
600
  font-size: 0;
601
  }
602
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
603
  font-size: 0;
604
  }
605
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
606
  display: none !important;
607
  }
608
- #WBCR .wbcr-factory-templates-103-impressive-lite-page-template .w-factory-templates-103-horizontal-menu .wbcr-nav-tab-title {
609
  font-size: 0;
610
  }
611
  }
24
  #WBCR .wdan-notices-compact-panel {
25
  display: none !important;
26
  }
27
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template {
28
  position: relative;
29
  background-color: #32373c;
30
  /**
34
  Widget in the sidebar of the plugin
35
  */
36
  }
37
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .row {
38
  margin: 0 10px;
39
  }
40
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-color-grey {
41
  color: #9a9a9a;
42
  }
43
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-orange-color {
44
  color: #ffc107;
45
  }
46
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-light-orange-color {
47
  color: #ffeb3b;
48
  }
49
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .form-group {
50
  padding: 0 20px;
51
  }
52
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .form-group label {
53
  font-weight: normal;
54
  }
55
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .form-horizontal .control-label {
56
  max-width: 300px;
57
  }
58
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .factory-control-buttons {
59
  text-align: right;
60
  padding-right: 20px;
61
  }
62
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .factory-from-control-list label span {
63
  display: inline-block;
64
  vertical-align: bottom;
65
  }
66
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"],
67
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
68
  outline: none;
69
  }
70
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-header {
71
  padding: 20px 20px 40px;
72
  }
73
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-recomended-text {
74
  display: block;
75
  font-size: 11px;
76
  font-weight: lighter;
77
  color: #179347;
78
  }
79
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-options,
80
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page {
81
  position: relative;
82
  overflow: hidden;
83
  }
84
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-options:after,
85
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page:after {
86
  display: block;
87
  content: '';
88
  clear: both;
89
  }
90
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-group-header {
91
  background: #efefef;
92
  padding: 20px 0 10px 20px;
93
  margin: 30px 0;
94
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
95
  }
96
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-group-header:first-child {
97
  margin-top: 0;
98
  }
99
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-group-header strong {
100
  font-size: 15px;
101
  }
102
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-group-header p {
103
  color: #8c8888;
104
  font-size: 12px;
105
  }
106
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-inner-wrap {
107
  margin: 0 15px;
108
  padding: 10px 0 0 0;
109
  vertical-align: top;
110
  background: #f7f7f7;
111
  border-radius: 0 5px 0 0;
112
  }
113
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-header {
114
  display: flex;
115
  overflow: hidden;
116
  background-color: #32373c;
121
  flex-wrap: nowrap;
122
  justify-content: space-between;
123
  }
124
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
125
  float: left;
126
  padding: 15px 0;
127
  font-size: 24px;
132
  padding-left: 25px;
133
  margin-right: 10px;
134
  }
135
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
136
  display: inline-block;
137
  vertical-align: middle;
138
  }
139
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
140
  font-size: 18px;
141
  line-height: 30px;
142
  font-weight: 300;
147
  text-overflow: ellipsis;
148
  color: #fff;
149
  }
150
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-control {
151
  position: relative;
152
  float: right;
153
  margin: 12px;
154
  }
155
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu {
156
  border: 0;
157
  padding: 0;
158
  margin: 0 0 0 15px;
162
  font-size: 14px;
163
  font-weight: 500;
164
  }
165
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab:active,
166
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab:focus {
167
  box-shadow: none;
168
  outline: none;
169
  }
170
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab {
171
  background: #efefef;
172
  color: #585858;
173
  padding: 5px 20px 5px 10px;
180
  justify-content: center;
181
  align-items: center;
182
  }
183
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab-active {
184
  background: #f7f7f7;
185
  border-color: #f7f7f7;
186
  color: #222;
187
  font-weight: bold;
188
  z-index: 1;
189
  }
190
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab:hover {
191
  background: #f7f7f7;
192
  border-color: #f7f7f7;
193
  z-index: 1;
194
  }
195
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab-active:hover {
196
  font-weight: bold !important;
197
  }
198
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab .dashicons {
199
  display: inline-block;
200
  font-size: 25px;
201
  margin-right: 10px;
202
  color: #d4d4d4;
203
  vertical-align: sub;
204
  }
205
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab-active .dashicons {
206
  color: #222;
207
  }
208
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu__nav-tab_short-description {
209
  color: #868686;
210
  padding: 0;
211
  margin: 0;
213
  text-transform: none;
214
  font-weight: normal;
215
  }
216
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
217
  float: left;
218
  vertical-align: top;
219
  width: 230px;
220
  background: #e6e6e6;
221
  }
222
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul {
223
  padding: 0;
224
  margin-bottom: 0;
225
  margin-top: 80px;
226
  }
227
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
228
  display: block;
229
  background: #efefef;
230
  margin: 1px 0;
231
  }
232
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
233
  display: block;
234
  width: 100%;
235
  padding: 20px 20px;
240
  text-align: left;
241
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
242
  }
243
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
244
  display: block;
245
  font-weight: bold;
246
  }
247
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
248
  display: block;
249
  font-size: 13px;
250
  font-weight: normal;
251
  text-transform: none;
252
  color: #9a9a9a;
253
  }
254
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
255
  float: right;
256
  color: #ccc;
257
  }
258
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
259
  clear: both;
260
  }
261
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
262
  background: #f7f6f6;
263
  }
264
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
265
  color: #9a9a9a;
266
  }
267
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
268
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
269
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
270
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
271
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
272
  outline: 0 !important;
273
  box-shadow: none !important;
274
  }
275
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
276
  background: #fff;
277
  border-left: 5px solid #ff5722;
278
  }
279
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
280
  color: #ff5722;
281
  font-weight: bold;
282
  }
283
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
284
  color: #9a9a9a;
285
  }
286
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
287
  padding: 0;
288
  margin: 0;
289
  }
290
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
291
  margin: 1px 0 0;
292
  padding: 0;
293
  }
294
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
295
  display: block;
296
  font-weight: normal;
297
  color: #222;
302
  text-decoration: none;
303
  outline: none;
304
  }
305
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
306
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
307
  outline: 0 !important;
308
  text-shadow: none !important;
309
  }
310
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
311
  color: #9a9a9a;
312
  font-size: 13px;
313
  border: 0;
318
  -ms-filter: fliph;
319
  filter: fliph;
320
  }
321
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
322
  background: #fff;
323
  color: #ff5722;
324
  font-weight: 600;
325
  }
326
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
327
  color: #ff5722;
328
  }
329
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section,
330
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
331
  display: inline-block;
332
  vertical-align: top;
333
  }
334
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section {
335
  width: 74.6%;
336
  }
337
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section.wbcr-fullwidth {
338
  width: 100%;
339
  }
340
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .nav-tab-wrapper {
341
  margin-top: 15px;
342
  }
343
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content {
344
  padding: 0 0 20px 0;
345
  }
346
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
347
  padding-top: 0 !important;
348
  }
349
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button {
350
  display: inline-block;
351
  vertical-align: top;
352
  font-size: 13px;
369
  text-decoration: none;
370
  z-index: 3;
371
  }
372
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button {
373
  position: fixed;
374
  top: 80px;
375
  right: 30px;
383
  border-color: #0074a2;
384
  color: #fff;
385
  }
386
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button:hover {
387
  box-shadow: inset 0 1px 3px #0074a2;
388
  }
389
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .wbcr-factory-button.wbcr-save-button:active {
390
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
391
  }
392
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert {
393
  font-weight: bold;
394
  /*margin: 3px;*/
395
  border: 0;
397
  padding: 15px;
398
  margin: 0 5px 10px 5px;
399
  }
400
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert + .wbcr-factory-page-group-header {
401
  margin-top: 0 !important;
402
  }
403
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-warning {
404
  background: #fff3d0;
405
  border-left: 5px solid #ffe800;
406
  }
407
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-warning:nth-child(2n+1) {
408
  background: #fffde9;
409
  }
410
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-danger {
411
  background: #de716d;
412
  border-left: 5px solid #ff0a00;
413
  }
414
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-danger:nth-child(2n+1) {
415
  background: #ec8c89;
416
  }
417
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-success {
418
  background: #d0ecc4;
419
  border-left: 5px solid #36b300;
420
  }
421
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content .alert.alert-success:nth-child(2n+1) {
422
  background: #e0eadb;
423
  }
424
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
425
  width: 25%;
426
  padding: 10px;
427
  margin: 0 0 -20px;
428
  background-color: #f9f9f9;
429
  box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
430
  }
431
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
432
  margin: 0 0 20px;
433
  }
434
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-bottom-sidebar {
435
  display: flex;
436
  justify-content: space-between;
437
  }
438
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-bottom-sidebar .wbcr-factory-bottom-sidebar-widget {
439
  width: 100%;
440
  margin: 0 5px;
441
  }
442
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget {
443
  display: inline-block;
444
  min-height: 230px;
445
  width: 100%;
448
  padding: 20px 15px;
449
  vertical-align: top;
450
  }
451
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
452
  display: none;
453
  }
454
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
455
  background: #fff4d0;
456
  }
457
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
458
  background: #e2ffc0;
459
  }
460
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
461
  background: #ffebe9;
462
  }
463
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
464
  display: inline-block;
465
  width: 16px;
466
  height: 16px;
472
  background: #E91E63;
473
  border-radius: 3px;
474
  }
475
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
476
  background: #E91E63;
477
  }
478
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
479
  background: #9e9e9e;
480
  }
481
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
482
  background: #8bc34a;
483
  }
484
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
485
  display: block;
486
  width: 80px;
487
  height: 17px;
489
  vertical-align: middle;
490
  margin-bottom: 5px;
491
  }
492
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
493
  display: block;
494
  margin: 30px auto 0;
495
  outline: none;
496
  }
497
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
498
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
499
  box-shadow: none;
500
  }
501
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
502
  font-size: 50px;
503
  margin-top: 30px;
504
  text-align: center;
505
  font-weight: 600;
506
  color: #8BC34A;
507
  }
508
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
509
  min-height: 240px;
510
  margin-bottom: 20px;
511
  text-align: center;
513
  padding: 30px;
514
  border: 1px solid #f3f1e7;
515
  }
516
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
517
  width: 50px;
518
  height: 50px;
519
  font-size: 50px;
520
  color: #FFC107;
521
  line-height: normal;
522
  }
523
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
524
  color: #7b6111;
525
  }
526
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
527
  color: #9e9e9e;
528
  }
529
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
530
  margin-top: 20px;
531
  text-align: center;
532
  }
533
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
534
  display: inline-block;
535
  padding: 20px 60px;
536
  background-color: #FFC107;
540
  font-weight: bold;
541
  transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
542
  }
543
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
544
  background-color: #ffce3a;
545
  }
546
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog {
547
  padding: 20px;
548
  background: #ffffff;
549
  }
550
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog .updated,
551
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog .alert {
552
  display: none;
553
  }
554
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog h2 {
555
  font-size: 18px;
556
  margin-top: 10px;
557
  }
558
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
559
  padding: 10px;
560
  background: #ffedeb;
561
  border: 1px solid #ffdfdc;
562
  margin: 15px 0;
563
  }
564
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
565
  margin-bottom: 15px;
566
  color: #7b7b7b;
567
  }
568
  @media screen and (max-width: 1367px) {
569
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section {
570
  width: 69.6%;
571
  }
572
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
573
  width: 30%;
574
  }
575
  }
576
  @media screen and (max-width: 1320px) {
577
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-content-section {
578
  width: 100%;
579
  }
580
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
581
  display: none !important;
582
  }
583
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-header-logo .dash {
584
  display: none !important;
585
  }
586
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-header-title {
587
  display: none !important;
588
  }
589
  }
590
  @media screen and (max-width: 950px) {
591
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template {
592
  /* .wbcr-factory-page-inner-wrap {
593
  margin-left: 70px;
594
  }*/
595
  }
596
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
597
  width: 70px;
598
  }
599
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
600
  font-size: 0;
601
  }
602
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
603
  font-size: 0;
604
  }
605
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
606
  display: none !important;
607
  }
608
+ #WBCR .wbcr-factory-templates-106-impressive-lite-page-template .w-factory-templates-106-horizontal-menu .wbcr-nav-tab-title {
609
  font-size: 0;
610
  }
611
  }
libs/factory/templates/pages/templates/impressive-lite/class-page-template-impressive-lite.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103;
4
 
5
  /**
6
  * Impressive lite page template class
@@ -18,11 +18,11 @@ if ( ! defined( 'ABSPATH' ) ) {
18
  exit;
19
  }
20
 
21
- if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
22
  /**
23
- * Class Wbcr_FactoryPages445_ImpressiveLiteTemplate
24
  */
25
- abstract class ImpressiveLite extends \WBCR\Factory_Templates_103\Pages\PageBase {
26
 
27
  /**
28
  * Requests assets (js and css) for the page.
@@ -51,7 +51,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
51
  'holder.more-link'
52
  ], 'bootstrap' );
53
 
54
- $this->styles->add( FACTORY_TEMPLATES_103_URL . '/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css' );
55
  }
56
 
57
  public function getPluginTitle() {
@@ -105,12 +105,12 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
105
  </style>
106
 
107
  <div class="wbcr-factory-page-header">
108
- <div class="wbcr-factory-header-logo"><?= $this->getPluginTitle(); ?>
109
- <span class="version"><?= $this->plugin->getPluginVersion() ?> </span>
110
  <?php if ( $this->show_page_title ): ?>
111
  <span class="dash">/</span>
112
  <div class="wbcr-factory-header-title">
113
- <h2><?= $this->getPageTitle() ?></h2>
114
  </div>
115
  <?php endif; ?>
116
  </div>
@@ -133,7 +133,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
133
  uasort( $page_menu, [ $this, 'pageMenuSort' ] );
134
 
135
  ?>
136
- <div class="w-factory-templates-103-horizontal-menu wp-clearfix">
137
  <?php foreach ( (array) $page_menu as $page_screen => $page ): ?>
138
  <?php
139
  if ( ! $page['show_tab'] ) {
@@ -141,11 +141,11 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
141
  }
142
  $active_tab = '';
143
  if ( $page_screen == $this->getResultId() ) {
144
- $active_tab = ' w-factory-templates-103-horizontal-menu__nav-tab-active';
145
  }
146
  ?>
147
- <a href="<?php echo $page['url'] ?>" id="<?= esc_attr( $page_screen ) ?>-tab"
148
- class="w-factory-templates-103-horizontal-menu__nav-tab<?= esc_attr( $active_tab ) ?>">
149
  <span><?php echo $page['icon']; ?></span>
150
  <span class="wbcr-nav-tab-title"><?php echo $page['title']; ?></span>
151
  </a>
@@ -165,7 +165,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
165
  <div class="wbcr-factory-bottom-sidebar">
166
  <?php foreach ( $widgets as $widget_content ): ?>
167
  <div class="wbcr-factory-bottom-sidebar-widget">
168
- <?= $widget_content ?>
169
  </div>
170
  <?php endforeach; ?>
171
  </div>
@@ -174,12 +174,12 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
174
  }
175
 
176
  protected function showOptions() {
177
- $form = new \Wbcr_FactoryForms443_Form( [
178
  'scope' => rtrim( $this->plugin->getPrefix(), '_' ),
179
  'name' => $this->getResultId() . "-options"
180
  ], $this->plugin );
181
 
182
- $form->setProvider( new \Wbcr_FactoryForms443_OptionsValueProvider( $this->plugin ) );
183
 
184
  $options = $this->getPageOptions();
185
 
@@ -219,7 +219,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
219
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
220
 
221
  if ( ! current_user_can( 'administrator' ) && ! current_user_can( $this->capabilitiy ) ) {
222
- wp_die( __( 'You do not have permission to edit page.', 'wbcr_factory_pages_445' ) );
223
  }
224
 
225
  /**
@@ -247,8 +247,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
247
 
248
  ?>
249
  <div id="WBCR" class="wrap">
250
- <div class="wbcr-factory-templates-103-impressive-lite-page-template factory-bootstrap-446 factory-fontawesome-000">
251
- <div class="wbcr-factory-options wbcr-factory-options-<?= esc_attr( $this->id ) ?>">
252
  <?php $this->showHeader(); ?>
253
  <div class="wbcr-factory-page-inner-wrap">
254
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
@@ -261,7 +261,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
261
  wp_nonce_field( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
262
  $submit_button = "<input name='{$this->plugin->getPluginName()}_save_action'
263
  class='wbcr-factory-button wbcr-save-button' type='submit'
264
- value='" . __( 'Save', 'wbcr_factory_pages_445' ) . "'>";
265
  }
266
  ?>
267
  <?php $this->printAllNotices(); ?>
@@ -291,8 +291,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
291
 
292
  protected function showPage( $content = null ) { ?>
293
  <div id="WBCR" class="wrap">
294
- <div class="wbcr-factory-templates-103-impressive-lite-page-template factory-bootstrap-446 factory-fontawesome-000">
295
- <div class="wbcr-factory-page wbcr-factory-page-<?= $this->id ?>">
296
  <?php $this->showHeader(); ?>
297
  <?php
298
  $min_height = 0;
@@ -306,7 +306,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
306
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
307
  <?php //$this->showPageSubMenu();
308
  ?>
309
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
310
  <?php $this->printAllNotices(); ?>
311
  <?php if ( empty( $content ) ): ?>
312
  <?php $this->showPageContent() ?>
@@ -316,7 +316,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\ImpressiveLite' ) ) {
316
  </div>
317
  </div>
318
  <?php if ( $this->isShowRightSidebar() ): ?>
319
- <div class="wbcr-factory-right-sidebar-section" style="min-height:<?= $min_height ?>px">
320
  <?php $this->showRightSidebar(); ?>
321
  </div>
322
  <?php endif; ?>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106;
4
 
5
  /**
6
  * Impressive lite page template class
18
  exit;
19
  }
20
 
21
+ if ( ! class_exists( 'WBCR\Factory_Templates_106\ImpressiveLite' ) ) {
22
  /**
23
+ * Class Wbcr_FactoryPages453_ImpressiveLiteTemplate
24
  */
25
+ abstract class ImpressiveLite extends \WBCR\Factory_Templates_106\Pages\PageBase {
26
 
27
  /**
28
  * Requests assets (js and css) for the page.
51
  'holder.more-link'
52
  ], 'bootstrap' );
53
 
54
+ $this->styles->add( FACTORY_TEMPLATES_106_URL . '/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css' );
55
  }
56
 
57
  public function getPluginTitle() {
105
  </style>
106
 
107
  <div class="wbcr-factory-page-header">
108
+ <div class="wbcr-factory-header-logo"><?php echo $this->getPluginTitle(); ?>
109
+ <span class="version"><?php echo $this->plugin->getPluginVersion() ?> </span>
110
  <?php if ( $this->show_page_title ): ?>
111
  <span class="dash">/</span>
112
  <div class="wbcr-factory-header-title">
113
+ <h2><?php echo $this->getPageTitle() ?></h2>
114
  </div>
115
  <?php endif; ?>
116
  </div>
133
  uasort( $page_menu, [ $this, 'pageMenuSort' ] );
134
 
135
  ?>
136
+ <div class="w-factory-templates-106-horizontal-menu wp-clearfix">
137
  <?php foreach ( (array) $page_menu as $page_screen => $page ): ?>
138
  <?php
139
  if ( ! $page['show_tab'] ) {
141
  }
142
  $active_tab = '';
143
  if ( $page_screen == $this->getResultId() ) {
144
+ $active_tab = ' w-factory-templates-106-horizontal-menu__nav-tab-active';
145
  }
146
  ?>
147
+ <a href="<?php echo $page['url'] ?>" id="<?php echo esc_attr( $page_screen ) ?>-tab"
148
+ class="w-factory-templates-106-horizontal-menu__nav-tab<?php echo esc_attr( $active_tab ) ?>">
149
  <span><?php echo $page['icon']; ?></span>
150
  <span class="wbcr-nav-tab-title"><?php echo $page['title']; ?></span>
151
  </a>
165
  <div class="wbcr-factory-bottom-sidebar">
166
  <?php foreach ( $widgets as $widget_content ): ?>
167
  <div class="wbcr-factory-bottom-sidebar-widget">
168
+ <?php echo $widget_content ?>
169
  </div>
170
  <?php endforeach; ?>
171
  </div>
174
  }
175
 
176
  protected function showOptions() {
177
+ $form = new \Wbcr_FactoryForms451_Form( [
178
  'scope' => rtrim( $this->plugin->getPrefix(), '_' ),
179
  'name' => $this->getResultId() . "-options"
180
  ], $this->plugin );
181
 
182
+ $form->setProvider( new \Wbcr_FactoryForms451_OptionsValueProvider( $this->plugin ) );
183
 
184
  $options = $this->getPageOptions();
185
 
219
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
220
 
221
  if ( ! current_user_can( 'administrator' ) && ! current_user_can( $this->capabilitiy ) ) {
222
+ wp_die( __( 'You do not have permission to edit page.', 'wbcr_factory_pages_453' ) );
223
  }
224
 
225
  /**
247
 
248
  ?>
249
  <div id="WBCR" class="wrap">
250
+ <div class="wbcr-factory-templates-106-impressive-lite-page-template factory-bootstrap-455 factory-fontawesome-000">
251
+ <div class="wbcr-factory-options wbcr-factory-options-<?php echo esc_attr( $this->id ) ?>">
252
  <?php $this->showHeader(); ?>
253
  <div class="wbcr-factory-page-inner-wrap">
254
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
261
  wp_nonce_field( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
262
  $submit_button = "<input name='{$this->plugin->getPluginName()}_save_action'
263
  class='wbcr-factory-button wbcr-save-button' type='submit'
264
+ value='" . __( 'Save', 'wbcr_factory_pages_453' ) . "'>";
265
  }
266
  ?>
267
  <?php $this->printAllNotices(); ?>
291
 
292
  protected function showPage( $content = null ) { ?>
293
  <div id="WBCR" class="wrap">
294
+ <div class="wbcr-factory-templates-106-impressive-lite-page-template factory-bootstrap-455 factory-fontawesome-000">
295
+ <div class="wbcr-factory-page wbcr-factory-page-<?php echo $this->id ?>">
296
  <?php $this->showHeader(); ?>
297
  <?php
298
  $min_height = 0;
306
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
307
  <?php //$this->showPageSubMenu();
308
  ?>
309
+ <div class="wbcr-factory-content" style="min-height:<?php echo $min_height ?>px">
310
  <?php $this->printAllNotices(); ?>
311
  <?php if ( empty( $content ) ): ?>
312
  <?php $this->showPageContent() ?>
316
  </div>
317
  </div>
318
  <?php if ( $this->isShowRightSidebar() ): ?>
319
+ <div class="wbcr-factory-right-sidebar-section" style="min-height:<?php echo $min_height ?>px">
320
  <?php $this->showRightSidebar(); ?>
321
  </div>
322
  <?php endif; ?>
libs/factory/templates/pages/templates/impressive/assets/css/impressive.page.template.css CHANGED
@@ -9,7 +9,7 @@
9
  #WBCR .wdan-notices-compact-panel {
10
  display: none !important;
11
  }
12
- #WBCR .wbcr-factory-templates-103-impressive-page-template {
13
  position: relative;
14
  /**
15
  Content sections
@@ -18,137 +18,137 @@
18
  Widget in the sidebar of the plugin
19
  */
20
  }
21
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-color-grey {
22
  color: #9a9a9a;
23
  }
24
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-orange-color {
25
  color: #ffc107;
26
  }
27
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-red-color {
28
  color: #ee6e65;
29
  }
30
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-light-orange-color {
31
  color: #ffeb3b;
32
  }
33
- #WBCR .wbcr-factory-templates-103-impressive-page-template .form-group {
34
  padding: 0 20px;
35
  }
36
- #WBCR .wbcr-factory-templates-103-impressive-page-template .form-group label {
37
  font-weight: normal;
38
  }
39
- #WBCR .wbcr-factory-templates-103-impressive-page-template .form-horizontal .control-label {
40
  max-width: 300px;
41
  }
42
- #WBCR .wbcr-factory-templates-103-impressive-page-template .factory-control-buttons {
43
  text-align: right;
44
  padding-right: 20px;
45
  }
46
- #WBCR .wbcr-factory-templates-103-impressive-page-template .factory-from-control-list label span {
47
  display: inline-block;
48
  vertical-align: bottom;
49
  }
50
- #WBCR .wbcr-factory-templates-103-impressive-page-template .factory-from-control-list label span input[type="checkbox"],
51
- #WBCR .wbcr-factory-templates-103-impressive-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
52
  outline: none;
53
  }
54
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert {
55
  font-weight: bold;
56
  margin: 0 !important;
57
  border: 0;
58
  border-radius: 0;
59
  padding: 15px;
60
  }
61
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert + .wbcr-factory-page-group-header {
62
  margin-top: 0 !important;
63
  }
64
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-warning {
65
  background: #fff3d0;
66
  }
67
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-warning:nth-child(2n+1) {
68
  background: #fffde9;
69
  }
70
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-danger {
71
  background: #de716d;
72
  }
73
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-danger:nth-child(2n+1) {
74
  background: #ec8c89;
75
  }
76
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-success {
77
  background: #d0ecc4;
78
  }
79
- #WBCR .wbcr-factory-templates-103-impressive-page-template .alert.alert-success:nth-child(2n+1) {
80
  background: #e0eadb;
81
  }
82
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-header {
83
  padding: 20px 20px 40px;
84
  }
85
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-recomended-text {
86
  display: block;
87
  font-size: 11px;
88
  font-weight: lighter;
89
  color: #179347;
90
  }
91
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-options,
92
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page {
93
  position: relative;
94
  background: #e6e6e6;
95
  overflow: hidden;
96
  }
97
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-options:after,
98
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page:after {
99
  display: block;
100
  content: '';
101
  clear: both;
102
  }
103
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-group-header {
104
  background: #efefef;
105
  padding: 20px 0 10px 20px;
106
  margin: 30px 0;
107
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
108
  }
109
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-group-header:first-child {
110
  margin-top: 0;
111
  }
112
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-group-header strong {
113
  font-size: 15px;
114
  }
115
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-group-header p {
116
  color: #8c8888;
117
  font-size: 12px;
118
  }
119
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap {
120
  margin-left: 230px;
121
  padding: 80px 0 0 0;
122
  vertical-align: top;
123
  background: #fff;
124
  }
125
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-wrapper,
126
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap h2.nav-tab-wrapper,
127
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap h1.nav-tab-wrapper {
128
  border: 0;
129
  }
130
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-active {
131
  background: #efefef !important;
132
  margin-bottom: -2px !important;
133
  border-bottom: 1px solid #efefef !important;
134
  }
135
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:first-child {
136
  margin: 0;
137
  }
138
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:hover {
139
  background: #f7f7f7;
140
  }
141
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab {
142
  border: 2px solid #dedede;
143
  border-bottom: 0;
144
  box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
145
  }
146
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:active,
147
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:focus {
148
  box-shadow: none;
149
  outline: none;
150
  }
151
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header {
152
  position: absolute;
153
  z-index: 13;
154
  top: 0;
@@ -159,7 +159,7 @@
159
  color: #fff;
160
  border-radius: 5px 5px 0 0;
161
  }
162
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
163
  float: left;
164
  padding: 25px 0;
165
  font-size: 20px;
@@ -172,11 +172,11 @@
172
  margin-right: 10px;
173
  background: none;
174
  }
175
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
176
  display: inline-block;
177
  vertical-align: middle;
178
  }
179
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
180
  font-size: 18px;
181
  line-height: 30px;
182
  font-weight: 300;
@@ -187,12 +187,12 @@
187
  text-overflow: ellipsis;
188
  color: #fff;
189
  }
190
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-control {
191
  position: relative;
192
  float: right;
193
  margin: 12px;
194
  }
195
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button {
196
  display: inline-block;
197
  vertical-align: top;
198
  font-size: 13px;
@@ -215,49 +215,49 @@
215
  text-decoration: none;
216
  z-index: 3;
217
  }
218
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save {
219
  box-shadow: none;
220
  min-width: 100px;
221
  background-color: #8bc34a;
222
  color: #fff;
223
  }
224
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:hover {
225
  background: #9dbb7b;
226
  color: #fff;
227
  }
228
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:active {
229
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
230
  }
231
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings {
232
  box-shadow: none;
233
  min-width: 200px;
234
  background-color: #9e9e9e;
235
  color: #fff;
236
  }
237
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:hover {
238
  background: #797979;
239
  color: #fff;
240
  }
241
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:active {
242
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
243
  }
244
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar {
245
  float: left;
246
  vertical-align: top;
247
  width: 230px;
248
  background: #e6e6e6;
249
  }
250
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul {
251
  padding: 0;
252
  margin-bottom: 0;
253
  margin-top: 80px;
254
  }
255
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
256
  display: block;
257
  background: #efefef;
258
  margin: 1px 0;
259
  }
260
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
261
  display: block;
262
  width: 100%;
263
  padding: 20px 20px;
@@ -268,58 +268,58 @@
268
  text-align: left;
269
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
270
  }
271
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
272
  display: block;
273
  font-weight: bold;
274
  }
275
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
276
  display: block;
277
  font-size: 13px;
278
  font-weight: normal;
279
  text-transform: none;
280
  color: #9a9a9a;
281
  }
282
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
283
  float: right;
284
  color: #ccc;
285
  }
286
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
287
  clear: both;
288
  }
289
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
290
  background: #f7f6f6;
291
  }
292
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
293
  color: #9a9a9a;
294
  }
295
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
296
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
297
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
298
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
299
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
300
  outline: 0 !important;
301
  box-shadow: none !important;
302
  }
303
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
304
  background: #fff;
305
  border-left: 5px solid #ff5722;
306
  }
307
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
308
  color: #ff5722;
309
  font-weight: bold;
310
  }
311
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
312
  color: #9a9a9a;
313
  }
314
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
315
  padding: 0;
316
  margin: 0;
317
  }
318
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
319
  margin: 1px 0 0;
320
  padding: 0;
321
  }
322
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
323
  display: block;
324
  font-weight: normal;
325
  color: #222;
@@ -330,12 +330,12 @@
330
  text-decoration: none;
331
  outline: none;
332
  }
333
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
334
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
335
  outline: 0 !important;
336
  text-shadow: none !important;
337
  }
338
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
339
  color: #9a9a9a;
340
  font-size: 13px;
341
  border: 0;
@@ -346,48 +346,48 @@
346
  -ms-filter: fliph;
347
  filter: fliph;
348
  }
349
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
350
  background: #fff;
351
  color: #ff5722;
352
  font-weight: 600;
353
  }
354
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
355
  color: #ff5722;
356
  }
357
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section,
358
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section {
359
  display: inline-block;
360
  vertical-align: top;
361
  }
362
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section {
363
  width: 74.6%;
364
  }
365
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section.wbcr-fullwidth {
366
  width: 100%;
367
  }
368
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section .nav-tab-wrapper {
369
  margin-top: 15px;
370
  }
371
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content {
372
  background: #f7f7f7;
373
  padding: 0 0 20px 0;
374
  border: 1px solid #dad8d8;
375
  box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
376
  }
377
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
378
  padding-top: 0 !important;
379
  }
380
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section {
381
  width: 25%;
382
  padding: 10px;
383
  margin: 0 0 -20px;
384
  background-color: #f9f9f9;
385
  box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
386
  }
387
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
388
  margin: 0 0 20px;
389
  }
390
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget {
391
  display: inline-block;
392
  min-height: 230px;
393
  width: 100%;
@@ -396,19 +396,19 @@
396
  padding: 20px 15px;
397
  vertical-align: top;
398
  }
399
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
400
  display: none;
401
  }
402
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
403
  background: #fff4d0;
404
  }
405
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
406
  background: #e2ffc0;
407
  }
408
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
409
  background: #ffebe9;
410
  }
411
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
412
  display: inline-block;
413
  width: 16px;
414
  height: 16px;
@@ -420,16 +420,16 @@
420
  background: #E91E63;
421
  border-radius: 3px;
422
  }
423
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
424
  background: #E91E63;
425
  }
426
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
427
  background: #9e9e9e;
428
  }
429
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
430
  background: #8bc34a;
431
  }
432
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
433
  display: block;
434
  width: 80px;
435
  height: 17px;
@@ -437,23 +437,23 @@
437
  vertical-align: middle;
438
  margin-bottom: 5px;
439
  }
440
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
441
  display: block;
442
  margin: 30px auto 0;
443
  outline: none;
444
  }
445
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
446
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
447
  box-shadow: none;
448
  }
449
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
450
  font-size: 50px;
451
  margin-top: 30px;
452
  text-align: center;
453
  font-weight: 600;
454
  color: #8BC34A;
455
  }
456
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
457
  min-height: 240px;
458
  margin-bottom: 20px;
459
  text-align: center;
@@ -461,24 +461,24 @@
461
  padding: 30px;
462
  border: 1px solid #f3f1e7;
463
  }
464
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
465
  width: 50px;
466
  height: 50px;
467
  font-size: 50px;
468
  color: #FFC107;
469
  line-height: normal;
470
  }
471
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
472
  color: #7b6111;
473
  }
474
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
475
  color: #9e9e9e;
476
  }
477
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
478
  margin-top: 20px;
479
  text-align: center;
480
  }
481
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
482
  display: inline-block;
483
  padding: 20px 60px;
484
  background-color: #FFC107;
@@ -488,67 +488,67 @@
488
  font-weight: bold;
489
  transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
490
  }
491
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
492
  background-color: #ffce3a;
493
  }
494
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog {
495
  padding: 20px;
496
  background: #ffffff;
497
  }
498
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog .updated,
499
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog .alert {
500
  display: none;
501
  }
502
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog h2 {
503
  font-size: 18px;
504
  margin-top: 10px;
505
  }
506
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
507
  padding: 10px;
508
  background: #ffedeb;
509
  border: 1px solid #ffdfdc;
510
  margin: 15px 0;
511
  }
512
- #WBCR .wbcr-factory-templates-103-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
513
  margin-bottom: 15px;
514
  color: #7b7b7b;
515
  }
516
  @media screen and (max-width: 1367px) {
517
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section {
518
  width: 69.6%;
519
  }
520
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section {
521
  width: 30%;
522
  }
523
  }
524
  @media screen and (max-width: 1320px) {
525
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-content-section {
526
  width: 100%;
527
  }
528
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-right-sidebar-section {
529
  display: none !important;
530
  }
531
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-header-logo .dash {
532
  display: none !important;
533
  }
534
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-header-title {
535
  display: none !important;
536
  }
537
  }
538
  @media screen and (max-width: 950px) {
539
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar {
540
  width: 70px;
541
  }
542
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
543
  font-size: 0;
544
  }
545
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
546
  font-size: 0;
547
  }
548
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
549
  display: none !important;
550
  }
551
- #WBCR .wbcr-factory-templates-103-impressive-page-template .wbcr-factory-page-inner-wrap {
552
  margin-left: 70px;
553
  }
554
  }
9
  #WBCR .wdan-notices-compact-panel {
10
  display: none !important;
11
  }
12
+ #WBCR .wbcr-factory-templates-106-impressive-page-template {
13
  position: relative;
14
  /**
15
  Content sections
18
  Widget in the sidebar of the plugin
19
  */
20
  }
21
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-color-grey {
22
  color: #9a9a9a;
23
  }
24
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-orange-color {
25
  color: #ffc107;
26
  }
27
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-red-color {
28
  color: #ee6e65;
29
  }
30
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-light-orange-color {
31
  color: #ffeb3b;
32
  }
33
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .form-group {
34
  padding: 0 20px;
35
  }
36
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .form-group label {
37
  font-weight: normal;
38
  }
39
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .form-horizontal .control-label {
40
  max-width: 300px;
41
  }
42
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .factory-control-buttons {
43
  text-align: right;
44
  padding-right: 20px;
45
  }
46
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .factory-from-control-list label span {
47
  display: inline-block;
48
  vertical-align: bottom;
49
  }
50
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .factory-from-control-list label span input[type="checkbox"],
51
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
52
  outline: none;
53
  }
54
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert {
55
  font-weight: bold;
56
  margin: 0 !important;
57
  border: 0;
58
  border-radius: 0;
59
  padding: 15px;
60
  }
61
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert + .wbcr-factory-page-group-header {
62
  margin-top: 0 !important;
63
  }
64
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-warning {
65
  background: #fff3d0;
66
  }
67
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-warning:nth-child(2n+1) {
68
  background: #fffde9;
69
  }
70
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-danger {
71
  background: #de716d;
72
  }
73
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-danger:nth-child(2n+1) {
74
  background: #ec8c89;
75
  }
76
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-success {
77
  background: #d0ecc4;
78
  }
79
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .alert.alert-success:nth-child(2n+1) {
80
  background: #e0eadb;
81
  }
82
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-header {
83
  padding: 20px 20px 40px;
84
  }
85
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-recomended-text {
86
  display: block;
87
  font-size: 11px;
88
  font-weight: lighter;
89
  color: #179347;
90
  }
91
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-options,
92
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page {
93
  position: relative;
94
  background: #e6e6e6;
95
  overflow: hidden;
96
  }
97
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-options:after,
98
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page:after {
99
  display: block;
100
  content: '';
101
  clear: both;
102
  }
103
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-group-header {
104
  background: #efefef;
105
  padding: 20px 0 10px 20px;
106
  margin: 30px 0;
107
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
108
  }
109
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-group-header:first-child {
110
  margin-top: 0;
111
  }
112
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-group-header strong {
113
  font-size: 15px;
114
  }
115
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-group-header p {
116
  color: #8c8888;
117
  font-size: 12px;
118
  }
119
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap {
120
  margin-left: 230px;
121
  padding: 80px 0 0 0;
122
  vertical-align: top;
123
  background: #fff;
124
  }
125
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-wrapper,
126
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap h2.nav-tab-wrapper,
127
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap h1.nav-tab-wrapper {
128
  border: 0;
129
  }
130
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-active {
131
  background: #efefef !important;
132
  margin-bottom: -2px !important;
133
  border-bottom: 1px solid #efefef !important;
134
  }
135
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:first-child {
136
  margin: 0;
137
  }
138
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:hover {
139
  background: #f7f7f7;
140
  }
141
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab {
142
  border: 2px solid #dedede;
143
  border-bottom: 0;
144
  box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
145
  }
146
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:active,
147
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:focus {
148
  box-shadow: none;
149
  outline: none;
150
  }
151
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header {
152
  position: absolute;
153
  z-index: 13;
154
  top: 0;
159
  color: #fff;
160
  border-radius: 5px 5px 0 0;
161
  }
162
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
163
  float: left;
164
  padding: 25px 0;
165
  font-size: 20px;
172
  margin-right: 10px;
173
  background: none;
174
  }
175
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
176
  display: inline-block;
177
  vertical-align: middle;
178
  }
179
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
180
  font-size: 18px;
181
  line-height: 30px;
182
  font-weight: 300;
187
  text-overflow: ellipsis;
188
  color: #fff;
189
  }
190
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-control {
191
  position: relative;
192
  float: right;
193
  margin: 12px;
194
  }
195
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button {
196
  display: inline-block;
197
  vertical-align: top;
198
  font-size: 13px;
215
  text-decoration: none;
216
  z-index: 3;
217
  }
218
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save {
219
  box-shadow: none;
220
  min-width: 100px;
221
  background-color: #8bc34a;
222
  color: #fff;
223
  }
224
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:hover {
225
  background: #9dbb7b;
226
  color: #fff;
227
  }
228
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:active {
229
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
230
  }
231
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings {
232
  box-shadow: none;
233
  min-width: 200px;
234
  background-color: #9e9e9e;
235
  color: #fff;
236
  }
237
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:hover {
238
  background: #797979;
239
  color: #fff;
240
  }
241
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:active {
242
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
243
  }
244
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar {
245
  float: left;
246
  vertical-align: top;
247
  width: 230px;
248
  background: #e6e6e6;
249
  }
250
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul {
251
  padding: 0;
252
  margin-bottom: 0;
253
  margin-top: 80px;
254
  }
255
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
256
  display: block;
257
  background: #efefef;
258
  margin: 1px 0;
259
  }
260
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
261
  display: block;
262
  width: 100%;
263
  padding: 20px 20px;
268
  text-align: left;
269
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
270
  }
271
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
272
  display: block;
273
  font-weight: bold;
274
  }
275
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
276
  display: block;
277
  font-size: 13px;
278
  font-weight: normal;
279
  text-transform: none;
280
  color: #9a9a9a;
281
  }
282
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
283
  float: right;
284
  color: #ccc;
285
  }
286
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
287
  clear: both;
288
  }
289
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
290
  background: #f7f6f6;
291
  }
292
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
293
  color: #9a9a9a;
294
  }
295
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
296
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
297
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
298
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
299
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
300
  outline: 0 !important;
301
  box-shadow: none !important;
302
  }
303
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
304
  background: #fff;
305
  border-left: 5px solid #ff5722;
306
  }
307
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
308
  color: #ff5722;
309
  font-weight: bold;
310
  }
311
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
312
  color: #9a9a9a;
313
  }
314
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
315
  padding: 0;
316
  margin: 0;
317
  }
318
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
319
  margin: 1px 0 0;
320
  padding: 0;
321
  }
322
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
323
  display: block;
324
  font-weight: normal;
325
  color: #222;
330
  text-decoration: none;
331
  outline: none;
332
  }
333
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
334
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
335
  outline: 0 !important;
336
  text-shadow: none !important;
337
  }
338
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
339
  color: #9a9a9a;
340
  font-size: 13px;
341
  border: 0;
346
  -ms-filter: fliph;
347
  filter: fliph;
348
  }
349
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
350
  background: #fff;
351
  color: #ff5722;
352
  font-weight: 600;
353
  }
354
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
355
  color: #ff5722;
356
  }
357
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section,
358
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section {
359
  display: inline-block;
360
  vertical-align: top;
361
  }
362
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section {
363
  width: 74.6%;
364
  }
365
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section.wbcr-fullwidth {
366
  width: 100%;
367
  }
368
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section .nav-tab-wrapper {
369
  margin-top: 15px;
370
  }
371
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content {
372
  background: #f7f7f7;
373
  padding: 0 0 20px 0;
374
  border: 1px solid #dad8d8;
375
  box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
376
  }
377
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
378
  padding-top: 0 !important;
379
  }
380
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section {
381
  width: 25%;
382
  padding: 10px;
383
  margin: 0 0 -20px;
384
  background-color: #f9f9f9;
385
  box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
386
  }
387
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
388
  margin: 0 0 20px;
389
  }
390
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget {
391
  display: inline-block;
392
  min-height: 230px;
393
  width: 100%;
396
  padding: 20px 15px;
397
  vertical-align: top;
398
  }
399
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
400
  display: none;
401
  }
402
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
403
  background: #fff4d0;
404
  }
405
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
406
  background: #e2ffc0;
407
  }
408
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
409
  background: #ffebe9;
410
  }
411
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
412
  display: inline-block;
413
  width: 16px;
414
  height: 16px;
420
  background: #E91E63;
421
  border-radius: 3px;
422
  }
423
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
424
  background: #E91E63;
425
  }
426
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
427
  background: #9e9e9e;
428
  }
429
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
430
  background: #8bc34a;
431
  }
432
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
433
  display: block;
434
  width: 80px;
435
  height: 17px;
437
  vertical-align: middle;
438
  margin-bottom: 5px;
439
  }
440
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
441
  display: block;
442
  margin: 30px auto 0;
443
  outline: none;
444
  }
445
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
446
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
447
  box-shadow: none;
448
  }
449
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
450
  font-size: 50px;
451
  margin-top: 30px;
452
  text-align: center;
453
  font-weight: 600;
454
  color: #8BC34A;
455
  }
456
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
457
  min-height: 240px;
458
  margin-bottom: 20px;
459
  text-align: center;
461
  padding: 30px;
462
  border: 1px solid #f3f1e7;
463
  }
464
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
465
  width: 50px;
466
  height: 50px;
467
  font-size: 50px;
468
  color: #FFC107;
469
  line-height: normal;
470
  }
471
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
472
  color: #7b6111;
473
  }
474
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
475
  color: #9e9e9e;
476
  }
477
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
478
  margin-top: 20px;
479
  text-align: center;
480
  }
481
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
482
  display: inline-block;
483
  padding: 20px 60px;
484
  background-color: #FFC107;
488
  font-weight: bold;
489
  transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
490
  }
491
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
492
  background-color: #ffce3a;
493
  }
494
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog {
495
  padding: 20px;
496
  background: #ffffff;
497
  }
498
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog .updated,
499
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog .alert {
500
  display: none;
501
  }
502
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog h2 {
503
  font-size: 18px;
504
  margin-top: 10px;
505
  }
506
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
507
  padding: 10px;
508
  background: #ffedeb;
509
  border: 1px solid #ffdfdc;
510
  margin: 15px 0;
511
  }
512
+ #WBCR .wbcr-factory-templates-106-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
513
  margin-bottom: 15px;
514
  color: #7b7b7b;
515
  }
516
  @media screen and (max-width: 1367px) {
517
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section {
518
  width: 69.6%;
519
  }
520
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section {
521
  width: 30%;
522
  }
523
  }
524
  @media screen and (max-width: 1320px) {
525
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-content-section {
526
  width: 100%;
527
  }
528
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-right-sidebar-section {
529
  display: none !important;
530
  }
531
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-header-logo .dash {
532
  display: none !important;
533
  }
534
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-header-title {
535
  display: none !important;
536
  }
537
  }
538
  @media screen and (max-width: 950px) {
539
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar {
540
  width: 70px;
541
  }
542
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
543
  font-size: 0;
544
  }
545
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
546
  font-size: 0;
547
  }
548
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
549
  display: none !important;
550
  }
551
+ #WBCR .wbcr-factory-templates-106-impressive-page-template .wbcr-factory-page-inner-wrap {
552
  margin-left: 70px;
553
  }
554
  }
libs/factory/templates/pages/templates/impressive/class-page-template-impressive.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103;
4
 
5
  /**
6
  * Impressive page themplate class
@@ -17,11 +17,11 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  exit;
18
  }
19
 
20
- if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
21
  /**
22
- * Class Wbcr_FactoryPages445_ImpressiveThemplate
23
  */
24
- abstract class Impressive extends \Wbcr_FactoryPages445_AdminPage {
25
 
26
  /**
27
  * Тип страницы:
@@ -115,11 +115,11 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
115
  public $page_menu = [];
116
 
117
  /**
118
- * @param \Wbcr_Factory446_Plugin $plugin
119
  */
120
- public function __construct( \Wbcr_Factory446_Plugin $plugin ) {
121
- $this->menuIcon = FACTORY_TEMPLATES_103_URL . '/pages/templates/impressive/assets/img/webcraftic-plugin-icon.png';
122
- //$allow_multisite = apply_filters('wbcr_factory_446_core_admin_allow_multisite', false);
123
 
124
  if ( is_multisite() && $this->available_for_multisite && $plugin->isNetworkActive() ) {
125
  $this->network = true;
@@ -129,7 +129,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
129
 
130
  parent::__construct( $plugin );
131
 
132
- $this->title_plugin_action_link = __( 'Settings', 'wbcr_factory_pages_445' );
133
 
134
  $this->setPageMenu();
135
  }
@@ -139,7 +139,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
139
  *
140
  * @return void
141
  * @since 1.0.0
142
- * @see \FactoryPages445_AdminPage
143
  *
144
  */
145
  public function assets( $scripts, $styles ) {
@@ -166,7 +166,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
166
  'holder.more-link'
167
  ], 'bootstrap' );
168
 
169
- $this->styles->add( FACTORY_TEMPLATES_103_URL . '/pages/templates/impressive/assets/css/impressive.page.template.css' );
170
  }
171
 
172
  /**
@@ -233,8 +233,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
233
  public function flushCacheAndRulesAction() {
234
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_flush_action' );
235
 
236
- if ( class_exists( 'WBCR\Factory_Templates_103\Helpers' ) ) {
237
- \WBCR\Factory_Templates_103\Helpers::flushPageCache();
238
  }
239
 
240
  /**
@@ -264,7 +264,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
264
  */
265
  protected function warningNotice() {
266
  /*if( WP_CACHE ) {
267
- $this->printWarningNotice(__("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_445'));
268
  }*/
269
  // Метод предназначен для вызова в дочернем классе
270
  }
@@ -347,7 +347,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
347
  $this->plugin->getPluginName() . '_saved' => '1'
348
  ],
349
  'type' => 'success',
350
- 'message' => __( 'The settings have been updated successfully!', 'wbcr_factory_pages_445' ) . ( WP_CACHE ? '<br>' . __( "It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_445' ) : '' )
351
  ]
352
  ];
353
 
@@ -512,8 +512,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
512
  ?>
513
  <li>
514
  <a href="<?php echo $s_menu_page['url'] ?>"
515
- id="<?= esc_attr( $s_menu_page_screen ) ?>-tab"
516
- class="<?= esc_attr( $active_tab ) ?> js-wbcr-factory-tab__link">
517
  <span class="dashicons dashicons-editor-break"></span><?php echo $s_menu_page['title'] ?>
518
  </a>
519
  </li>
@@ -581,8 +581,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
581
  $active_tab = ' nav-tab-active';
582
  }
583
  ?>
584
- <a href="<?php echo $page['url'] ?>" id="<?= esc_attr( $page_screen ) ?>-tab"
585
- class="nav-tab<?= esc_attr( $active_tab ) ?>">
586
  <?php echo $page['title'] ?>
587
  </a>
588
  <?php endforeach; ?>
@@ -599,22 +599,22 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
599
  }
600
  </style>
601
  <div class="wbcr-factory-page-header">
602
- <div class="wbcr-factory-header-logo"><?= $this->getPluginTitle(); ?>
603
- <span class="version"><?= $this->plugin->getPluginVersion() ?> </span>
604
  <?php if ( $this->show_page_title ): ?><span class="dash">—</span><?php endif; ?>
605
  </div>
606
  <?php if ( $this->show_page_title ): ?>
607
  <div class="wbcr-factory-header-title">
608
- <h2><?php _e( 'Page' ) ?>: <?= $this->getPageTitle() ?></h2>
609
  </div>
610
  <?php endif; ?>
611
  <div class="wbcr-factory-control">
612
  <?php do_action( 'wbcr/factory/pages/impressive/header', $this->plugin->getPluginName() ) ?>
613
 
614
  <?php if ( $this->type == 'options' ): ?>
615
- <input name="<?= $this->plugin->getPluginName() ?>_save_action"
616
  class="wbcr-factory-button wbcr-factory-type-save" type="submit"
617
- value="<?php _e( 'Save', 'wbcr_factory_pages_445' ); ?>">
618
  <?php wp_nonce_field( 'wbcr_factory_' . $this->getResultId() . '_save_action' ); ?>
619
  <?php endif; ?>
620
  </div>
@@ -651,7 +651,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
651
  <div class="wbcr-factory-top-sidebar">
652
  <?php foreach ( $widgets as $widget_content ): ?>
653
  <div class="col-sm-4">
654
- <?= $widget_content ?>
655
  </div>
656
  <?php endforeach; ?>
657
  </div>
@@ -676,12 +676,12 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
676
  }
677
 
678
  protected function showOptions() {
679
- $form = new \Wbcr_FactoryForms443_Form( [
680
  'scope' => rtrim( $this->plugin->getPrefix(), '_' ),
681
  'name' => $this->getResultId() . "-options"
682
  ], $this->plugin );
683
 
684
- $form->setProvider( new \Wbcr_FactoryForms443_OptionsValueProvider( $this->plugin ) );
685
 
686
  $options = $this->getPageOptions();
687
 
@@ -722,7 +722,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
722
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
723
 
724
  if ( ! current_user_can( 'administrator' ) && ! current_user_can( $this->capabilitiy ) ) {
725
- wp_die( __( 'You do not have permission to edit page.', 'wbcr_factory_pages_445' ) );
726
  }
727
 
728
  /**
@@ -750,8 +750,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
750
 
751
  ?>
752
  <div id="WBCR" class="wrap">
753
- <div class="wbcr-factory-templates-103-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
754
- <div class="wbcr-factory-options wbcr-factory-options-<?= esc_attr( $this->id ) ?>">
755
  <div class="wbcr-factory-left-navigation-bar">
756
  <?php $this->showPageMenu() ?>
757
  </div>
@@ -767,7 +767,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
767
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
768
  <?php //$this->showPageSubMenu()
769
  ?>
770
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
771
  <form method="post" class="form-horizontal">
772
  <?php $this->showHeader(); ?>
773
  <?php $this->printAllNotices(); ?>
@@ -795,8 +795,8 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
795
 
796
  protected function showPage( $content = null ) { ?>
797
  <div id="WBCR" class="wrap">
798
- <div class="wbcr-factory-templates-103-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
799
- <div class="wbcr-factory-page wbcr-factory-page-<?= $this->id ?>">
800
  <?php $this->showHeader(); ?>
801
  <div class="wbcr-factory-left-navigation-bar">
802
  <?php $this->showPageMenu() ?>
@@ -813,7 +813,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
813
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
814
  <?php //$this->showPageSubMenu()
815
  ?>
816
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
817
  <?php $this->printAllNotices(); ?>
818
  <?php if ( empty( $content ) ): ?>
819
  <?php $this->showPageContent() ?>
@@ -823,7 +823,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
823
  </div>
824
  </div>
825
  <?php if ( $this->isShowRightSidebar() ): ?>
826
- <div class="wbcr-factory-right-sidebar-section" style="min-height:<?= $min_height ?>px">
827
  <?php $this->showRightSidebar(); ?>
828
  </div>
829
  <?php endif; ?>
@@ -859,7 +859,7 @@ if ( ! class_exists( 'WBCR\Factory_Templates_103\Impressive' ) ) {
859
  public function confirmPageTemplate( $data ) {
860
  ?>
861
  <div id="WBCR" class="wrap">
862
- <div class="wbcr-factory-templates-103-impressive-page-template factory-bootstrap-446 factory-fontawesome-000">
863
  <div id="wbcr-factory-confirm-dialog">
864
  <h2><?php echo $data['title'] ?></h2>
865
  <p class="wbcr-factory-confirm-description"><?php echo $data['description'] ?></p>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106;
4
 
5
  /**
6
  * Impressive page themplate class
17
  exit;
18
  }
19
 
20
+ if ( ! class_exists( 'WBCR\Factory_Templates_106\Impressive' ) ) {
21
  /**
22
+ * Class Wbcr_FactoryPages453_ImpressiveThemplate
23
  */
24
+ abstract class Impressive extends \Wbcr_FactoryPages453_AdminPage {
25
 
26
  /**
27
  * Тип страницы:
115
  public $page_menu = [];
116
 
117
  /**
118
+ * @param \Wbcr_Factory454_Plugin $plugin
119
  */
120
+ public function __construct( \Wbcr_Factory454_Plugin $plugin ) {
121
+ $this->menuIcon = FACTORY_TEMPLATES_106_URL . '/pages/templates/impressive/assets/img/webcraftic-plugin-icon.png';
122
+ //$allow_multisite = apply_filters('wbcr_factory_454_core_admin_allow_multisite', false);
123
 
124
  if ( is_multisite() && $this->available_for_multisite && $plugin->isNetworkActive() ) {
125
  $this->network = true;
129
 
130
  parent::__construct( $plugin );
131
 
132
+ $this->title_plugin_action_link = __( 'Settings', 'wbcr_factory_pages_453' );
133
 
134
  $this->setPageMenu();
135
  }
139
  *
140
  * @return void
141
  * @since 1.0.0
142
+ * @see \FactoryPages453_AdminPage
143
  *
144
  */
145
  public function assets( $scripts, $styles ) {
166
  'holder.more-link'
167
  ], 'bootstrap' );
168
 
169
+ $this->styles->add( FACTORY_TEMPLATES_106_URL . '/pages/templates/impressive/assets/css/impressive.page.template.css' );
170
  }
171
 
172
  /**
233
  public function flushCacheAndRulesAction() {
234
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_flush_action' );
235
 
236
+ if ( class_exists( 'WBCR\Factory_Templates_106\Helpers' ) ) {
237
+ \WBCR\Factory_Templates_106\Helpers::flushPageCache();
238
  }
239
 
240
  /**
264
  */
265
  protected function warningNotice() {
266
  /*if( WP_CACHE ) {
267
+ $this->printWarningNotice(__("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_453'));
268
  }*/
269
  // Метод предназначен для вызова в дочернем классе
270
  }
347
  $this->plugin->getPluginName() . '_saved' => '1'
348
  ],
349
  'type' => 'success',
350
+ 'message' => __( 'The settings have been updated successfully!', 'wbcr_factory_pages_453' ) . ( WP_CACHE ? '<br>' . __( "It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_453' ) : '' )
351
  ]
352
  ];
353
 
512
  ?>
513
  <li>
514
  <a href="<?php echo $s_menu_page['url'] ?>"
515
+ id="<?php echo esc_attr( $s_menu_page_screen ) ?>-tab"
516
+ class="<?php echo esc_attr( $active_tab ) ?> js-wbcr-factory-tab__link">
517
  <span class="dashicons dashicons-editor-break"></span><?php echo $s_menu_page['title'] ?>
518
  </a>
519
  </li>
581
  $active_tab = ' nav-tab-active';
582
  }
583
  ?>
584
+ <a href="<?php echo $page['url'] ?>" id="<?php echo esc_attr( $page_screen ) ?>-tab"
585
+ class="nav-tab<?php echo esc_attr( $active_tab ) ?>">
586
  <?php echo $page['title'] ?>
587
  </a>
588
  <?php endforeach; ?>
599
  }
600
  </style>
601
  <div class="wbcr-factory-page-header">
602
+ <div class="wbcr-factory-header-logo"><?php echo $this->getPluginTitle(); ?>
603
+ <span class="version"><?php echo $this->plugin->getPluginVersion() ?> </span>
604
  <?php if ( $this->show_page_title ): ?><span class="dash">—</span><?php endif; ?>
605
  </div>
606
  <?php if ( $this->show_page_title ): ?>
607
  <div class="wbcr-factory-header-title">
608
+ <h2><?php _e( 'Page' ) ?>: <?php echo $this->getPageTitle() ?></h2>
609
  </div>
610
  <?php endif; ?>
611
  <div class="wbcr-factory-control">
612
  <?php do_action( 'wbcr/factory/pages/impressive/header', $this->plugin->getPluginName() ) ?>
613
 
614
  <?php if ( $this->type == 'options' ): ?>
615
+ <input name="<?php echo $this->plugin->getPluginName() ?>_save_action"
616
  class="wbcr-factory-button wbcr-factory-type-save" type="submit"
617
+ value="<?php _e( 'Save', 'wbcr_factory_pages_453' ); ?>">
618
  <?php wp_nonce_field( 'wbcr_factory_' . $this->getResultId() . '_save_action' ); ?>
619
  <?php endif; ?>
620
  </div>
651
  <div class="wbcr-factory-top-sidebar">
652
  <?php foreach ( $widgets as $widget_content ): ?>
653
  <div class="col-sm-4">
654
+ <?php echo $widget_content ?>
655
  </div>
656
  <?php endforeach; ?>
657
  </div>
676
  }
677
 
678
  protected function showOptions() {
679
+ $form = new \Wbcr_FactoryForms451_Form( [
680
  'scope' => rtrim( $this->plugin->getPrefix(), '_' ),
681
  'name' => $this->getResultId() . "-options"
682
  ], $this->plugin );
683
 
684
+ $form->setProvider( new \Wbcr_FactoryForms451_OptionsValueProvider( $this->plugin ) );
685
 
686
  $options = $this->getPageOptions();
687
 
722
  check_admin_referer( 'wbcr_factory_' . $this->getResultId() . '_save_action' );
723
 
724
  if ( ! current_user_can( 'administrator' ) && ! current_user_can( $this->capabilitiy ) ) {
725
+ wp_die( __( 'You do not have permission to edit page.', 'wbcr_factory_pages_453' ) );
726
  }
727
 
728
  /**
750
 
751
  ?>
752
  <div id="WBCR" class="wrap">
753
+ <div class="wbcr-factory-templates-106-impressive-page-template factory-bootstrap-455 factory-fontawesome-000">
754
+ <div class="wbcr-factory-options wbcr-factory-options-<?php echo esc_attr( $this->id ) ?>">
755
  <div class="wbcr-factory-left-navigation-bar">
756
  <?php $this->showPageMenu() ?>
757
  </div>
767
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
768
  <?php //$this->showPageSubMenu()
769
  ?>
770
+ <div class="wbcr-factory-content" style="min-height:<?php echo $min_height ?>px">
771
  <form method="post" class="form-horizontal">
772
  <?php $this->showHeader(); ?>
773
  <?php $this->printAllNotices(); ?>
795
 
796
  protected function showPage( $content = null ) { ?>
797
  <div id="WBCR" class="wrap">
798
+ <div class="wbcr-factory-templates-106-impressive-page-template factory-bootstrap-455 factory-fontawesome-000">
799
+ <div class="wbcr-factory-page wbcr-factory-page-<?php echo $this->id ?>">
800
  <?php $this->showHeader(); ?>
801
  <div class="wbcr-factory-left-navigation-bar">
802
  <?php $this->showPageMenu() ?>
813
  <div class="wbcr-factory-content-section<?php if ( ! $this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
814
  <?php //$this->showPageSubMenu()
815
  ?>
816
+ <div class="wbcr-factory-content" style="min-height:<?php echo $min_height ?>px">
817
  <?php $this->printAllNotices(); ?>
818
  <?php if ( empty( $content ) ): ?>
819
  <?php $this->showPageContent() ?>
823
  </div>
824
  </div>
825
  <?php if ( $this->isShowRightSidebar() ): ?>
826
+ <div class="wbcr-factory-right-sidebar-section" style="min-height:<?php echo $min_height ?>px">
827
  <?php $this->showRightSidebar(); ?>
828
  </div>
829
  <?php endif; ?>
859
  public function confirmPageTemplate( $data ) {
860
  ?>
861
  <div id="WBCR" class="wrap">
862
+ <div class="wbcr-factory-templates-106-impressive-page-template factory-bootstrap-455 factory-fontawesome-000">
863
  <div id="wbcr-factory-confirm-dialog">
864
  <h2><?php echo $data['title'] ?></h2>
865
  <p class="wbcr-factory-confirm-description"><?php echo $data['description'] ?></p>
libs/factory/templates/pages/templates/impressive/class-pages.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Templates_103\Pages;
4
 
5
  /**
6
  * Общий класс прослойка для страниц Clearfy и его компоннетов.
@@ -18,7 +18,7 @@ if( !defined('ABSPATH') ) {
18
  //global $ssssdfsfsdf;
19
 
20
  /**
21
- * Class Wbcr_FactoryPages445_ImpressiveThemplate
22
  *
23
  * @method string getInfoWidget() - get widget content information
24
  * @method string getRatingWidget(array $args = []) - get widget content rating
@@ -27,7 +27,7 @@ if( !defined('ABSPATH') ) {
27
  * @method string getBusinessSuggetionWidget()
28
  * @method string getSupportWidget
29
  */
30
- class PageBase extends \WBCR\Factory_Templates_103\Impressive {
31
 
32
  /**
33
  * {@inheritDoc}
@@ -62,9 +62,9 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
62
  public $show_search_options_form;
63
 
64
  /**
65
- * @param \Wbcr_Factory446_Plugin $plugin
66
  */
67
- public function __construct(\Wbcr_Factory446_Plugin $plugin)
68
  {
69
  parent::__construct($plugin);
70
 
@@ -112,18 +112,18 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
112
  /**
113
  * Requests assets (js and css) for the page.
114
  *
115
- * @param \Wbcr_Factory446_ScriptList $scripts
116
- * @param \Wbcr_Factory446_StyleList $styles
117
  *
118
  * @return void
119
- * @see Wbcr_FactoryPages445_AdminPage
120
  *
121
  */
122
  public function assets($scripts, $styles)
123
  {
124
  parent::assets($scripts, $styles);
125
 
126
- $this->styles->add(FACTORY_TEMPLATES_103_URL . '/assets/css/clearfy-base.css');
127
 
128
  // todo: вынести все общие скрипты и стили фреймворка, продумать совместимость с другими плагинами
129
  if( defined('WCL_PLUGIN_URL') ) {
@@ -131,19 +131,19 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
131
  }
132
 
133
  if( !($this->plugin->has_premium() && $this->plugin->premium->is_active()) ) {
134
- $this->scripts->add(FACTORY_TEMPLATES_103_URL . '/assets/js/clearfy-widgets.js', [
135
  'jquery',
136
- 'wfactory-446-core-general',
137
- 'wbcr-factory-templates-103-global'
138
- ], 'wbcr-factory-templates-103-widgets');
139
  }
140
 
141
  // Script for search form on plugin options
142
  if( $this->show_search_options_form ) {
143
- $this->styles->add(FACTORY_TEMPLATES_103_URL . '/assets/css/libs/autocomplete.css');
144
 
145
- $this->scripts->add(FACTORY_TEMPLATES_103_URL . '/assets/js/libs/jquery.autocomplete.min.js');
146
- $this->scripts->add(FACTORY_TEMPLATES_103_URL . '/assets/js/clearfy-search-options.js');
147
  }
148
 
149
  /**
@@ -162,11 +162,11 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
162
  */
163
  public function subsribe_widget_ajax_handler()
164
  {
165
- wbcr_factory_templates_103_subscribe($this->plugin);
166
  }
167
 
168
  /**
169
- * @return \Wbcr_Factory446_Request
170
  */
171
  public function request()
172
  {
@@ -265,7 +265,7 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
265
  /**
266
  * @since 4.0.9 - является устаревшим
267
  */
268
- $widgets = wbcr_factory_446_apply_filters_deprecated('wbcr_factory_pages_445_imppage_get_widgets', [
269
  $widgets,
270
  $position,
271
  $this->plugin,
@@ -294,24 +294,24 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
294
  $purchase_url = $this->plugin->get_support()->get_pricing_url(true, 'right_sidebar_ads');
295
 
296
  $default_features = [
297
- '4_premium' => __('4 premium components now;', 'wbcr_factory_templates_103'),
298
- '40_premium' => __('40 new premium components within a year for the single price;', 'wbcr_factory_templates_103'),
299
- 'multisite_support' => __('Multisite support;', 'wbcr_factory_templates_103'),
300
- 'advance_settings' => __('Advanced settings;', 'wbcr_factory_templates_103'),
301
- 'no_ads' => __('No ads;', 'wbcr_factory_templates_103'),
302
- 'perfect_support' => __('Perfect support.', 'wbcr_factory_templates_103')
303
  ];
304
 
305
  /**
306
  * @since 2.0.8 - added
307
  */
308
- $suggetion_title = __('MORE IN CLEARFY <span>BUSINESS</span>', 'wbcr_factory_templates_103');
309
  $suggetion_title = apply_filters('wbcr/clearfy/pages/suggetion_title', $suggetion_title, $plugin_name, $this->id);
310
 
311
  /**
312
  * @since 2.0.8 - deprecated
313
  */
314
- $suggetion_features = wbcr_factory_446_apply_filters_deprecated('wbcr/clearfy/page_bussines_suggetion_features', [
315
  $default_features,
316
  $this->plugin->getPluginName(),
317
  $this->id
@@ -327,7 +327,7 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
327
  $suggetion_features = $default_features;
328
  }
329
  ?>
330
- <div class="wbcr-factory-sidebar-widget wbcr-factory-templates-103-pro-suggettion">
331
  <h3><?php echo $suggetion_title; ?></h3>
332
  <ul>
333
  <?php if( !empty($suggetion_features) ): ?>
@@ -338,7 +338,7 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
338
  </ul>
339
  <a href="<?php echo $purchase_url ?>" class="wbcr-factory-purchase-premium" target="_blank"
340
  rel="noopener">
341
- <?php printf(__('Upgrade for $%s', 'wbcr_factory_templates_103'), $upgrade_price) ?>
342
  </a>
343
  </div>
344
  <?php
@@ -360,25 +360,25 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
360
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
361
  alt=""/>
362
  </span>
363
- - <?php _e('A neutral setting that can not harm your site, but you must be sure that you need to use it.', 'wbcr_factory_templates_103'); ?>
364
  </li>
365
  <li>
366
  <span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-grey">
367
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
368
  alt=""/>
369
  </span>
370
- - <?php _e('When set this option, you must be careful. Plugins and themes may depend on this function. You must be sure that you can disable this feature for the site.', 'wbcr_factory_templates_103'); ?>
371
  </li>
372
  <li>
373
  <span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-green">
374
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
375
  alt=""/>
376
  </span>
377
- - <?php _e('Absolutely safe setting, We recommend to use.', 'wbcr_factory_templates_103'); ?>
378
  </li>
379
  </ul>
380
  ----------<br>
381
- <p><?php _e('Hover to the icon to get help for the feature you selected.', 'wbcr_factory_templates_103'); ?></p>
382
  </div>
383
  <?php
384
  }
@@ -395,24 +395,24 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
395
  public function showRatingWidget(array $args)
396
  {
397
  if( !isset($args[0]) || empty($args[0]) ) {
398
- $page_url = "https://goo.gl/tETE2X";
399
  } else {
400
  $page_url = $args[0];
401
  }
402
 
403
- $page_url = apply_filters('wbcr_factory_pages_445_imppage_rating_widget_url', $page_url, $this->plugin->getPluginName(), $this->getResultId());
404
 
405
  ?>
406
  <div class="wbcr-factory-sidebar-widget">
407
  <p>
408
- <strong><?php _e('Do you want the plugin to improved and update?', 'wbcr_factory_templates_103'); ?></strong>
409
  </p>
410
- <p><?php _e('Help the author, leave a review on wordpress.org. Thanks to feedback, I will know that the plugin is really useful to you and is needed.', 'wbcr_factory_templates_103'); ?></p>
411
- <p><?php _e('And also write your ideas on how to extend or improve the plugin.', 'wbcr_factory_templates_103'); ?></p>
412
  <p>
413
  <i class="wbcr-factory-icon-5stars"></i>
414
  <a href="<?php echo $page_url; ?>" title="Go rate us" target="_blank">
415
- <strong><?php _e('Go rate us and push ideas', 'wbcr_factory_templates_103'); ?></strong>
416
  </a>
417
  </p>
418
  </div>
@@ -430,7 +430,7 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
430
  ?>
431
  <div class="wbcr-factory-sidebar-widget">
432
  <p>
433
- <strong><?php _e('Donation for plugin development', 'wbcr_factory_templates_103'); ?></strong>
434
  </p>
435
  <?php if( get_locale() !== 'ru_RU' ): ?>
436
  <form id="wbcr-factory-paypal-donation-form" action="https://www.paypal.com/cgi-bin/webscr"
@@ -438,7 +438,7 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
438
  <input type="hidden" name="cmd" value="_s-xclick">
439
  <input type="hidden" name="hosted_button_id" value="VDX7JNTQPNPFW">
440
  <div class="wbcr-factory-donation-price">5$</div>
441
- <input type="image" src="<?php echo FACTORY_TEMPLATES_103_URL ?>/templates/assets/img/paypal-donate.png"
442
  border="0" name="submit" alt="PayPal – The safer, easier way to pay online!">
443
  </form>
444
  <?php else: ?>
@@ -463,19 +463,19 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
463
 
464
  ?>
465
  <div id="wbcr-clr-support-widget" class="wbcr-factory-sidebar-widget">
466
- <p><strong><?php _e('Having Issues?', 'wbcr_factory_templates_103'); ?></strong></p>
467
  <div class="wbcr-clr-support-widget-body">
468
  <p>
469
- <?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!', 'wbcr_factory_templates_103'); ?>
470
  </p>
471
  <ul>
472
  <li><span class="dashicons dashicons-sos"></span>
473
  <a href="<?php echo $free_support_url; ?>" target="_blank"
474
- rel="noopener"><?php _e('Get starting free support', 'wbcr_factory_templates_103'); ?></a>
475
  </li>
476
  <li style="margin-top: 15px;background: #fff4f1;padding: 10px;color: #a58074;">
477
  <span class="dashicons dashicons-warning"></span>
478
- <?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.', 'wbcr_factory_templates_103'), $hot_support_url); ?>
479
  </li>
480
  </ul>
481
  </div>
@@ -490,27 +490,27 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
490
  $terms = "https://cm-wp.com/?bizpanda=privacy-policy";
491
  ?>
492
  <div id="wbcr-clr-subscribe-widget" class="wbcr-factory-sidebar-widget wbcr-factory-subscribe-widget">
493
- <p><strong><?php _e('Subscribe to plugin’s newsletter', 'wbcr_factory_templates_103'); ?></strong></p>
494
  <div class="wbcr-clr-subscribe-widget-body">
495
 
496
  <div class="wbcr-factory-subscribe-widget__message-contanier">
497
  <div class="wbcr-factory-subscribe-widget__text wbcr-factory-subscribe-widget__text--success">
498
- <?php _e("Thank you, you have successfully subscribed!", 'wbcr_factory_templates_103') ?>
499
  </div>
500
  <div class="wbcr-factory-subscribe-widget__text wbcr-factory-subscribe-widget__text--success2">
501
- <?php _e("Thank you for your subscription, a confirmation email has been sent to you. You need to confirm your subscription to complete this process.", 'wbcr_factory_templates_103'); ?>
502
  </div>
503
  </div>
504
 
505
  <form id="wbcr-factory-subscribe-widget__subscribe-form" method="post" data-nonce="<?php echo wp_create_nonce('clearfy_subscribe_for_' . $this->plugin->getPluginName()) ?>">
506
- <input id="wbcr-factory-subscribe-widget__email" class="wbcr-factory-subscribe-widget__field" type="email" name="email" placeholder="<?php _e('Enter your email address', 'wbcr_factory_templates_103'); ?>" required>
507
  <label class="wbcr-factory-subscribe-widget__checkbox-label">
508
  <input class="wbcr-factory-subscribe-widget__checkbox" type="checkbox" name="agree_terms" required>
509
- <?php echo sprintf(__("I confirm to subscribe to the CreativeMotion newsletter to receive the latest news. You can find how we use your information on our %s Privacy Policy %s", 'wbcr_factory_templates_103'), '<a href="' . $terms . '" target="_blank">', '</a>'); ?>
510
  </label>
511
  <input type="hidden" id="wbcr-factory-subscribe-widget__group-id" value="<?php echo esc_attr($group_id); ?>">
512
  <input type="hidden" id="wbcr-factory-subscribe-widget__plugin-name" value="<?php echo esc_attr($this->plugin->getPluginName()); ?>">
513
- <input type="submit" class="btn wbcr-factory-subscribe-widget__button" value="<?php _e('Subscribe', 'wbcr_factory_templates_103'); ?>">
514
  </form>
515
  </div>
516
  </div>
@@ -525,13 +525,13 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
525
  */
526
  public function register_options_to_search()
527
  {
528
- require_once FACTORY_TEMPLATES_103_DIR . '/includes/class-search-options.php';
529
 
530
  $options = $this->getPageOptions();
531
  $page_url = $this->getBaseUrl();
532
  $page_id = $this->getResultId();
533
 
534
- \WBCR\Factory_Templates_103\Search_Options::register_options($options, $page_url, $page_id);
535
  }
536
 
537
  /**
@@ -545,11 +545,11 @@ class PageBase extends \WBCR\Factory_Templates_103\Impressive {
545
  return;
546
  }
547
  ?>
548
- <div id="wbcr-factory-templates-103__search_options_form" class="wbcr-factory-templates-103__autocomplete-wrap">
549
- <label for="autocomplete" class="wbcr-factory-templates-103__autocomplete-label">
550
- <?php _e('Can\'t find the settings you need? Use the search by the plugin options:', 'wbcr_factory_templates_103'); ?>
551
  </label>
552
- <input type="text" placeholder="<?php _e('Enter the option name to search...', 'wbcr_factory_templates_103'); ?>" name="country" id="wbcr-factory-templates-103__autocomplete"/>
553
 
554
  </div>
555
  <?php
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_106\Pages;
4
 
5
  /**
6
  * Общий класс прослойка для страниц Clearfy и его компоннетов.
18
  //global $ssssdfsfsdf;
19
 
20
  /**
21
+ * Class Wbcr_FactoryPages453_ImpressiveThemplate
22
  *
23
  * @method string getInfoWidget() - get widget content information
24
  * @method string getRatingWidget(array $args = []) - get widget content rating
27
  * @method string getBusinessSuggetionWidget()
28
  * @method string getSupportWidget
29
  */
30
+ class PageBase extends \WBCR\Factory_Templates_106\Impressive {
31
 
32
  /**
33
  * {@inheritDoc}
62
  public $show_search_options_form;
63
 
64
  /**
65
+ * @param \Wbcr_Factory454_Plugin $plugin
66
  */
67
+ public function __construct(\Wbcr_Factory454_Plugin $plugin)
68
  {
69
  parent::__construct($plugin);
70
 
112
  /**
113
  * Requests assets (js and css) for the page.
114
  *
115
+ * @param \Wbcr_Factory454_ScriptList $scripts
116
+ * @param \Wbcr_Factory454_StyleList $styles
117
  *
118
  * @return void
119
+ * @see Wbcr_FactoryPages453_AdminPage
120
  *
121
  */
122
  public function assets($scripts, $styles)
123
  {
124
  parent::assets($scripts, $styles);
125
 
126
+ $this->styles->add(FACTORY_TEMPLATES_106_URL . '/assets/css/clearfy-base.css');
127
 
128
  // todo: вынести все общие скрипты и стили фреймворка, продумать совместимость с другими плагинами
129
  if( defined('WCL_PLUGIN_URL') ) {
131
  }
132
 
133
  if( !($this->plugin->has_premium() && $this->plugin->premium->is_active()) ) {
134
+ $this->scripts->add(FACTORY_TEMPLATES_106_URL . '/assets/js/clearfy-widgets.js', [
135
  'jquery',
136
+ 'wfactory-454-core-general',
137
+ 'wbcr-factory-templates-106-global'
138
+ ], 'wbcr-factory-templates-106-widgets');
139
  }
140
 
141
  // Script for search form on plugin options
142
  if( $this->show_search_options_form ) {
143
+ $this->styles->add(FACTORY_TEMPLATES_106_URL . '/assets/css/libs/autocomplete.css');
144
 
145
+ $this->scripts->add(FACTORY_TEMPLATES_106_URL . '/assets/js/libs/jquery.autocomplete.min.js');
146
+ $this->scripts->add(FACTORY_TEMPLATES_106_URL . '/assets/js/clearfy-search-options.js');
147
  }
148
 
149
  /**
162
  */
163
  public function subsribe_widget_ajax_handler()
164
  {
165
+ wbcr_factory_templates_106_subscribe($this->plugin);
166
  }
167
 
168
  /**
169
+ * @return \Wbcr_Factory454_Request
170
  */
171
  public function request()
172
  {
265
  /**
266
  * @since 4.0.9 - является устаревшим
267
  */
268
+ $widgets = wbcr_factory_454_apply_filters_deprecated('wbcr_factory_pages_453_imppage_get_widgets', [
269
  $widgets,
270
  $position,
271
  $this->plugin,
294
  $purchase_url = $this->plugin->get_support()->get_pricing_url(true, 'right_sidebar_ads');
295
 
296
  $default_features = [
297
+ '4_premium' => __('4 premium components now;', 'wbcr_factory_templates_106'),
298
+ '40_premium' => __('40 new premium components within a year for the single price;', 'wbcr_factory_templates_106'),
299
+ 'multisite_support' => __('Multisite support;', 'wbcr_factory_templates_106'),
300
+ 'advance_settings' => __('Advanced settings;', 'wbcr_factory_templates_106'),
301
+ 'no_ads' => __('No ads;', 'wbcr_factory_templates_106'),
302
+ 'perfect_support' => __('Perfect support.', 'wbcr_factory_templates_106')
303
  ];
304
 
305
  /**
306
  * @since 2.0.8 - added
307
  */
308
+ $suggetion_title = __('MORE IN CLEARFY <span>BUSINESS</span>', 'wbcr_factory_templates_106');
309
  $suggetion_title = apply_filters('wbcr/clearfy/pages/suggetion_title', $suggetion_title, $plugin_name, $this->id);
310
 
311
  /**
312
  * @since 2.0.8 - deprecated
313
  */
314
+ $suggetion_features = wbcr_factory_454_apply_filters_deprecated('wbcr/clearfy/page_bussines_suggetion_features', [
315
  $default_features,
316
  $this->plugin->getPluginName(),
317
  $this->id
327
  $suggetion_features = $default_features;
328
  }
329
  ?>
330
+ <div class="wbcr-factory-sidebar-widget wbcr-factory-templates-106-pro-suggettion">
331
  <h3><?php echo $suggetion_title; ?></h3>
332
  <ul>
333
  <?php if( !empty($suggetion_features) ): ?>
338
  </ul>
339
  <a href="<?php echo $purchase_url ?>" class="wbcr-factory-purchase-premium" target="_blank"
340
  rel="noopener">
341
+ <?php printf(__('Upgrade for $%s', 'wbcr_factory_templates_106'), $upgrade_price) ?>
342
  </a>
343
  </div>
344
  <?php
360
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
361
  alt=""/>
362
  </span>
363
+ - <?php _e('A neutral setting that can not harm your site, but you must be sure that you need to use it.', 'wbcr_factory_templates_106'); ?>
364
  </li>
365
  <li>
366
  <span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-grey">
367
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
368
  alt=""/>
369
  </span>
370
+ - <?php _e('When set this option, you must be careful. Plugins and themes may depend on this function. You must be sure that you can disable this feature for the site.', 'wbcr_factory_templates_106'); ?>
371
  </li>
372
  <li>
373
  <span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-green">
374
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
375
  alt=""/>
376
  </span>
377
+ - <?php _e('Absolutely safe setting, We recommend to use.', 'wbcr_factory_templates_106'); ?>
378
  </li>
379
  </ul>
380
  ----------<br>
381
+ <p><?php _e('Hover to the icon to get help for the feature you selected.', 'wbcr_factory_templates_106'); ?></p>
382
  </div>
383
  <?php
384
  }
395
  public function showRatingWidget(array $args)
396
  {
397
  if( !isset($args[0]) || empty($args[0]) ) {
398
+ $page_url = "https://wordpress.org/support/plugin/clearfy/reviews";
399
  } else {
400
  $page_url = $args[0];
401
  }
402
 
403
+ $page_url = apply_filters('wbcr_factory_pages_453_imppage_rating_widget_url', $page_url, $this->plugin->getPluginName(), $this->getResultId());
404
 
405
  ?>
406
  <div class="wbcr-factory-sidebar-widget">
407
  <p>
408
+ <strong><?php _e('Do you want the plugin to improved and update?', 'wbcr_factory_templates_106'); ?></strong>
409
  </p>
410
+ <p><?php _e('Help the author, leave a review on wordpress.org. Thanks to feedback, I will know that the plugin is really useful to you and is needed.', 'wbcr_factory_templates_106'); ?></p>
411
+ <p><?php _e('And also write your ideas on how to extend or improve the plugin.', 'wbcr_factory_templates_106'); ?></p>
412
  <p>
413
  <i class="wbcr-factory-icon-5stars"></i>
414
  <a href="<?php echo $page_url; ?>" title="Go rate us" target="_blank">
415
+ <strong><?php _e('Go rate us and push ideas', 'wbcr_factory_templates_106'); ?></strong>
416
  </a>
417
  </p>
418
  </div>
430
  ?>
431
  <div class="wbcr-factory-sidebar-widget">
432
  <p>
433
+ <strong><?php _e('Donation for plugin development', 'wbcr_factory_templates_106'); ?></strong>
434
  </p>
435
  <?php if( get_locale() !== 'ru_RU' ): ?>
436
  <form id="wbcr-factory-paypal-donation-form" action="https://www.paypal.com/cgi-bin/webscr"
438
  <input type="hidden" name="cmd" value="_s-xclick">
439
  <input type="hidden" name="hosted_button_id" value="VDX7JNTQPNPFW">
440
  <div class="wbcr-factory-donation-price">5$</div>
441
+ <input type="image" src="<?php echo FACTORY_TEMPLATES_106_URL ?>/templates/assets/img/paypal-donate.png"
442
  border="0" name="submit" alt="PayPal – The safer, easier way to pay online!">
443
  </form>
444
  <?php else: ?>
463
 
464
  ?>
465
  <div id="wbcr-clr-support-widget" class="wbcr-factory-sidebar-widget">
466
+ <p><strong><?php _e('Having Issues?', 'wbcr_factory_templates_106'); ?></strong></p>
467
  <div class="wbcr-clr-support-widget-body">
468
  <p>
469
+ <?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!', 'wbcr_factory_templates_106'); ?>
470
  </p>
471
  <ul>
472
  <li><span class="dashicons dashicons-sos"></span>
473
  <a href="<?php echo $free_support_url; ?>" target="_blank"
474
+ rel="noopener"><?php _e('Get starting free support', 'wbcr_factory_templates_106'); ?></a>
475
  </li>
476
  <li style="margin-top: 15px;background: #fff4f1;padding: 10px;color: #a58074;">
477
  <span class="dashicons dashicons-warning"></span>
478
+ <?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.', 'wbcr_factory_templates_106'), $hot_support_url); ?>
479
  </li>
480
  </ul>
481
  </div>
490
  $terms = "https://cm-wp.com/?bizpanda=privacy-policy";
491
  ?>
492
  <div id="wbcr-clr-subscribe-widget" class="wbcr-factory-sidebar-widget wbcr-factory-subscribe-widget">
493
+ <p><strong><?php _e('Subscribe to plugin’s newsletter', 'wbcr_factory_templates_106'); ?></strong></p>
494
  <div class="wbcr-clr-subscribe-widget-body">
495
 
496
  <div class="wbcr-factory-subscribe-widget__message-contanier">
497
  <div class="wbcr-factory-subscribe-widget__text wbcr-factory-subscribe-widget__text--success">
498
+ <?php _e("Thank you, you have successfully subscribed!", 'wbcr_factory_templates_106') ?>
499
  </div>
500
  <div class="wbcr-factory-subscribe-widget__text wbcr-factory-subscribe-widget__text--success2">
501
+ <?php _e("Thank you for your subscription, a confirmation email has been sent to you. You need to confirm your subscription to complete this process.", 'wbcr_factory_templates_106'); ?>
502
  </div>
503
  </div>
504
 
505
  <form id="wbcr-factory-subscribe-widget__subscribe-form" method="post" data-nonce="<?php echo wp_create_nonce('clearfy_subscribe_for_' . $this->plugin->getPluginName()) ?>">
506
+ <input id="wbcr-factory-subscribe-widget__email" class="wbcr-factory-subscribe-widget__field" type="email" name="email" placeholder="<?php _e('Enter your email address', 'wbcr_factory_templates_106'); ?>" required>
507
  <label class="wbcr-factory-subscribe-widget__checkbox-label">
508
  <input class="wbcr-factory-subscribe-widget__checkbox" type="checkbox" name="agree_terms" required>
509
+ <?php echo sprintf(__("I confirm to subscribe to the CreativeMotion newsletter to receive the latest news. You can find how we use your information on our %s Privacy Policy %s", 'wbcr_factory_templates_106'), '<a href="' . $terms . '" target="_blank">', '</a>'); ?>
510
  </label>
511
  <input type="hidden" id="wbcr-factory-subscribe-widget__group-id" value="<?php echo esc_attr($group_id); ?>">
512
  <input type="hidden" id="wbcr-factory-subscribe-widget__plugin-name" value="<?php echo esc_attr($this->plugin->getPluginName()); ?>">
513
+ <input type="submit" class="btn wbcr-factory-subscribe-widget__button" value="<?php _e('Subscribe', 'wbcr_factory_templates_106'); ?>">
514
  </form>
515
  </div>
516
  </div>
525
  */
526
  public function register_options_to_search()
527
  {
528
+ require_once FACTORY_TEMPLATES_106_DIR . '/includes/class-search-options.php';
529
 
530
  $options = $this->getPageOptions();
531
  $page_url = $this->getBaseUrl();
532
  $page_id = $this->getResultId();
533
 
534
+ \WBCR\Factory_Templates_106\Search_Options::register_options($options, $page_url, $page_id);
535
  }
536
 
537
  /**
545
  return;
546
  }
547
  ?>
548
+ <div id="wbcr-factory-templates-106__search_options_form" class="wbcr-factory-templates-106__autocomplete-wrap">
549
+ <label for="autocomplete" class="wbcr-factory-templates-106__autocomplete-label">
550
+ <?php _e('Can\'t find the settings you need? Use the search by the plugin options:', 'wbcr_factory_templates_106'); ?>
551
  </label>
552
+ <input type="text" placeholder="<?php _e('Enter the option name to search...', 'wbcr_factory_templates_106'); ?>" name="country" id="wbcr-factory-templates-106__autocomplete"/>
553
 
554
  </div>
555
  <?php
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_Factory446_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_Factory454_Update {
8
 
9
  public function install() {
10
  /**
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: 5.2
6
- Tested up to: 5.8
7
  Requires PHP: 7.0
8
  Stable tag: trunk
9
  License: GPLv2
@@ -75,6 +75,13 @@ 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.2.2 (20.10.2021) =
79
  * Added: Compatibility with Wordpress 5.8
80
  * Fixed: Minor bugs
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: 5.2
6
+ Tested up to: 5.9
7
  Requires PHP: 7.0
8
  Stable tag: trunk
9
  License: GPLv2
75
  1. Control panel
76
 
77
  == Changelog ==
78
+ = 3.2.4 (24.03.2022) =
79
+ * Added: Compatibility with Disable admin notices plugin
80
+
81
+ = 3.2.3 (23.03.2022) =
82
+ * Added: Compatibility with Wordpress 5.9
83
+ * Fixed: Minor bugs
84
+
85
  = 3.2.2 (20.10.2021) =
86
  * Added: Compatibility with Wordpress 5.8
87
  * Fixed: Minor bugs
simple_google_analytics.php CHANGED
@@ -4,7 +4,7 @@
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.2.2
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
@@ -67,15 +67,15 @@ $plugin_info = array(
67
 
68
  // FRAMEWORK MODULES
69
  'load_factory_modules' => array(
70
- array('libs/factory/bootstrap', 'factory_bootstrap_446', 'admin'),
71
- array('libs/factory/forms', 'factory_forms_443', 'admin'),
72
- array('libs/factory/pages', 'factory_pages_445', 'admin'),
73
- array('libs/factory/templates', 'factory_templates_103', 'all'),
74
- array('libs/factory/adverts', 'factory_adverts_124', 'admin')
75
  )
76
  );
77
 
78
- $wga_compatibility = new Wbcr_Factory446_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',
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.2.4
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
67
 
68
  // FRAMEWORK MODULES
69
  'load_factory_modules' => array(
70
+ array('libs/factory/bootstrap', 'factory_bootstrap_455', 'admin'),
71
+ array('libs/factory/forms', 'factory_forms_451', 'admin'),
72
+ array('libs/factory/pages', 'factory_pages_453', 'admin'),
73
+ array('libs/factory/templates', 'factory_templates_106', 'all'),
74
+ array('libs/factory/adverts', 'factory_adverts_131', 'admin')
75
  )
76
  );
77
 
78
+ $wga_compatibility = new Wbcr_Factory454_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',