Version Description
- Added: Critical CSS options
Download this release
Release Info
Developer | alexkovalevv |
Plugin | Clearfy – WordPress optimization plugin and disable ultimate tweaker |
Version | 1.6.9 |
Comparing to | |
See all releases |
Code changes from version 1.6.8 to 1.6.9
- admin/activation.php +2 -2
- admin/ajax/configurate.php +1 -1
- admin/ajax/import-settings.php +2 -2
- admin/assets/css/base-statistic.css +405 -406
- admin/assets/css/components.css +139 -140
- admin/assets/css/general.css +494 -495
- admin/assets/css/gutenberg-autosave-control.css +18 -19
- admin/assets/css/install-addons.css +31 -32
- admin/assets/js/general.js +13 -13
- admin/assets/js/install-addons.js +15 -15
- admin/assets/js/license-manager.js +4 -4
- admin/boot.php +6 -6
- admin/includes/compatibility.php +4 -4
- admin/pages/class-page.php +8 -8
- admin/pages/class-pages-advanced.php +1 -1
- admin/pages/class-pages-clearfy-settings.php +2 -2
- admin/pages/class-pages-components-license.php +5 -5
- admin/pages/class-pages-components.php +6 -6
- admin/pages/class-pages-defence-titan.php +3 -3
- admin/pages/class-pages-defence.php +2 -2
- admin/pages/class-pages-hide-login-page.php +3 -3
- admin/pages/class-pages-image-optimization.php +3 -3
- admin/pages/class-pages-license.php +3 -3
- admin/pages/class-pages-performance-google.php +1 -1
- admin/pages/class-pages-quick-start.php +3 -3
- admin/pages/class-pages-seo-double-pages.php +1 -1
- admin/pages/class-pages-seo.php +1 -1
- admin/pages/class-pages-widgets.php +1 -1
- assets/css/admin-bar.css +47 -48
- clearfy.php +10 -10
- components/assets-manager/admin/activation.php +2 -2
- components/assets-manager/admin/ajax/save-settings.php +1 -1
- components/assets-manager/admin/boot.php +2 -2
- components/assets-manager/admin/pages/class-pages-more-features.php +1 -1
- components/assets-manager/admin/pages/class-pages-settings.php +4 -4
- components/assets-manager/gonzales.php +7 -7
- components/assets-manager/includes/class-plugin.php +3 -3
- components/assets-manager/includes/classes/class-assets-manager-global.php +2 -2
- components/assets-manager/includes/classes/class-views.php +4 -4
- components/assets-manager/migrations/010100.php +1 -1
- components/assets-manager/migrations/010108.php +1 -1
- components/assets-manager/migrations/020005.php +1 -1
- components/assets-manager/mu-plugins/assets-manager.php +1 -1
- components/comments-plus/admin/boot.php +1 -1
- components/comments-plus/admin/pages/class-page-comments.php +3 -3
- components/comments-plus/admin/pages/class-page-delete-comments.php +6 -6
- components/comments-plus/admin/pages/class-page-more-features.php +1 -1
- components/comments-plus/comments-plus.php +7 -7
- components/comments-plus/includes/class-plugin.php +3 -3
- components/comments-plus/includes/classes/class-configurate-comments.php +3 -3
- components/cyrlitera/admin/activation.php +2 -2
- components/cyrlitera/admin/boot.php +1 -1
- components/cyrlitera/admin/pages/class-page-cyrlitera.php +4 -4
- components/cyrlitera/admin/pages/class-page-more-features.php +1 -1
- components/cyrlitera/cyrlitera.php +7 -7
- components/cyrlitera/includes/class-plugin.php +3 -3
- components/cyrlitera/includes/classes/class-configurate-cyrlitera.php +2 -2
- components/cyrlitera/migrations/010004.php +1 -1
- components/disable-admin-notices/admin/assets/css/notifications-panel.css +3 -3
- components/disable-admin-notices/admin/assets/css/settings.css +176 -0
- components/disable-admin-notices/admin/assets/css/settings.less +212 -0
- components/disable-admin-notices/admin/boot.php +31 -5
- components/disable-admin-notices/admin/options.php +88 -52
- components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php +147 -0
- components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php +164 -0
- components/disable-admin-notices/admin/pages/class-pages-license.php +103 -0
- components/disable-admin-notices/admin/pages/class-pages-settings.php +148 -0
- components/disable-admin-notices/admin/pages/class-pages.php +25 -0
- components/disable-admin-notices/clearfy.php +1 -1
- components/disable-admin-notices/disable-admin-notices.php +37 -20
- components/disable-admin-notices/includes/class-plugin.php +22 -14
- components/disable-admin-notices/includes/classes/class-configurate-notices.php +126 -133
- components/disable-admin-notices/includes/function.php +117 -0
- components/disable-admin-notices/migrations/010007.php +1 -1
- components/disable-admin-notices/readme.txt +19 -4
- components/ga-cache/admin/activation.php +2 -2
- components/ga-cache/admin/boot.php +3 -3
- components/ga-cache/admin/options.php +1 -1
- components/ga-cache/admin/pages/class-pages-general-settings.php +3 -3
- components/ga-cache/admin/pages/class-pages-more-features.php +1 -1
- components/ga-cache/includes/class-plugin.php +3 -3
- components/ga-cache/includes/classes/class-configurate-ga.php +1 -1
- components/ga-cache/migrations/030002.php +1 -1
- components/ga-cache/simple_google_analytics.php +6 -6
- components/html-minify/admin/pages/class-pages-settings.php +3 -3
- components/html-minify/html-minify.php +7 -7
- components/html-minify/includes/class-plugin.php +3 -3
- components/minify-and-combine/admin/boot.php +12 -0
- components/minify-and-combine/admin/pages/class-pages-settings.php +30 -7
- components/minify-and-combine/includes/3rd-party/class-clearfy-plugin.php +1 -0
- components/minify-and-combine/includes/class-plugin.php +4 -3
- components/minify-and-combine/includes/classes/class-cache.php +1 -1
- components/minify-and-combine/includes/classes/class-criticalcss.php +89 -0
- components/minify-and-combine/includes/classes/class-main.php +16 -9
- components/minify-and-combine/includes/classes/class-styles.php +38 -13
- components/minify-and-combine/minify-and-combine.php +8 -8
- components/updates-manager/admin/activation.php +2 -2
- components/updates-manager/admin/assets/js/ajax-components.js +4 -4
- components/updates-manager/admin/boot.php +1 -1
- components/updates-manager/admin/includes/class-abstract-filters.php +1 -1
- components/updates-manager/admin/pages/class-page-advanced.php +5 -5
- components/updates-manager/admin/pages/class-page-more-features.php +1 -1
- components/updates-manager/admin/pages/class-page-plugins.php +5 -5
- components/updates-manager/admin/pages/class-page-themes.php +4 -4
- components/updates-manager/admin/pages/class-page-updates.php +5 -5
- components/updates-manager/includes/class-plugin.php +3 -3
- components/updates-manager/includes/classes/class-configurate-updates.php +1 -1
- components/updates-manager/migrations/010008.php +1 -1
- components/updates-manager/webcraftic-updates-manager.php +7 -7
- includes/boot.php +1 -1
- includes/class.plugin.php +3 -3
- includes/classes/class.configurate-advanced.php +1 -1
- includes/classes/class.configurate-google-performance.php +1 -1
- includes/classes/class.configurate-performance.php +5 -1
- includes/classes/class.configurate-privacy.php +1 -1
- includes/classes/class.configurate-security.php +1 -1
- includes/classes/class.configurate-seo.php +1 -1
- libs/factory/adverts/boot.php +12 -12
- libs/factory/adverts/includes/class-base.php +6 -6
- libs/factory/adverts/includes/class-dashboard-widget.php +4 -4
- libs/factory/adverts/includes/class-rest-request.php +67 -47
- libs/factory/adverts/langs/wbcr_factory_adverts_109-ru_RU.mo +0 -0
- libs/factory/adverts/langs/wbcr_factory_adverts_109-ru_RU.po +83 -0
- libs/factory/bootstrap/assets/cache/c54ca97249456e97dd6f68e39fe5fd8c.min.js +0 -30
- libs/factory/bootstrap/assets/cache/d3f7e6e8889a6d921650a5046bd131b4.min.css +0 -69
- libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css +2 -2
- libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/control.checkbox.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/control.dropdown.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css +1 -1
- libs/factory/bootstrap/assets/css-min/holder.more-link.min.css +1 -1
- libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js +1 -1
- libs/factory/bootstrap/assets/js-min/control.checkbox.min.js +1 -1
- libs/factory/bootstrap/assets/js-min/control.dropdown.min.js +1 -1
- libs/factory/bootstrap/assets/js-min/control.list.min.js +1 -1
- libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js +1 -1
- libs/factory/bootstrap/boot.php +9 -9
- libs/factory/bootstrap/includes/functions.php +10 -10
- libs/factory/clearfy/assets/css/clearfy-base.css +24 -24
- libs/factory/clearfy/assets/css/libs/autocomplete.css +9 -9
- libs/factory/clearfy/assets/js/globals.js +15 -15
- libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js +1 -1
- libs/factory/clearfy/assets/js/license-manager.js +4 -4
- libs/factory/clearfy/assets/js/search-options.js +2 -2
- libs/factory/clearfy/boot.php +16 -16
- libs/factory/clearfy/includes/ajax-handlers.php +8 -8
- libs/factory/clearfy/includes/class-configurate.php +3 -3
- libs/factory/clearfy/includes/class-helpers.php +1 -1
- libs/factory/clearfy/includes/class-search-options.php +1 -1
- libs/factory/clearfy/langs/wbcr_factory_clearfy_221-ru_RU.mo +0 -0
- libs/factory/clearfy/langs/wbcr_factory_clearfy_221-ru_RU.po +307 -0
- libs/factory/clearfy/pages/class-page-license.php +33 -33
- libs/factory/clearfy/pages/class-page-more-features.php +23 -23
- libs/factory/clearfy/pages/class-pages.php +40 -40
- libs/factory/core/boot.php +27 -27
- libs/factory/core/includes/activation/class-factory-activator.php +3 -3
- libs/factory/core/includes/activation/class-factory-update.php +3 -3
- libs/factory/core/includes/assets-managment/class-factory-assets-list.php +4 -4
- libs/factory/core/includes/assets-managment/class-factory-script-list.php +2 -2
- libs/factory/core/includes/assets-managment/class-factory-style-list.php +1 -1
- libs/factory/core/includes/class-check-compatibility.php +3 -3
- libs/factory/core/includes/class-factory-migrations.php +13 -13
- libs/factory/core/includes/class-factory-notices.php +91 -86
- libs/factory/core/includes/class-factory-options.php +2 -2
- libs/factory/core/includes/class-factory-plugin-abstract.php +52 -52
- libs/factory/core/includes/class-factory-plugin-base.php +25 -25
- libs/factory/core/includes/class-factory-requests.php +1 -1
- libs/factory/core/includes/class-factory-requirements.php +6 -6
- libs/factory/core/includes/entities/class-factory-paths.php +1 -1
- libs/factory/core/includes/entities/class-factory-support.php +1 -1
- libs/factory/core/includes/functions.php +7 -7
- libs/factory/core/includes/premium/class-factory-license-interface.php +1 -1
- libs/factory/core/includes/premium/class-factory-manager.php +10 -10
- libs/factory/core/includes/premium/class-factory-provider-abstract.php +6 -6
- libs/factory/core/includes/updates/class-factory-premium-upgrader.php +11 -11
- libs/factory/core/includes/updates/class-factory-upgrader.php +9 -9
- libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php +5 -5
- libs/factory/core/includes/updates/repositories/class-factory-wordpress.php +4 -4
- libs/factory/core/langs/wbcr_factory_429-ru_RU.mo +0 -0
- libs/factory/core/langs/wbcr_factory_429-ru_RU.po +128 -0
- libs/factory/forms/boot.php +95 -95
- libs/factory/forms/controls/checkbox.php +4 -4
- libs/factory/forms/controls/color-and-opacity.php +4 -4
- libs/factory/forms/controls/color.php +2 -2
- libs/factory/forms/controls/customs/html.php +2 -2
- libs/factory/forms/controls/customs/separator.php +2 -2
- libs/factory/forms/controls/datepicker-range.php +4 -4
- libs/factory/forms/controls/dropdown-and-colors.php +6 -6
- libs/factory/forms/controls/dropdown.php +5 -5
- libs/factory/forms/controls/font.php +11 -11
- libs/factory/forms/controls/google-font.php +8 -8
- libs/factory/forms/controls/gradient.php +4 -4
- libs/factory/forms/controls/hidden.php +2 -2
- libs/factory/forms/controls/holders/accordion-item.php +2 -2
- libs/factory/forms/controls/holders/accordion.php +2 -2
- libs/factory/forms/controls/holders/columns.php +2 -2
- libs/factory/forms/controls/holders/control-group-item.php +2 -2
- libs/factory/forms/controls/holders/control-group.php +3 -3
- libs/factory/forms/controls/holders/div.php +2 -2
- libs/factory/forms/controls/holders/form-group.php +2 -2
- libs/factory/forms/controls/holders/more-link.php +2 -2
- libs/factory/forms/controls/holders/tab-item.php +2 -2
- libs/factory/forms/controls/holders/tab.php +4 -4
- libs/factory/forms/controls/integer.php +2 -2
- libs/factory/forms/controls/list.php +4 -4
- libs/factory/forms/controls/multiple-textbox.php +3 -3
- libs/factory/forms/controls/paddings-editor.php +3 -3
- libs/factory/forms/controls/pattern.php +9 -9
admin/activation.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
6 |
* @copyright (c) 09.09.2017, Webcraftic
|
7 |
-
* @see
|
8 |
* @version 1.0
|
9 |
*/
|
10 |
|
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
-
class WCL_Activation extends
|
17 |
|
18 |
/**
|
19 |
* Runs activation actions.
|
4 |
*
|
5 |
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
6 |
* @copyright (c) 09.09.2017, Webcraftic
|
7 |
+
* @see Factory429_Activator
|
8 |
* @version 1.0
|
9 |
*/
|
10 |
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
+
class WCL_Activation extends Wbcr_Factory429_Activator {
|
17 |
|
18 |
/**
|
19 |
* Runs activation actions.
|
admin/ajax/configurate.php
CHANGED
@@ -57,7 +57,7 @@
|
|
57 |
}
|
58 |
|
59 |
if( !$flush_redirect ) {
|
60 |
-
|
61 |
}
|
62 |
|
63 |
do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
|
57 |
}
|
58 |
|
59 |
if( !$flush_redirect ) {
|
60 |
+
WbcrFactoryClearfy221_Helpers::flushPageCache();
|
61 |
}
|
62 |
|
63 |
do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
|
admin/ajax/import-settings.php
CHANGED
@@ -62,7 +62,7 @@
|
|
62 |
}
|
63 |
|
64 |
if( is_array($option_value) || is_object($option_value) ) {
|
65 |
-
$option_value =
|
66 |
$option_value = maybe_serialize($option_value);
|
67 |
} else {
|
68 |
$option_value = wp_kses_post($option_value);
|
@@ -140,7 +140,7 @@
|
|
140 |
//$send_data['update_notice'] = $package_plugin->getUpdateNotice();
|
141 |
|
142 |
// Сбрасываем кеш для кеширующих плагинов
|
143 |
-
|
144 |
|
145 |
do_action('wbcr_clearfy_imported_settings');
|
146 |
|
62 |
}
|
63 |
|
64 |
if( is_array($option_value) || is_object($option_value) ) {
|
65 |
+
$option_value = WbcrFactoryClearfy221_Helpers::recursiveSanitizeArray($option_value, 'wp_kses_post');
|
66 |
$option_value = maybe_serialize($option_value);
|
67 |
} else {
|
68 |
$option_value = wp_kses_post($option_value);
|
140 |
//$send_data['update_notice'] = $package_plugin->getUpdateNotice();
|
141 |
|
142 |
// Сбрасываем кеш для кеширующих плагинов
|
143 |
+
WbcrFactoryClearfy221_Helpers::flushPageCache();
|
144 |
|
145 |
do_action('wbcr_clearfy_imported_settings');
|
146 |
|
admin/assets/css/base-statistic.css
CHANGED
@@ -1,406 +1,405 @@
|
|
1 |
-
/**
|
2 |
-
* Styles for the Widget to be displayed in the Clearfy plugin
|
3 |
-
|
4 |
-
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
5 |
-
* @copyright Webcraftic 13.06.2018
|
6 |
-
*/
|
7 |
-
#WBCR {
|
8 |
-
/* Number display */
|
9 |
-
/* Number and bars */
|
10 |
-
/* Doughnut */
|
11 |
-
/* Widget */
|
12 |
-
}
|
13 |
-
#WBCR .wio-clear {
|
14 |
-
clear: both;
|
15 |
-
}
|
16 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers {
|
17 |
-
margin-top: 30px;
|
18 |
-
background: none;
|
19 |
-
padding: 0;
|
20 |
-
}
|
21 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers h4 {
|
22 |
-
font-size: 15px;
|
23 |
-
font-weight: 700;
|
24 |
-
}
|
25 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button {
|
26 |
-
padding: 5px 10px;
|
27 |
-
border: 0;
|
28 |
-
font-size: 11px;
|
29 |
-
text-transform: uppercase !important;
|
30 |
-
font-weight: bold;
|
31 |
-
border-radius: 4px;
|
32 |
-
outline: none;
|
33 |
-
background: #f3f3f3;
|
34 |
-
color: #656565;
|
35 |
-
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
36 |
-
}
|
37 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button:active {
|
38 |
-
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
39 |
-
}
|
40 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-loading {
|
41 |
-
width: 56px;
|
42 |
-
font-size: 0;
|
43 |
-
background: #f3f3f3 url("../img/quick-start-loader.gif") center no-repeat;
|
44 |
-
}
|
45 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-selected {
|
46 |
-
background: #f3efe2;
|
47 |
-
color: #d8d8d8;
|
48 |
-
}
|
49 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-selected:active {
|
50 |
-
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
51 |
-
}
|
52 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table {
|
53 |
-
width: 100%;
|
54 |
-
box-sizing: border-box;
|
55 |
-
border-spacing: 3px;
|
56 |
-
background: #fff;
|
57 |
-
}
|
58 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table th,
|
59 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table td {
|
60 |
-
padding: 16px 10px;
|
61 |
-
text-align: center;
|
62 |
-
}
|
63 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table th {
|
64 |
-
background: #efefef;
|
65 |
-
color: #777777;
|
66 |
-
box-shadow: 0 1px 0 #d8d8d8;
|
67 |
-
}
|
68 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-check-proccess {
|
69 |
-
display: inline-block;
|
70 |
-
height: 10px;
|
71 |
-
width: 30px;
|
72 |
-
background: url("../img/quick-start-loader.gif") center no-repeat;
|
73 |
-
}
|
74 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-servers-list-item-selected {
|
75 |
-
background: #fffbed;
|
76 |
-
color: #cec5a8;
|
77 |
-
font-weight: 600;
|
78 |
-
}
|
79 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-success {
|
80 |
-
color: #8CC152;
|
81 |
-
}
|
82 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-error {
|
83 |
-
color: #fb5d49;
|
84 |
-
}
|
85 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-warning {
|
86 |
-
color: #ffb635;
|
87 |
-
}
|
88 |
-
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers .wbcr-rio-warning-message {
|
89 |
-
margin-top: 30px;
|
90 |
-
padding: 20px;
|
91 |
-
border: 1px dashed #bfbfbf;
|
92 |
-
background: #ffffff;
|
93 |
-
margin-bottom: 40px;
|
94 |
-
font-size: 15px;
|
95 |
-
color: #828282;
|
96 |
-
}
|
97 |
-
#WBCR .wio-columns {
|
98 |
-
overflow: hidden;
|
99 |
-
padding: 15px 0;
|
100 |
-
counter-reset: cols;
|
101 |
-
}
|
102 |
-
#WBCR .wio-columns [class^="col-"] {
|
103 |
-
float: left;
|
104 |
-
-webkit-box-sizing: border-box;
|
105 |
-
-moz-box-sizing: border-box;
|
106 |
-
box-sizing: border-box;
|
107 |
-
}
|
108 |
-
#WBCR .wio-columns .col-1-3 {
|
109 |
-
width: 33.333%;
|
110 |
-
padding-left: 28px;
|
111 |
-
}
|
112 |
-
#WBCR .wio-columns .col-2-3 {
|
113 |
-
width: 66.666%;
|
114 |
-
padding-left: 28px;
|
115 |
-
}
|
116 |
-
#WBCR .wio-columns .col-1-2 {
|
117 |
-
width: 50%;
|
118 |
-
padding: 0 20px;
|
119 |
-
}
|
120 |
-
#WBCR .wio-columns .col-statistics.col-statistics {
|
121 |
-
width: 60%;
|
122 |
-
}
|
123 |
-
#WBCR .wio-columns .col-chart.col-chart {
|
124 |
-
width: 40%;
|
125 |
-
position: relative;
|
126 |
-
padding: 20px;
|
127 |
-
font-size: 12px;
|
128 |
-
text-transform: uppercase;
|
129 |
-
background: #f1f1f1b3;
|
130 |
-
color: #abacaf;
|
131 |
-
font-weight: bold;
|
132 |
-
border-radius: 5px;
|
133 |
-
margin-top: 10px;
|
134 |
-
text-align: left;
|
135 |
-
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
|
136 |
-
}
|
137 |
-
#WBCR .wio-col {
|
138 |
-
float: left;
|
139 |
-
width: 50%;
|
140 |
-
box-sizing: border-box;
|
141 |
-
-webkit-flex-basis: 50%;
|
142 |
-
-ms-flex-preferred-size: 50%;
|
143 |
-
flex-basis: 50%;
|
144 |
-
}
|
145 |
-
#WBCR .wio-col {
|
146 |
-
padding-right: 20px;
|
147 |
-
}
|
148 |
-
#WBCR .wio-col + .wio-col {
|
149 |
-
padding-right: 0;
|
150 |
-
padding-left: 50px;
|
151 |
-
}
|
152 |
-
#WBCR .wio-col:target {
|
153 |
-
animation: wiohello 1s 3 linear backwards;
|
154 |
-
}
|
155 |
-
#WBCR .wio-number-you-optimized {
|
156 |
-
margin-bottom: 1.35em;
|
157 |
-
overflow: hidden;
|
158 |
-
}
|
159 |
-
#WBCR .wio-number-you-optimized #wio-total-optimized-attachments-pct {
|
160 |
-
color: #828282;
|
161 |
-
}
|
162 |
-
#WBCR .wio-number-you-optimized .wio-number {
|
163 |
-
display: table-cell;
|
164 |
-
padding-right: 15px;
|
165 |
-
font-size: 48px;
|
166 |
-
font-weight: bold;
|
167 |
-
line-height: 1;
|
168 |
-
vertical-align: middle;
|
169 |
-
white-space: nowrap;
|
170 |
-
color: #828282;
|
171 |
-
}
|
172 |
-
#WBCR .wio-number-you-optimized .wio-text {
|
173 |
-
display: table-cell;
|
174 |
-
vertical-align: middle;
|
175 |
-
overflow: hidden;
|
176 |
-
font-size: 12px;
|
177 |
-
color: #828282;
|
178 |
-
}
|
179 |
-
#WBCR .wio-number-you-optimized > p {
|
180 |
-
display: table;
|
181 |
-
}
|
182 |
-
#WBCR .wio-bars {
|
183 |
-
padding-right: 15px;
|
184 |
-
}
|
185 |
-
#WBCR .wio-bars p {
|
186 |
-
font-size: 12px;
|
187 |
-
margin-bottom: 5px;
|
188 |
-
}
|
189 |
-
#WBCR .wio-bars + .wio-number-you-optimized {
|
190 |
-
border-bottom: 0;
|
191 |
-
padding-top: 0.85em;
|
192 |
-
}
|
193 |
-
#WBCR .wio-bars + .wio-number-you-optimized p {
|
194 |
-
color: #72a53b;
|
195 |
-
}
|
196 |
-
#WBCR .wio-bar-negative .wio-progress {
|
197 |
-
background: #D2D3D6;
|
198 |
-
}
|
199 |
-
#WBCR .wio-bar-negative .wio-barnb {
|
200 |
-
color: #9d9fa5;
|
201 |
-
}
|
202 |
-
#WBCR .wio-progress {
|
203 |
-
height: 8px;
|
204 |
-
transition: width 0.3s;
|
205 |
-
/*.wio-bar-negative {
|
206 |
-
width: 92% !important;
|
207 |
-
}*/
|
208 |
-
}
|
209 |
-
#WBCR .wio-bar-positive .wio-progress {
|
210 |
-
background: #8CC152;
|
211 |
-
}
|
212 |
-
#WBCR .wio-bar-positive .wio-barnb {
|
213 |
-
color: #72a53b;
|
214 |
-
}
|
215 |
-
#WBCR .wio-bar-primary .wio-progress {
|
216 |
-
background: #8CC152;
|
217 |
-
}
|
218 |
-
#WBCR .wio-bar-primary .wio-barnb {
|
219 |
-
color: #72a53b;
|
220 |
-
}
|
221 |
-
#WBCR .wio-right-outside-number .wio-barnb {
|
222 |
-
display: block;
|
223 |
-
margin-right: -5.25em;
|
224 |
-
text-align: right;
|
225 |
-
font-weight: bold;
|
226 |
-
line-height: 0.8;
|
227 |
-
}
|
228 |
-
#WBCR .wio-chart {
|
229 |
-
position: relative;
|
230 |
-
top: 1px;
|
231 |
-
display: inline-block;
|
232 |
-
vertical-align: middle;
|
233 |
-
}
|
234 |
-
#WBCR .wio-chart-container {
|
235 |
-
position: relative;
|
236 |
-
display: inline-block;
|
237 |
-
margin-right: 5px;
|
238 |
-
border: 10px solid #d2d3d6;
|
239 |
-
border-radius: 100%;
|
240 |
-
}
|
241 |
-
#WBCR .wio-chart-container canvas {
|
242 |
-
display: block;
|
243 |
-
}
|
244 |
-
#WBCR .wio-overview-chart-container {
|
245 |
-
float: left;
|
246 |
-
margin-right: 20px;
|
247 |
-
}
|
248 |
-
#WBCR .wio-chart-percent {
|
249 |
-
position: absolute;
|
250 |
-
left: 0;
|
251 |
-
right: 0;
|
252 |
-
top: 50%;
|
253 |
-
margin-top: -0.5em;
|
254 |
-
line-height: 0.8;
|
255 |
-
text-align: center;
|
256 |
-
font-size: 54px;
|
257 |
-
font-weight: bold;
|
258 |
-
color: #afafaf;
|
259 |
-
}
|
260 |
-
#WBCR .wio-chart-percent span {
|
261 |
-
font-size: 20px;
|
262 |
-
vertical-align: super;
|
263 |
-
}
|
264 |
-
#WBCR #wio-overview-chart-legend {
|
265 |
-
overflow: hidden;
|
266 |
-
}
|
267 |
-
#WBCR .wio-doughnut-legend li {
|
268 |
-
display: inline-block;
|
269 |
-
position: relative;
|
270 |
-
margin-bottom: 15px;
|
271 |
-
border-radius: 5px;
|
272 |
-
padding: 3px 8px 2px 31px;
|
273 |
-
font-size: 12px;
|
274 |
-
cursor: default;
|
275 |
-
-webkit-transition: background-color 200ms ease-in-out;
|
276 |
-
-moz-transition: background-color 200ms ease-in-out;
|
277 |
-
-o-transition: background-color 200ms ease-in-out;
|
278 |
-
transition: background-color 200ms ease-in-out;
|
279 |
-
}
|
280 |
-
#WBCR .wio-doughnut-legend li span {
|
281 |
-
display: block;
|
282 |
-
position: absolute;
|
283 |
-
left: 0;
|
284 |
-
top: 0;
|
285 |
-
width: 25px;
|
286 |
-
height: 25px;
|
287 |
-
border-radius: 50%;
|
288 |
-
}
|
289 |
-
#WBCR .wio-optimize-button {
|
290 |
-
width: 180px;
|
291 |
-
padding: 12px 30px;
|
292 |
-
background: #c9deb2;
|
293 |
-
color: #586549;
|
294 |
-
border: 0;
|
295 |
-
box-shadow: none;
|
296 |
-
font-size: 14px;
|
297 |
-
text-transform: uppercase !important;
|
298 |
-
font-weight: bold;
|
299 |
-
border-radius: 4px;
|
300 |
-
outline: none;
|
301 |
-
text-decoration: none;
|
302 |
-
}
|
303 |
-
#WBCR .wio-optimize-button:active {
|
304 |
-
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
305 |
-
}
|
306 |
-
#WBCR .wio-global-optim-phrase {
|
307 |
-
width: 180px;
|
308 |
-
padding-top: 20px;
|
309 |
-
font-size: 14px;
|
310 |
-
text-align: center;
|
311 |
-
}
|
312 |
-
#WBCR .wio-total-percent {
|
313 |
-
color: #587f2e;
|
314 |
-
}
|
315 |
-
#WBCR .wio-text-left {
|
316 |
-
text-align: left;
|
317 |
-
}
|
318 |
-
#WBCR span.wio-num {
|
319 |
-
display: inline !important;
|
320 |
-
position: inherit !important;
|
321 |
-
}
|
322 |
-
#WBCR .wio-image-optimize-board {
|
323 |
-
padding: 20px;
|
324 |
-
}
|
325 |
-
#WBCR .wio-page-statistic {
|
326 |
-
padding-left: 40px;
|
327 |
-
}
|
328 |
-
#WBCR .wio-page-statistic .wio-chart-percent {
|
329 |
-
margin-top: -1.1em;
|
330 |
-
}
|
331 |
-
#WBCR .wio-widget {
|
332 |
-
padding: 0 !important;
|
333 |
-
}
|
334 |
-
#WBCR .wio-widget .wio-chart-percent {
|
335 |
-
font-size: 44px;
|
336 |
-
line-height: 1;
|
337 |
-
}
|
338 |
-
#WBCR .wio-widget .wio-bars {
|
339 |
-
width: 80%;
|
340 |
-
margin-left: 155px;
|
341 |
-
box-sizing: border-box;
|
342 |
-
}
|
343 |
-
#WBCR .wio-widget .col-chart.col-chart {
|
344 |
-
width: 100%;
|
345 |
-
}
|
346 |
-
#WBCR .wio-widget .col-controls {
|
347 |
-
width: 45%;
|
348 |
-
padding-left: 5px;
|
349 |
-
padding-top: 110px;
|
350 |
-
}
|
351 |
-
#WBCR .wio-widget .wio-doughnut-legend {
|
352 |
-
margin-left: 20px;
|
353 |
-
text-align: left;
|
354 |
-
}
|
355 |
-
#WBCR .wio-widget .wio-widget-bottom {
|
356 |
-
display: table;
|
357 |
-
padding-top: 20px !important;
|
358 |
-
width: 100%;
|
359 |
-
text-align: right;
|
360 |
-
}
|
361 |
-
#WBCR .wio-widget .wio-widget-bottom li {
|
362 |
-
display: table-cell;
|
363 |
-
}
|
364 |
-
#WBCR .wio-widget .wio-widget-bottom li:first-child {
|
365 |
-
text-align: left;
|
366 |
-
}
|
367 |
-
@media (max-width: 830px) {
|
368 |
-
#WBCR .wio [class^="col-"] {
|
369 |
-
float: none;
|
370 |
-
margin-bottom: 1.5em;
|
371 |
-
}
|
372 |
-
#WBCR .wio .col-1-3,
|
373 |
-
#WBCR .wio .col-1-2 {
|
374 |
-
width: auto;
|
375 |
-
padding: 0 28px;
|
376 |
-
clear: both;
|
377 |
-
padding-top: 1em;
|
378 |
-
}
|
379 |
-
}
|
380 |
-
@keyframes wiohello {
|
381 |
-
0%,
|
382 |
-
100% {
|
383 |
-
background: #FFF;
|
384 |
-
}
|
385 |
-
50% {
|
386 |
-
background: #F4F7F9;
|
387 |
-
}
|
388 |
-
}
|
389 |
-
@media (max-width: 1520px) and (min-width: 1381px), (max-width: 1086px) {
|
390 |
-
#WBCR .wio-columns .col-statistics.col-statistics,
|
391 |
-
#WBCR .wio-columns .col-chart.col-chart {
|
392 |
-
width: 50%;
|
393 |
-
}
|
394 |
-
}
|
395 |
-
@media (max-width: 808px) {
|
396 |
-
#WBCR .wio-columns .col-statistics.col-statistics,
|
397 |
-
#WBCR .wio-columns .col-chart.col-chart {
|
398 |
-
width: auto;
|
399 |
-
float: none;
|
400 |
-
padding: 0;
|
401 |
-
}
|
402 |
-
#WBCR .wio-columns .col-chart.col-chart {
|
403 |
-
margin-top: 3em;
|
404 |
-
}
|
405 |
-
}
|
406 |
-
/*# sourceMappingURL=base-statistic.css.map */
|
1 |
+
/**
|
2 |
+
* Styles for the Widget to be displayed in the Clearfy plugin
|
3 |
+
|
4 |
+
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
5 |
+
* @copyright Webcraftic 13.06.2018
|
6 |
+
*/
|
7 |
+
#WBCR {
|
8 |
+
/* Number display */
|
9 |
+
/* Number and bars */
|
10 |
+
/* Doughnut */
|
11 |
+
/* Widget */
|
12 |
+
}
|
13 |
+
#WBCR .wio-clear {
|
14 |
+
clear: both;
|
15 |
+
}
|
16 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers {
|
17 |
+
margin-top: 30px;
|
18 |
+
background: none;
|
19 |
+
padding: 0;
|
20 |
+
}
|
21 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers h4 {
|
22 |
+
font-size: 15px;
|
23 |
+
font-weight: 700;
|
24 |
+
}
|
25 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button {
|
26 |
+
padding: 5px 10px;
|
27 |
+
border: 0;
|
28 |
+
font-size: 11px;
|
29 |
+
text-transform: uppercase !important;
|
30 |
+
font-weight: bold;
|
31 |
+
border-radius: 4px;
|
32 |
+
outline: none;
|
33 |
+
background: #f3f3f3;
|
34 |
+
color: #656565;
|
35 |
+
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
36 |
+
}
|
37 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button:active {
|
38 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
39 |
+
}
|
40 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-loading {
|
41 |
+
width: 56px;
|
42 |
+
font-size: 0;
|
43 |
+
background: #f3f3f3 url("../img/quick-start-loader.gif") center no-repeat;
|
44 |
+
}
|
45 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-selected {
|
46 |
+
background: #f3efe2;
|
47 |
+
color: #d8d8d8;
|
48 |
+
}
|
49 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers button.wbcr-rio-selected:active {
|
50 |
+
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
51 |
+
}
|
52 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table {
|
53 |
+
width: 100%;
|
54 |
+
box-sizing: border-box;
|
55 |
+
border-spacing: 3px;
|
56 |
+
background: #fff;
|
57 |
+
}
|
58 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table th,
|
59 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table td {
|
60 |
+
padding: 16px 10px;
|
61 |
+
text-align: center;
|
62 |
+
}
|
63 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table th {
|
64 |
+
background: #efefef;
|
65 |
+
color: #777777;
|
66 |
+
box-shadow: 0 1px 0 #d8d8d8;
|
67 |
+
}
|
68 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-check-proccess {
|
69 |
+
display: inline-block;
|
70 |
+
height: 10px;
|
71 |
+
width: 30px;
|
72 |
+
background: url("../img/quick-start-loader.gif") center no-repeat;
|
73 |
+
}
|
74 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-servers-list-item-selected {
|
75 |
+
background: #fffbed;
|
76 |
+
color: #cec5a8;
|
77 |
+
font-weight: 600;
|
78 |
+
}
|
79 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-success {
|
80 |
+
color: #8CC152;
|
81 |
+
}
|
82 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-error {
|
83 |
+
color: #fb5d49;
|
84 |
+
}
|
85 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers table .wbcr-rio-server-warning {
|
86 |
+
color: #ffb635;
|
87 |
+
}
|
88 |
+
#WBCR .wbcr-factory-sidebar-widget.wbcr-rio-servers .wbcr-rio-warning-message {
|
89 |
+
margin-top: 30px;
|
90 |
+
padding: 20px;
|
91 |
+
border: 1px dashed #bfbfbf;
|
92 |
+
background: #ffffff;
|
93 |
+
margin-bottom: 40px;
|
94 |
+
font-size: 15px;
|
95 |
+
color: #828282;
|
96 |
+
}
|
97 |
+
#WBCR .wio-columns {
|
98 |
+
overflow: hidden;
|
99 |
+
padding: 15px 0;
|
100 |
+
counter-reset: cols;
|
101 |
+
}
|
102 |
+
#WBCR .wio-columns [class^="col-"] {
|
103 |
+
float: left;
|
104 |
+
-webkit-box-sizing: border-box;
|
105 |
+
-moz-box-sizing: border-box;
|
106 |
+
box-sizing: border-box;
|
107 |
+
}
|
108 |
+
#WBCR .wio-columns .col-1-3 {
|
109 |
+
width: 33.333%;
|
110 |
+
padding-left: 28px;
|
111 |
+
}
|
112 |
+
#WBCR .wio-columns .col-2-3 {
|
113 |
+
width: 66.666%;
|
114 |
+
padding-left: 28px;
|
115 |
+
}
|
116 |
+
#WBCR .wio-columns .col-1-2 {
|
117 |
+
width: 50%;
|
118 |
+
padding: 0 20px;
|
119 |
+
}
|
120 |
+
#WBCR .wio-columns .col-statistics.col-statistics {
|
121 |
+
width: 60%;
|
122 |
+
}
|
123 |
+
#WBCR .wio-columns .col-chart.col-chart {
|
124 |
+
width: 40%;
|
125 |
+
position: relative;
|
126 |
+
padding: 20px;
|
127 |
+
font-size: 12px;
|
128 |
+
text-transform: uppercase;
|
129 |
+
background: #f1f1f1b3;
|
130 |
+
color: #abacaf;
|
131 |
+
font-weight: bold;
|
132 |
+
border-radius: 5px;
|
133 |
+
margin-top: 10px;
|
134 |
+
text-align: left;
|
135 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
|
136 |
+
}
|
137 |
+
#WBCR .wio-col {
|
138 |
+
float: left;
|
139 |
+
width: 50%;
|
140 |
+
box-sizing: border-box;
|
141 |
+
-webkit-flex-basis: 50%;
|
142 |
+
-ms-flex-preferred-size: 50%;
|
143 |
+
flex-basis: 50%;
|
144 |
+
}
|
145 |
+
#WBCR .wio-col {
|
146 |
+
padding-right: 20px;
|
147 |
+
}
|
148 |
+
#WBCR .wio-col + .wio-col {
|
149 |
+
padding-right: 0;
|
150 |
+
padding-left: 50px;
|
151 |
+
}
|
152 |
+
#WBCR .wio-col:target {
|
153 |
+
animation: wiohello 1s 3 linear backwards;
|
154 |
+
}
|
155 |
+
#WBCR .wio-number-you-optimized {
|
156 |
+
margin-bottom: 1.35em;
|
157 |
+
overflow: hidden;
|
158 |
+
}
|
159 |
+
#WBCR .wio-number-you-optimized #wio-total-optimized-attachments-pct {
|
160 |
+
color: #828282;
|
161 |
+
}
|
162 |
+
#WBCR .wio-number-you-optimized .wio-number {
|
163 |
+
display: table-cell;
|
164 |
+
padding-right: 15px;
|
165 |
+
font-size: 48px;
|
166 |
+
font-weight: bold;
|
167 |
+
line-height: 1;
|
168 |
+
vertical-align: middle;
|
169 |
+
white-space: nowrap;
|
170 |
+
color: #828282;
|
171 |
+
}
|
172 |
+
#WBCR .wio-number-you-optimized .wio-text {
|
173 |
+
display: table-cell;
|
174 |
+
vertical-align: middle;
|
175 |
+
overflow: hidden;
|
176 |
+
font-size: 12px;
|
177 |
+
color: #828282;
|
178 |
+
}
|
179 |
+
#WBCR .wio-number-you-optimized > p {
|
180 |
+
display: table;
|
181 |
+
}
|
182 |
+
#WBCR .wio-bars {
|
183 |
+
padding-right: 15px;
|
184 |
+
}
|
185 |
+
#WBCR .wio-bars p {
|
186 |
+
font-size: 12px;
|
187 |
+
margin-bottom: 5px;
|
188 |
+
}
|
189 |
+
#WBCR .wio-bars + .wio-number-you-optimized {
|
190 |
+
border-bottom: 0;
|
191 |
+
padding-top: 0.85em;
|
192 |
+
}
|
193 |
+
#WBCR .wio-bars + .wio-number-you-optimized p {
|
194 |
+
color: #72a53b;
|
195 |
+
}
|
196 |
+
#WBCR .wio-bar-negative .wio-progress {
|
197 |
+
background: #D2D3D6;
|
198 |
+
}
|
199 |
+
#WBCR .wio-bar-negative .wio-barnb {
|
200 |
+
color: #9d9fa5;
|
201 |
+
}
|
202 |
+
#WBCR .wio-progress {
|
203 |
+
height: 8px;
|
204 |
+
transition: width 0.3s;
|
205 |
+
/*.wio-bar-negative {
|
206 |
+
width: 92% !important;
|
207 |
+
}*/
|
208 |
+
}
|
209 |
+
#WBCR .wio-bar-positive .wio-progress {
|
210 |
+
background: #8CC152;
|
211 |
+
}
|
212 |
+
#WBCR .wio-bar-positive .wio-barnb {
|
213 |
+
color: #72a53b;
|
214 |
+
}
|
215 |
+
#WBCR .wio-bar-primary .wio-progress {
|
216 |
+
background: #8CC152;
|
217 |
+
}
|
218 |
+
#WBCR .wio-bar-primary .wio-barnb {
|
219 |
+
color: #72a53b;
|
220 |
+
}
|
221 |
+
#WBCR .wio-right-outside-number .wio-barnb {
|
222 |
+
display: block;
|
223 |
+
margin-right: -5.25em;
|
224 |
+
text-align: right;
|
225 |
+
font-weight: bold;
|
226 |
+
line-height: 0.8;
|
227 |
+
}
|
228 |
+
#WBCR .wio-chart {
|
229 |
+
position: relative;
|
230 |
+
top: 1px;
|
231 |
+
display: inline-block;
|
232 |
+
vertical-align: middle;
|
233 |
+
}
|
234 |
+
#WBCR .wio-chart-container {
|
235 |
+
position: relative;
|
236 |
+
display: inline-block;
|
237 |
+
margin-right: 5px;
|
238 |
+
border: 10px solid #d2d3d6;
|
239 |
+
border-radius: 100%;
|
240 |
+
}
|
241 |
+
#WBCR .wio-chart-container canvas {
|
242 |
+
display: block;
|
243 |
+
}
|
244 |
+
#WBCR .wio-overview-chart-container {
|
245 |
+
float: left;
|
246 |
+
margin-right: 20px;
|
247 |
+
}
|
248 |
+
#WBCR .wio-chart-percent {
|
249 |
+
position: absolute;
|
250 |
+
left: 0;
|
251 |
+
right: 0;
|
252 |
+
top: 50%;
|
253 |
+
margin-top: -0.5em;
|
254 |
+
line-height: 0.8;
|
255 |
+
text-align: center;
|
256 |
+
font-size: 54px;
|
257 |
+
font-weight: bold;
|
258 |
+
color: #afafaf;
|
259 |
+
}
|
260 |
+
#WBCR .wio-chart-percent span {
|
261 |
+
font-size: 20px;
|
262 |
+
vertical-align: super;
|
263 |
+
}
|
264 |
+
#WBCR #wio-overview-chart-legend {
|
265 |
+
overflow: hidden;
|
266 |
+
}
|
267 |
+
#WBCR .wio-doughnut-legend li {
|
268 |
+
display: inline-block;
|
269 |
+
position: relative;
|
270 |
+
margin-bottom: 15px;
|
271 |
+
border-radius: 5px;
|
272 |
+
padding: 3px 8px 2px 31px;
|
273 |
+
font-size: 12px;
|
274 |
+
cursor: default;
|
275 |
+
-webkit-transition: background-color 200ms ease-in-out;
|
276 |
+
-moz-transition: background-color 200ms ease-in-out;
|
277 |
+
-o-transition: background-color 200ms ease-in-out;
|
278 |
+
transition: background-color 200ms ease-in-out;
|
279 |
+
}
|
280 |
+
#WBCR .wio-doughnut-legend li span {
|
281 |
+
display: block;
|
282 |
+
position: absolute;
|
283 |
+
left: 0;
|
284 |
+
top: 0;
|
285 |
+
width: 25px;
|
286 |
+
height: 25px;
|
287 |
+
border-radius: 50%;
|
288 |
+
}
|
289 |
+
#WBCR .wio-optimize-button {
|
290 |
+
width: 180px;
|
291 |
+
padding: 12px 30px;
|
292 |
+
background: #c9deb2;
|
293 |
+
color: #586549;
|
294 |
+
border: 0;
|
295 |
+
box-shadow: none;
|
296 |
+
font-size: 14px;
|
297 |
+
text-transform: uppercase !important;
|
298 |
+
font-weight: bold;
|
299 |
+
border-radius: 4px;
|
300 |
+
outline: none;
|
301 |
+
text-decoration: none;
|
302 |
+
}
|
303 |
+
#WBCR .wio-optimize-button:active {
|
304 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
305 |
+
}
|
306 |
+
#WBCR .wio-global-optim-phrase {
|
307 |
+
width: 180px;
|
308 |
+
padding-top: 20px;
|
309 |
+
font-size: 14px;
|
310 |
+
text-align: center;
|
311 |
+
}
|
312 |
+
#WBCR .wio-total-percent {
|
313 |
+
color: #587f2e;
|
314 |
+
}
|
315 |
+
#WBCR .wio-text-left {
|
316 |
+
text-align: left;
|
317 |
+
}
|
318 |
+
#WBCR span.wio-num {
|
319 |
+
display: inline !important;
|
320 |
+
position: inherit !important;
|
321 |
+
}
|
322 |
+
#WBCR .wio-image-optimize-board {
|
323 |
+
padding: 20px;
|
324 |
+
}
|
325 |
+
#WBCR .wio-page-statistic {
|
326 |
+
padding-left: 40px;
|
327 |
+
}
|
328 |
+
#WBCR .wio-page-statistic .wio-chart-percent {
|
329 |
+
margin-top: -1.1em;
|
330 |
+
}
|
331 |
+
#WBCR .wio-widget {
|
332 |
+
padding: 0 !important;
|
333 |
+
}
|
334 |
+
#WBCR .wio-widget .wio-chart-percent {
|
335 |
+
font-size: 44px;
|
336 |
+
line-height: 1;
|
337 |
+
}
|
338 |
+
#WBCR .wio-widget .wio-bars {
|
339 |
+
width: 80%;
|
340 |
+
margin-left: 155px;
|
341 |
+
box-sizing: border-box;
|
342 |
+
}
|
343 |
+
#WBCR .wio-widget .col-chart.col-chart {
|
344 |
+
width: 100%;
|
345 |
+
}
|
346 |
+
#WBCR .wio-widget .col-controls {
|
347 |
+
width: 45%;
|
348 |
+
padding-left: 5px;
|
349 |
+
padding-top: 110px;
|
350 |
+
}
|
351 |
+
#WBCR .wio-widget .wio-doughnut-legend {
|
352 |
+
margin-left: 20px;
|
353 |
+
text-align: left;
|
354 |
+
}
|
355 |
+
#WBCR .wio-widget .wio-widget-bottom {
|
356 |
+
display: table;
|
357 |
+
padding-top: 20px !important;
|
358 |
+
width: 100%;
|
359 |
+
text-align: right;
|
360 |
+
}
|
361 |
+
#WBCR .wio-widget .wio-widget-bottom li {
|
362 |
+
display: table-cell;
|
363 |
+
}
|
364 |
+
#WBCR .wio-widget .wio-widget-bottom li:first-child {
|
365 |
+
text-align: left;
|
366 |
+
}
|
367 |
+
@media (max-width: 830px) {
|
368 |
+
#WBCR .wio [class^="col-"] {
|
369 |
+
float: none;
|
370 |
+
margin-bottom: 1.5em;
|
371 |
+
}
|
372 |
+
#WBCR .wio .col-1-3,
|
373 |
+
#WBCR .wio .col-1-2 {
|
374 |
+
width: auto;
|
375 |
+
padding: 0 28px;
|
376 |
+
clear: both;
|
377 |
+
padding-top: 1em;
|
378 |
+
}
|
379 |
+
}
|
380 |
+
@keyframes wiohello {
|
381 |
+
0%,
|
382 |
+
100% {
|
383 |
+
background: #FFF;
|
384 |
+
}
|
385 |
+
50% {
|
386 |
+
background: #F4F7F9;
|
387 |
+
}
|
388 |
+
}
|
389 |
+
@media (max-width: 1520px) and (min-width: 1381px), (max-width: 1086px) {
|
390 |
+
#WBCR .wio-columns .col-statistics.col-statistics,
|
391 |
+
#WBCR .wio-columns .col-chart.col-chart {
|
392 |
+
width: 50%;
|
393 |
+
}
|
394 |
+
}
|
395 |
+
@media (max-width: 808px) {
|
396 |
+
#WBCR .wio-columns .col-statistics.col-statistics,
|
397 |
+
#WBCR .wio-columns .col-chart.col-chart {
|
398 |
+
width: auto;
|
399 |
+
float: none;
|
400 |
+
padding: 0;
|
401 |
+
}
|
402 |
+
#WBCR .wio-columns .col-chart.col-chart {
|
403 |
+
margin-top: 3em;
|
404 |
+
}
|
405 |
+
}
|
|
admin/assets/css/components.css
CHANGED
@@ -1,140 +1,139 @@
|
|
1 |
-
/**
|
2 |
-
* Page components
|
3 |
-
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
4 |
-
* @copyright Alex Kovalev 30.09.2017
|
5 |
-
*/
|
6 |
-
#WBCR .wbcr-clearfy-components {
|
7 |
-
padding: 0 20px 20px;
|
8 |
-
text-align: center;
|
9 |
-
}
|
10 |
-
#WBCR .wbcr-clearfy-components .plugin-card {
|
11 |
-
position: relative;
|
12 |
-
display: inline-block;
|
13 |
-
width: 32.7%;
|
14 |
-
height: 250px;
|
15 |
-
margin-left: 0;
|
16 |
-
margin-right: 0;
|
17 |
-
text-align: left;
|
18 |
-
float: none;
|
19 |
-
vertical-align: top;
|
20 |
-
}
|
21 |
-
#WBCR .wbcr-clearfy-components .plugin-card:first-child {
|
22 |
-
margin-left: 0;
|
23 |
-
}
|
24 |
-
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-bottom {
|
25 |
-
position: absolute;
|
26 |
-
bottom: 0;
|
27 |
-
right: 0;
|
28 |
-
left: 0;
|
29 |
-
}
|
30 |
-
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-top {
|
31 |
-
min-height: 163px;
|
32 |
-
}
|
33 |
-
#WBCR .wbcr-clearfy-components .plugin-card .desc,
|
34 |
-
#WBCR .wbcr-clearfy-components .plugin-card .name {
|
35 |
-
margin-right: 0 !important;
|
36 |
-
}
|
37 |
-
#WBCR .wbcr-clearfy-components .plugin-card .name h3 {
|
38 |
-
font-size: 17px;
|
39 |
-
margin-top: 0 !important;
|
40 |
-
}
|
41 |
-
#WBCR .wbcr-clearfy-components .plugin-card .install-now {
|
42 |
-
float: right;
|
43 |
-
}
|
44 |
-
#WBCR .wbcr-clearfy-components .plugin-card .delete-now {
|
45 |
-
float: right;
|
46 |
-
margin-left: 5px;
|
47 |
-
}
|
48 |
-
#WBCR .wbcr-clearfy-components .plugin-card .delete-now .dashicons,
|
49 |
-
#WBCR .wbcr-clearfy-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 .wbcr-clearfy-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 .wbcr-clearfy-components .plugin-card .plugin-card-premium-ribbon {
|
61 |
-
position: absolute;
|
62 |
-
bottom: 60px;
|
63 |
-
right: 0;
|
64 |
-
height: 30px;
|
65 |
-
width: 120px;
|
66 |
-
border-radius: 3px 0 0 3px;
|
67 |
-
background-color: #f7dea9;
|
68 |
-
color: #67532f;
|
69 |
-
text-align: center;
|
70 |
-
font-size: 12px;
|
71 |
-
font-weight: 600;
|
72 |
-
line-height: 2.4;
|
73 |
-
text-transform: uppercase;
|
74 |
-
z-index: 1;
|
75 |
-
}
|
76 |
-
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-free-ribbon {
|
77 |
-
position: absolute;
|
78 |
-
bottom: 60px;
|
79 |
-
right: 0;
|
80 |
-
height: 30px;
|
81 |
-
width: 120px;
|
82 |
-
border-radius: 3px 0 0 3px;
|
83 |
-
background-color: #cccccc;
|
84 |
-
color: #6b6b6b;
|
85 |
-
text-align: center;
|
86 |
-
font-size: 12px;
|
87 |
-
font-weight: 600;
|
88 |
-
line-height: 2.4;
|
89 |
-
text-transform: uppercase;
|
90 |
-
z-index: 1;
|
91 |
-
}
|
92 |
-
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-freemium-ribbon {
|
93 |
-
position: absolute;
|
94 |
-
bottom: 60px;
|
95 |
-
right: 0;
|
96 |
-
height: 30px;
|
97 |
-
width: 120px;
|
98 |
-
border-radius: 3px 0 0 3px;
|
99 |
-
background-color: #cae2b3;
|
100 |
-
color: #546742;
|
101 |
-
text-align: center;
|
102 |
-
font-size: 12px;
|
103 |
-
font-weight: 600;
|
104 |
-
line-height: 2.4;
|
105 |
-
text-transform: uppercase;
|
106 |
-
z-index: 1;
|
107 |
-
}
|
108 |
-
#WBCR .wbcr-clearfy-components .plugin-card.premium {
|
109 |
-
border-color: #e8d7b2;
|
110 |
-
background-color: #fff9eb;
|
111 |
-
}
|
112 |
-
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive {
|
113 |
-
background-color: #f1f1f1;
|
114 |
-
}
|
115 |
-
#WBCR .wbcr-clearfy-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 .wbcr-clearfy-components .plugin-card.plugin-status-deactive .plugin-icon {
|
122 |
-
opacity: 0.3;
|
123 |
-
}
|
124 |
-
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive .desc {
|
125 |
-
color: #afafaf;
|
126 |
-
}
|
127 |
-
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive.premium {
|
128 |
-
background-color: #f9f2f1;
|
129 |
-
}
|
130 |
-
@media screen and (max-width: 1750px) {
|
131 |
-
#WBCR .wbcr-clearfy-components .plugin-card {
|
132 |
-
width: 49%;
|
133 |
-
}
|
134 |
-
}
|
135 |
-
@media screen and (max-width: 1350px) {
|
136 |
-
#WBCR .wbcr-clearfy-components .plugin-card {
|
137 |
-
width: 100%;
|
138 |
-
}
|
139 |
-
}
|
140 |
-
/*# sourceMappingURL=components.css.map */
|
1 |
+
/**
|
2 |
+
* Page components
|
3 |
+
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
4 |
+
* @copyright Alex Kovalev 30.09.2017
|
5 |
+
*/
|
6 |
+
#WBCR .wbcr-clearfy-components {
|
7 |
+
padding: 0 20px 20px;
|
8 |
+
text-align: center;
|
9 |
+
}
|
10 |
+
#WBCR .wbcr-clearfy-components .plugin-card {
|
11 |
+
position: relative;
|
12 |
+
display: inline-block;
|
13 |
+
width: 32.7%;
|
14 |
+
height: 250px;
|
15 |
+
margin-left: 0;
|
16 |
+
margin-right: 0;
|
17 |
+
text-align: left;
|
18 |
+
float: none;
|
19 |
+
vertical-align: top;
|
20 |
+
}
|
21 |
+
#WBCR .wbcr-clearfy-components .plugin-card:first-child {
|
22 |
+
margin-left: 0;
|
23 |
+
}
|
24 |
+
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-bottom {
|
25 |
+
position: absolute;
|
26 |
+
bottom: 0;
|
27 |
+
right: 0;
|
28 |
+
left: 0;
|
29 |
+
}
|
30 |
+
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-top {
|
31 |
+
min-height: 163px;
|
32 |
+
}
|
33 |
+
#WBCR .wbcr-clearfy-components .plugin-card .desc,
|
34 |
+
#WBCR .wbcr-clearfy-components .plugin-card .name {
|
35 |
+
margin-right: 0 !important;
|
36 |
+
}
|
37 |
+
#WBCR .wbcr-clearfy-components .plugin-card .name h3 {
|
38 |
+
font-size: 17px;
|
39 |
+
margin-top: 0 !important;
|
40 |
+
}
|
41 |
+
#WBCR .wbcr-clearfy-components .plugin-card .install-now {
|
42 |
+
float: right;
|
43 |
+
}
|
44 |
+
#WBCR .wbcr-clearfy-components .plugin-card .delete-now {
|
45 |
+
float: right;
|
46 |
+
margin-left: 5px;
|
47 |
+
}
|
48 |
+
#WBCR .wbcr-clearfy-components .plugin-card .delete-now .dashicons,
|
49 |
+
#WBCR .wbcr-clearfy-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 .wbcr-clearfy-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 .wbcr-clearfy-components .plugin-card .plugin-card-premium-ribbon {
|
61 |
+
position: absolute;
|
62 |
+
bottom: 60px;
|
63 |
+
right: 0;
|
64 |
+
height: 30px;
|
65 |
+
width: 120px;
|
66 |
+
border-radius: 3px 0 0 3px;
|
67 |
+
background-color: #f7dea9;
|
68 |
+
color: #67532f;
|
69 |
+
text-align: center;
|
70 |
+
font-size: 12px;
|
71 |
+
font-weight: 600;
|
72 |
+
line-height: 2.4;
|
73 |
+
text-transform: uppercase;
|
74 |
+
z-index: 1;
|
75 |
+
}
|
76 |
+
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-free-ribbon {
|
77 |
+
position: absolute;
|
78 |
+
bottom: 60px;
|
79 |
+
right: 0;
|
80 |
+
height: 30px;
|
81 |
+
width: 120px;
|
82 |
+
border-radius: 3px 0 0 3px;
|
83 |
+
background-color: #cccccc;
|
84 |
+
color: #6b6b6b;
|
85 |
+
text-align: center;
|
86 |
+
font-size: 12px;
|
87 |
+
font-weight: 600;
|
88 |
+
line-height: 2.4;
|
89 |
+
text-transform: uppercase;
|
90 |
+
z-index: 1;
|
91 |
+
}
|
92 |
+
#WBCR .wbcr-clearfy-components .plugin-card .plugin-card-freemium-ribbon {
|
93 |
+
position: absolute;
|
94 |
+
bottom: 60px;
|
95 |
+
right: 0;
|
96 |
+
height: 30px;
|
97 |
+
width: 120px;
|
98 |
+
border-radius: 3px 0 0 3px;
|
99 |
+
background-color: #cae2b3;
|
100 |
+
color: #546742;
|
101 |
+
text-align: center;
|
102 |
+
font-size: 12px;
|
103 |
+
font-weight: 600;
|
104 |
+
line-height: 2.4;
|
105 |
+
text-transform: uppercase;
|
106 |
+
z-index: 1;
|
107 |
+
}
|
108 |
+
#WBCR .wbcr-clearfy-components .plugin-card.premium {
|
109 |
+
border-color: #e8d7b2;
|
110 |
+
background-color: #fff9eb;
|
111 |
+
}
|
112 |
+
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive {
|
113 |
+
background-color: #f1f1f1;
|
114 |
+
}
|
115 |
+
#WBCR .wbcr-clearfy-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 .wbcr-clearfy-components .plugin-card.plugin-status-deactive .plugin-icon {
|
122 |
+
opacity: 0.3;
|
123 |
+
}
|
124 |
+
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive .desc {
|
125 |
+
color: #afafaf;
|
126 |
+
}
|
127 |
+
#WBCR .wbcr-clearfy-components .plugin-card.plugin-status-deactive.premium {
|
128 |
+
background-color: #f9f2f1;
|
129 |
+
}
|
130 |
+
@media screen and (max-width: 1750px) {
|
131 |
+
#WBCR .wbcr-clearfy-components .plugin-card {
|
132 |
+
width: 49%;
|
133 |
+
}
|
134 |
+
}
|
135 |
+
@media screen and (max-width: 1350px) {
|
136 |
+
#WBCR .wbcr-clearfy-components .plugin-card {
|
137 |
+
width: 100%;
|
138 |
+
}
|
139 |
+
}
|
|
admin/assets/css/general.css
CHANGED
@@ -1,495 +1,494 @@
|
|
1 |
-
/**
|
2 |
-
* General styles
|
3 |
-
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
4 |
-
* @copyright Alex Kovalev 23.08.2017
|
5 |
-
*/
|
6 |
-
.wbcr-clearfy-layer {
|
7 |
-
display: none;
|
8 |
-
position: absolute;
|
9 |
-
top: 0;
|
10 |
-
left: -20px;
|
11 |
-
right: 0;
|
12 |
-
bottom: 0;
|
13 |
-
background: rgba(255, 235, 59, 0.18);
|
14 |
-
z-index: 9;
|
15 |
-
}
|
16 |
-
#WBCR {
|
17 |
-
/*.wbcr-right-sidebar-section {
|
18 |
-
width: 49%;
|
19 |
-
padding-top: 20px;
|
20 |
-
}*/
|
21 |
-
/**
|
22 |
-
* Widgets
|
23 |
-
*/
|
24 |
-
/**
|
25 |
-
* Navigation bar
|
26 |
-
*/
|
27 |
-
/*.wbcr-clearfy-board {
|
28 |
-
background: #f9f8f8;
|
29 |
-
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
|
30 |
-
padding: 20px;
|
31 |
-
margin-bottom: 20px;
|
32 |
-
min-width: 350px;
|
33 |
-
//float: right;
|
34 |
-
}*/
|
35 |
-
}
|
36 |
-
#WBCR .wbcr-factory-pages-
|
37 |
-
height: 80px !important;
|
38 |
-
}
|
39 |
-
#WBCR .wbcr-factory-pages-
|
40 |
-
display: inline-block !important;
|
41 |
-
}
|
42 |
-
#WBCR .row {
|
43 |
-
display: block !important;
|
44 |
-
width: auto !important;
|
45 |
-
table-layout: auto !important;
|
46 |
-
}
|
47 |
-
#WBCR .row > div {
|
48 |
-
display: block !important;
|
49 |
-
padding: 0 !important;
|
50 |
-
}
|
51 |
-
#WBCR .wbcr-clr-logo-label {
|
52 |
-
position: relative;
|
53 |
-
padding: 0 10px 3px;
|
54 |
-
border-radius: 5px;
|
55 |
-
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
|
56 |
-
border-top: 1px solid rgba(255, 255, 255, 0.2);
|
57 |
-
}
|
58 |
-
#WBCR .wbcr-clr-logo-label:before {
|
59 |
-
content: '';
|
60 |
-
display: block;
|
61 |
-
position: absolute;
|
62 |
-
width: 20px;
|
63 |
-
height: 25px;
|
64 |
-
top: -10px;
|
65 |
-
right: -10px;
|
66 |
-
background: url(../../../assets/img/webcraftic-plugin-icon.png) 0 0 no-repeat;
|
67 |
-
}
|
68 |
-
#WBCR .wbcr-clr-logo-label.wbcr-clr-free-label-logo {
|
69 |
-
color: #f1f1f1;
|
70 |
-
background-color: #636363;
|
71 |
-
}
|
72 |
-
#WBCR .wbcr-clr-logo-label.wbcr-clr-premium-label-logo {
|
73 |
-
color: #000000;
|
74 |
-
background-color: #ffbe00;
|
75 |
-
}
|
76 |
-
#WBCR .wbcr-content-section,
|
77 |
-
#WBCR .wbcr-right-sidebar-section {
|
78 |
-
display: inline-block;
|
79 |
-
vertical-align: top;
|
80 |
-
}
|
81 |
-
#WBCR .wbcr-content-section {
|
82 |
-
width: 100%;
|
83 |
-
}
|
84 |
-
#WBCR #wbcr-clr-go-to-premium-widget .wbcr-clr-purchase-premium {
|
85 |
-
position: relative;
|
86 |
-
text-decoration: none;
|
87 |
-
font-weight: bold;
|
88 |
-
background: #fffaea;
|
89 |
-
padding: 0;
|
90 |
-
border-radius: 4px;
|
91 |
-
outline: none;
|
92 |
-
margin-top: 15px;
|
93 |
-
box-shadow: 0 0 8px #fddf67;
|
94 |
-
}
|
95 |
-
#WBCR #wbcr-clr-go-to-premium-widget .wbcr-clr-purchase-premium .fa {
|
96 |
-
position: relative;
|
97 |
-
margin-right: 3px;
|
98 |
-
margin-left: 3px;
|
99 |
-
}
|
100 |
-
#WBCR .wbcr-factory-left-navigation-bar #components-wbcr_clearfy-tab {
|
101 |
-
border-left: 5px solid #7edbff;
|
102 |
-
}
|
103 |
-
#WBCR .wbcr-factory-left-navigation-bar #license-wbcr_clearfy-tab {
|
104 |
-
border-left: 5px solid #ffd762;
|
105 |
-
}
|
106 |
-
#WBCR .wbcr-factory-left-navigation-bar .wbcr-factory-active-tab #license-wbcr_clearfy-tab {
|
107 |
-
font-weight: lighter;
|
108 |
-
color: #222;
|
109 |
-
}
|
110 |
-
#WBCR .wbcr-factory-left-navigation-bar .wbcr-factory-active-tab #license-wbcr_clearfy-tab .dashicons-admin-network {
|
111 |
-
color: #222;
|
112 |
-
}
|
113 |
-
#WBCR .wbcr-clearfy-danger-message {
|
114 |
-
position: relative;
|
115 |
-
padding: 15px;
|
116 |
-
background: #ffe0de;
|
117 |
-
color: #9c6e6e;
|
118 |
-
border-radius: 3px;
|
119 |
-
}
|
120 |
-
#WBCR .wbcr-clearfy-danger-message:after,
|
121 |
-
#WBCR .wbcr-clearfy-danger-message:before {
|
122 |
-
bottom: 100%;
|
123 |
-
left: 20px;
|
124 |
-
border: solid transparent;
|
125 |
-
content: " ";
|
126 |
-
height: 0;
|
127 |
-
width: 0;
|
128 |
-
position: absolute;
|
129 |
-
pointer-events: none;
|
130 |
-
}
|
131 |
-
#WBCR .wbcr-clearfy-danger-message:after {
|
132 |
-
border-color: rgba(136, 183, 213, 0);
|
133 |
-
border-bottom-color: #ffe0de;
|
134 |
-
border-width: 10px;
|
135 |
-
}
|
136 |
-
#WBCR .wbcr-clearfy-danger-message:before {
|
137 |
-
border-color: rgba(194, 225, 245, 0);
|
138 |
-
border-bottom-color: #ffe0de;
|
139 |
-
border-width: 10px;
|
140 |
-
}
|
141 |
-
#WBCR .wbcr-clearfy-group-header {
|
142 |
-
background: #efefef;
|
143 |
-
padding: 20px 0 10px 20px;
|
144 |
-
margin: 30px 0;
|
145 |
-
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
146 |
-
}
|
147 |
-
#WBCR .wbcr-clearfy-group-header:first-child {
|
148 |
-
margin-top: 0;
|
149 |
-
}
|
150 |
-
#WBCR .wbcr-clearfy-group-header strong {
|
151 |
-
font-size: 15px;
|
152 |
-
}
|
153 |
-
#WBCR .wbcr-clearfy-group-header p {
|
154 |
-
color: #8c8888;
|
155 |
-
font-size: 12px;
|
156 |
-
}
|
157 |
-
#WBCR #wbcr-clearfy-quick-mode-board h4 {
|
158 |
-
margin-top: 30px;
|
159 |
-
}
|
160 |
-
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget {
|
161 |
-
position: relative;
|
162 |
-
width: 659px;
|
163 |
-
height: 250px;
|
164 |
-
}
|
165 |
-
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget .wbcr-clr-proccess-button {
|
166 |
-
opacity: 0;
|
167 |
-
position: absolute;
|
168 |
-
top: 50%;
|
169 |
-
left: 50%;
|
170 |
-
margin: -25px 0 0 -100px;
|
171 |
-
width: 200px;
|
172 |
-
height: 50px;
|
173 |
-
font-size: 16px;
|
174 |
-
font-weight: bold;
|
175 |
-
text-align: center;
|
176 |
-
line-height: 3;
|
177 |
-
background: #fdd599 !important;
|
178 |
-
color: #a57b3c !important;
|
179 |
-
text-decoration: none !important;
|
180 |
-
text-shadow: none !important;
|
181 |
-
box-shadow: none !important;
|
182 |
-
border: 1px solid #e0c08f !important;
|
183 |
-
border-radius: 3px;
|
184 |
-
outline: none;
|
185 |
-
-webkit-transition: opacity 1000ms;
|
186 |
-
-moz-transition: opacity 1000ms;
|
187 |
-
-o-transition: opacity 1000ms;
|
188 |
-
transition: opacity 1000ms;
|
189 |
-
}
|
190 |
-
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget:hover .wbcr-clr-proccess-button {
|
191 |
-
display: block;
|
192 |
-
opacity: 1;
|
193 |
-
}
|
194 |
-
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget:hover .wbcr-clearfy-widget-overlay img {
|
195 |
-
opacity: 0.2;
|
196 |
-
}
|
197 |
-
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget .wbcr-clearfy-widget-overlay img {
|
198 |
-
width: 100%;
|
199 |
-
-webkit-transition: opacity 500ms;
|
200 |
-
-moz-transition: opacity 500ms;
|
201 |
-
-o-transition: opacity 500ms;
|
202 |
-
transition: opacity 500ms;
|
203 |
-
}
|
204 |
-
#WBCR .wbcr-clearfy-switch-success-message,
|
205 |
-
#WBCR .wbcr-clearfy-switch-error-message {
|
206 |
-
display: none;
|
207 |
-
padding: 15px 20px;
|
208 |
-
font-size: 13px;
|
209 |
-
font-weight: bold;
|
210 |
-
margin: 0 0 15px;
|
211 |
-
border-radius: 4px;
|
212 |
-
}
|
213 |
-
#WBCR .wbcr-clearfy-switch-success-message {
|
214 |
-
background: #e5f9ce;
|
215 |
-
border-bottom: 3px solid #d3eab9;
|
216 |
-
color: #56614a;
|
217 |
-
}
|
218 |
-
#WBCR .wbcr-clearfy-switch-error-message {
|
219 |
-
background: #fdc6c2;
|
220 |
-
border-bottom: 3px solid #e2a19c;
|
221 |
-
color: #bd6963;
|
222 |
-
}
|
223 |
-
#WBCR .wbcr-clearfy-troubleshooting {
|
224 |
-
padding: 0 50px 20px;
|
225 |
-
}
|
226 |
-
#WBCR .wbcr-clearfy-export-import {
|
227 |
-
padding: 0 50px;
|
228 |
-
text-align: right;
|
229 |
-
}
|
230 |
-
#WBCR .wbcr-clearfy-export-import label {
|
231 |
-
display: block;
|
232 |
-
width: 100%;
|
233 |
-
text-align: left;
|
234 |
-
padding: 7px 0;
|
235 |
-
}
|
236 |
-
#WBCR .wbcr-clearfy-export-import #wbcr-clearfy-import-export {
|
237 |
-
width: 100%;
|
238 |
-
box-sizing: border-box;
|
239 |
-
height: 200px;
|
240 |
-
line-height: inherit;
|
241 |
-
margin: 0;
|
242 |
-
padding: 7px 14px;
|
243 |
-
box-shadow: none;
|
244 |
-
border-radius: 3px;
|
245 |
-
border: 1px solid #eee;
|
246 |
-
border-top-color: #dedede;
|
247 |
-
background-color: #f1f1f1;
|
248 |
-
color: #444;
|
249 |
-
transition: border-color 0.3s;
|
250 |
-
-webkit-appearance: none;
|
251 |
-
}
|
252 |
-
#WBCR .wbcr-clearfy-export-import .wbcr-clearfy-import-options-button {
|
253 |
-
display: inline-block;
|
254 |
-
margin-top: 10px;
|
255 |
-
}
|
256 |
-
#WBCR #wbcr-clearfy-quick-mode-board {
|
257 |
-
padding: 20px;
|
258 |
-
}
|
259 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch {
|
260 |
-
position: relative;
|
261 |
-
padding: 15px 20px;
|
262 |
-
margin-right: 20px;
|
263 |
-
font-size: 12px;
|
264 |
-
text-transform: uppercase;
|
265 |
-
background: #f1f1f1;
|
266 |
-
color: #6d6d6d;
|
267 |
-
font-weight: bold;
|
268 |
-
border-radius: 5px;
|
269 |
-
margin-top: 10px;
|
270 |
-
text-align: left;
|
271 |
-
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
|
272 |
-
-webkit-transition: all 0.2s ease-out;
|
273 |
-
-moz-transition: all 0.2s ease-out;
|
274 |
-
-o-transition: all 0.2s ease-out;
|
275 |
-
transition: all 0.2s ease-out;
|
276 |
-
/*&.wbcr-clearfy-mode-reset:hover {
|
277 |
-
& .wbcr-clearfy-button-activate-mode {
|
278 |
-
background-color: #fb7976;
|
279 |
-
color: darken(#fb7976, 50%);
|
280 |
-
&:hover {
|
281 |
-
background-color: lighten(#fb7976, 3%);
|
282 |
-
}
|
283 |
-
}
|
284 |
-
}*/
|
285 |
-
}
|
286 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch:after {
|
287 |
-
display: block;
|
288 |
-
clear: both;
|
289 |
-
}
|
290 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .fa,
|
291 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .dashicons {
|
292 |
-
font-size: 25px;
|
293 |
-
}
|
294 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .fa,
|
295 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .dashicons,
|
296 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
297 |
-
display: inline-block !important;
|
298 |
-
}
|
299 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
300 |
-
margin-left: 15px;
|
301 |
-
margin-top: 3px;
|
302 |
-
}
|
303 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-active {
|
304 |
-
/*.fa, .dashicons:before {
|
305 |
-
color: #8bc34a;
|
306 |
-
}
|
307 |
-
|
308 |
-
& .wbcr-clearfy-button-activate-mode {
|
309 |
-
display: none !important;
|
310 |
-
}
|
311 |
-
& .wbcr-clearfy-button-deativate-mode {
|
312 |
-
display: inline-block !important;
|
313 |
-
}*/
|
314 |
-
}
|
315 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-active .wbcr-clearfy-button-activate-mode {
|
316 |
-
background-color: #f7f7f7 !important;
|
317 |
-
color: #e0e0e0 !important;
|
318 |
-
cursor: default;
|
319 |
-
}
|
320 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation {
|
321 |
-
width: 130px;
|
322 |
-
}
|
323 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode {
|
324 |
-
width: 130px;
|
325 |
-
background-color: #fdd599;
|
326 |
-
color: #a57b3c;
|
327 |
-
}
|
328 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode:hover {
|
329 |
-
background-color: #fddba8;
|
330 |
-
}
|
331 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .fa,
|
332 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .dashicons:before {
|
333 |
-
color: #8bc34a;
|
334 |
-
}
|
335 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .wbcr-clearfy-button-activate-mode {
|
336 |
-
background-color: #c9deb2;
|
337 |
-
color: #586549;
|
338 |
-
}
|
339 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .wbcr-clearfy-button-activate-mode:hover {
|
340 |
-
background-color: #d1e3bd;
|
341 |
-
}
|
342 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-loading .wbcr-clearfy-switch-confirmation button {
|
343 |
-
background: url("../img/quick-start-loader.gif") center center no-repeat;
|
344 |
-
background-color: #f7f7f7 !important;
|
345 |
-
font-size: 0;
|
346 |
-
cursor: default !important;
|
347 |
-
}
|
348 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation {
|
349 |
-
position: absolute;
|
350 |
-
top: 0;
|
351 |
-
right: 20px;
|
352 |
-
bottom: 0;
|
353 |
-
width: 100px;
|
354 |
-
text-align: right;
|
355 |
-
-webkit-transition: all 0.3s ease-out;
|
356 |
-
-moz-transition: all 0.3s ease-out;
|
357 |
-
-o-transition: all 0.3s ease-out;
|
358 |
-
transition: all 0.3s ease-out;
|
359 |
-
}
|
360 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button {
|
361 |
-
display: inline-block;
|
362 |
-
width: 100px;
|
363 |
-
margin: 12px 0 0;
|
364 |
-
border: 0;
|
365 |
-
box-shadow: none;
|
366 |
-
padding: 5px 10px;
|
367 |
-
font-weight: bold;
|
368 |
-
font-size: 13px;
|
369 |
-
border-radius: 3px;
|
370 |
-
outline: none;
|
371 |
-
background-color: #dedede;
|
372 |
-
color: #808080;
|
373 |
-
/*&.wbcr-clearfy-button-activate-mode {
|
374 |
-
background-color: #c9deb2;
|
375 |
-
color: #586549;
|
376 |
-
&:hover {
|
377 |
-
background-color: lighten(#c9deb2, 3%);
|
378 |
-
}
|
379 |
-
}
|
380 |
-
&.wbcr-clearfy-button-deativate-mode {
|
381 |
-
display: none;
|
382 |
-
background-color: #fdd599;
|
383 |
-
color: #a57b3c;
|
384 |
-
margin-right: 0;
|
385 |
-
&:hover {
|
386 |
-
background-color: lighten(#fdd599, 3%);
|
387 |
-
}
|
388 |
-
}*/
|
389 |
-
}
|
390 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button:hover {
|
391 |
-
background-color: #d6d6d6;
|
392 |
-
}
|
393 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button:active {
|
394 |
-
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
395 |
-
}
|
396 |
-
#WBCR .wbcr-clearfy-confirm-popup {
|
397 |
-
display: none;
|
398 |
-
position: fixed;
|
399 |
-
top: 50%;
|
400 |
-
left: 50%;
|
401 |
-
width: 500px;
|
402 |
-
height: 400px;
|
403 |
-
margin: -200px 0 0 -250px;
|
404 |
-
padding: 20px;
|
405 |
-
background: rgba(255, 255, 255, 0.82);
|
406 |
-
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
407 |
-
border: 4px solid rgba(216, 210, 171, 0.44);
|
408 |
-
z-index: 99;
|
409 |
-
}
|
410 |
-
#WBCR .wbcr-clearfy-confirm-popup h3 {
|
411 |
-
font-size: 17px;
|
412 |
-
text-align: center;
|
413 |
-
font-weight: bold;
|
414 |
-
margin: 5px 0 0;
|
415 |
-
}
|
416 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-reset-warning-message {
|
417 |
-
display: none;
|
418 |
-
text-align: center;
|
419 |
-
}
|
420 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-list-options {
|
421 |
-
display: none;
|
422 |
-
height: 230px;
|
423 |
-
overflow-y: auto;
|
424 |
-
overflow-x: hidden;
|
425 |
-
padding-left: 40px;
|
426 |
-
list-style: decimal;
|
427 |
-
margin: 20px 0;
|
428 |
-
}
|
429 |
-
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-default-warning-options .wbcr-clearfy-list-options {
|
430 |
-
display: block;
|
431 |
-
}
|
432 |
-
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-reset-warning-options {
|
433 |
-
height: 200px;
|
434 |
-
margin: -100px 0 0 -250px;
|
435 |
-
}
|
436 |
-
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-reset-warning-options .wbcr-clearfy-reset-warning-message {
|
437 |
-
display: block;
|
438 |
-
margin: 10px 0;
|
439 |
-
}
|
440 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons {
|
441 |
-
text-align: center;
|
442 |
-
padding: 10px;
|
443 |
-
}
|
444 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button {
|
445 |
-
display: inline-block;
|
446 |
-
padding: 7px 25px;
|
447 |
-
box-shadow: none;
|
448 |
-
border: 0;
|
449 |
-
font-weight: bold;
|
450 |
-
}
|
451 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button,
|
452 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button:focus {
|
453 |
-
outline: 0 !important;
|
454 |
-
box-shadow: none !important;
|
455 |
-
}
|
456 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button.wbcr-clearfy-popup-button-ok {
|
457 |
-
background: #FFEB3B;
|
458 |
-
color: #564f0d;
|
459 |
-
}
|
460 |
-
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button.wbcr-clearfy-cancel-mode {
|
461 |
-
background: #d6d6d6;
|
462 |
-
color: #5f5d5d;
|
463 |
-
}
|
464 |
-
@media screen and (max-width: 1380px) {
|
465 |
-
#WBCR #wbcr-clearfy-quick-mode-board {
|
466 |
-
min-width: 450px;
|
467 |
-
padding-right: 0;
|
468 |
-
}
|
469 |
-
#WBCR .wbcr-content-section,
|
470 |
-
#WBCR .wbcr-right-sidebar-section {
|
471 |
-
width: 100%;
|
472 |
-
}
|
473 |
-
#WBCR .wbcr-clearfy-export-import-board {
|
474 |
-
margin-top: 20px;
|
475 |
-
}
|
476 |
-
}
|
477 |
-
@media screen and (max-width: 950px) {
|
478 |
-
#WBCR #wbcr-clearfy-quick-mode-board {
|
479 |
-
min-width: 100%;
|
480 |
-
}
|
481 |
-
#WBCR .wbcr-content-section,
|
482 |
-
#WBCR .wbcr-right-sidebar-section {
|
483 |
-
width: 100%;
|
484 |
-
}
|
485 |
-
#WBCR .wbcr-clearfy-board {
|
486 |
-
width: 100%;
|
487 |
-
min-width: 100%;
|
488 |
-
}
|
489 |
-
}
|
490 |
-
@media screen and (max-width: 550px) {
|
491 |
-
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
492 |
-
font-size: 0 !important;
|
493 |
-
}
|
494 |
-
}
|
495 |
-
/*# sourceMappingURL=general.css.map */
|
1 |
+
/**
|
2 |
+
* General styles
|
3 |
+
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
4 |
+
* @copyright Alex Kovalev 23.08.2017
|
5 |
+
*/
|
6 |
+
.wbcr-clearfy-layer {
|
7 |
+
display: none;
|
8 |
+
position: absolute;
|
9 |
+
top: 0;
|
10 |
+
left: -20px;
|
11 |
+
right: 0;
|
12 |
+
bottom: 0;
|
13 |
+
background: rgba(255, 235, 59, 0.18);
|
14 |
+
z-index: 9;
|
15 |
+
}
|
16 |
+
#WBCR {
|
17 |
+
/*.wbcr-right-sidebar-section {
|
18 |
+
width: 49%;
|
19 |
+
padding-top: 20px;
|
20 |
+
}*/
|
21 |
+
/**
|
22 |
+
* Widgets
|
23 |
+
*/
|
24 |
+
/**
|
25 |
+
* Navigation bar
|
26 |
+
*/
|
27 |
+
/*.wbcr-clearfy-board {
|
28 |
+
background: #f9f8f8;
|
29 |
+
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
|
30 |
+
padding: 20px;
|
31 |
+
margin-bottom: 20px;
|
32 |
+
min-width: 350px;
|
33 |
+
//float: right;
|
34 |
+
}*/
|
35 |
+
}
|
36 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-page-header {
|
37 |
+
height: 80px !important;
|
38 |
+
}
|
39 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo span {
|
40 |
+
display: inline-block !important;
|
41 |
+
}
|
42 |
+
#WBCR .row {
|
43 |
+
display: block !important;
|
44 |
+
width: auto !important;
|
45 |
+
table-layout: auto !important;
|
46 |
+
}
|
47 |
+
#WBCR .row > div {
|
48 |
+
display: block !important;
|
49 |
+
padding: 0 !important;
|
50 |
+
}
|
51 |
+
#WBCR .wbcr-clr-logo-label {
|
52 |
+
position: relative;
|
53 |
+
padding: 0 10px 3px;
|
54 |
+
border-radius: 5px;
|
55 |
+
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
|
56 |
+
border-top: 1px solid rgba(255, 255, 255, 0.2);
|
57 |
+
}
|
58 |
+
#WBCR .wbcr-clr-logo-label:before {
|
59 |
+
content: '';
|
60 |
+
display: block;
|
61 |
+
position: absolute;
|
62 |
+
width: 20px;
|
63 |
+
height: 25px;
|
64 |
+
top: -10px;
|
65 |
+
right: -10px;
|
66 |
+
background: url(../../../assets/img/webcraftic-plugin-icon.png) 0 0 no-repeat;
|
67 |
+
}
|
68 |
+
#WBCR .wbcr-clr-logo-label.wbcr-clr-free-label-logo {
|
69 |
+
color: #f1f1f1;
|
70 |
+
background-color: #636363;
|
71 |
+
}
|
72 |
+
#WBCR .wbcr-clr-logo-label.wbcr-clr-premium-label-logo {
|
73 |
+
color: #000000;
|
74 |
+
background-color: #ffbe00;
|
75 |
+
}
|
76 |
+
#WBCR .wbcr-content-section,
|
77 |
+
#WBCR .wbcr-right-sidebar-section {
|
78 |
+
display: inline-block;
|
79 |
+
vertical-align: top;
|
80 |
+
}
|
81 |
+
#WBCR .wbcr-content-section {
|
82 |
+
width: 100%;
|
83 |
+
}
|
84 |
+
#WBCR #wbcr-clr-go-to-premium-widget .wbcr-clr-purchase-premium {
|
85 |
+
position: relative;
|
86 |
+
text-decoration: none;
|
87 |
+
font-weight: bold;
|
88 |
+
background: #fffaea;
|
89 |
+
padding: 0;
|
90 |
+
border-radius: 4px;
|
91 |
+
outline: none;
|
92 |
+
margin-top: 15px;
|
93 |
+
box-shadow: 0 0 8px #fddf67;
|
94 |
+
}
|
95 |
+
#WBCR #wbcr-clr-go-to-premium-widget .wbcr-clr-purchase-premium .fa {
|
96 |
+
position: relative;
|
97 |
+
margin-right: 3px;
|
98 |
+
margin-left: 3px;
|
99 |
+
}
|
100 |
+
#WBCR .wbcr-factory-left-navigation-bar #components-wbcr_clearfy-tab {
|
101 |
+
border-left: 5px solid #7edbff;
|
102 |
+
}
|
103 |
+
#WBCR .wbcr-factory-left-navigation-bar #license-wbcr_clearfy-tab {
|
104 |
+
border-left: 5px solid #ffd762;
|
105 |
+
}
|
106 |
+
#WBCR .wbcr-factory-left-navigation-bar .wbcr-factory-active-tab #license-wbcr_clearfy-tab {
|
107 |
+
font-weight: lighter;
|
108 |
+
color: #222;
|
109 |
+
}
|
110 |
+
#WBCR .wbcr-factory-left-navigation-bar .wbcr-factory-active-tab #license-wbcr_clearfy-tab .dashicons-admin-network {
|
111 |
+
color: #222;
|
112 |
+
}
|
113 |
+
#WBCR .wbcr-clearfy-danger-message {
|
114 |
+
position: relative;
|
115 |
+
padding: 15px;
|
116 |
+
background: #ffe0de;
|
117 |
+
color: #9c6e6e;
|
118 |
+
border-radius: 3px;
|
119 |
+
}
|
120 |
+
#WBCR .wbcr-clearfy-danger-message:after,
|
121 |
+
#WBCR .wbcr-clearfy-danger-message:before {
|
122 |
+
bottom: 100%;
|
123 |
+
left: 20px;
|
124 |
+
border: solid transparent;
|
125 |
+
content: " ";
|
126 |
+
height: 0;
|
127 |
+
width: 0;
|
128 |
+
position: absolute;
|
129 |
+
pointer-events: none;
|
130 |
+
}
|
131 |
+
#WBCR .wbcr-clearfy-danger-message:after {
|
132 |
+
border-color: rgba(136, 183, 213, 0);
|
133 |
+
border-bottom-color: #ffe0de;
|
134 |
+
border-width: 10px;
|
135 |
+
}
|
136 |
+
#WBCR .wbcr-clearfy-danger-message:before {
|
137 |
+
border-color: rgba(194, 225, 245, 0);
|
138 |
+
border-bottom-color: #ffe0de;
|
139 |
+
border-width: 10px;
|
140 |
+
}
|
141 |
+
#WBCR .wbcr-clearfy-group-header {
|
142 |
+
background: #efefef;
|
143 |
+
padding: 20px 0 10px 20px;
|
144 |
+
margin: 30px 0;
|
145 |
+
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
146 |
+
}
|
147 |
+
#WBCR .wbcr-clearfy-group-header:first-child {
|
148 |
+
margin-top: 0;
|
149 |
+
}
|
150 |
+
#WBCR .wbcr-clearfy-group-header strong {
|
151 |
+
font-size: 15px;
|
152 |
+
}
|
153 |
+
#WBCR .wbcr-clearfy-group-header p {
|
154 |
+
color: #8c8888;
|
155 |
+
font-size: 12px;
|
156 |
+
}
|
157 |
+
#WBCR #wbcr-clearfy-quick-mode-board h4 {
|
158 |
+
margin-top: 30px;
|
159 |
+
}
|
160 |
+
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget {
|
161 |
+
position: relative;
|
162 |
+
width: 659px;
|
163 |
+
height: 250px;
|
164 |
+
}
|
165 |
+
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget .wbcr-clr-proccess-button {
|
166 |
+
opacity: 0;
|
167 |
+
position: absolute;
|
168 |
+
top: 50%;
|
169 |
+
left: 50%;
|
170 |
+
margin: -25px 0 0 -100px;
|
171 |
+
width: 200px;
|
172 |
+
height: 50px;
|
173 |
+
font-size: 16px;
|
174 |
+
font-weight: bold;
|
175 |
+
text-align: center;
|
176 |
+
line-height: 3;
|
177 |
+
background: #fdd599 !important;
|
178 |
+
color: #a57b3c !important;
|
179 |
+
text-decoration: none !important;
|
180 |
+
text-shadow: none !important;
|
181 |
+
box-shadow: none !important;
|
182 |
+
border: 1px solid #e0c08f !important;
|
183 |
+
border-radius: 3px;
|
184 |
+
outline: none;
|
185 |
+
-webkit-transition: opacity 1000ms;
|
186 |
+
-moz-transition: opacity 1000ms;
|
187 |
+
-o-transition: opacity 1000ms;
|
188 |
+
transition: opacity 1000ms;
|
189 |
+
}
|
190 |
+
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget:hover .wbcr-clr-proccess-button {
|
191 |
+
display: block;
|
192 |
+
opacity: 1;
|
193 |
+
}
|
194 |
+
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget:hover .wbcr-clearfy-widget-overlay img {
|
195 |
+
opacity: 0.2;
|
196 |
+
}
|
197 |
+
#WBCR .wbcr-clearfy-fake-image-optimizer-board .wbcr-clearfy-fake-widget .wbcr-clearfy-widget-overlay img {
|
198 |
+
width: 100%;
|
199 |
+
-webkit-transition: opacity 500ms;
|
200 |
+
-moz-transition: opacity 500ms;
|
201 |
+
-o-transition: opacity 500ms;
|
202 |
+
transition: opacity 500ms;
|
203 |
+
}
|
204 |
+
#WBCR .wbcr-clearfy-switch-success-message,
|
205 |
+
#WBCR .wbcr-clearfy-switch-error-message {
|
206 |
+
display: none;
|
207 |
+
padding: 15px 20px;
|
208 |
+
font-size: 13px;
|
209 |
+
font-weight: bold;
|
210 |
+
margin: 0 0 15px;
|
211 |
+
border-radius: 4px;
|
212 |
+
}
|
213 |
+
#WBCR .wbcr-clearfy-switch-success-message {
|
214 |
+
background: #e5f9ce;
|
215 |
+
border-bottom: 3px solid #d3eab9;
|
216 |
+
color: #56614a;
|
217 |
+
}
|
218 |
+
#WBCR .wbcr-clearfy-switch-error-message {
|
219 |
+
background: #fdc6c2;
|
220 |
+
border-bottom: 3px solid #e2a19c;
|
221 |
+
color: #bd6963;
|
222 |
+
}
|
223 |
+
#WBCR .wbcr-clearfy-troubleshooting {
|
224 |
+
padding: 0 50px 20px;
|
225 |
+
}
|
226 |
+
#WBCR .wbcr-clearfy-export-import {
|
227 |
+
padding: 0 50px;
|
228 |
+
text-align: right;
|
229 |
+
}
|
230 |
+
#WBCR .wbcr-clearfy-export-import label {
|
231 |
+
display: block;
|
232 |
+
width: 100%;
|
233 |
+
text-align: left;
|
234 |
+
padding: 7px 0;
|
235 |
+
}
|
236 |
+
#WBCR .wbcr-clearfy-export-import #wbcr-clearfy-import-export {
|
237 |
+
width: 100%;
|
238 |
+
box-sizing: border-box;
|
239 |
+
height: 200px;
|
240 |
+
line-height: inherit;
|
241 |
+
margin: 0;
|
242 |
+
padding: 7px 14px;
|
243 |
+
box-shadow: none;
|
244 |
+
border-radius: 3px;
|
245 |
+
border: 1px solid #eee;
|
246 |
+
border-top-color: #dedede;
|
247 |
+
background-color: #f1f1f1;
|
248 |
+
color: #444;
|
249 |
+
transition: border-color 0.3s;
|
250 |
+
-webkit-appearance: none;
|
251 |
+
}
|
252 |
+
#WBCR .wbcr-clearfy-export-import .wbcr-clearfy-import-options-button {
|
253 |
+
display: inline-block;
|
254 |
+
margin-top: 10px;
|
255 |
+
}
|
256 |
+
#WBCR #wbcr-clearfy-quick-mode-board {
|
257 |
+
padding: 20px;
|
258 |
+
}
|
259 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch {
|
260 |
+
position: relative;
|
261 |
+
padding: 15px 20px;
|
262 |
+
margin-right: 20px;
|
263 |
+
font-size: 12px;
|
264 |
+
text-transform: uppercase;
|
265 |
+
background: #f1f1f1;
|
266 |
+
color: #6d6d6d;
|
267 |
+
font-weight: bold;
|
268 |
+
border-radius: 5px;
|
269 |
+
margin-top: 10px;
|
270 |
+
text-align: left;
|
271 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
|
272 |
+
-webkit-transition: all 0.2s ease-out;
|
273 |
+
-moz-transition: all 0.2s ease-out;
|
274 |
+
-o-transition: all 0.2s ease-out;
|
275 |
+
transition: all 0.2s ease-out;
|
276 |
+
/*&.wbcr-clearfy-mode-reset:hover {
|
277 |
+
& .wbcr-clearfy-button-activate-mode {
|
278 |
+
background-color: #fb7976;
|
279 |
+
color: darken(#fb7976, 50%);
|
280 |
+
&:hover {
|
281 |
+
background-color: lighten(#fb7976, 3%);
|
282 |
+
}
|
283 |
+
}
|
284 |
+
}*/
|
285 |
+
}
|
286 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch:after {
|
287 |
+
display: block;
|
288 |
+
clear: both;
|
289 |
+
}
|
290 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .fa,
|
291 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .dashicons {
|
292 |
+
font-size: 25px;
|
293 |
+
}
|
294 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .fa,
|
295 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .dashicons,
|
296 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
297 |
+
display: inline-block !important;
|
298 |
+
}
|
299 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
300 |
+
margin-left: 15px;
|
301 |
+
margin-top: 3px;
|
302 |
+
}
|
303 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-active {
|
304 |
+
/*.fa, .dashicons:before {
|
305 |
+
color: #8bc34a;
|
306 |
+
}
|
307 |
+
|
308 |
+
& .wbcr-clearfy-button-activate-mode {
|
309 |
+
display: none !important;
|
310 |
+
}
|
311 |
+
& .wbcr-clearfy-button-deativate-mode {
|
312 |
+
display: inline-block !important;
|
313 |
+
}*/
|
314 |
+
}
|
315 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-active .wbcr-clearfy-button-activate-mode {
|
316 |
+
background-color: #f7f7f7 !important;
|
317 |
+
color: #e0e0e0 !important;
|
318 |
+
cursor: default;
|
319 |
+
}
|
320 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation {
|
321 |
+
width: 130px;
|
322 |
+
}
|
323 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode {
|
324 |
+
width: 130px;
|
325 |
+
background-color: #fdd599;
|
326 |
+
color: #a57b3c;
|
327 |
+
}
|
328 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-reset .wbcr-clearfy-switch-confirmation .wbcr-clearfy-button-activate-mode:hover {
|
329 |
+
background-color: #fddba8;
|
330 |
+
}
|
331 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .fa,
|
332 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .dashicons:before {
|
333 |
+
color: #8bc34a;
|
334 |
+
}
|
335 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .wbcr-clearfy-button-activate-mode {
|
336 |
+
background-color: #c9deb2;
|
337 |
+
color: #586549;
|
338 |
+
}
|
339 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-switch-mode-recommended .wbcr-clearfy-button-activate-mode:hover {
|
340 |
+
background-color: #d1e3bd;
|
341 |
+
}
|
342 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch.wbcr-clearfy-loading .wbcr-clearfy-switch-confirmation button {
|
343 |
+
background: url("../img/quick-start-loader.gif") center center no-repeat;
|
344 |
+
background-color: #f7f7f7 !important;
|
345 |
+
font-size: 0;
|
346 |
+
cursor: default !important;
|
347 |
+
}
|
348 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation {
|
349 |
+
position: absolute;
|
350 |
+
top: 0;
|
351 |
+
right: 20px;
|
352 |
+
bottom: 0;
|
353 |
+
width: 100px;
|
354 |
+
text-align: right;
|
355 |
+
-webkit-transition: all 0.3s ease-out;
|
356 |
+
-moz-transition: all 0.3s ease-out;
|
357 |
+
-o-transition: all 0.3s ease-out;
|
358 |
+
transition: all 0.3s ease-out;
|
359 |
+
}
|
360 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button {
|
361 |
+
display: inline-block;
|
362 |
+
width: 100px;
|
363 |
+
margin: 12px 0 0;
|
364 |
+
border: 0;
|
365 |
+
box-shadow: none;
|
366 |
+
padding: 5px 10px;
|
367 |
+
font-weight: bold;
|
368 |
+
font-size: 13px;
|
369 |
+
border-radius: 3px;
|
370 |
+
outline: none;
|
371 |
+
background-color: #dedede;
|
372 |
+
color: #808080;
|
373 |
+
/*&.wbcr-clearfy-button-activate-mode {
|
374 |
+
background-color: #c9deb2;
|
375 |
+
color: #586549;
|
376 |
+
&:hover {
|
377 |
+
background-color: lighten(#c9deb2, 3%);
|
378 |
+
}
|
379 |
+
}
|
380 |
+
&.wbcr-clearfy-button-deativate-mode {
|
381 |
+
display: none;
|
382 |
+
background-color: #fdd599;
|
383 |
+
color: #a57b3c;
|
384 |
+
margin-right: 0;
|
385 |
+
&:hover {
|
386 |
+
background-color: lighten(#fdd599, 3%);
|
387 |
+
}
|
388 |
+
}*/
|
389 |
+
}
|
390 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button:hover {
|
391 |
+
background-color: #d6d6d6;
|
392 |
+
}
|
393 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch .wbcr-clearfy-switch-confirmation button:active {
|
394 |
+
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
|
395 |
+
}
|
396 |
+
#WBCR .wbcr-clearfy-confirm-popup {
|
397 |
+
display: none;
|
398 |
+
position: fixed;
|
399 |
+
top: 50%;
|
400 |
+
left: 50%;
|
401 |
+
width: 500px;
|
402 |
+
height: 400px;
|
403 |
+
margin: -200px 0 0 -250px;
|
404 |
+
padding: 20px;
|
405 |
+
background: rgba(255, 255, 255, 0.82);
|
406 |
+
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
|
407 |
+
border: 4px solid rgba(216, 210, 171, 0.44);
|
408 |
+
z-index: 99;
|
409 |
+
}
|
410 |
+
#WBCR .wbcr-clearfy-confirm-popup h3 {
|
411 |
+
font-size: 17px;
|
412 |
+
text-align: center;
|
413 |
+
font-weight: bold;
|
414 |
+
margin: 5px 0 0;
|
415 |
+
}
|
416 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-reset-warning-message {
|
417 |
+
display: none;
|
418 |
+
text-align: center;
|
419 |
+
}
|
420 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-list-options {
|
421 |
+
display: none;
|
422 |
+
height: 230px;
|
423 |
+
overflow-y: auto;
|
424 |
+
overflow-x: hidden;
|
425 |
+
padding-left: 40px;
|
426 |
+
list-style: decimal;
|
427 |
+
margin: 20px 0;
|
428 |
+
}
|
429 |
+
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-default-warning-options .wbcr-clearfy-list-options {
|
430 |
+
display: block;
|
431 |
+
}
|
432 |
+
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-reset-warning-options {
|
433 |
+
height: 200px;
|
434 |
+
margin: -100px 0 0 -250px;
|
435 |
+
}
|
436 |
+
#WBCR .wbcr-clearfy-confirm-popup.wbcr-clearfy-reset-warning-options .wbcr-clearfy-reset-warning-message {
|
437 |
+
display: block;
|
438 |
+
margin: 10px 0;
|
439 |
+
}
|
440 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons {
|
441 |
+
text-align: center;
|
442 |
+
padding: 10px;
|
443 |
+
}
|
444 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button {
|
445 |
+
display: inline-block;
|
446 |
+
padding: 7px 25px;
|
447 |
+
box-shadow: none;
|
448 |
+
border: 0;
|
449 |
+
font-weight: bold;
|
450 |
+
}
|
451 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button,
|
452 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button:focus {
|
453 |
+
outline: 0 !important;
|
454 |
+
box-shadow: none !important;
|
455 |
+
}
|
456 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button.wbcr-clearfy-popup-button-ok {
|
457 |
+
background: #FFEB3B;
|
458 |
+
color: #564f0d;
|
459 |
+
}
|
460 |
+
#WBCR .wbcr-clearfy-confirm-popup .wbcr-clearfy-popup-buttons button.wbcr-clearfy-cancel-mode {
|
461 |
+
background: #d6d6d6;
|
462 |
+
color: #5f5d5d;
|
463 |
+
}
|
464 |
+
@media screen and (max-width: 1380px) {
|
465 |
+
#WBCR #wbcr-clearfy-quick-mode-board {
|
466 |
+
min-width: 450px;
|
467 |
+
padding-right: 0;
|
468 |
+
}
|
469 |
+
#WBCR .wbcr-content-section,
|
470 |
+
#WBCR .wbcr-right-sidebar-section {
|
471 |
+
width: 100%;
|
472 |
+
}
|
473 |
+
#WBCR .wbcr-clearfy-export-import-board {
|
474 |
+
margin-top: 20px;
|
475 |
+
}
|
476 |
+
}
|
477 |
+
@media screen and (max-width: 950px) {
|
478 |
+
#WBCR #wbcr-clearfy-quick-mode-board {
|
479 |
+
min-width: 100%;
|
480 |
+
}
|
481 |
+
#WBCR .wbcr-content-section,
|
482 |
+
#WBCR .wbcr-right-sidebar-section {
|
483 |
+
width: 100%;
|
484 |
+
}
|
485 |
+
#WBCR .wbcr-clearfy-board {
|
486 |
+
width: 100%;
|
487 |
+
min-width: 100%;
|
488 |
+
}
|
489 |
+
}
|
490 |
+
@media screen and (max-width: 550px) {
|
491 |
+
#WBCR #wbcr-clearfy-quick-mode-board .wbcr-clearfy-switch span {
|
492 |
+
font-size: 0 !important;
|
493 |
+
}
|
494 |
+
}
|
|
admin/assets/css/gutenberg-autosave-control.css
CHANGED
@@ -1,19 +1,18 @@
|
|
1 |
-
/**
|
2 |
-
* Gutenber autosave control styles
|
3 |
-
|
4 |
-
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
5 |
-
* @copyright (c) 10.12.2018, Webcraftic
|
6 |
-
* @version 1.0
|
7 |
-
*
|
8 |
-
* Credits:
|
9 |
-
* This code was used from the plugin: https://wordpress.org/plugins/disable-gutenberg-autosave/
|
10 |
-
* Author websevendev
|
11 |
-
*/
|
12 |
-
h2.disable-gutenberg-autosave-header {
|
13 |
-
margin: 0;
|
14 |
-
}
|
15 |
-
p.disable-gutenberg-autosave-error {
|
16 |
-
color: red;
|
17 |
-
font-family: "Monaco", "Menlo", "Ubuntu Mono", "Consolas", "source-code-pro", monospace;
|
18 |
-
}
|
19 |
-
/*# sourceMappingURL=gutenberg-autosave-control.css.map */
|
1 |
+
/**
|
2 |
+
* Gutenber autosave control styles
|
3 |
+
|
4 |
+
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
5 |
+
* @copyright (c) 10.12.2018, Webcraftic
|
6 |
+
* @version 1.0
|
7 |
+
*
|
8 |
+
* Credits:
|
9 |
+
* This code was used from the plugin: https://wordpress.org/plugins/disable-gutenberg-autosave/
|
10 |
+
* Author websevendev
|
11 |
+
*/
|
12 |
+
h2.disable-gutenberg-autosave-header {
|
13 |
+
margin: 0;
|
14 |
+
}
|
15 |
+
p.disable-gutenberg-autosave-error {
|
16 |
+
color: red;
|
17 |
+
font-family: "Monaco", "Menlo", "Ubuntu Mono", "Consolas", "source-code-pro", monospace;
|
18 |
+
}
|
|
admin/assets/css/install-addons.css
CHANGED
@@ -1,32 +1,31 @@
|
|
1 |
-
/**
|
2 |
-
* Install addons global styles
|
3 |
-
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
4 |
-
* @copyright Webcraftic 11.07.2018
|
5 |
-
*/
|
6 |
-
.wbcr-clr-new-component {
|
7 |
-
background: #f7f7f7;
|
8 |
-
border: 1px solid #eaeaea;
|
9 |
-
padding: 5px 20px;
|
10 |
-
margin-bottom: 10px;
|
11 |
-
}
|
12 |
-
.wbcr-clr-new-component h4 {
|
13 |
-
margin: 5px 0;
|
14 |
-
display: inline-block;
|
15 |
-
}
|
16 |
-
.wbcr-clr-new-component .wbcr-clr-proccess-button {
|
17 |
-
display: inline-block;
|
18 |
-
margin: 5px 0;
|
19 |
-
}
|
20 |
-
.wbcr-clr-new-component.wbcr-clr-premium {
|
21 |
-
background: #fff6db;
|
22 |
-
border: 1px solid #e4dea9;
|
23 |
-
}
|
24 |
-
.wbcr-clr-new-component.wbcr-clr-premium h4 {
|
25 |
-
color: #88690c;
|
26 |
-
}
|
27 |
-
.wbcr-clr-proccess-button.button-link,
|
28 |
-
.wbcr-clr-proccess-button.button-link:focus {
|
29 |
-
outline: none !important;
|
30 |
-
box-shadow: none !important;
|
31 |
-
}
|
32 |
-
/*# sourceMappingURL=install-addons.css.map */
|
1 |
+
/**
|
2 |
+
* Install addons global styles
|
3 |
+
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
4 |
+
* @copyright Webcraftic 11.07.2018
|
5 |
+
*/
|
6 |
+
.wbcr-clr-new-component {
|
7 |
+
background: #f7f7f7;
|
8 |
+
border: 1px solid #eaeaea;
|
9 |
+
padding: 5px 20px;
|
10 |
+
margin-bottom: 10px;
|
11 |
+
}
|
12 |
+
.wbcr-clr-new-component h4 {
|
13 |
+
margin: 5px 0;
|
14 |
+
display: inline-block;
|
15 |
+
}
|
16 |
+
.wbcr-clr-new-component .wbcr-clr-proccess-button {
|
17 |
+
display: inline-block;
|
18 |
+
margin: 5px 0;
|
19 |
+
}
|
20 |
+
.wbcr-clr-new-component.wbcr-clr-premium {
|
21 |
+
background: #fff6db;
|
22 |
+
border: 1px solid #e4dea9;
|
23 |
+
}
|
24 |
+
.wbcr-clr-new-component.wbcr-clr-premium h4 {
|
25 |
+
color: #88690c;
|
26 |
+
}
|
27 |
+
.wbcr-clr-proccess-button.button-link,
|
28 |
+
.wbcr-clr-proccess-button.button-link:focus {
|
29 |
+
outline: none !important;
|
30 |
+
box-shadow: none !important;
|
31 |
+
}
|
|
admin/assets/js/general.js
CHANGED
@@ -87,13 +87,13 @@
|
|
87 |
* Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
|
88 |
* результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
|
89 |
* libs/clearfy/admin/assests/js/global.js Пример регистрации хука
|
90 |
-
* $.
|
91 |
* function(noticeId) {});
|
92 |
* @param {string} modeName - имя режима конфигурации
|
93 |
* @param {object} data
|
94 |
*/
|
95 |
|
96 |
-
$.
|
97 |
modeName,
|
98 |
data
|
99 |
]);
|
@@ -110,12 +110,12 @@
|
|
110 |
* Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
|
111 |
* конфигурации Реализация системы фильтров и хуков в файле
|
112 |
* libs/clearfy/admin/assests/js/global.js Пример регистрации хука
|
113 |
-
* $.
|
114 |
* {});
|
115 |
* @param {string} modeName - имя режима конфигурации
|
116 |
* @param {object} data
|
117 |
*/
|
118 |
-
$.
|
119 |
|
120 |
if( modeName != 'reset' ) {
|
121 |
switcher.addClass('wbcr-clearfy-active');
|
@@ -183,12 +183,12 @@
|
|
183 |
$this = $(this);
|
184 |
|
185 |
if( !settings ) {
|
186 |
-
$.
|
187 |
return false;
|
188 |
}
|
189 |
|
190 |
if( void 0 == wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
|
191 |
-
$.
|
192 |
return false;
|
193 |
}
|
194 |
|
@@ -203,7 +203,7 @@
|
|
203 |
|
204 |
if( response.data.update_notice ) {
|
205 |
if( !$('.wbcr-clr-update-package').length ) {
|
206 |
-
$.
|
207 |
}
|
208 |
} else {
|
209 |
if( $('.wbcr-clr-update-package').length ) {
|
@@ -240,15 +240,15 @@
|
|
240 |
console.log(data);
|
241 |
|
242 |
if( data ) {
|
243 |
-
noticeId = $.
|
244 |
} else {
|
245 |
if( void 0 != wbcr_clearfy_ajax ) {
|
246 |
-
noticeId = $.
|
247 |
}
|
248 |
}
|
249 |
|
250 |
setTimeout(function() {
|
251 |
-
$.
|
252 |
}, 5000);
|
253 |
return;
|
254 |
}
|
@@ -257,10 +257,10 @@
|
|
257 |
|
258 |
if( !request_data.flush_redirect ) {
|
259 |
if( void 0 != wbcr_clearfy_ajax ) {
|
260 |
-
noticeId = $.
|
261 |
|
262 |
setTimeout(function() {
|
263 |
-
$.
|
264 |
}, 5000);
|
265 |
}
|
266 |
return;
|
@@ -275,7 +275,7 @@
|
|
275 |
console.log(xhr.responseText);
|
276 |
console.log(thrownError);
|
277 |
|
278 |
-
var noticeId = $.
|
279 |
}
|
280 |
});
|
281 |
}
|
87 |
* Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
|
88 |
* результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
|
89 |
* libs/clearfy/admin/assests/js/global.js Пример регистрации хука
|
90 |
+
* $.wbcr_factory_clearfy_221.hooks.add('wbcr/factory_clearfy_221/updated',
|
91 |
* function(noticeId) {});
|
92 |
* @param {string} modeName - имя режима конфигурации
|
93 |
* @param {object} data
|
94 |
*/
|
95 |
|
96 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/quick_start/configurated_error', [
|
97 |
modeName,
|
98 |
data
|
99 |
]);
|
110 |
* Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
|
111 |
* конфигурации Реализация системы фильтров и хуков в файле
|
112 |
* libs/clearfy/admin/assests/js/global.js Пример регистрации хука
|
113 |
+
* $.wbcr_factory_clearfy_221.hooks.add('wbcr/factory_clearfy_221/updated', function(noticeId)
|
114 |
* {});
|
115 |
* @param {string} modeName - имя режима конфигурации
|
116 |
* @param {object} data
|
117 |
*/
|
118 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
|
119 |
|
120 |
if( modeName != 'reset' ) {
|
121 |
switcher.addClass('wbcr-clearfy-active');
|
183 |
$this = $(this);
|
184 |
|
185 |
if( !settings ) {
|
186 |
+
$.wbcr_factory_clearfy_221.app.showNotice('Import options is empty!', 'danger');
|
187 |
return false;
|
188 |
}
|
189 |
|
190 |
if( void 0 == wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
|
191 |
+
$.wbcr_factory_clearfy_221.app.showNotice('Unknown Javascript error, most likely the wbcr_clearfy_ajax variable does not exist!', 'danger');
|
192 |
return false;
|
193 |
}
|
194 |
|
203 |
|
204 |
if( response.data.update_notice ) {
|
205 |
if( !$('.wbcr-clr-update-package').length ) {
|
206 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.update_notice);
|
207 |
}
|
208 |
} else {
|
209 |
if( $('.wbcr-clr-update-package').length ) {
|
240 |
console.log(data);
|
241 |
|
242 |
if( data ) {
|
243 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice(data.error_message, 'danger');
|
244 |
} else {
|
245 |
if( void 0 != wbcr_clearfy_ajax ) {
|
246 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
|
247 |
}
|
248 |
}
|
249 |
|
250 |
setTimeout(function() {
|
251 |
+
$.wbcr_factory_clearfy_221.app.hideNotice(noticeId);
|
252 |
}, 5000);
|
253 |
return;
|
254 |
}
|
257 |
|
258 |
if( !request_data.flush_redirect ) {
|
259 |
if( void 0 != wbcr_clearfy_ajax ) {
|
260 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
|
261 |
|
262 |
setTimeout(function() {
|
263 |
+
$.wbcr_factory_clearfy_221.app.hideNotice(noticeId);
|
264 |
}, 5000);
|
265 |
}
|
266 |
return;
|
275 |
console.log(xhr.responseText);
|
276 |
console.log(thrownError);
|
277 |
|
278 |
+
var noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
|
279 |
}
|
280 |
});
|
281 |
}
|
admin/assets/js/install-addons.js
CHANGED
@@ -52,16 +52,16 @@
|
|
52 |
|
53 |
$this.addClass('disabled').text(button_i18n.loading);
|
54 |
|
55 |
-
$.
|
56 |
|
57 |
self.sendRequest(data, function(response) {
|
58 |
if( !response || !response.success ) {
|
59 |
|
60 |
if( response.data && response.data.error_message ) {
|
61 |
-
$.
|
62 |
}
|
63 |
|
64 |
-
$.
|
65 |
$this,
|
66 |
data,
|
67 |
response.data.error_message,
|
@@ -77,7 +77,7 @@
|
|
77 |
if( storage == 'freemius' ) {
|
78 |
if( response.data.update_notice ) {
|
79 |
if( !$('.wbcr-clr-update-package').length ) {
|
80 |
-
$.
|
81 |
}
|
82 |
} else {
|
83 |
if( $('.wbcr-clr-update-package').length ) {
|
@@ -96,7 +96,7 @@
|
|
96 |
$this.removeClass('button-default').addClass('button-primary');
|
97 |
}
|
98 |
|
99 |
-
$.
|
100 |
$this,
|
101 |
data,
|
102 |
response
|
@@ -146,7 +146,7 @@
|
|
146 |
$this.closest('.plugin-card').find('.delete-now').remove();
|
147 |
}
|
148 |
|
149 |
-
$.
|
150 |
$this,
|
151 |
data,
|
152 |
response
|
@@ -193,7 +193,7 @@
|
|
193 |
$this.closest('.wbcr-hide-after-action').remove();
|
194 |
}
|
195 |
|
196 |
-
$.
|
197 |
$this,
|
198 |
data,
|
199 |
response
|
@@ -216,7 +216,7 @@
|
|
216 |
$this.remove();
|
217 |
}
|
218 |
|
219 |
-
$.
|
220 |
}
|
221 |
} else {
|
222 |
if( plugin_action == 'install' ) {
|
@@ -227,10 +227,10 @@
|
|
227 |
$this.text(button_i18n[plugin_action]);
|
228 |
|
229 |
if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
|
230 |
-
$.
|
231 |
}
|
232 |
|
233 |
-
$.
|
234 |
});
|
235 |
|
236 |
return false;
|
@@ -253,7 +253,7 @@
|
|
253 |
self.sendRequest(data, function(response) {
|
254 |
if( !response || !response.success ) {
|
255 |
if( response.data && response.data.error_message ) {
|
256 |
-
$.
|
257 |
}
|
258 |
return;
|
259 |
}
|
@@ -316,17 +316,17 @@
|
|
316 |
self.setComponentDeactivate(componentButton);
|
317 |
|
318 |
if( response.data && response.data.error_message ) {
|
319 |
-
$.
|
320 |
}
|
321 |
|
322 |
-
$.
|
323 |
return;
|
324 |
}
|
325 |
|
326 |
componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
|
327 |
self.setComponentActivate(componentButton);
|
328 |
|
329 |
-
$.
|
330 |
});
|
331 |
},
|
332 |
|
@@ -345,7 +345,7 @@
|
|
345 |
console.log(xhr.responseText);
|
346 |
console.log(thrownError);
|
347 |
|
348 |
-
$.
|
349 |
}
|
350 |
});
|
351 |
}
|
52 |
|
53 |
$this.addClass('disabled').text(button_i18n.loading);
|
54 |
|
55 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/pre_update', [$this, data]);
|
56 |
|
57 |
self.sendRequest(data, function(response) {
|
58 |
if( !response || !response.success ) {
|
59 |
|
60 |
if( response.data && response.data.error_message ) {
|
61 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.error_message, 'danger');
|
62 |
}
|
63 |
|
64 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/update_error', [
|
65 |
$this,
|
66 |
data,
|
67 |
response.data.error_message,
|
77 |
if( storage == 'freemius' ) {
|
78 |
if( response.data.update_notice ) {
|
79 |
if( !$('.wbcr-clr-update-package').length ) {
|
80 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.update_notice);
|
81 |
}
|
82 |
} else {
|
83 |
if( $('.wbcr-clr-update-package').length ) {
|
96 |
$this.removeClass('button-default').addClass('button-primary');
|
97 |
}
|
98 |
|
99 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/installed', [
|
100 |
$this,
|
101 |
data,
|
102 |
response
|
146 |
$this.closest('.plugin-card').find('.delete-now').remove();
|
147 |
}
|
148 |
|
149 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/pre_activate', [
|
150 |
$this,
|
151 |
data,
|
152 |
response
|
193 |
$this.closest('.wbcr-hide-after-action').remove();
|
194 |
}
|
195 |
|
196 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/deactivated', [
|
197 |
$this,
|
198 |
data,
|
199 |
response
|
216 |
$this.remove();
|
217 |
}
|
218 |
|
219 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/deleted', [$this, data, response]);
|
220 |
}
|
221 |
} else {
|
222 |
if( plugin_action == 'install' ) {
|
227 |
$this.text(button_i18n[plugin_action]);
|
228 |
|
229 |
if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
|
230 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.need_rewrite_rules, 'warning');
|
231 |
}
|
232 |
|
233 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/updated', [$this, data, response]);
|
234 |
});
|
235 |
|
236 |
return false;
|
253 |
self.sendRequest(data, function(response) {
|
254 |
if( !response || !response.success ) {
|
255 |
if( response.data && response.data.error_message ) {
|
256 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.error_message, 'danger');
|
257 |
}
|
258 |
return;
|
259 |
}
|
316 |
self.setComponentDeactivate(componentButton);
|
317 |
|
318 |
if( response.data && response.data.error_message ) {
|
319 |
+
$.wbcr_factory_clearfy_221.app.showNotice(response.data.error_message, 'danger');
|
320 |
}
|
321 |
|
322 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/activated_error', [sendData.plugin]);
|
323 |
return;
|
324 |
}
|
325 |
|
326 |
componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
|
327 |
self.setComponentActivate(componentButton);
|
328 |
|
329 |
+
$.wbcr_factory_clearfy_221.hooks.run('clearfy/components/activated', [sendData.plugin]);
|
330 |
});
|
331 |
},
|
332 |
|
345 |
console.log(xhr.responseText);
|
346 |
console.log(thrownError);
|
347 |
|
348 |
+
$.wbcr_factory_clearfy_221.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
|
349 |
}
|
350 |
});
|
351 |
}
|
admin/assets/js/license-manager.js
CHANGED
@@ -20,7 +20,7 @@ jQuery(function($) {
|
|
20 |
// Глобальные уведомления не трогаем
|
21 |
|
22 |
for( i = 0; i < allNotices.length; i++ ) {
|
23 |
-
$.
|
24 |
}
|
25 |
|
26 |
$('.wcl-control-btn').hide();
|
@@ -55,7 +55,7 @@ jQuery(function($) {
|
|
55 |
|
56 |
if( response.data ) {
|
57 |
console.log(response.data.error_message);
|
58 |
-
noticeId = $.
|
59 |
allNotices.push(noticeId);
|
60 |
} else {
|
61 |
console.log(response);
|
@@ -65,7 +65,7 @@ jQuery(function($) {
|
|
65 |
}
|
66 |
|
67 |
if( response.data && response.data.message ) {
|
68 |
-
noticeId = $.
|
69 |
allNotices.push(noticeId);
|
70 |
|
71 |
// todo: доработать генерацию формы, вместо перезагрузки страницы
|
@@ -82,7 +82,7 @@ jQuery(function($) {
|
|
82 |
console.log(xhr.responseText);
|
83 |
console.log(thrownError);
|
84 |
|
85 |
-
var noticeId = $.
|
86 |
|
87 |
allNotices.push(noticeId);
|
88 |
}
|
20 |
// Глобальные уведомления не трогаем
|
21 |
|
22 |
for( i = 0; i < allNotices.length; i++ ) {
|
23 |
+
$.wbcr_factory_clearfy_221.app.hideNotice(allNotices[i]);
|
24 |
}
|
25 |
|
26 |
$('.wcl-control-btn').hide();
|
55 |
|
56 |
if( response.data ) {
|
57 |
console.log(response.data.error_message);
|
58 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
|
59 |
allNotices.push(noticeId);
|
60 |
} else {
|
61 |
console.log(response);
|
65 |
}
|
66 |
|
67 |
if( response.data && response.data.message ) {
|
68 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice(response.data.message, 'success');
|
69 |
allNotices.push(noticeId);
|
70 |
|
71 |
// todo: доработать генерацию формы, вместо перезагрузки страницы
|
82 |
console.log(xhr.responseText);
|
83 |
console.log(thrownError);
|
84 |
|
85 |
+
var noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
|
86 |
|
87 |
allNotices.push(noticeId);
|
88 |
}
|
admin/boot.php
CHANGED
@@ -33,8 +33,8 @@ add_action('wbcr/factory/pages/impressive/header', function ($plugin_name) {
|
|
33 |
|
34 |
/**
|
35 |
* @param $form
|
36 |
-
* @param
|
37 |
-
* @param
|
38 |
*/
|
39 |
function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
|
40 |
{
|
@@ -76,7 +76,7 @@ add_action('admin_enqueue_scripts', function () {
|
|
76 |
wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
|
77 |
wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
|
78 |
'jquery',
|
79 |
-
'wbcr-factory-clearfy-
|
80 |
], WCL_Plugin::app()->getPluginVersion());
|
81 |
});
|
82 |
|
@@ -85,7 +85,7 @@ add_action('admin_enqueue_scripts', function () {
|
|
85 |
* Уведомление будет показано на всех страницах Clearfy и его компонентах.
|
86 |
*
|
87 |
* @param WCL_Plugin $plugin
|
88 |
-
* @param
|
89 |
*/
|
90 |
function wbcr_clearfy_print_notice_rewrite_rules($plugin, $obj)
|
91 |
{
|
@@ -110,7 +110,7 @@ add_action('flush_rewrite_rules_hard', 'wbcr_clearfy_flush_rewrite_rules');
|
|
110 |
* Обновить постоынные ссылки, после выполнения быстрых настроек
|
111 |
*
|
112 |
* @param WHM_Plugin $plugin
|
113 |
-
* @param
|
114 |
*/
|
115 |
function wbcr_clearfy_after_form_save($plugin, $obj)
|
116 |
{
|
@@ -133,7 +133,7 @@ add_action('wbcr/factory/pages/impressive/after_form_save', 'wbcr_clearfy_after_
|
|
133 |
*
|
134 |
* @param array $widgets
|
135 |
* @param string $position
|
136 |
-
* @param
|
137 |
*/
|
138 |
|
139 |
add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
|
33 |
|
34 |
/**
|
35 |
* @param $form
|
36 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
37 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
38 |
*/
|
39 |
function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
|
40 |
{
|
76 |
wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
|
77 |
wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
|
78 |
'jquery',
|
79 |
+
'wbcr-factory-clearfy-221-global'
|
80 |
], WCL_Plugin::app()->getPluginVersion());
|
81 |
});
|
82 |
|
85 |
* Уведомление будет показано на всех страницах Clearfy и его компонентах.
|
86 |
*
|
87 |
* @param WCL_Plugin $plugin
|
88 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
89 |
*/
|
90 |
function wbcr_clearfy_print_notice_rewrite_rules($plugin, $obj)
|
91 |
{
|
110 |
* Обновить постоынные ссылки, после выполнения быстрых настроек
|
111 |
*
|
112 |
* @param WHM_Plugin $plugin
|
113 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
114 |
*/
|
115 |
function wbcr_clearfy_after_form_save($plugin, $obj)
|
116 |
{
|
133 |
*
|
134 |
* @param array $widgets
|
135 |
* @param string $position
|
136 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
137 |
*/
|
138 |
|
139 |
add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
|
admin/includes/compatibility.php
CHANGED
@@ -22,8 +22,8 @@ add_action( 'plugins_loaded', function () {
|
|
22 |
* Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
|
23 |
* иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
|
24 |
*
|
25 |
-
* @param
|
26 |
-
* @param
|
27 |
*
|
28 |
* @return bool
|
29 |
*/
|
@@ -52,8 +52,8 @@ add_action( 'plugins_loaded', function () {
|
|
52 |
* Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
|
53 |
* иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
|
54 |
*
|
55 |
-
* @param
|
56 |
-
* @param
|
57 |
*
|
58 |
* @return bool
|
59 |
*/
|
22 |
* Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
|
23 |
* иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
|
24 |
*
|
25 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
26 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
27 |
*
|
28 |
* @return bool
|
29 |
*/
|
52 |
* Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
|
53 |
* иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
|
54 |
*
|
55 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
56 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
57 |
*
|
58 |
* @return bool
|
59 |
*/
|
admin/pages/class-page.php
CHANGED
@@ -7,7 +7,7 @@
|
|
7 |
* @version 1.0
|
8 |
*/
|
9 |
|
10 |
-
class WCL_Page extends
|
11 |
|
12 |
/**
|
13 |
* Действие выполняется для всех страниц Clearfy и его компонентах.
|
@@ -20,15 +20,15 @@ class WCL_Page extends Wbcr_FactoryClearfy220_PageBase {
|
|
20 |
$license_page_url = $this->getBaseUrl('clearfy_license');
|
21 |
$upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
|
22 |
|
23 |
-
$html = '<div class="wbcr-factory-clearfy-
|
24 |
$html .= '<div class="wbcr-factory-inner-contanier">';
|
25 |
-
$html .= '<h3>' . __('Upgrade to Clearfy Business', '
|
26 |
-
$html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', '
|
27 |
-
$html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', '
|
28 |
-
$html .= '<p>' . __('You can activate the plugin on each website and use it with zero limitations. But you can’t save the plugin’s settings under the Super Administrator role!', '
|
29 |
$html .= '<p style="margin-top:20px">';
|
30 |
-
$html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', '
|
31 |
-
$html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', '
|
32 |
$html .= '</p>';
|
33 |
$html .= '</div>';
|
34 |
$html .= '</div>';
|
7 |
* @version 1.0
|
8 |
*/
|
9 |
|
10 |
+
class WCL_Page extends Wbcr_FactoryClearfy221_PageBase {
|
11 |
|
12 |
/**
|
13 |
* Действие выполняется для всех страниц Clearfy и его компонентах.
|
20 |
$license_page_url = $this->getBaseUrl('clearfy_license');
|
21 |
$upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
|
22 |
|
23 |
+
$html = '<div class="wbcr-factory-clearfy-221-multisite-suggetion">';
|
24 |
$html .= '<div class="wbcr-factory-inner-contanier">';
|
25 |
+
$html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_221') . '</h3>';
|
26 |
+
$html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_clearfy_221') . '</p>';
|
27 |
+
$html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_clearfy_221') . '</p>';
|
28 |
+
$html .= '<p>' . __('You can activate the plugin on each website and use it with zero limitations. But you can’t save the plugin’s settings under the Super Administrator role!', 'wbcr_factory_clearfy_221') . '</p>';
|
29 |
$html .= '<p style="margin-top:20px">';
|
30 |
+
$html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', 'wbcr_factory_clearfy_221') . '</a> ';
|
31 |
+
$html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_221') . '</a>';
|
32 |
$html .= '</p>';
|
33 |
$html .= '</div>';
|
34 |
$html .= '</div>';
|
admin/pages/class-pages-advanced.php
CHANGED
@@ -17,7 +17,7 @@ class WCL_AdvancedPage extends WCL_Page {
|
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
-
* @see
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
+
* @see FactoryPages429_AdminPage
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
admin/pages/class-pages-clearfy-settings.php
CHANGED
@@ -19,7 +19,7 @@ class WCL_ClearfySettingsPage extends WCL_Page {
|
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
-
* @see
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
@@ -58,7 +58,7 @@ class WCL_ClearfySettingsPage extends WCL_Page {
|
|
58 |
*
|
59 |
* @since 1.0.0
|
60 |
* @return void
|
61 |
-
* @see
|
62 |
*
|
63 |
*/
|
64 |
public function assets( $scripts, $styles ) {
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
+
* @see FactoryPages429_AdminPage
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
58 |
*
|
59 |
* @since 1.0.0
|
60 |
* @return void
|
61 |
+
* @see FactoryPages429_AdminPage
|
62 |
*
|
63 |
*/
|
64 |
public function assets( $scripts, $styles ) {
|
admin/pages/class-pages-components-license.php
CHANGED
@@ -55,12 +55,12 @@
|
|
55 |
/**
|
56 |
* WCL_LicensePage constructor.
|
57 |
*
|
58 |
-
* @param \
|
59 |
*
|
60 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
61 |
*
|
62 |
*/
|
63 |
-
public function __construct(
|
64 |
$this->menu_title = __( 'License', 'robin-image-optimizer' );
|
65 |
$this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
|
66 |
$this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
|
@@ -73,7 +73,7 @@
|
|
73 |
*
|
74 |
* @return void
|
75 |
* @since 1.0.0
|
76 |
-
* @see
|
77 |
*
|
78 |
*/
|
79 |
public function assets( $scripts, $styles ) {
|
@@ -82,8 +82,8 @@
|
|
82 |
$this->styles->add( WCL_PLUGIN_URL . '/admin/assets/css/components.css' );
|
83 |
|
84 |
/**
|
85 |
-
* @param
|
86 |
-
* @param
|
87 |
*
|
88 |
* @since 1.4.0
|
89 |
*
|
55 |
/**
|
56 |
* WCL_LicensePage constructor.
|
57 |
*
|
58 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
59 |
*
|
60 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
61 |
*
|
62 |
*/
|
63 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
64 |
$this->menu_title = __( 'License', 'robin-image-optimizer' );
|
65 |
$this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
|
66 |
$this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
|
73 |
*
|
74 |
* @return void
|
75 |
* @since 1.0.0
|
76 |
+
* @see FactoryPages429_AdminPage
|
77 |
*
|
78 |
*/
|
79 |
public function assets( $scripts, $styles ) {
|
82 |
$this->styles->add( WCL_PLUGIN_URL . '/admin/assets/css/components.css' );
|
83 |
|
84 |
/**
|
85 |
+
* @param Wbcr_Factory429_StyleList $styles
|
86 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
87 |
*
|
88 |
* @since 1.4.0
|
89 |
*
|
admin/pages/class-pages-components.php
CHANGED
@@ -21,7 +21,7 @@ class WCL_ComponentsPage extends WCL_Page {
|
|
21 |
* Mainly used to navigate between pages.
|
22 |
*
|
23 |
* @since 1.0.0
|
24 |
-
* @see
|
25 |
*
|
26 |
* @var string
|
27 |
*/
|
@@ -55,7 +55,7 @@ class WCL_ComponentsPage extends WCL_Page {
|
|
55 |
*
|
56 |
* @return void
|
57 |
* @since 1.0.0
|
58 |
-
* @see
|
59 |
*
|
60 |
*/
|
61 |
public function assets($scripts, $styles)
|
@@ -65,8 +65,8 @@ class WCL_ComponentsPage extends WCL_Page {
|
|
65 |
$this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
|
66 |
|
67 |
/**
|
68 |
-
* @param
|
69 |
-
* @param
|
70 |
* @since 1.4.0
|
71 |
*
|
72 |
*/
|
@@ -77,10 +77,10 @@ class WCL_ComponentsPage extends WCL_Page {
|
|
77 |
* We register notifications for some actions
|
78 |
*
|
79 |
* @param $notices
|
80 |
-
* @param
|
81 |
*
|
82 |
* @return array
|
83 |
-
* @see libs\factory\pages\themplates\
|
84 |
*/
|
85 |
public function getActionNotices($notices)
|
86 |
{
|
21 |
* Mainly used to navigate between pages.
|
22 |
*
|
23 |
* @since 1.0.0
|
24 |
+
* @see FactoryPages429_AdminPage
|
25 |
*
|
26 |
* @var string
|
27 |
*/
|
55 |
*
|
56 |
* @return void
|
57 |
* @since 1.0.0
|
58 |
+
* @see FactoryPages429_AdminPage
|
59 |
*
|
60 |
*/
|
61 |
public function assets($scripts, $styles)
|
65 |
$this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
|
66 |
|
67 |
/**
|
68 |
+
* @param Wbcr_Factory429_StyleList $styles
|
69 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
70 |
* @since 1.4.0
|
71 |
*
|
72 |
*/
|
77 |
* We register notifications for some actions
|
78 |
*
|
79 |
* @param $notices
|
80 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
81 |
*
|
82 |
* @return array
|
83 |
+
* @see libs\factory\pages\themplates\FactoryPages429_ImpressiveThemplate
|
84 |
*/
|
85 |
public function getActionNotices($notices)
|
86 |
{
|
admin/pages/class-pages-defence-titan.php
CHANGED
@@ -19,7 +19,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
|
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
-
* @see
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
@@ -83,7 +83,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
|
|
83 |
?>
|
84 |
<script>
|
85 |
jQuery(document).ready(function($) {
|
86 |
-
$.
|
87 |
if( component_name.plugin_action == 'install' ) {
|
88 |
button.removeClass('wbcr-factory-purchase-premium');
|
89 |
button.addClass('wbcr-factory-activate-premium');
|
@@ -96,7 +96,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
|
|
96 |
});
|
97 |
});
|
98 |
</script>
|
99 |
-
<div class="wbcr-factory-clearfy-
|
100 |
<div class="wbcr-factory-inner-contanier">
|
101 |
<h3>
|
102 |
<a href="https://wordpress.org/plugins/anti-spam" target="_blank"><?php _e('Install Firewall and Malware scanner (Titan sucurity) component', 'clearfy') ?></a>
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
+
* @see FactoryPages429_AdminPage
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
83 |
?>
|
84 |
<script>
|
85 |
jQuery(document).ready(function($) {
|
86 |
+
$.wbcr_factory_clearfy_221.hooks.add('clearfy/components/updated', function(button, component_name) {
|
87 |
if( component_name.plugin_action == 'install' ) {
|
88 |
button.removeClass('wbcr-factory-purchase-premium');
|
89 |
button.addClass('wbcr-factory-activate-premium');
|
96 |
});
|
97 |
});
|
98 |
</script>
|
99 |
+
<div class="wbcr-factory-clearfy-221-multisite-suggetion">
|
100 |
<div class="wbcr-factory-inner-contanier">
|
101 |
<h3>
|
102 |
<a href="https://wordpress.org/plugins/anti-spam" target="_blank"><?php _e('Install Firewall and Malware scanner (Titan sucurity) component', 'clearfy') ?></a>
|
admin/pages/class-pages-defence.php
CHANGED
@@ -17,7 +17,7 @@ class WCL_DefencePage extends WCL_Page {
|
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
-
* @see
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
@@ -132,7 +132,7 @@ class WCL_DefencePage extends WCL_Page {
|
|
132 |
//'cssClass' => 'postbox'
|
133 |
);
|
134 |
|
135 |
-
return
|
136 |
$form_options,
|
137 |
$this
|
138 |
), '1.3.1', 'wbcr_clearfy_defence_form_options' );
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
+
* @see FactoryPages429_AdminPage
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
132 |
//'cssClass' => 'postbox'
|
133 |
);
|
134 |
|
135 |
+
return wbcr_factory_429_apply_filters_deprecated( 'wbcr_clr_defence_form_options', array(
|
136 |
$form_options,
|
137 |
$this
|
138 |
), '1.3.1', 'wbcr_clearfy_defence_form_options' );
|
admin/pages/class-pages-hide-login-page.php
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
-
* @see
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
@@ -78,7 +78,7 @@
|
|
78 |
?>
|
79 |
<script>
|
80 |
jQuery(document).ready(function($) {
|
81 |
-
$.
|
82 |
if( component_name.plugin_action == 'install' ) {
|
83 |
button.removeClass('wbcr-factory-purchase-premium');
|
84 |
button.addClass('wbcr-factory-activate-premium');
|
@@ -91,7 +91,7 @@
|
|
91 |
});
|
92 |
});
|
93 |
</script>
|
94 |
-
<div class="wbcr-factory-clearfy-
|
95 |
<div class="wbcr-factory-inner-contanier">
|
96 |
<h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
|
97 |
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
+
* @see FactoryPages429_AdminPage
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
78 |
?>
|
79 |
<script>
|
80 |
jQuery(document).ready(function($) {
|
81 |
+
$.wbcr_factory_clearfy_221.hooks.add('clearfy/components/updated', function(button, component_name) {
|
82 |
if( component_name.plugin_action == 'install' ) {
|
83 |
button.removeClass('wbcr-factory-purchase-premium');
|
84 |
button.addClass('wbcr-factory-activate-premium');
|
91 |
});
|
92 |
});
|
93 |
</script>
|
94 |
+
<div class="wbcr-factory-clearfy-221-multisite-suggetion">
|
95 |
<div class="wbcr-factory-inner-contanier">
|
96 |
<h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
|
97 |
|
admin/pages/class-pages-image-optimization.php
CHANGED
@@ -19,7 +19,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
|
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
-
* @see
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
@@ -79,7 +79,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
|
|
79 |
?>
|
80 |
<script>
|
81 |
jQuery(document).ready(function($) {
|
82 |
-
$.
|
83 |
if( component_name.plugin_action == 'install' ) {
|
84 |
button.removeClass('wbcr-factory-purchase-premium');
|
85 |
button.addClass('wbcr-factory-activate-premium');
|
@@ -92,7 +92,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
|
|
92 |
});
|
93 |
});
|
94 |
</script>
|
95 |
-
<div class="wbcr-factory-clearfy-
|
96 |
<div class="wbcr-factory-inner-contanier">
|
97 |
<h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
|
98 |
<p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
|
19 |
* Mainly used to navigate between pages.
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
+
* @see FactoryPages429_AdminPage
|
23 |
*
|
24 |
* @var string
|
25 |
*/
|
79 |
?>
|
80 |
<script>
|
81 |
jQuery(document).ready(function($) {
|
82 |
+
$.wbcr_factory_clearfy_221.hooks.add('clearfy/components/updated', function(button, component_name) {
|
83 |
if( component_name.plugin_action == 'install' ) {
|
84 |
button.removeClass('wbcr-factory-purchase-premium');
|
85 |
button.addClass('wbcr-factory-activate-premium');
|
92 |
});
|
93 |
});
|
94 |
</script>
|
95 |
+
<div class="wbcr-factory-clearfy-221-multisite-suggetion">
|
96 |
<div class="wbcr-factory-inner-contanier">
|
97 |
<h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
|
98 |
<p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
|
admin/pages/class-pages-license.php
CHANGED
@@ -13,7 +13,7 @@
|
|
13 |
*
|
14 |
* @copyright (c) 2018 Webraftic Ltd
|
15 |
*/
|
16 |
-
class WCL_LicensePage extends
|
17 |
|
18 |
/**
|
19 |
* {@inheritdoc}
|
@@ -36,12 +36,12 @@
|
|
36 |
/**
|
37 |
* WCL_LicensePage constructor.
|
38 |
*
|
39 |
-
* @param \
|
40 |
*
|
41 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
42 |
*
|
43 |
*/
|
44 |
-
public function __construct(
|
45 |
$this->menu_title = __( 'License', 'robin-image-optimizer' );
|
46 |
$this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
|
47 |
$this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
|
13 |
*
|
14 |
* @copyright (c) 2018 Webraftic Ltd
|
15 |
*/
|
16 |
+
class WCL_LicensePage extends Wbcr_FactoryClearfy221_LicensePage {
|
17 |
|
18 |
/**
|
19 |
* {@inheritdoc}
|
36 |
/**
|
37 |
* WCL_LicensePage constructor.
|
38 |
*
|
39 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
40 |
*
|
41 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
42 |
*
|
43 |
*/
|
44 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
45 |
$this->menu_title = __( 'License', 'robin-image-optimizer' );
|
46 |
$this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
|
47 |
$this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
|
admin/pages/class-pages-performance-google.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
-
* @see
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
+
* @see FactoryPages429_AdminPage
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
admin/pages/class-pages-quick-start.php
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
-
* @see
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
@@ -63,7 +63,7 @@
|
|
63 |
*/
|
64 |
public function __construct(WCL_Plugin $plugin)
|
65 |
{
|
66 |
-
$this->menu_title = __('Clearfy
|
67 |
$this->page_menu_short_description = __('One-click settings', 'clearfy');
|
68 |
|
69 |
parent::__construct($plugin);
|
@@ -79,7 +79,7 @@
|
|
79 |
/**
|
80 |
* Requests assets (js and css) for the page.
|
81 |
*
|
82 |
-
* @see
|
83 |
*
|
84 |
* @since 1.0.0
|
85 |
* @return void
|
17 |
* The id of the page in the admin menu.
|
18 |
*
|
19 |
* Mainly used to navigate between pages.
|
20 |
+
* @see FactoryPages429_AdminPage
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
* @var string
|
63 |
*/
|
64 |
public function __construct(WCL_Plugin $plugin)
|
65 |
{
|
66 |
+
$this->menu_title = __('Clearfy', 'clearfy');
|
67 |
$this->page_menu_short_description = __('One-click settings', 'clearfy');
|
68 |
|
69 |
parent::__construct($plugin);
|
79 |
/**
|
80 |
* Requests assets (js and css) for the page.
|
81 |
*
|
82 |
+
* @see FactoryPages429_AdminPage
|
83 |
*
|
84 |
* @since 1.0.0
|
85 |
* @return void
|
admin/pages/class-pages-seo-double-pages.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
-
* @see
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
+
* @see FactoryPages429_AdminPage
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
admin/pages/class-pages-seo.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
-
* @see
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
+
* @see FactoryPages429_AdminPage
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
admin/pages/class-pages-widgets.php
CHANGED
@@ -16,7 +16,7 @@ class WCL_WidgetsPage extends WCL_Page {
|
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
-
* @see
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
16 |
* The id of the page in the admin menu.
|
17 |
*
|
18 |
* Mainly used to navigate between pages.
|
19 |
+
* @see FactoryPages429_AdminPage
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
* @var string
|
assets/css/admin-bar.css
CHANGED
@@ -1,48 +1,47 @@
|
|
1 |
-
/**
|
2 |
-
* Admin bar menu
|
3 |
-
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
4 |
-
* @copyright Webcraftic 01.07.2018
|
5 |
-
*/
|
6 |
-
#wp-admin-bar-clearfy-menu {
|
7 |
-
background: #443a54 !important;
|
8 |
-
}
|
9 |
-
#wp-admin-bar-clearfy-menu::after {
|
10 |
-
clear: both;
|
11 |
-
}
|
12 |
-
#wp-admin-bar-clearfy-menu .dashicons {
|
13 |
-
font: 400 20px/1 dashicons;
|
14 |
-
}
|
15 |
-
#wp-admin-bar-clearfy-menu #wp-admin-bar-clearfy-menu-default {
|
16 |
-
background: #565656 !important;
|
17 |
-
}
|
18 |
-
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-icon {
|
19 |
-
display: inline-block !important;
|
20 |
-
width: 20px;
|
21 |
-
height: 25px;
|
22 |
-
margin-top: 6px;
|
23 |
-
margin-right: 5px;
|
24 |
-
float: left;
|
25 |
-
background: url(../img/webcraftic-plugin-icon.png) 0 0 no-repeat;
|
26 |
-
}
|
27 |
-
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-title {
|
28 |
-
display: inline-block !important;
|
29 |
-
overflow: hidden;
|
30 |
-
}
|
31 |
-
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-title .dashicons {
|
32 |
-
font-size: 20px !important;
|
33 |
-
padding: 6px 0 !important;
|
34 |
-
}
|
35 |
-
#wp-admin-bar-clearfy-menu .ab-item .dashicons {
|
36 |
-
font-size: 14px;
|
37 |
-
padding: 6px 0;
|
38 |
-
}
|
39 |
-
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-heart {
|
40 |
-
color: #fb7976;
|
41 |
-
}
|
42 |
-
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-sos {
|
43 |
-
color: #c6e9f9;
|
44 |
-
}
|
45 |
-
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-star-filled {
|
46 |
-
color: #ffbe00;
|
47 |
-
}
|
48 |
-
/*# sourceMappingURL=admin-bar.css.map */
|
1 |
+
/**
|
2 |
+
* Admin bar menu
|
3 |
+
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
4 |
+
* @copyright Webcraftic 01.07.2018
|
5 |
+
*/
|
6 |
+
#wp-admin-bar-clearfy-menu {
|
7 |
+
background: #443a54 !important;
|
8 |
+
}
|
9 |
+
#wp-admin-bar-clearfy-menu::after {
|
10 |
+
clear: both;
|
11 |
+
}
|
12 |
+
#wp-admin-bar-clearfy-menu .dashicons {
|
13 |
+
font: 400 20px/1 dashicons;
|
14 |
+
}
|
15 |
+
#wp-admin-bar-clearfy-menu #wp-admin-bar-clearfy-menu-default {
|
16 |
+
background: #565656 !important;
|
17 |
+
}
|
18 |
+
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-icon {
|
19 |
+
display: inline-block !important;
|
20 |
+
width: 20px;
|
21 |
+
height: 25px;
|
22 |
+
margin-top: 6px;
|
23 |
+
margin-right: 5px;
|
24 |
+
float: left;
|
25 |
+
background: url(../img/webcraftic-plugin-icon.png) 0 0 no-repeat;
|
26 |
+
}
|
27 |
+
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-title {
|
28 |
+
display: inline-block !important;
|
29 |
+
overflow: hidden;
|
30 |
+
}
|
31 |
+
#wp-admin-bar-clearfy-menu .wbcr-clearfy-admin-bar-menu-title .dashicons {
|
32 |
+
font-size: 20px !important;
|
33 |
+
padding: 6px 0 !important;
|
34 |
+
}
|
35 |
+
#wp-admin-bar-clearfy-menu .ab-item .dashicons {
|
36 |
+
font-size: 14px;
|
37 |
+
padding: 6px 0;
|
38 |
+
}
|
39 |
+
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-heart {
|
40 |
+
color: #fb7976;
|
41 |
+
}
|
42 |
+
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-sos {
|
43 |
+
color: #c6e9f9;
|
44 |
+
}
|
45 |
+
#wp-admin-bar-clearfy-menu .ab-item .dashicons.dashicons-star-filled {
|
46 |
+
color: #ffbe00;
|
47 |
+
}
|
|
clearfy.php
CHANGED
@@ -4,11 +4,11 @@
|
|
4 |
* Plugin URI: https://wordpress.org/plugins/clearfy/
|
5 |
* Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
-
* Version: 1.6.
|
8 |
* Text Domain: clearfy
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: http://clearfy.pro
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
@@ -71,12 +71,12 @@ $plugin_info = array(
|
|
71 |
),
|
72 |
// FRAMEWORK MODULES
|
73 |
'load_factory_modules' => array(
|
74 |
-
array('libs/factory/bootstrap', '
|
75 |
-
array('libs/factory/forms', '
|
76 |
-
array('libs/factory/pages', '
|
77 |
-
array('libs/factory/clearfy', '
|
78 |
-
array('libs/factory/freemius', '
|
79 |
-
array('libs/factory/adverts', '
|
80 |
),
|
81 |
'load_plugin_components' => array(
|
82 |
'disable_notices' => array(
|
@@ -116,7 +116,7 @@ $plugin_info = array(
|
|
116 |
|
117 |
|
118 |
|
119 |
-
$clearfy_compatibility = new
|
120 |
'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
|
121 |
'required_php_version' => '5.4',
|
122 |
'required_wp_version' => '4.2.0',
|
@@ -147,7 +147,7 @@ define('WBCR_CLEARFY_PLUGIN_ACTIVE', true);
|
|
147 |
|
148 |
// Plugin version
|
149 |
define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
|
150 |
-
define('WCL_FRAMEWORK_VER', '
|
151 |
|
152 |
define('WCL_PLUGIN_DIR', dirname(__FILE__));
|
153 |
define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
|
4 |
* Plugin URI: https://wordpress.org/plugins/clearfy/
|
5 |
* Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
+
* Version: 1.6.9
|
8 |
* Text Domain: clearfy
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: http://clearfy.pro
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
71 |
),
|
72 |
// FRAMEWORK MODULES
|
73 |
'load_factory_modules' => array(
|
74 |
+
array('libs/factory/bootstrap', 'factory_bootstrap_430', 'admin'),
|
75 |
+
array('libs/factory/forms', 'factory_forms_427', 'admin'),
|
76 |
+
array('libs/factory/pages', 'factory_pages_429', 'admin'),
|
77 |
+
array('libs/factory/clearfy', 'factory_clearfy_221', 'all'),
|
78 |
+
array('libs/factory/freemius', 'factory_freemius_117', 'all'),
|
79 |
+
array('libs/factory/adverts', 'factory_adverts_109', 'admin')
|
80 |
),
|
81 |
'load_plugin_components' => array(
|
82 |
'disable_notices' => array(
|
116 |
|
117 |
|
118 |
|
119 |
+
$clearfy_compatibility = new Wbcr_Factory429_Requirements(__FILE__, array_merge($plugin_info, array(
|
120 |
'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
|
121 |
'required_php_version' => '5.4',
|
122 |
'required_wp_version' => '4.2.0',
|
147 |
|
148 |
// Plugin version
|
149 |
define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
|
150 |
+
define('WCL_FRAMEWORK_VER', 'FACTORY_429_VERSION');
|
151 |
|
152 |
define('WCL_PLUGIN_DIR', dirname(__FILE__));
|
153 |
define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
|
components/assets-manager/admin/activation.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
*
|
6 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.03.2018, Webcraftic
|
8 |
-
* @see
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
class WGNZ_Activation extends
|
18 |
|
19 |
/**
|
20 |
* Runs activation actions.
|
5 |
*
|
6 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.03.2018, Webcraftic
|
8 |
+
* @see Wbcr_Factory429_Activator
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
class WGNZ_Activation extends Wbcr_Factory429_Activator {
|
18 |
|
19 |
/**
|
20 |
* Runs activation actions.
|
components/assets-manager/admin/ajax/save-settings.php
CHANGED
@@ -203,7 +203,7 @@ function wam_save_settings_action() {
|
|
203 |
wbcr_gnz_deploy_mu_plugin();
|
204 |
|
205 |
// Flush cache for all cache plugins
|
206 |
-
|
207 |
}
|
208 |
|
209 |
wp_send_json_success( [
|
203 |
wbcr_gnz_deploy_mu_plugin();
|
204 |
|
205 |
// Flush cache for all cache plugins
|
206 |
+
WbcrFactoryClearfy221_Helpers::flushPageCache();
|
207 |
}
|
208 |
|
209 |
wp_send_json_success( [
|
components/assets-manager/admin/boot.php
CHANGED
@@ -167,7 +167,7 @@ if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
|
|
167 |
*
|
168 |
* @param array $widgets
|
169 |
* @param string $position
|
170 |
-
* @param
|
171 |
*/
|
172 |
add_filter( 'wbcr/factory/pages/impressive/widgets', function ( $widgets, $position, $plugin ) {
|
173 |
if ( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
|
@@ -225,5 +225,5 @@ if ( defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
|
|
225 |
return $page_url;
|
226 |
}
|
227 |
|
228 |
-
add_filter( '
|
229 |
}
|
167 |
*
|
168 |
* @param array $widgets
|
169 |
* @param string $position
|
170 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
171 |
*/
|
172 |
add_filter( 'wbcr/factory/pages/impressive/widgets', function ( $widgets, $position, $plugin ) {
|
173 |
if ( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
|
225 |
return $page_url;
|
226 |
}
|
227 |
|
228 |
+
add_filter( 'wbcr_factory_pages_429_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2 );
|
229 |
}
|
components/assets-manager/admin/pages/class-pages-more-features.php
CHANGED
@@ -17,6 +17,6 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
17 |
*
|
18 |
* @copyright (c) 2018 Webraftic Ltd
|
19 |
*/
|
20 |
-
class WGZ_MoreFeaturesPage extends
|
21 |
|
22 |
}
|
17 |
*
|
18 |
* @copyright (c) 2018 Webraftic Ltd
|
19 |
*/
|
20 |
+
class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy221_MoreFeaturesPage {
|
21 |
|
22 |
}
|
components/assets-manager/admin/pages/class-pages-settings.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WGZ_AssetsManagerPage extends
|
20 |
|
21 |
/**
|
22 |
* The id of the page in the admin menu.
|
@@ -24,7 +24,7 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
24 |
* Mainly used to navigate between pages.
|
25 |
*
|
26 |
* @since 1.0.0
|
27 |
-
* @see
|
28 |
*
|
29 |
* @var string
|
30 |
*/
|
@@ -48,9 +48,9 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
48 |
public $available_for_multisite = true;
|
49 |
|
50 |
/**
|
51 |
-
* @param
|
52 |
*/
|
53 |
-
public function __construct(
|
54 |
$this->menu_title = __( 'Assets manager', 'gonzales' );
|
55 |
|
56 |
if ( ! defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy221_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 FactoryPages429_AdminPage
|
28 |
*
|
29 |
* @var string
|
30 |
*/
|
48 |
public $available_for_multisite = true;
|
49 |
|
50 |
/**
|
51 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
52 |
*/
|
53 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
54 |
$this->menu_title = __( 'Assets manager', 'gonzales' );
|
55 |
|
56 |
if ( ! defined( 'LOADING_ASSETS_MANAGER_AS_ADDON' ) ) {
|
components/assets-manager/gonzales.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Text Domain: gonzales
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
@@ -64,15 +64,15 @@ $wgnz_plugin_info = array(
|
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
-
array( 'libs/factory/bootstrap', '
|
68 |
-
array( 'libs/factory/forms', '
|
69 |
-
array( 'libs/factory/pages', '
|
70 |
-
array( 'libs/factory/clearfy', '
|
71 |
-
array( 'libs/factory/adverts', '
|
72 |
)
|
73 |
);
|
74 |
|
75 |
-
$wgnz_compatibility = new
|
76 |
'plugin_already_activate' => defined( 'WGZ_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
8 |
* Text Domain: gonzales
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
68 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
69 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
70 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
71 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
72 |
)
|
73 |
);
|
74 |
|
75 |
+
$wgnz_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wgnz_plugin_info, array(
|
76 |
'plugin_already_activate' => defined( 'WGZ_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
components/assets-manager/includes/class-plugin.php
CHANGED
@@ -11,11 +11,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
* @version 1.0
|
13 |
*/
|
14 |
-
class WGZ_Plugin extends
|
15 |
|
16 |
/**
|
17 |
* @see self::app()
|
18 |
-
* @var
|
19 |
*/
|
20 |
private static $app;
|
21 |
|
@@ -53,7 +53,7 @@ class WGZ_Plugin extends Wbcr_Factory428_Plugin {
|
|
53 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
54 |
* классам.
|
55 |
*
|
56 |
-
* @return \
|
57 |
*/
|
58 |
public static function app() {
|
59 |
return self::$app;
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
* @version 1.0
|
13 |
*/
|
14 |
+
class WGZ_Plugin extends Wbcr_Factory429_Plugin {
|
15 |
|
16 |
/**
|
17 |
* @see self::app()
|
18 |
+
* @var Wbcr_Factory429_Plugin
|
19 |
*/
|
20 |
private static $app;
|
21 |
|
53 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
54 |
* классам.
|
55 |
*
|
56 |
+
* @return \Wbcr_Factory429_Plugin|\WGZ_Plugin
|
57 |
*/
|
58 |
public static function app() {
|
59 |
return self::$app;
|
components/assets-manager/includes/classes/class-assets-manager-global.php
CHANGED
@@ -21,9 +21,9 @@ class WGZ_Assets_Manager_Public {
|
|
21 |
public $collection = [];
|
22 |
|
23 |
/**
|
24 |
-
* @param
|
25 |
*/
|
26 |
-
public function __construct(
|
27 |
$this->plugin = $plugin;
|
28 |
|
29 |
$this->register_hooks();
|
21 |
public $collection = [];
|
22 |
|
23 |
/**
|
24 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
25 |
*/
|
26 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
27 |
$this->plugin = $plugin;
|
28 |
|
29 |
$this->register_hooks();
|
components/assets-manager/includes/classes/class-views.php
CHANGED
@@ -63,11 +63,11 @@ class WGZ_Views {
|
|
63 |
*
|
64 |
* @param string $template The template name.
|
65 |
* @param mixed $data Some data to pass to the template.
|
66 |
-
* @param
|
67 |
*
|
68 |
* @return bool|string The page contents. False if the template doesn't exist.
|
69 |
*/
|
70 |
-
public function get_template( $template, $data = [],
|
71 |
$template = str_replace( '_', '-', $template );
|
72 |
$path = $this->plugin_dir . '/views/' . $template . '.php';
|
73 |
|
@@ -92,9 +92,9 @@ class WGZ_Views {
|
|
92 |
*
|
93 |
* @param string $template The template name.
|
94 |
* @param mixed $data Some data to pass to the template.
|
95 |
-
* @param
|
96 |
*/
|
97 |
-
public function print_template( $template, $data = [],
|
98 |
echo $this->get_template( $template, $data, $page );
|
99 |
}
|
100 |
}
|
63 |
*
|
64 |
* @param string $template The template name.
|
65 |
* @param mixed $data Some data to pass to the template.
|
66 |
+
* @param Wbcr_FactoryClearfy221_PageBase $page
|
67 |
*
|
68 |
* @return bool|string The page contents. False if the template doesn't exist.
|
69 |
*/
|
70 |
+
public function get_template( $template, $data = [], Wbcr_FactoryClearfy221_PageBase $page = null ) {
|
71 |
$template = str_replace( '_', '-', $template );
|
72 |
$path = $this->plugin_dir . '/views/' . $template . '.php';
|
73 |
|
92 |
*
|
93 |
* @param string $template The template name.
|
94 |
* @param mixed $data Some data to pass to the template.
|
95 |
+
* @param Wbcr_FactoryClearfy221_PageBase $page
|
96 |
*/
|
97 |
+
public function print_template( $template, $data = [], Wbcr_FactoryClearfy221_PageBase $page = null ) {
|
98 |
echo $this->get_template( $template, $data, $page );
|
99 |
}
|
100 |
}
|
components/assets-manager/migrations/010100.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WGZUpdate010100 extends
|
8 |
|
9 |
public function install()
|
10 |
{
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WGZUpdate010100 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
public function install()
|
10 |
{
|
components/assets-manager/migrations/010108.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WGZUpdate010108 extends
|
8 |
|
9 |
/**
|
10 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WGZUpdate010108 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
/**
|
10 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
components/assets-manager/migrations/020005.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WGZUpdate020005 extends
|
8 |
|
9 |
public function install() {
|
10 |
$settings = get_option( $this->plugin->getPrefix() . 'assets_states', [] );
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WGZUpdate020005 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
public function install() {
|
10 |
$settings = get_option( $this->plugin->getPrefix() . 'assets_states', [] );
|
components/assets-manager/mu-plugins/assets-manager.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Webcraftic AM plugin load filter
|
4 |
* Dynamically activated only plugins that you have selected in each page. [Note] Webcraftic AM has been automatically installed/deleted by Activate/Deactivate of "load filter plugin".
|
5 |
* Version: 1.0.9
|
6 |
-
* Framework Version:
|
7 |
*/
|
8 |
|
9 |
// todo: проверить, как работает кеширование
|
3 |
* Webcraftic AM plugin load filter
|
4 |
* Dynamically activated only plugins that you have selected in each page. [Note] Webcraftic AM has been automatically installed/deleted by Activate/Deactivate of "load filter plugin".
|
5 |
* Version: 1.0.9
|
6 |
+
* Framework Version: FACTORY_429_VERSION
|
7 |
*/
|
8 |
|
9 |
// todo: проверить, как работает кеширование
|
components/comments-plus/admin/boot.php
CHANGED
@@ -101,7 +101,7 @@ if ( ! defined( 'LOADING_COMMENTS_PLUS_AS_ADDON' ) ) {
|
|
101 |
return $page_url;
|
102 |
}
|
103 |
|
104 |
-
add_filter( '
|
105 |
|
106 |
/**
|
107 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
101 |
return $page_url;
|
102 |
}
|
103 |
|
104 |
+
add_filter( 'wbcr_factory_pages_429_imppage_rating_widget_url', 'wbcr_cmp_rating_widget_url', 10, 2 );
|
105 |
|
106 |
/**
|
107 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
components/comments-plus/admin/pages/class-page-comments.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WbcrCmp_CommentsPage extends
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
@@ -52,9 +52,9 @@ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
52 |
*
|
53 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
54 |
*
|
55 |
-
* @param \
|
56 |
*/
|
57 |
-
public function __construct(
|
58 |
$this->menu_title = __( 'Disable comments', 'comments-plus' );
|
59 |
$this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
|
60 |
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
52 |
*
|
53 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
54 |
*
|
55 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
56 |
*/
|
57 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
58 |
$this->menu_title = __( 'Disable comments', 'comments-plus' );
|
59 |
$this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
|
60 |
|
components/comments-plus/admin/pages/class-page-delete-comments.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WbcrCmp_DeleteCommentsPage extends
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
@@ -66,9 +66,9 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
66 |
*
|
67 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
68 |
*
|
69 |
-
* @param \
|
70 |
*/
|
71 |
-
public function __construct(
|
72 |
$this->menu_title = __( 'Comments cleaner', 'comments-plus' );
|
73 |
|
74 |
parent::__construct( $plugin );
|
@@ -78,10 +78,10 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
78 |
* {@inheritDoc}
|
79 |
*
|
80 |
* @param $notices
|
81 |
-
* @param
|
82 |
*
|
83 |
* @return array
|
84 |
-
* @see libs\factory\pages\themplates\
|
85 |
*/
|
86 |
public function getActionNotices( $notices ) {
|
87 |
|
@@ -200,7 +200,7 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
200 |
/**
|
201 |
* Prints the content of the page
|
202 |
*
|
203 |
-
* @see libs\factory\pages\themplates\
|
204 |
*/
|
205 |
public function showPageContent() {
|
206 |
$stats = $this->getStats();
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
66 |
*
|
67 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
68 |
*
|
69 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
70 |
*/
|
71 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
72 |
$this->menu_title = __( 'Comments cleaner', 'comments-plus' );
|
73 |
|
74 |
parent::__construct( $plugin );
|
78 |
* {@inheritDoc}
|
79 |
*
|
80 |
* @param $notices
|
81 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
82 |
*
|
83 |
* @return array
|
84 |
+
* @see libs\factory\pages\themplates\FactoryPages429_ImpressiveThemplate
|
85 |
*/
|
86 |
public function getActionNotices( $notices ) {
|
87 |
|
200 |
/**
|
201 |
* Prints the content of the page
|
202 |
*
|
203 |
+
* @see libs\factory\pages\themplates\FactoryPages429_ImpressiveThemplate
|
204 |
*/
|
205 |
public function showPageContent() {
|
206 |
$stats = $this->getStats();
|
components/comments-plus/admin/pages/class-page-more-features.php
CHANGED
@@ -19,6 +19,6 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
19 |
*
|
20 |
* @copyright (c) 2018 Webraftic Ltd
|
21 |
*/
|
22 |
-
class WbcrCmp_MoreFeaturesPage extends
|
23 |
|
24 |
}
|
19 |
*
|
20 |
* @copyright (c) 2018 Webraftic Ltd
|
21 |
*/
|
22 |
+
class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy221_MoreFeaturesPage {
|
23 |
|
24 |
}
|
components/comments-plus/comments-plus.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Text Domain: comments-plus
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
@@ -64,15 +64,15 @@ $wcm_plugin_info = array(
|
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
-
array( 'libs/factory/bootstrap', '
|
68 |
-
array( 'libs/factory/forms', '
|
69 |
-
array( 'libs/factory/pages', '
|
70 |
-
array( 'libs/factory/clearfy', '
|
71 |
-
array( 'libs/factory/adverts', '
|
72 |
)
|
73 |
);
|
74 |
|
75 |
-
$wcm_compatibility = new
|
76 |
'plugin_already_activate' => defined( 'WCM_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
8 |
* Text Domain: comments-plus
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
68 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
69 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
70 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
71 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
72 |
)
|
73 |
);
|
74 |
|
75 |
+
$wcm_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wcm_plugin_info, array(
|
76 |
'plugin_already_activate' => defined( 'WCM_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
components/comments-plus/includes/class-plugin.php
CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
-
class WCM_Plugin extends
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
-
* @var
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
@@ -59,7 +59,7 @@ class WCM_Plugin extends Wbcr_Factory428_Plugin {
|
|
59 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
60 |
* классам.
|
61 |
*
|
62 |
-
* @return \
|
63 |
*/
|
64 |
public static function app() {
|
65 |
return self::$app;
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
+
class WCM_Plugin extends Wbcr_Factory429_Plugin {
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
+
* @var Wbcr_Factory429_Plugin
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
59 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
60 |
* классам.
|
61 |
*
|
62 |
+
* @return \Wbcr_Factory429_Plugin|\WCM_Plugin
|
63 |
*/
|
64 |
public static function app() {
|
65 |
return self::$app;
|
components/comments-plus/includes/classes/class-configurate-comments.php
CHANGED
@@ -12,14 +12,14 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
12 |
*
|
13 |
* @copyright (c) 2017 Webraftic Ltd
|
14 |
*/
|
15 |
-
class WbcrCmp_ConfigComments extends
|
16 |
|
17 |
private $modified_types = [];
|
18 |
|
19 |
/**
|
20 |
-
* @param
|
21 |
*/
|
22 |
-
public function __construct(
|
23 |
parent::__construct( $plugin );
|
24 |
$this->plugin = $plugin;
|
25 |
}
|
12 |
*
|
13 |
* @copyright (c) 2017 Webraftic Ltd
|
14 |
*/
|
15 |
+
class WbcrCmp_ConfigComments extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
private $modified_types = [];
|
18 |
|
19 |
/**
|
20 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
21 |
*/
|
22 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
23 |
parent::__construct( $plugin );
|
24 |
$this->plugin = $plugin;
|
25 |
}
|
components/cyrlitera/admin/activation.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
*
|
6 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.03.2018, Webcraftic
|
8 |
-
* @see
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
class WCTR_Activation extends
|
18 |
|
19 |
/**
|
20 |
* Runs activation actions.
|
5 |
*
|
6 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.03.2018, Webcraftic
|
8 |
+
* @see Wbcr_Factory429_Activator
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
class WCTR_Activation extends Wbcr_Factory429_Activator {
|
18 |
|
19 |
/**
|
20 |
* Runs activation actions.
|
components/cyrlitera/admin/boot.php
CHANGED
@@ -135,7 +135,7 @@ if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
|
|
135 |
return $page_url;
|
136 |
}
|
137 |
|
138 |
-
add_filter( '
|
139 |
|
140 |
/**
|
141 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
135 |
return $page_url;
|
136 |
}
|
137 |
|
138 |
+
add_filter( 'wbcr_factory_pages_429_imppage_rating_widget_url', 'wbcr_cyrlitera_rating_widget_url', 10, 2 );
|
139 |
|
140 |
/**
|
141 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
components/cyrlitera/admin/pages/class-page-cyrlitera.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
* @version 1.0
|
18 |
*/
|
19 |
-
class WCTR_CyrliteraPage extends
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
@@ -59,9 +59,9 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
59 |
*
|
60 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
61 |
*
|
62 |
-
* @param \
|
63 |
*/
|
64 |
-
public function __construct(
|
65 |
$this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
|
66 |
|
67 |
if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
|
@@ -202,7 +202,7 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
202 |
}
|
203 |
|
204 |
/**
|
205 |
-
* @param $html_builder
|
206 |
*/
|
207 |
public function rollbackButton( $html_builder ) {
|
208 |
$form_name = $html_builder->getFormName();
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
* @version 1.0
|
18 |
*/
|
19 |
+
class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
59 |
*
|
60 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
61 |
*
|
62 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
63 |
*/
|
64 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
65 |
$this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
|
66 |
|
67 |
if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
|
202 |
}
|
203 |
|
204 |
/**
|
205 |
+
* @param $html_builder Wbcr_FactoryForms427_Html
|
206 |
*/
|
207 |
public function rollbackButton( $html_builder ) {
|
208 |
$form_name = $html_builder->getFormName();
|
components/cyrlitera/admin/pages/class-page-more-features.php
CHANGED
@@ -18,6 +18,6 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
18 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
19 |
* @copyright (c) 2018 Webraftic Ltd
|
20 |
*/
|
21 |
-
class WCTR_MoreFeaturesPage extends
|
22 |
|
23 |
}
|
18 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
19 |
* @copyright (c) 2018 Webraftic Ltd
|
20 |
*/
|
21 |
+
class WCTR_MoreFeaturesPage extends Wbcr_FactoryClearfy221_MoreFeaturesPage {
|
22 |
|
23 |
}
|
components/cyrlitera/cyrlitera.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Text Domain: cyrlitera
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
@@ -64,15 +64,15 @@ $wctr_plugin_info = array(
|
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
-
array( 'libs/factory/bootstrap', '
|
68 |
-
array( 'libs/factory/forms', '
|
69 |
-
array( 'libs/factory/pages', '
|
70 |
-
array( 'libs/factory/clearfy', '
|
71 |
-
array( 'libs/factory/adverts', '
|
72 |
)
|
73 |
);
|
74 |
|
75 |
-
$wctr_compatibility = new
|
76 |
'plugin_already_activate' => defined( 'WCTR_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
8 |
* Text Domain: cyrlitera
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
68 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
69 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
70 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
71 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
72 |
)
|
73 |
);
|
74 |
|
75 |
+
$wctr_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wctr_plugin_info, array(
|
76 |
'plugin_already_activate' => defined( 'WCTR_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
components/cyrlitera/includes/class-plugin.php
CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
10 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
-
class WCTR_Plugin extends
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
-
* @var
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
@@ -57,7 +57,7 @@ class WCTR_Plugin extends Wbcr_Factory428_Plugin {
|
|
57 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
58 |
* классам.
|
59 |
*
|
60 |
-
* @return \
|
61 |
*/
|
62 |
public static function app() {
|
63 |
return self::$app;
|
10 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
+
class WCTR_Plugin extends Wbcr_Factory429_Plugin {
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
+
* @var Wbcr_Factory429_Plugin
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
57 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
58 |
* классам.
|
59 |
*
|
60 |
+
* @return \Wbcr_Factory429_Plugin|\WCTR_Plugin
|
61 |
*/
|
62 |
public static function app() {
|
63 |
return self::$app;
|
components/cyrlitera/includes/classes/class-configurate-cyrlitera.php
CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
-
class WCTR_ConfigurateCyrlitera extends
|
16 |
|
17 |
public function registerActionsAndFilters() {
|
18 |
|
@@ -235,7 +235,7 @@ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy220_Configurate {
|
|
235 |
* Перенаправление со старых url, которые были уже преобразованы
|
236 |
*/
|
237 |
public function redirectFromOldUrls() {
|
238 |
-
if ( !
|
239 |
return;
|
240 |
}
|
241 |
$is404 = is_404();
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
+
class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
public function registerActionsAndFilters() {
|
18 |
|
235 |
* Перенаправление со старых url, которые были уже преобразованы
|
236 |
*/
|
237 |
public function redirectFromOldUrls() {
|
238 |
+
if ( ! WbcrFactoryClearfy221_Helpers::isPermalink() ) {
|
239 |
return;
|
240 |
}
|
241 |
$is404 = is_404();
|
components/cyrlitera/migrations/010004.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WCTR_Update010004 extends
|
8 |
|
9 |
public function install() {
|
10 |
WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WCTR_Update010004 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
public function install() {
|
10 |
WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
|
components/disable-admin-notices/admin/assets/css/notifications-panel.css
CHANGED
@@ -47,17 +47,17 @@
|
|
47 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item {
|
48 |
height: 100% !important;
|
49 |
white-space: normal !important;
|
50 |
-
padding: .5em 1em;
|
51 |
border-bottom: 1px solid #4a4f55;
|
52 |
color: #949494;
|
53 |
-
line-height: .5em;
|
54 |
}
|
55 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item a {
|
56 |
display: inline;
|
57 |
padding: 0;
|
58 |
margin: 0;
|
59 |
text-decoration: underline;
|
60 |
-
line-height: .5em;
|
61 |
color: #949494;
|
62 |
}
|
63 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu li:nth-child(2n) {
|
47 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item {
|
48 |
height: 100% !important;
|
49 |
white-space: normal !important;
|
50 |
+
padding: 0.5em 1em;
|
51 |
border-bottom: 1px solid #4a4f55;
|
52 |
color: #949494;
|
53 |
+
line-height: 0.5em;
|
54 |
}
|
55 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu > li .ab-item a {
|
56 |
display: inline;
|
57 |
padding: 0;
|
58 |
margin: 0;
|
59 |
text-decoration: underline;
|
60 |
+
line-height: 0.5em;
|
61 |
color: #949494;
|
62 |
}
|
63 |
#wp-admin-bar-wbcr-han-notify-panel .ab-sub-wrapper ul.ab-submenu li:nth-child(2n) {
|
components/disable-admin-notices/admin/assets/css/settings.css
ADDED
@@ -0,0 +1,176 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#WBCR .factory-checkbox.wdanpro-checkbox-premium-label:after,
|
2 |
+
#WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
|
3 |
+
display: inline-block;
|
4 |
+
position: relative;
|
5 |
+
content: 'PRO';
|
6 |
+
background: #ff5722;
|
7 |
+
border-radius: 4px;
|
8 |
+
color: #fff;
|
9 |
+
font-size: 10px;
|
10 |
+
line-height: 1;
|
11 |
+
font-style: normal;
|
12 |
+
padding: 4px 6px;
|
13 |
+
margin-left: 4px;
|
14 |
+
vertical-align: top;
|
15 |
+
top: -8px;
|
16 |
+
left: -10px;
|
17 |
+
right: auto;
|
18 |
+
z-index: 11;
|
19 |
+
}
|
20 |
+
#WBCR .wdanpro-radio-premium-label .factory-compact_panel:after {
|
21 |
+
position: absolute;
|
22 |
+
top: -10px;
|
23 |
+
right: -10px;
|
24 |
+
left: auto;
|
25 |
+
}
|
26 |
+
#WBCR .factory-checkbox-disabled input,
|
27 |
+
#WBCR .factory-checkbox-disabled button,
|
28 |
+
#WBCR .wdanpro-radio-premium-label .factory-compact_panel {
|
29 |
+
pointer-events: none;
|
30 |
+
cursor: not-allowed;
|
31 |
+
opacity: 0.65;
|
32 |
+
filter: alpha(opacity=65);
|
33 |
+
-webkit-box-shadow: none;
|
34 |
+
box-shadow: none;
|
35 |
+
}
|
36 |
+
#WBCR .wrdan-premium-fake-content {
|
37 |
+
position: relative;
|
38 |
+
padding: 15px;
|
39 |
+
}
|
40 |
+
#WBCR .wdan-premium-info {
|
41 |
+
position: absolute;
|
42 |
+
top: 50px;
|
43 |
+
left: 50%;
|
44 |
+
margin-left: -250px;
|
45 |
+
max-width: 500px;
|
46 |
+
z-index: 999;
|
47 |
+
}
|
48 |
+
#WBCR .wdan-premium-info h3 {
|
49 |
+
font-size: 32px;
|
50 |
+
font-weight: 300;
|
51 |
+
color: inherit;
|
52 |
+
margin: 40px 0 10px;
|
53 |
+
line-height: 1.2;
|
54 |
+
}
|
55 |
+
#WBCR .wdan-premium-info p {
|
56 |
+
font-size: 16px;
|
57 |
+
font-weight: 400;
|
58 |
+
color: #a4afb7;
|
59 |
+
margin-bottom: 40px;
|
60 |
+
}
|
61 |
+
#WBCR .wdan-premium-layer {
|
62 |
+
position: absolute;
|
63 |
+
top: 0;
|
64 |
+
left: 0;
|
65 |
+
right: 0;
|
66 |
+
bottom: 0;
|
67 |
+
opacity: 0.9;
|
68 |
+
background: #fff;
|
69 |
+
}
|
70 |
+
#WBCR .wdan-button {
|
71 |
+
font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
|
72 |
+
font-weight: 500;
|
73 |
+
text-transform: uppercase;
|
74 |
+
outline: none;
|
75 |
+
border: none;
|
76 |
+
text-decoration: none;
|
77 |
+
-webkit-border-radius: 3px;
|
78 |
+
border-radius: 3px;
|
79 |
+
-webkit-transition-property: background, color, opacity, -webkit-box-shadow;
|
80 |
+
transition-property: background, color, opacity, -webkit-box-shadow;
|
81 |
+
-o-transition-property: background, color, box-shadow, opacity;
|
82 |
+
transition-property: background, color, box-shadow, opacity;
|
83 |
+
transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
|
84 |
+
-webkit-transition-duration: 0.3s;
|
85 |
+
-o-transition-duration: 0.3s;
|
86 |
+
transition-duration: 0.3s;
|
87 |
+
}
|
88 |
+
#WBCR .wdan-button:hover {
|
89 |
+
border: none;
|
90 |
+
}
|
91 |
+
#WBCR .wdan-button:not([disabled]) {
|
92 |
+
cursor: pointer;
|
93 |
+
}
|
94 |
+
#WBCR .wdan-button:not(.wdan-button-state) .wdan-state-icon {
|
95 |
+
display: none;
|
96 |
+
}
|
97 |
+
#WBCR .wdan-button.wdan-button-success {
|
98 |
+
color: #fff;
|
99 |
+
}
|
100 |
+
#WBCR .wdan-button.wdan-button-success[disabled] {
|
101 |
+
background-color: #c2cbd2;
|
102 |
+
}
|
103 |
+
#WBCR .wdan-button.wdan-button-success:not([disabled]) {
|
104 |
+
background-color: #39b54a;
|
105 |
+
}
|
106 |
+
#WBCR .wdan-button.wdan-button-success:not([disabled]):hover {
|
107 |
+
opacity: 0.85;
|
108 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
109 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
110 |
+
}
|
111 |
+
#WBCR .wdan-button.wdan-button-success:not([disabled]):active {
|
112 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
113 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
114 |
+
}
|
115 |
+
#WBCR .wdan-button.wdan-button-warning {
|
116 |
+
background-color: #a4afb7;
|
117 |
+
color: #fff;
|
118 |
+
}
|
119 |
+
#WBCR .wdan-button.wdan-button-warning[disabled] {
|
120 |
+
background-color: #c2cbd2;
|
121 |
+
}
|
122 |
+
#WBCR .wdan-button.wdan-button-warning:not([disabled]):hover {
|
123 |
+
background-color: #b01b1b;
|
124 |
+
opacity: 0.85;
|
125 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
126 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
127 |
+
}
|
128 |
+
#WBCR .wdan-button.wdan-button-warning:not([disabled]):active {
|
129 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
130 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
131 |
+
}
|
132 |
+
#WBCR .wdan-button.wdan-button-danger {
|
133 |
+
background-color: #d72b3f;
|
134 |
+
color: #fff;
|
135 |
+
}
|
136 |
+
#WBCR .wdan-button.wdan-button-danger[disabled] {
|
137 |
+
background-color: #c2cbd2;
|
138 |
+
}
|
139 |
+
#WBCR .wdan-button.wdan-button-danger:not([disabled]):hover {
|
140 |
+
opacity: 0.85;
|
141 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
142 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
143 |
+
}
|
144 |
+
#WBCR .wdan-button.wdan-button-danger:not([disabled]):active {
|
145 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
146 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
147 |
+
}
|
148 |
+
#WBCR .wdan-button.wdan-edit-template {
|
149 |
+
display: inline-block;
|
150 |
+
margin-top: 15px;
|
151 |
+
color: #fff;
|
152 |
+
}
|
153 |
+
#WBCR .wdan-button.wdan-button-default {
|
154 |
+
background-color: #a4afb7;
|
155 |
+
color: #fff;
|
156 |
+
font-size: 11px;
|
157 |
+
padding: 7px 21px;
|
158 |
+
}
|
159 |
+
#WBCR .wdan-button.wdan-button-default:hover {
|
160 |
+
background-color: #6d7882;
|
161 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
162 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
|
163 |
+
}
|
164 |
+
#WBCR .wdan-button.wdan-button-default:active {
|
165 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
166 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
|
167 |
+
}
|
168 |
+
#WBCR .wdan-button.wdan-button-default:visited {
|
169 |
+
color: #fff;
|
170 |
+
}
|
171 |
+
#WBCR .wdan-button.wdan-button-go-pro {
|
172 |
+
background-color: #ff5722;
|
173 |
+
}
|
174 |
+
#WBCR .wdan-button i {
|
175 |
+
margin-right: 10px;
|
176 |
+
}
|
components/disable-admin-notices/admin/assets/css/settings.less
ADDED
@@ -0,0 +1,212 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#WBCR {
|
2 |
+
.factory-checkbox.wdanpro-checkbox-premium-label:after,
|
3 |
+
.wdanpro-radio-premium-label .factory-compact_panel:after {
|
4 |
+
display: inline-block;
|
5 |
+
position: relative;
|
6 |
+
content: 'PRO';
|
7 |
+
background: #ff5722;
|
8 |
+
border-radius: 4px;
|
9 |
+
color: #fff;
|
10 |
+
font-size: 10px;
|
11 |
+
line-height: 1;
|
12 |
+
font-style: normal;
|
13 |
+
padding: 4px 6px;
|
14 |
+
margin-left: 4px;
|
15 |
+
vertical-align: top;
|
16 |
+
top: -8px;
|
17 |
+
left: -10px;
|
18 |
+
right: auto;
|
19 |
+
z-index: 11;
|
20 |
+
}
|
21 |
+
|
22 |
+
.wdanpro-radio-premium-label .factory-compact_panel:after {
|
23 |
+
position: absolute;
|
24 |
+
top: -10px;
|
25 |
+
right: -10px;
|
26 |
+
left: auto;
|
27 |
+
}
|
28 |
+
|
29 |
+
.factory-checkbox-disabled input,
|
30 |
+
.factory-checkbox-disabled button,
|
31 |
+
.wdanpro-radio-premium-label .factory-compact_panel {
|
32 |
+
pointer-events: none;
|
33 |
+
cursor: not-allowed;
|
34 |
+
opacity: 0.65;
|
35 |
+
filter: alpha(opacity=65);
|
36 |
+
-webkit-box-shadow: none;
|
37 |
+
box-shadow: none;
|
38 |
+
}
|
39 |
+
|
40 |
+
.wrdan-premium-fake-content {
|
41 |
+
position: relative;
|
42 |
+
padding: 15px;
|
43 |
+
|
44 |
+
}
|
45 |
+
|
46 |
+
.wdan-premium-info {
|
47 |
+
position: absolute;
|
48 |
+
top: 50px;
|
49 |
+
left: 50%;
|
50 |
+
margin-left: -250px;
|
51 |
+
max-width: 500px;
|
52 |
+
z-index: 999;
|
53 |
+
|
54 |
+
h3 {
|
55 |
+
font-size: 32px;
|
56 |
+
font-weight: 300;
|
57 |
+
color: inherit;
|
58 |
+
margin: 40px 0 10px;
|
59 |
+
line-height: 1.2;
|
60 |
+
}
|
61 |
+
|
62 |
+
p {
|
63 |
+
font-size: 16px;
|
64 |
+
font-weight: 400;
|
65 |
+
color: #a4afb7;
|
66 |
+
margin-bottom: 40px;
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
.wdan-premium-layer {
|
71 |
+
position: absolute;
|
72 |
+
top: 0;
|
73 |
+
left: 0;
|
74 |
+
right: 0;
|
75 |
+
bottom: 0;
|
76 |
+
opacity: 0.9;
|
77 |
+
background: #fff;
|
78 |
+
|
79 |
+
|
80 |
+
}
|
81 |
+
|
82 |
+
.wdan-button {
|
83 |
+
font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
|
84 |
+
font-weight: 500;
|
85 |
+
text-transform: uppercase;
|
86 |
+
outline: none;
|
87 |
+
border: none;
|
88 |
+
text-decoration: none;
|
89 |
+
-webkit-border-radius: 3px;
|
90 |
+
border-radius: 3px;
|
91 |
+
-webkit-transition-property: background, color, opacity, -webkit-box-shadow;
|
92 |
+
transition-property: background, color, opacity, -webkit-box-shadow;
|
93 |
+
-o-transition-property: background, color, box-shadow, opacity;
|
94 |
+
transition-property: background, color, box-shadow, opacity;
|
95 |
+
transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
|
96 |
+
-webkit-transition-duration: .3s;
|
97 |
+
-o-transition-duration: .3s;
|
98 |
+
transition-duration: .3s
|
99 |
+
}
|
100 |
+
|
101 |
+
.wdan-button:hover {
|
102 |
+
border: none
|
103 |
+
}
|
104 |
+
|
105 |
+
.wdan-button:not([disabled]) {
|
106 |
+
cursor: pointer
|
107 |
+
}
|
108 |
+
|
109 |
+
.wdan-button:not(.wdan-button-state) .wdan-state-icon {
|
110 |
+
display: none
|
111 |
+
}
|
112 |
+
|
113 |
+
.wdan-button.wdan-button-success {
|
114 |
+
color: #fff
|
115 |
+
}
|
116 |
+
|
117 |
+
.wdan-button.wdan-button-success[disabled] {
|
118 |
+
background-color: #c2cbd2
|
119 |
+
}
|
120 |
+
|
121 |
+
.wdan-button.wdan-button-success:not([disabled]) {
|
122 |
+
background-color: #39b54a
|
123 |
+
}
|
124 |
+
|
125 |
+
.wdan-button.wdan-button-success:not([disabled]):hover {
|
126 |
+
opacity: .85;
|
127 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2);
|
128 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2)
|
129 |
+
}
|
130 |
+
|
131 |
+
.wdan-button.wdan-button-success:not([disabled]):active {
|
132 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1);
|
133 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1)
|
134 |
+
}
|
135 |
+
|
136 |
+
.wdan-button.wdan-button-warning {
|
137 |
+
background-color: #a4afb7;
|
138 |
+
color: #fff
|
139 |
+
}
|
140 |
+
|
141 |
+
.wdan-button.wdan-button-warning[disabled] {
|
142 |
+
background-color: #c2cbd2
|
143 |
+
}
|
144 |
+
|
145 |
+
.wdan-button.wdan-button-warning:not([disabled]):hover {
|
146 |
+
background-color: #b01b1b;
|
147 |
+
opacity: .85;
|
148 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2);
|
149 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2)
|
150 |
+
}
|
151 |
+
|
152 |
+
.wdan-button.wdan-button-warning:not([disabled]):active {
|
153 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1);
|
154 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1)
|
155 |
+
}
|
156 |
+
|
157 |
+
.wdan-button.wdan-button-danger {
|
158 |
+
background-color: #d72b3f;
|
159 |
+
color: #fff
|
160 |
+
}
|
161 |
+
|
162 |
+
.wdan-button.wdan-button-danger[disabled] {
|
163 |
+
background-color: #c2cbd2
|
164 |
+
}
|
165 |
+
|
166 |
+
.wdan-button.wdan-button-danger:not([disabled]):hover {
|
167 |
+
opacity: .85;
|
168 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2);
|
169 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2)
|
170 |
+
}
|
171 |
+
|
172 |
+
.wdan-button.wdan-button-danger:not([disabled]):active {
|
173 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1);
|
174 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1)
|
175 |
+
}
|
176 |
+
|
177 |
+
.wdan-button.wdan-edit-template {
|
178 |
+
display: inline-block;
|
179 |
+
margin-top: 15px;
|
180 |
+
color: #fff
|
181 |
+
}
|
182 |
+
|
183 |
+
.wdan-button.wdan-button-default {
|
184 |
+
background-color: #a4afb7;
|
185 |
+
color: #fff;
|
186 |
+
font-size: 11px;
|
187 |
+
padding: 7px 21px
|
188 |
+
}
|
189 |
+
|
190 |
+
.wdan-button.wdan-button-default:hover {
|
191 |
+
background-color: #6d7882;
|
192 |
+
-webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2);
|
193 |
+
box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .2)
|
194 |
+
}
|
195 |
+
|
196 |
+
.wdan-button.wdan-button-default:active {
|
197 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1);
|
198 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, .19), 0 3px 3px rgba(0, 0, 0, .1)
|
199 |
+
}
|
200 |
+
|
201 |
+
.wdan-button.wdan-button-default:visited {
|
202 |
+
color: #fff
|
203 |
+
}
|
204 |
+
|
205 |
+
.wdan-button.wdan-button-go-pro {
|
206 |
+
background-color: #ff5722
|
207 |
+
}
|
208 |
+
|
209 |
+
.wdan-button i {
|
210 |
+
margin-right: 10px
|
211 |
+
}
|
212 |
+
}
|
components/disable-admin-notices/admin/boot.php
CHANGED
@@ -36,15 +36,15 @@ if ( ! defined( 'LOADING_DISABLE_ADMIN_NOTICES_AS_ADDON' ) ) {
|
|
36 |
* Ссылка ведет на страницу рейтинга в репозитори Wordpress.org
|
37 |
* https://wordpress.org/support/plugin/disable-admin-notices/reviews/
|
38 |
*
|
39 |
-
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
40 |
-
* @since 1.0
|
41 |
-
*
|
42 |
* @param string $page_url
|
43 |
* @param string $plugin_name
|
44 |
*
|
45 |
* @return string
|
|
|
|
|
|
|
46 |
*/
|
47 |
-
add_filter( '
|
48 |
if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
|
49 |
return 'https://goo.gl/68ucHp';
|
50 |
}
|
@@ -91,4 +91,30 @@ if ( ! defined( 'LOADING_DISABLE_ADMIN_NOTICES_AS_ADDON' ) ) {
|
|
91 |
|
92 |
return $options;
|
93 |
} );
|
94 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
* Ссылка ведет на страницу рейтинга в репозитори Wordpress.org
|
37 |
* https://wordpress.org/support/plugin/disable-admin-notices/reviews/
|
38 |
*
|
|
|
|
|
|
|
39 |
* @param string $page_url
|
40 |
* @param string $plugin_name
|
41 |
*
|
42 |
* @return string
|
43 |
+
* @since 1.0
|
44 |
+
*
|
45 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
46 |
*/
|
47 |
+
add_filter( 'wbcr_factory_pages_429_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
|
48 |
if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
|
49 |
return 'https://goo.gl/68ucHp';
|
50 |
}
|
91 |
|
92 |
return $options;
|
93 |
} );
|
94 |
+
}
|
95 |
+
|
96 |
+
/**
|
97 |
+
* Print admin notice: "Would you like to send them for spam checking?"
|
98 |
+
*
|
99 |
+
* If user clicked button "Yes, do it", plugin will exec action,
|
100 |
+
* that put all unapproved comments to spam check queue.
|
101 |
+
*/
|
102 |
+
add_action( 'wbcr/factory/admin_notices', function ( $notices, $plugin_name ) {
|
103 |
+
if ( $plugin_name != WDN_Plugin::app()->getPluginName() ) {
|
104 |
+
return $notices;
|
105 |
+
}
|
106 |
+
|
107 |
+
$page_url = 'https://clearfy.pro/disable-admin-notices/';
|
108 |
+
|
109 |
+
$notice_text = sprintf( __( 'Thanks for using the Disable admin notices plugin! If you need support or all the features of the plugin, please buy the pro version <a class="button" href="%s">Get PRO</a>' ), $page_url );
|
110 |
+
|
111 |
+
$notices[] = [
|
112 |
+
'id' => 'wdan_get_premium',
|
113 |
+
'type' => 'success',
|
114 |
+
'dismissible' => true,
|
115 |
+
'dismiss_expires' => 0,
|
116 |
+
'text' => '<p><strong>Disable Admin Notices Individually:</strong><br>' . $notice_text . '</p>'
|
117 |
+
];
|
118 |
+
|
119 |
+
return $notices;
|
120 |
+
}, 10, 2 );
|
components/disable-admin-notices/admin/options.php
CHANGED
@@ -21,9 +21,9 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
21 |
* Эта функция используется для общей страницы настроек текущего плагина,
|
22 |
* а также для раширения настроек в плагине Clearfy.
|
23 |
*
|
24 |
-
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
25 |
-
* @since 1.0
|
26 |
* @return array Возвращает группу зарегистрируемых опций
|
|
|
|
|
27 |
*/
|
28 |
function wbcr_dan_get_plugin_options() {
|
29 |
$options = [];
|
@@ -33,32 +33,43 @@ function wbcr_dan_get_plugin_options() {
|
|
33 |
'html' => '<div class="wbcr-factory-page-group-header">' . '<strong>' . __( 'Admin notifications, Update nags', 'disable-admin-notices' ) . '</strong>' . '<p>' . __( 'Do you know the situation, when some plugin offers you to update to premium, to collect technical data and shows many annoying notices? You are close these notices every now and again but they newly appears and interfere your work with WordPress. Even worse, some plugin’s authors delete “close” button from notices and they shows in your admin panel forever.', 'disable-admin-notices' ) . '</p>' . '</div>'
|
34 |
];
|
35 |
|
36 |
-
$
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
'data' => [
|
42 |
-
[
|
43 |
-
'all',
|
44 |
-
__( 'All notices', 'disable-admin-notices' ),
|
45 |
-
__( 'Hide all notices globally.', 'disable-admin-notices' )
|
46 |
-
],
|
47 |
-
[
|
48 |
-
'only_selected',
|
49 |
-
__( 'Only selected', 'disable-admin-notices' ),
|
50 |
-
__( 'Hide selected notices only. You will see the link "Hide notification forever" in each notice. Push it and they will not bother you anymore.', 'disable-admin-notices' )
|
51 |
-
],
|
52 |
-
[
|
53 |
-
'not_hide',
|
54 |
-
__( "Don't nide", 'disable-admin-notices' ),
|
55 |
-
__( 'Do not hide notices and do not show “Hide notification forever” link for admin.', 'disable-admin-notices' )
|
56 |
-
]
|
57 |
],
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
'all' => [
|
63 |
'show' => '.factory-control-hide_admin_notices_user_roles',
|
64 |
'hide' => '.factory-control-reset_notices_button'
|
@@ -73,6 +84,30 @@ function wbcr_dan_get_plugin_options() {
|
|
73 |
]
|
74 |
];
|
75 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
/*$options[] = array(
|
77 |
'type' => 'dropdown',
|
78 |
'name' => 'hide_admin_notices_for',
|
@@ -130,8 +165,8 @@ function wbcr_dan_get_plugin_options() {
|
|
130 |
* Это необходимо для того, чтобы не создавать отдельную страницу в плагине Clearfy, \
|
131 |
* с настройками этого плагина, потому что это ухудшает юзабилити.
|
132 |
*
|
133 |
-
* @param array
|
134 |
-
* @param
|
135 |
*
|
136 |
* @return mixed Отсортированный массив с группой опций
|
137 |
*/
|
@@ -158,10 +193,11 @@ add_filter( 'wbcr_clr_additionally_form_options', 'wbcr_dan_additionally_form_op
|
|
158 |
* Эта модикация является не стандартной, поэтому мы не можете реалировать ее
|
159 |
* через фреймворк.
|
160 |
*
|
161 |
-
* @
|
|
|
162 |
* @since 1.0
|
163 |
*
|
164 |
-
* @
|
165 |
*/
|
166 |
function wbcr_dan_reset_notices_button( $html_builder ) {
|
167 |
global $wpdb;
|
@@ -184,33 +220,33 @@ function wbcr_dan_reset_notices_button( $html_builder ) {
|
|
184 |
}
|
185 |
|
186 |
?>
|
187 |
-
|
188 |
-
|
189 |
<?= __( 'Reset hidden notices for', 'disable-admin-notices' ); ?>
|
190 |
-
|
191 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC" alt="">
|
192 |
</span>
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
<?php wp_nonce_field( $form_name, 'wbcr_dan_reset_nonce' ); ?>
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
<?php if ( $reseted ): ?>
|
208 |
-
|
209 |
<?php endif; ?>
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
<?php
|
215 |
}
|
216 |
|
21 |
* Эта функция используется для общей страницы настроек текущего плагина,
|
22 |
* а также для раширения настроек в плагине Clearfy.
|
23 |
*
|
|
|
|
|
24 |
* @return array Возвращает группу зарегистрируемых опций
|
25 |
+
* @since 1.0
|
26 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
27 |
*/
|
28 |
function wbcr_dan_get_plugin_options() {
|
29 |
$options = [];
|
33 |
'html' => '<div class="wbcr-factory-page-group-header">' . '<strong>' . __( 'Admin notifications, Update nags', 'disable-admin-notices' ) . '</strong>' . '<p>' . __( 'Do you know the situation, when some plugin offers you to update to premium, to collect technical data and shows many annoying notices? You are close these notices every now and again but they newly appears and interfere your work with WordPress. Even worse, some plugin’s authors delete “close” button from notices and they shows in your admin panel forever.', 'disable-admin-notices' ) . '</p>' . '</div>'
|
34 |
];
|
35 |
|
36 |
+
$hide_admin_notices_data = [
|
37 |
+
[
|
38 |
+
'not_hide',
|
39 |
+
__( "Don't hide", 'disable-admin-notices' ),
|
40 |
+
__( 'Do not hide notices and do not show “Hide notification forever” link for admin.', 'disable-admin-notices' )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
],
|
42 |
+
[
|
43 |
+
'all',
|
44 |
+
__( 'All notices', 'disable-admin-notices' ),
|
45 |
+
__( 'Hide all notices globally.', 'disable-admin-notices' ) . sprintf( __( 'Watch the <a href="%s" target="_blank">video</a> to find out how it works .', 'disable-admin-notices' ), 'https://youtu.be/_Lv5i4P3Gqs' )
|
46 |
+
],
|
47 |
+
[
|
48 |
+
'only_selected',
|
49 |
+
__( 'Only selected', 'disable-admin-notices' ),
|
50 |
+
__( 'Hide selected notices only. You will see the link "Hide notification forever" in each notice. Push it and they will not bother you anymore.', 'disable-admin-notices' ) . sprintf( __( 'Watch the <a href="%s" target="_blank">video</a> to find out how it works .', 'disable-admin-notices' ), 'https://youtu.be/HazI81AsHuY' )
|
51 |
+
]
|
52 |
+
];
|
53 |
+
|
54 |
+
if ( ! defined( 'WCL_PLUGIN_ACTIVE' ) ) {
|
55 |
+
$hide_admin_notices_data[] = [
|
56 |
+
'compact_panel',
|
57 |
+
__( 'Compact panel', 'disable-admin-notices' ),
|
58 |
+
__( 'Collapse all notifications in one line (panel with notification counters), to see the notifications, you will need to click this panel.', 'disable-admin-notices' ) . sprintf( __( 'Watch the <a href="%s" target="_blank">video</a> to find out how it works .', 'disable-admin-notices' ), 'https://youtu.be/437u1Js2o2M' )
|
59 |
+
];
|
60 |
+
}
|
61 |
+
|
62 |
+
$options[] = [
|
63 |
+
'type' => 'dropdown',
|
64 |
+
'name' => 'hide_admin_notices',
|
65 |
+
'way' => 'buttons',
|
66 |
+
'title' => __( 'Hide admin notices', 'disable-admin-notices' ),
|
67 |
+
'data' => $hide_admin_notices_data,
|
68 |
+
'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'green' ],
|
69 |
+
'hint' => __( 'Some plugins shows notifications about premium version, data collecting or promote their services. Even if you push close button (that sometimes are impossible), notices are shows again in some time. This option allows you to control notices. Hide them all or each individually. Some plugins shows notifications about premium version, data collecting or promote their services. Even if you push close button (that sometimes are impossible), notices are shows again in some time. This option allows you to control notices. Hide them all or each individually.', 'disable-admin-notices' ),
|
70 |
+
'default' => 'only_selected',
|
71 |
+
'cssClass' => ! ( WDN_Plugin::app()->premium->is_activate() && WDN_Plugin::app()->premium->is_install_package() ) ? [ 'wdanpro-radio-premium-label' ] : [],
|
72 |
+
'events' => [
|
73 |
'all' => [
|
74 |
'show' => '.factory-control-hide_admin_notices_user_roles',
|
75 |
'hide' => '.factory-control-reset_notices_button'
|
84 |
]
|
85 |
];
|
86 |
|
87 |
+
if ( ! defined( 'WCL_PLUGIN_ACTIVE' ) ) {
|
88 |
+
$options[] = [
|
89 |
+
'type' => 'checkbox',
|
90 |
+
'way' => 'buttons',
|
91 |
+
'name' => 'disable_updates_nags_for_plugins',
|
92 |
+
'title' => __( 'Disable plugins updates nags', 'disable-admin-notices' ),
|
93 |
+
'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
|
94 |
+
'hint' => __( 'Disable plugins updates nags', 'disable-admin-notices' ),
|
95 |
+
'cssClass' => ! ( WDN_Plugin::app()->premium->is_activate() && WDN_Plugin::app()->premium->is_install_package() ) ? [ 'factory-checkbox-disabled wdanpro-checkbox-premium-label' ] : [],
|
96 |
+
'default' => false
|
97 |
+
];
|
98 |
+
|
99 |
+
$options[] = [
|
100 |
+
'type' => 'checkbox',
|
101 |
+
'way' => 'buttons',
|
102 |
+
'name' => 'disable_updates_nags_for_core',
|
103 |
+
'title' => __( 'Disable core updates nags', 'disable-admin-notices' ),
|
104 |
+
'layout' => [ 'hint-type' => 'icon', 'hint-icon-color' => 'grey' ],
|
105 |
+
'hint' => __( 'Disable core updates nags', 'disable-admin-notices' ),
|
106 |
+
'cssClass' => ! ( WDN_Plugin::app()->premium->is_activate() && WDN_Plugin::app()->premium->is_install_package() ) ? [ 'factory-checkbox-disabled wdanpro-checkbox-premium-label' ] : [],
|
107 |
+
'default' => false
|
108 |
+
];
|
109 |
+
}
|
110 |
+
|
111 |
/*$options[] = array(
|
112 |
'type' => 'dropdown',
|
113 |
'name' => 'hide_admin_notices_for',
|
165 |
* Это необходимо для того, чтобы не создавать отдельную страницу в плагине Clearfy, \
|
166 |
* с настройками этого плагина, потому что это ухудшает юзабилити.
|
167 |
*
|
168 |
+
* @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
|
169 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $page Экземпляр страницы
|
170 |
*
|
171 |
* @return mixed Отсортированный массив с группой опций
|
172 |
*/
|
193 |
* Эта модикация является не стандартной, поэтому мы не можете реалировать ее
|
194 |
* через фреймворк.
|
195 |
*
|
196 |
+
* @param @param $html_builder Wbcr_FactoryForms427_Html
|
197 |
+
*
|
198 |
* @since 1.0
|
199 |
*
|
200 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
201 |
*/
|
202 |
function wbcr_dan_reset_notices_button( $html_builder ) {
|
203 |
global $wpdb;
|
220 |
}
|
221 |
|
222 |
?>
|
223 |
+
<div class="form-group form-group-checkbox factory-control-reset_notices_button">
|
224 |
+
<label for="wbcr_clearfy_reset_notices_button" class="col-sm-4 control-label">
|
225 |
<?= __( 'Reset hidden notices for', 'disable-admin-notices' ); ?>
|
226 |
+
<span class="factory-hint-icon factory-hint-icon-grey" data-toggle="factory-tooltip" data-placement="right" title="" data-original-title="<?php _e( 'Push reset hidden notices if you need to show hidden notices again.', 'disable-admin-notices' ) ?>">
|
227 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC" alt="">
|
228 |
</span>
|
229 |
+
</label>
|
230 |
+
<div class="control-group col-sm-8">
|
231 |
+
<div class="factory-checkbox factory-from-control-checkbox factory-buttons-way btn-group">
|
232 |
+
<form method="post">
|
233 |
<?php wp_nonce_field( $form_name, 'wbcr_dan_reset_nonce' ); ?>
|
234 |
+
<p>
|
235 |
+
<input type="radio" name="wbcr_dan_reset_for_users" value="current_user" checked/> <?= __( 'current user', 'disable-admin-notices' ); ?>
|
236 |
+
</p>
|
237 |
+
<p>
|
238 |
+
<input type="radio" name="wbcr_dan_reset_for_users" value="all"/> <?= __( 'all users', 'disable-admin-notices' ); ?>
|
239 |
+
</p>
|
240 |
+
<p>
|
241 |
+
<input type="submit" name="wbcr_dan_reset_action" value="<?= __( 'Reset notices', 'disable-admin-notices' ); ?>" class="button button-default"/>
|
242 |
+
</p>
|
243 |
<?php if ( $reseted ): ?>
|
244 |
+
<div style="color:green;margin-top:5px;"><?php _e( 'Hidden notices are successfully reset, now you can see them again!', 'disable-admin-notices' ) ?></div>
|
245 |
<?php endif; ?>
|
246 |
+
</form>
|
247 |
+
</div>
|
248 |
+
</div>
|
249 |
+
</div>
|
250 |
<?php
|
251 |
}
|
252 |
|
components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php
ADDED
@@ -0,0 +1,147 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// Exit if accessed directly
|
4 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
5 |
+
exit;
|
6 |
+
}
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Страница общих настроек для этого плагина.
|
10 |
+
*
|
11 |
+
* Не поддерживает режим работы с мультисаймами.
|
12 |
+
*
|
13 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
14 |
+
* @copyright (c) 2019 Webraftic Ltd
|
15 |
+
* @version 1.0
|
16 |
+
*/
|
17 |
+
class WDAN_Edit_Admin_Bar extends Wbcr_FactoryClearfy221_PageBase {
|
18 |
+
|
19 |
+
/**
|
20 |
+
* {@inheritDoc}
|
21 |
+
*
|
22 |
+
* @var string
|
23 |
+
*/
|
24 |
+
public $id = "wdanp-edit-admin-bar";
|
25 |
+
|
26 |
+
/**
|
27 |
+
* {@inheritDoc}
|
28 |
+
*
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
public $type = "page";
|
32 |
+
|
33 |
+
/**
|
34 |
+
* {@inheritDoc}
|
35 |
+
*
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
public $page_menu_dashicon = 'dashicons-hidden';
|
39 |
+
|
40 |
+
/**
|
41 |
+
* {@inheritDoc}
|
42 |
+
*
|
43 |
+
* @since 2.0.5 - добавлен
|
44 |
+
* @var bool
|
45 |
+
*/
|
46 |
+
public $show_right_sidebar_in_options = false;
|
47 |
+
|
48 |
+
|
49 |
+
/**
|
50 |
+
* @param WDN_Plugin $plugin
|
51 |
+
*/
|
52 |
+
public function __construct( $plugin ) {
|
53 |
+
$this->menu_title = __( 'Hide adminbar items', 'disable-admin-notices' );
|
54 |
+
$this->page_menu_short_description = __( 'You can hide an annoying adminbar menu', 'disable-admin-notices' );
|
55 |
+
|
56 |
+
parent::__construct( $plugin );
|
57 |
+
|
58 |
+
$this->plugin = $plugin;
|
59 |
+
|
60 |
+
add_action( 'wp_before_admin_bar_render', [ $this, 'remove_from_admin_bar' ], 999 );
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* Requests assets (js and css) for the page.
|
65 |
+
*
|
66 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
67 |
+
* @param Wbcr_Factory429_StyleList $styles
|
68 |
+
*
|
69 |
+
* @return void
|
70 |
+
* @see Wbcr_FactoryPages429_AdminPage
|
71 |
+
*
|
72 |
+
*/
|
73 |
+
public function assets( $scripts, $styles ) {
|
74 |
+
parent::assets( $scripts, $styles );
|
75 |
+
|
76 |
+
$this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
|
77 |
+
}
|
78 |
+
|
79 |
+
public function remove_from_admin_bar() {
|
80 |
+
global $wp_admin_bar;
|
81 |
+
|
82 |
+
if ( empty( $wp_admin_bar ) ) {
|
83 |
+
return;
|
84 |
+
}
|
85 |
+
|
86 |
+
$hidden_items = $this->plugin->getPopulateOption( 'hidden_adminbar_items', [] );
|
87 |
+
|
88 |
+
$nodes = [];
|
89 |
+
foreach ( $wp_admin_bar->get_nodes() as $node ) {
|
90 |
+
if ( false === $node->parent && ! empty( $node->title ) ) {
|
91 |
+
if ( "updates" === $node->id ) {
|
92 |
+
$node->title = "Updates";
|
93 |
+
}
|
94 |
+
if ( "comments" === $node->id ) {
|
95 |
+
$node->title = "Comments";
|
96 |
+
}
|
97 |
+
$nodes[ $node->id ] = strip_tags( $node->title );
|
98 |
+
}
|
99 |
+
}
|
100 |
+
|
101 |
+
$this->plugin->updatePopulateOption( 'adminbar_items', $nodes );
|
102 |
+
}
|
103 |
+
|
104 |
+
public function showPageContent() {
|
105 |
+
$all_items = $this->plugin->getPopulateOption( 'adminbar_items', [] );
|
106 |
+
$hidden_items = $this->plugin->getPopulateOption( 'hidden_adminbar_items', [] );
|
107 |
+
|
108 |
+
?>
|
109 |
+
|
110 |
+
<div class="wrdan-premium-fake-content">
|
111 |
+
<div class="wdan-premium-info">
|
112 |
+
<h3>Hide admin bar items (menu) PRO</h3>
|
113 |
+
<p>This function allows you to disable annoying menu items in the admin bar. Some plugins take up space
|
114 |
+
in
|
115 |
+
the admin bar to insert their ads. Just get rid of this ad with the premium features of our
|
116 |
+
plugin.</p>
|
117 |
+
<a class="wdan-button wdan-button-default wdan-button-go-pro" target="_blank" href="https://clearfy.pro/disable-admin-notices/">Go
|
118 |
+
Pro</a>
|
119 |
+
</div>
|
120 |
+
<div class="wdan-premium-layer"></div>
|
121 |
+
|
122 |
+
<h4>Disable adminbar items</h4>
|
123 |
+
<table class="wp-list-table widefat fixed striped">
|
124 |
+
<tr>
|
125 |
+
<th><strong>Menu title</strong></th>
|
126 |
+
<th style="width:100px;"><strong>Action</strong></th>
|
127 |
+
</tr>
|
128 |
+
<?php foreach ( (array) $all_items as $ID => $title ): ?>
|
129 |
+
|
130 |
+
<tr>
|
131 |
+
<td><?php echo $title; ?></td>
|
132 |
+
<td>
|
133 |
+
<?php if ( ! isset( $hidden_items[ $ID ] ) ): ?>
|
134 |
+
<a style="color:#e66113;" href="<?php echo wp_nonce_url( $this->getActionUrl( 'disable-adminbar-item', [ 'id' => $ID ] ), 'disable_adminbar_item_' . $ID ); ?>">Disable</a>
|
135 |
+
<?php else: ?>
|
136 |
+
<a style="color:#428bca;" href="<?php echo wp_nonce_url( $this->getActionUrl( 'enable-adminbar-item', [ 'id' => $ID ] ), 'enable_adminbar_item_' . $ID ); ?>">Enable</a>
|
137 |
+
<?php endif; ?>
|
138 |
+
</td>
|
139 |
+
</tr>
|
140 |
+
<?php endforeach; ?>
|
141 |
+
</table>
|
142 |
+
</div>
|
143 |
+
|
144 |
+
<?php
|
145 |
+
}
|
146 |
+
|
147 |
+
}
|
components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php
ADDED
@@ -0,0 +1,164 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// Exit if accessed directly
|
4 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
5 |
+
exit;
|
6 |
+
}
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Страница общих настроек для этого плагина.
|
10 |
+
*
|
11 |
+
* Не поддерживает режим работы с мультисаймами.
|
12 |
+
*
|
13 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
14 |
+
* @copyright (c) 2019 Webraftic Ltd
|
15 |
+
* @version 1.0
|
16 |
+
*/
|
17 |
+
class WDAN_Block_Ad_Redirects extends Wbcr_FactoryClearfy221_PageBase {
|
18 |
+
|
19 |
+
/**
|
20 |
+
* {@inheritDoc}
|
21 |
+
*
|
22 |
+
* @var string
|
23 |
+
*/
|
24 |
+
public $id = "wdanp-edit-redirects";
|
25 |
+
|
26 |
+
/**
|
27 |
+
* {@inheritDoc}
|
28 |
+
*
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
public $type = "page";
|
32 |
+
|
33 |
+
/**
|
34 |
+
* {@inheritDoc}
|
35 |
+
*
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
public $page_menu_dashicon = 'dashicons dashicons-undo';
|
39 |
+
|
40 |
+
/**
|
41 |
+
* {@inheritDoc}
|
42 |
+
*
|
43 |
+
* @since 2.0.5 - добавлен
|
44 |
+
* @var bool
|
45 |
+
*/
|
46 |
+
public $show_right_sidebar_in_options = false;
|
47 |
+
|
48 |
+
|
49 |
+
/**
|
50 |
+
* @param WDN_Plugin $plugin
|
51 |
+
*/
|
52 |
+
public function __construct( $plugin ) {
|
53 |
+
$this->menu_title = __( 'Block ad redirects', 'disable-admin-notices' );
|
54 |
+
$this->page_menu_short_description = __( 'Break advertising redirects', 'disable-admin-notices' );
|
55 |
+
|
56 |
+
parent::__construct( $plugin );
|
57 |
+
|
58 |
+
$this->plugin = $plugin;
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Requests assets (js and css) for the page.
|
63 |
+
*
|
64 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
65 |
+
* @param Wbcr_Factory429_StyleList $styles
|
66 |
+
*
|
67 |
+
* @return void
|
68 |
+
* @see Wbcr_FactoryPages429_AdminPage
|
69 |
+
*
|
70 |
+
*/
|
71 |
+
public function assets( $scripts, $styles ) {
|
72 |
+
parent::assets( $scripts, $styles );
|
73 |
+
|
74 |
+
$this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
|
75 |
+
}
|
76 |
+
|
77 |
+
public function get_break_redirects() {
|
78 |
+
return [];
|
79 |
+
}
|
80 |
+
|
81 |
+
public function showPageContent() {
|
82 |
+
$redirects = $this->get_break_redirects();
|
83 |
+
?>
|
84 |
+
|
85 |
+
<div class="wrdan-premium-fake-content">
|
86 |
+
<div class="wdan-premium-info">
|
87 |
+
<h3>Block Ad redirects PRO</h3>
|
88 |
+
<p>This feature will be useful to you to break advertising redirects. Some plugins, when updating or
|
89 |
+
during
|
90 |
+
installation, may redirect you to their page with advertisements or news. If plugins do this too
|
91 |
+
often,
|
92 |
+
it can be a headache for you. Break these redirects with our premium features.</p>
|
93 |
+
<a class="wdan-button wdan-button-default wdan-button-go-pro" target="_blank" href="https://clearfy.pro/disable-admin-notices/">
|
94 |
+
Go Pro
|
95 |
+
</a>
|
96 |
+
</div>
|
97 |
+
<div class="wdan-premium-layer"></div>
|
98 |
+
|
99 |
+
<h4>Block ad redirects</h4>
|
100 |
+
<form method="post">
|
101 |
+
<label for="wdnpro-redirect-url">Enter url for block:</label><br>
|
102 |
+
<input id="wdnpro-redirect-url" style="width:400px;" type="text" name="wdnpro_redirect_url">
|
103 |
+
<input type="submit" name="wdnpro_add_block" class="button" value="Add block">
|
104 |
+
</form>
|
105 |
+
<br>
|
106 |
+
<table class="wp-list-table widefat fixed striped">
|
107 |
+
<tr>
|
108 |
+
<th>Url</th>
|
109 |
+
<th style="width:200px;">Action</th>
|
110 |
+
</tr>
|
111 |
+
<tr>
|
112 |
+
<td>
|
113 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
114 |
+
</td>
|
115 |
+
<td>
|
116 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
117 |
+
</td>
|
118 |
+
</tr>
|
119 |
+
<tr>
|
120 |
+
<td>
|
121 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
122 |
+
</td>
|
123 |
+
<td>
|
124 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
125 |
+
</td>
|
126 |
+
</tr>
|
127 |
+
<tr>
|
128 |
+
<td>
|
129 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
130 |
+
</td>
|
131 |
+
<td>
|
132 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
133 |
+
</td>
|
134 |
+
</tr>
|
135 |
+
<tr>
|
136 |
+
<td>
|
137 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
138 |
+
</td>
|
139 |
+
<td>
|
140 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
141 |
+
</td>
|
142 |
+
</tr>
|
143 |
+
<tr>
|
144 |
+
<td>
|
145 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
146 |
+
</td>
|
147 |
+
<td>
|
148 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
149 |
+
</td>
|
150 |
+
</tr>
|
151 |
+
<tr>
|
152 |
+
<td>
|
153 |
+
https://site.com/wp-admin/?page=plugin-name&ads=redirect
|
154 |
+
</td>
|
155 |
+
<td>
|
156 |
+
<a style="color:#428bca;" href="#">Unblock</a>
|
157 |
+
</td>
|
158 |
+
</tr>
|
159 |
+
</table>
|
160 |
+
</div>
|
161 |
+
<?php
|
162 |
+
}
|
163 |
+
|
164 |
+
}
|
components/disable-admin-notices/admin/pages/class-pages-license.php
ADDED
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Exit if accessed directly
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit;
|
5 |
+
}
|
6 |
+
|
7 |
+
/**
|
8 |
+
* Страница лицензирования плагина.
|
9 |
+
*
|
10 |
+
* Поддерживает режим работы с мультисаймами. Вы можете увидеть эту страницу в панели настройки сети.
|
11 |
+
*
|
12 |
+
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
13 |
+
*
|
14 |
+
* @copyright (c) 2018 Webraftic Ltd
|
15 |
+
*/
|
16 |
+
class WDN_LicensePage extends Wbcr_FactoryClearfy221_LicensePage {
|
17 |
+
|
18 |
+
/**
|
19 |
+
* {@inheritdoc}
|
20 |
+
*
|
21 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
22 |
+
* @since 1.6.0
|
23 |
+
* @var string
|
24 |
+
*/
|
25 |
+
public $id = 'wdn_license';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* {@inheritdoc}
|
29 |
+
*
|
30 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
31 |
+
* @since 1.6.0
|
32 |
+
* @var string
|
33 |
+
*/
|
34 |
+
public $page_parent_page;
|
35 |
+
|
36 |
+
/**
|
37 |
+
* WCL_LicensePage constructor.
|
38 |
+
*
|
39 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
40 |
+
*
|
41 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
42 |
+
*
|
43 |
+
*/
|
44 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
45 |
+
$this->menu_title = __( 'License', 'robin-image-optimizer' );
|
46 |
+
$this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
|
47 |
+
$this->plan_name = __( 'Disable admin notices premium', 'robin-image-optimizer' );
|
48 |
+
|
49 |
+
/*if ( defined( 'WIO_PLUGIN_ACTIVE' ) && ! wrio_is_clearfy_license_activate() ) {
|
50 |
+
$this->page_parent_page = 'none';
|
51 |
+
}*/
|
52 |
+
|
53 |
+
parent::__construct( $plugin );
|
54 |
+
|
55 |
+
/**
|
56 |
+
* Adds a new plugin card to license components page
|
57 |
+
*
|
58 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
59 |
+
* @since 1.6.2
|
60 |
+
*/
|
61 |
+
/*add_filter( 'wbcr/clearfy/license/list_components', function ( $components ) {
|
62 |
+
$title = 'Free';
|
63 |
+
$icon = 'clearfy-premium-icon-256x256--lock.png';
|
64 |
+
|
65 |
+
if ( $this->is_premium ) {
|
66 |
+
$title = 'Premium';
|
67 |
+
$icon = 'clearfy-premium-icon-256x256--default.png';
|
68 |
+
}
|
69 |
+
|
70 |
+
$components[] = [
|
71 |
+
'name' => 'clearfy',
|
72 |
+
'title' => sprintf( __( 'Clearfy [%s]', 'clearfy' ), $title ),
|
73 |
+
'type' => 'internal',
|
74 |
+
'build' => $this->is_premium ? 'premium' : 'free',
|
75 |
+
'key' => $this->get_hidden_license_key(),
|
76 |
+
'plan' => $this->get_plan(),
|
77 |
+
'expiration_days' => $this->get_expiration_days(),
|
78 |
+
'quota' => $this->is_premium ? $this->premium_license->get_count_active_sites() . ' ' . __( 'of', 'clearfy' ) . ' ' . $this->premium_license->get_sites_quota() : null,
|
79 |
+
'subscription' => $this->is_premium && $this->premium_has_subscription ? sprintf( __( 'Automatic renewal, every %s', '' ), esc_attr( $this->get_billing_cycle_readable() ) ) : null,
|
80 |
+
'url' => 'https://clearfy.pro/',
|
81 |
+
'icon' => WCL_PLUGIN_URL . '/admin/assets/img/' . $icon,
|
82 |
+
'description' => __( '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.', 'clearfy' ),
|
83 |
+
'license_page_id' => 'clearfy_license'
|
84 |
+
];
|
85 |
+
|
86 |
+
return $components;
|
87 |
+
} );*/
|
88 |
+
}
|
89 |
+
|
90 |
+
/**
|
91 |
+
* {@inheritdoc}
|
92 |
+
*
|
93 |
+
* @return string
|
94 |
+
* @since 1.6.0
|
95 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
96 |
+
*/
|
97 |
+
/*public function get_plan_description() {
|
98 |
+
$description = '<p style="font-size: 16px;">' . __( '<b>Clearfy Business</b> is a paid package of components for the popular free WordPress plugin named Clearfy. You get access to all paid components at one price.', 'clearfy' ) . '</p>';
|
99 |
+
$description .= '<p style="font-size: 16px;">' . __( 'Paid license guarantees that you can download and update existing and future paid components of the plugin.', 'clearfy' ) . '</p>';
|
100 |
+
|
101 |
+
return $description;
|
102 |
+
}*/
|
103 |
+
}
|
components/disable-admin-notices/admin/pages/class-pages-settings.php
ADDED
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Страница общих настроек для этого плагина.
|
4 |
+
*
|
5 |
+
* Может быть использована только, если этот плагин используется как отдельный плагин, а не как аддон
|
6 |
+
* дя плагина Clearfy. Если плагин загружен, как аддон для Clearfy, эта страница не будет подключена.
|
7 |
+
*
|
8 |
+
* Поддерживает режим работы с мультисаймами. Вы можете увидеть эту страницу в панели настройки сети.
|
9 |
+
*
|
10 |
+
* Github: https://github.com/alexkovalevv
|
11 |
+
*
|
12 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
13 |
+
* @copyright (c) 2018 Webraftic Ltd
|
14 |
+
* @version 1.0
|
15 |
+
*/
|
16 |
+
|
17 |
+
// Exit if accessed directly
|
18 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
+
exit;
|
20 |
+
}
|
21 |
+
|
22 |
+
class WDN_Settings_Page extends Wbcr_FactoryClearfy221_PageBase {
|
23 |
+
|
24 |
+
/**
|
25 |
+
* {@inheritDoc}
|
26 |
+
*
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
public $id = "wdan_settings";
|
30 |
+
|
31 |
+
/**
|
32 |
+
* {@inheritDoc}
|
33 |
+
*
|
34 |
+
* @var string
|
35 |
+
*/
|
36 |
+
public $page_menu_dashicon = 'dashicons-admin-generic';
|
37 |
+
|
38 |
+
/**
|
39 |
+
* {@inheritDoc}
|
40 |
+
*
|
41 |
+
* @var bool
|
42 |
+
*/
|
43 |
+
public $available_for_multisite = true;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* {@inheritDoc}
|
47 |
+
*
|
48 |
+
* @since 1.1.0
|
49 |
+
* @var bool
|
50 |
+
*/
|
51 |
+
public $show_right_sidebar_in_options = true;
|
52 |
+
|
53 |
+
/**
|
54 |
+
* {@inheritDoc}
|
55 |
+
*
|
56 |
+
* @since 1.1.3 - Added
|
57 |
+
* @var bool - true show, false hide
|
58 |
+
*/
|
59 |
+
public $show_search_options_form = false;
|
60 |
+
|
61 |
+
/**
|
62 |
+
* {@inheritDoc}
|
63 |
+
* @var int
|
64 |
+
*/
|
65 |
+
public $page_menu_position = 100;
|
66 |
+
|
67 |
+
|
68 |
+
/**
|
69 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
70 |
+
*/
|
71 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
72 |
+
$this->menu_title = __( 'Hide admin notices', 'disable-admin-notices' );
|
73 |
+
$this->page_menu_short_description = __( 'General settings', 'disable-admin-notices' );
|
74 |
+
|
75 |
+
$this->internal = false;
|
76 |
+
$this->menu_target = 'options-general.php';
|
77 |
+
$this->add_link_to_plugin_actions = true;
|
78 |
+
|
79 |
+
parent::__construct( $plugin );
|
80 |
+
|
81 |
+
$this->plugin = $plugin;
|
82 |
+
}
|
83 |
+
|
84 |
+
public function getPageTitle() {
|
85 |
+
return __( 'Settings', 'disable-admin-notices' );
|
86 |
+
}
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Requests assets (js and css) for the page.
|
90 |
+
*
|
91 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
92 |
+
* @param Wbcr_Factory429_StyleList $styles
|
93 |
+
*
|
94 |
+
* @return void
|
95 |
+
* @see Wbcr_FactoryPages429_AdminPage
|
96 |
+
*
|
97 |
+
*/
|
98 |
+
public function assets( $scripts, $styles ) {
|
99 |
+
parent::assets( $scripts, $styles );
|
100 |
+
|
101 |
+
$this->styles->add( WDN_PLUGIN_URL . '/admin/assets/css/settings.css' );
|
102 |
+
}
|
103 |
+
|
104 |
+
/**
|
105 |
+
* {@inheritDoc}
|
106 |
+
*
|
107 |
+
* @return array
|
108 |
+
*/
|
109 |
+
public function actionsNotice( $notices ) {
|
110 |
+
$notices[] = [
|
111 |
+
'conditions' => [
|
112 |
+
'wbcr_dan_reseted_notices' => 1
|
113 |
+
],
|
114 |
+
'type' => 'success',
|
115 |
+
'message' => __( 'Hidden notices are successfully reset, now you can see them again!', 'disable-admin-notices' )
|
116 |
+
];
|
117 |
+
|
118 |
+
/*$notices[] = array(
|
119 |
+
'conditions' => array(
|
120 |
+
'wbcr_dan_clear_comments_error' => 1,
|
121 |
+
'wbcr_dan_code' => 'interal_error'
|
122 |
+
),
|
123 |
+
'type' => 'danger',
|
124 |
+
'message' => __('An error occurred while trying to delete comments. Internal error occured. Please try again later.', 'factory_pages_429')
|
125 |
+
);*/
|
126 |
+
|
127 |
+
return $notices;
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* {@inheritDoc}
|
132 |
+
*
|
133 |
+
* @return array
|
134 |
+
*/
|
135 |
+
public function getPageOptions() {
|
136 |
+
$options = wbcr_dan_get_plugin_options();
|
137 |
+
|
138 |
+
$formOptions = [];
|
139 |
+
|
140 |
+
$formOptions[] = [
|
141 |
+
'type' => 'form-group',
|
142 |
+
'items' => $options,
|
143 |
+
//'cssClass' => 'postbox'
|
144 |
+
];
|
145 |
+
|
146 |
+
return apply_filters( 'wbcr_dan_notices_form_options', $formOptions, $this );
|
147 |
+
}
|
148 |
+
}
|
components/disable-admin-notices/admin/pages/class-pages.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Страница общих настроек для этого плагина.
|
4 |
+
*
|
5 |
+
* Может быть использована только, если этот плагин используется как отдельный плагин, а не как аддон
|
6 |
+
* дя плагина Clearfy. Если плагин загружен, как аддон для Clearfy, эта страница не будет подключена.
|
7 |
+
*
|
8 |
+
* Поддерживает режим работы с мультисаймами. Вы можете увидеть эту страницу в панели настройки сети.
|
9 |
+
*
|
10 |
+
* Github: https://github.com/alexkovalevv
|
11 |
+
*
|
12 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
13 |
+
* @copyright (c) 2018 Webraftic Ltd
|
14 |
+
* @version 1.0
|
15 |
+
*/
|
16 |
+
|
17 |
+
// Exit if accessed directly
|
18 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
+
exit;
|
20 |
+
}
|
21 |
+
|
22 |
+
class WDN_Page extends Wbcr_FactoryClearfy221_PageBase {
|
23 |
+
|
24 |
+
|
25 |
+
}
|
components/disable-admin-notices/clearfy.php
CHANGED
@@ -18,7 +18,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
18 |
}
|
19 |
|
20 |
if ( ! defined( 'WDN_PLUGIN_ACTIVE' ) ) {
|
21 |
-
define( 'WDN_PLUGIN_VERSION', '1.1.
|
22 |
define( 'WDN_TEXT_DOMAIN', 'disable-admin-notices' );
|
23 |
define( 'WDN_PLUGIN_ACTIVE', true );
|
24 |
|
18 |
}
|
19 |
|
20 |
if ( ! defined( 'WDN_PLUGIN_ACTIVE' ) ) {
|
21 |
+
define( 'WDN_PLUGIN_VERSION', '1.1.2' );
|
22 |
define( 'WDN_TEXT_DOMAIN', 'disable-admin-notices' );
|
23 |
define( 'WDN_PLUGIN_ACTIVE', true );
|
24 |
|
components/disable-admin-notices/disable-admin-notices.php
CHANGED
@@ -4,11 +4,11 @@
|
|
4 |
* Plugin URI: https://webcraftic.com
|
5 |
* Description: Disable admin notices plugin gives you the option to hide updates warnings and inline notices in the admin panel.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
-
* Version: 1.
|
8 |
* Text Domain: disable-admin-notices
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
/**
|
@@ -41,38 +41,55 @@ require_once( dirname( __FILE__ ) . '/libs/factory/core/includes/class-factory-r
|
|
41 |
|
42 |
// @formatter:off
|
43 |
$wdan_plugin_info = array(
|
44 |
-
'prefix'
|
45 |
-
'plugin_name'
|
46 |
-
'plugin_title'
|
47 |
|
48 |
// PLUGIN SUPPORT
|
49 |
'support_details' => array(
|
50 |
-
'url' => 'https://
|
51 |
'pages_map' => array(
|
52 |
-
'support'
|
53 |
-
'docs'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
)
|
55 |
),
|
56 |
-
|
57 |
// PLUGIN ADVERTS
|
58 |
-
'render_adverts'
|
59 |
-
'adverts_settings'
|
60 |
-
'dashboard_widget' =>
|
61 |
'right_sidebar' => true, // show adverts sidebar (default: false)
|
62 |
-
'notice' =>
|
63 |
),
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
-
array( 'libs/factory/bootstrap', '
|
68 |
-
array( 'libs/factory/forms', '
|
69 |
-
array( 'libs/factory/pages', '
|
70 |
-
array( 'libs/factory/clearfy', '
|
71 |
-
array( 'libs/factory/
|
|
|
72 |
)
|
73 |
);
|
74 |
|
75 |
-
$wdan_compatibility = new
|
76 |
'plugin_already_activate' => defined( 'WDN_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
@@ -80,6 +97,7 @@ $wdan_compatibility = new Wbcr_Factory428_Requirements( __FILE__, array_merge( $
|
|
80 |
) ) );
|
81 |
|
82 |
|
|
|
83 |
/**
|
84 |
* If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
|
85 |
* and the user will throw a warning.
|
@@ -105,7 +123,6 @@ define( 'WDN_PLUGIN_URL', plugins_url( null, __FILE__ ) );
|
|
105 |
|
106 |
|
107 |
|
108 |
-
|
109 |
/**
|
110 |
* -----------------------------------------------------------------------------
|
111 |
* PLUGIN INIT
|
4 |
* Plugin URI: https://webcraftic.com
|
5 |
* Description: Disable admin notices plugin gives you the option to hide updates warnings and inline notices in the admin panel.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
+
* Version: 1.2.1
|
8 |
* Text Domain: disable-admin-notices
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
/**
|
41 |
|
42 |
// @formatter:off
|
43 |
$wdan_plugin_info = array(
|
44 |
+
'prefix' => 'wbcr_dan_',
|
45 |
+
'plugin_name' => 'wbcr_dan',
|
46 |
+
'plugin_title' => __( 'Webcraftic disable admin notices', 'disable-admin-notices' ),
|
47 |
|
48 |
// PLUGIN SUPPORT
|
49 |
'support_details' => array(
|
50 |
+
'url' => 'https://clearfy.pro/',
|
51 |
'pages_map' => array(
|
52 |
+
'support' => 'support', // {site}/support
|
53 |
+
'docs' => 'docs', // {site}/docs,
|
54 |
+
'pricing' => 'disable-admin-notices'
|
55 |
+
)
|
56 |
+
),
|
57 |
+
// PLUGIN PREMIUM SETTINGS
|
58 |
+
'has_premium' => true,
|
59 |
+
'license_settings' => array(
|
60 |
+
'provider' => 'freemius',
|
61 |
+
'slug' => 'disable-admin-notices-premium',
|
62 |
+
'plugin_id' => '6456',
|
63 |
+
'public_key' => 'pk_0570ec3c1b4100b9c9a0cbfe80f9f',
|
64 |
+
'price' => 29,
|
65 |
+
'has_updates' => true,
|
66 |
+
'updates_settings' => array(
|
67 |
+
'maybe_rollback' => true,
|
68 |
+
'rollback_settings' => array(
|
69 |
+
'prev_stable_version' => '0.0.0'
|
70 |
+
)
|
71 |
)
|
72 |
),
|
|
|
73 |
// PLUGIN ADVERTS
|
74 |
+
'render_adverts' => true,
|
75 |
+
'adverts_settings' => array(
|
76 |
+
'dashboard_widget' => false, // show dashboard widget (default: false)
|
77 |
'right_sidebar' => true, // show adverts sidebar (default: false)
|
78 |
+
'notice' => false, // show notice message (default: false)
|
79 |
),
|
80 |
|
81 |
// FRAMEWORK MODULES
|
82 |
'load_factory_modules' => array(
|
83 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
84 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
85 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
86 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
87 |
+
array( 'libs/factory/freemius', 'factory_freemius_117', 'all' ),
|
88 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin' )
|
89 |
)
|
90 |
);
|
91 |
|
92 |
+
$wdan_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wdan_plugin_info, array(
|
93 |
'plugin_already_activate' => defined( 'WDN_PLUGIN_ACTIVE' ),
|
94 |
'required_php_version' => '5.4',
|
95 |
'required_wp_version' => '4.2.0',
|
97 |
) ) );
|
98 |
|
99 |
|
100 |
+
|
101 |
/**
|
102 |
* If the plugin is compatible, then it will continue its work, otherwise it will be stopped,
|
103 |
* and the user will throw a warning.
|
123 |
|
124 |
|
125 |
|
|
|
126 |
/**
|
127 |
* -----------------------------------------------------------------------------
|
128 |
* PLUGIN INIT
|
components/disable-admin-notices/includes/class-plugin.php
CHANGED
@@ -9,16 +9,16 @@
|
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly
|
12 |
-
//use WBCR\
|
13 |
|
14 |
if ( ! defined( 'ABSPATH' ) ) {
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
-
class WDN_Plugin extends
|
19 |
|
20 |
/**
|
21 |
-
* @var
|
22 |
*/
|
23 |
private static $app;
|
24 |
private $plugin_data;
|
@@ -26,7 +26,7 @@ class WDN_Plugin extends Wbcr_Factory428_Plugin {
|
|
26 |
|
27 |
/**
|
28 |
* @param string $plugin_path
|
29 |
-
* @param array
|
30 |
*
|
31 |
* @throws Exception
|
32 |
*/
|
@@ -44,35 +44,43 @@ class WDN_Plugin extends Wbcr_Factory428_Plugin {
|
|
44 |
}
|
45 |
|
46 |
/**
|
47 |
-
* @return
|
48 |
*/
|
49 |
public static function app() {
|
50 |
return self::$app;
|
51 |
}
|
52 |
|
53 |
private function registerPages() {
|
54 |
-
|
55 |
-
|
|
|
|
|
|
|
56 |
}
|
57 |
|
58 |
-
self::app()->registerPage( '
|
59 |
-
self::app()->registerPage( 'WDN_MoreFeaturesPage', WDN_PLUGIN_DIR . '/admin/pages/class-pages-more-features.php' );
|
60 |
}
|
61 |
|
62 |
private function admin_scripts() {
|
63 |
require( WDN_PLUGIN_DIR . '/admin/options.php' );
|
64 |
|
65 |
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
66 |
-
|
67 |
-
|
68 |
}
|
69 |
|
70 |
-
|
71 |
-
|
|
|
|
|
|
|
|
|
|
|
72 |
}
|
73 |
|
74 |
private function global_scripts() {
|
75 |
-
|
|
|
76 |
new WDN_ConfigHideNotices( self::$app );
|
77 |
}
|
78 |
}
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly
|
12 |
+
//use WBCR\Factory_Adverts_109\Base;
|
13 |
|
14 |
if ( ! defined( 'ABSPATH' ) ) {
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
+
class WDN_Plugin extends Wbcr_Factory429_Plugin {
|
19 |
|
20 |
/**
|
21 |
+
* @var Wbcr_Factory429_Plugin
|
22 |
*/
|
23 |
private static $app;
|
24 |
private $plugin_data;
|
26 |
|
27 |
/**
|
28 |
* @param string $plugin_path
|
29 |
+
* @param array $data
|
30 |
*
|
31 |
* @throws Exception
|
32 |
*/
|
44 |
}
|
45 |
|
46 |
/**
|
47 |
+
* @return Wbcr_Factory429_Plugin
|
48 |
*/
|
49 |
public static function app() {
|
50 |
return self::$app;
|
51 |
}
|
52 |
|
53 |
private function registerPages() {
|
54 |
+
self::app()->registerPage( 'WDN_Settings_Page', WDN_PLUGIN_DIR . '/admin/pages/class-pages-settings.php' );
|
55 |
+
|
56 |
+
if ( ! ( $this->premium->is_activate() && $this->premium->is_install_package() ) ) {
|
57 |
+
self::app()->registerPage( 'WDAN_Block_Ad_Redirects', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
|
58 |
+
self::app()->registerPage( 'WDAN_Edit_Admin_Bar', WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
|
59 |
}
|
60 |
|
61 |
+
self::app()->registerPage( 'WDN_LicensePage', WDN_PLUGIN_DIR . '/admin/pages/class-pages-license.php' );
|
|
|
62 |
}
|
63 |
|
64 |
private function admin_scripts() {
|
65 |
require( WDN_PLUGIN_DIR . '/admin/options.php' );
|
66 |
|
67 |
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
|
68 |
+
require_once( WDN_PLUGIN_DIR . '/admin/ajax/hide-notice.php' );
|
69 |
+
require_once( WDN_PLUGIN_DIR . '/admin/ajax/restore-notice.php' );
|
70 |
}
|
71 |
|
72 |
+
require_once( WDN_PLUGIN_DIR . '/admin/boot.php' );
|
73 |
+
require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-admin-bar.php' );
|
74 |
+
require_once( WDN_PLUGIN_DIR . '/admin/pages/class-pages-edit-redirects.php' );
|
75 |
+
|
76 |
+
add_action( 'plugins_loaded', function () {
|
77 |
+
$this->registerPages();
|
78 |
+
}, 30 );
|
79 |
}
|
80 |
|
81 |
private function global_scripts() {
|
82 |
+
require_once( WDN_PLUGIN_DIR . '/includes/function.php' );
|
83 |
+
require_once( WDN_PLUGIN_DIR . '/includes/classes/class-configurate-notices.php' );
|
84 |
new WDN_ConfigHideNotices( self::$app );
|
85 |
}
|
86 |
}
|
components/disable-admin-notices/includes/classes/class-configurate-notices.php
CHANGED
@@ -11,109 +11,104 @@
|
|
11 |
*/
|
12 |
|
13 |
// Exit if accessed directly
|
14 |
-
if( !defined('ABSPATH') ) {
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
-
class WDN_ConfigHideNotices extends
|
19 |
|
20 |
-
public function registerActionsAndFilters()
|
21 |
-
|
22 |
-
|
23 |
-
$hide_notices_type = $this->getPopulateOption('hide_admin_notices');
|
24 |
|
25 |
-
if( $hide_notices_type
|
26 |
-
add_action('admin_print_scripts', [$this, 'catchNotices'], 999);
|
27 |
|
28 |
-
if( empty($hide_notices_type) || $hide_notices_type == 'only_selected' ) {
|
29 |
-
add_action('admin_head', [$this, 'printNotices'], 999);
|
30 |
}
|
31 |
|
32 |
-
if( !empty($hide_notices_type) ) {
|
33 |
-
add_action('admin_bar_menu', [$this, 'notificationsPanel'], 999);
|
34 |
-
add_action('admin_enqueue_scripts', [$this, 'notificationsPanelStyles']);
|
35 |
}
|
36 |
}
|
37 |
}
|
38 |
}
|
39 |
|
40 |
-
public function printNotices()
|
41 |
-
|
42 |
-
|
43 |
-
add_action('network_admin_notices', [$this, 'noticesCollection']);
|
44 |
} else {
|
45 |
-
add_action('admin_notices', [$this, 'noticesCollection']);
|
46 |
}
|
47 |
}
|
48 |
|
49 |
|
50 |
-
public function notificationsPanelStyles()
|
51 |
-
|
52 |
-
if( !$this->getPopulateOption('show_notices_in_adminbar', false) && current_user_can('manage_network') ) {
|
53 |
return;
|
54 |
}
|
55 |
|
56 |
-
wp_enqueue_style('wbcr-notification-panel-styles', WDN_PLUGIN_URL . '/admin/assets/css/notifications-panel.css', [], $this->plugin->getPluginVersion());
|
57 |
-
wp_enqueue_script('wbcr-notification-panel-scripts', WDN_PLUGIN_URL . '/admin/assets/js/notifications-panel.js', [], $this->plugin->getPluginVersion());
|
58 |
}
|
59 |
|
60 |
-
public function notificationsPanel(&$wp_admin_bar)
|
61 |
-
|
62 |
-
if( !$this->getPopulateOption('show_notices_in_adminbar', false) ) {
|
63 |
return;
|
64 |
}
|
65 |
|
66 |
-
if( current_user_can('manage_options') || current_user_can('manage_network') ) {
|
67 |
$titles = [];
|
68 |
|
69 |
-
$notifications = get_user_meta(get_current_user_id(), WDN_Plugin::app()->getOptionName('hidden_notices'), true);
|
70 |
|
71 |
-
if( empty($notifications) ) {
|
72 |
return;
|
73 |
}
|
74 |
|
75 |
-
$cont_notifications = sizeof($notifications);
|
76 |
|
77 |
// Add top menu
|
78 |
-
$wp_admin_bar->add_menu([
|
79 |
-
'id'
|
80 |
'parent' => 'top-secondary',
|
81 |
-
'title'
|
82 |
-
'href'
|
83 |
-
]);
|
84 |
|
85 |
// loop
|
86 |
-
if( !empty($notifications) ) {
|
87 |
$i = 0;
|
88 |
-
foreach($notifications as $notice_id => $message) {
|
89 |
-
$message = $this->getExcerpt(stripslashes($message), 0, 350);
|
90 |
$message .= '<div class="wbcr-han-panel-restore-notify-line">';
|
91 |
-
$message .= '<a href="#" data-nonce="' . wp_create_nonce($this->plugin->getPluginName() . '_ajax_restore_notice_nonce');
|
92 |
-
$message .= '" data-notice-id="' . esc_attr($notice_id) . '" class="wbcr-han-panel-restore-notify-link">';
|
93 |
-
$message .= __('Restore notice', 'clearfy') . (isset($titles[$notice_id]) ? ' (' . $titles[$notice_id] . ')' : '');
|
94 |
$message .= '</a></div>';
|
95 |
|
96 |
-
$wp_admin_bar->add_menu([
|
97 |
-
'id'
|
98 |
'parent' => 'wbcr-han-notify-panel',
|
99 |
-
'title'
|
100 |
-
'href'
|
101 |
-
'meta'
|
102 |
'class' => ''
|
103 |
]
|
104 |
-
]);
|
105 |
|
106 |
-
$i++;
|
107 |
}
|
108 |
}
|
109 |
}
|
110 |
}
|
111 |
|
112 |
-
public function noticesCollection()
|
113 |
-
{
|
114 |
global $wbcr_dan_plugin_all_notices;
|
115 |
|
116 |
-
if( empty($wbcr_dan_plugin_all_notices) ) {
|
117 |
return;
|
118 |
}
|
119 |
?>
|
@@ -201,20 +196,19 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
201 |
});
|
202 |
</script>
|
203 |
<?php
|
204 |
-
foreach($wbcr_dan_plugin_all_notices as $val) {
|
205 |
echo $val;
|
206 |
}
|
207 |
}
|
208 |
|
209 |
-
public function catchNotices()
|
210 |
-
{
|
211 |
global $wbcr_dan_plugin_all_notices;
|
212 |
|
213 |
try {
|
214 |
-
if( is_multisite() && is_network_admin() ) {
|
215 |
-
$wp_filter_admin_notices = &$this->getWPFilter('network_admin_notices');
|
216 |
} else {
|
217 |
-
$wp_filter_admin_notices = &$this->getWPFilter('admin_notices');
|
218 |
}
|
219 |
//todo: Доработать all admin notices
|
220 |
|
@@ -222,16 +216,16 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
222 |
$wp_filter_admin_notices = null;
|
223 |
}
|
224 |
|
225 |
-
$hide_notices_type = $this->getPopulateOption('hide_admin_notices');
|
226 |
|
227 |
-
if( empty($hide_notices_type) || $hide_notices_type == 'only_selected' ) {
|
228 |
-
$get_hidden_notices = get_user_meta(get_current_user_id(), WDN_Plugin::app()->getOptionName('hidden_notices'), true);
|
229 |
|
230 |
$content = [];
|
231 |
-
foreach((array)$wp_filter_admin_notices as $filters) {
|
232 |
-
foreach($filters as $callback_name => $callback) {
|
233 |
|
234 |
-
if( 'usof_hide_admin_notices_start' == $callback_name || 'usof_hide_admin_notices_end' == $callback_name ) {
|
235 |
continue;
|
236 |
}
|
237 |
|
@@ -239,68 +233,69 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
239 |
|
240 |
// #CLRF-140 fix bug for php7
|
241 |
// when the developers forgot to delete the argument in the function of implementing the notification.
|
242 |
-
$args
|
243 |
-
$accepted_args = isset($callback['accepted_args']) && !empty($callback['accepted_args']) ? $callback['accepted_args'] : 0;
|
244 |
|
245 |
-
if( $accepted_args > 0 ) {
|
246 |
-
for($i = 0; $i < (int)$accepted_args; $i++) {
|
247 |
$args[] = null;
|
248 |
}
|
249 |
}
|
250 |
//===========
|
251 |
|
252 |
-
call_user_func_array($callback['function'], $args);
|
253 |
$cont = ob_get_clean();
|
254 |
|
255 |
-
if( empty($cont) ) {
|
256 |
continue;
|
257 |
}
|
258 |
|
259 |
-
$salt
|
260 |
-
$uniq_id1 = md5($cont . $salt);
|
261 |
-
$uniq_id2 = md5($callback_name . $salt);
|
262 |
|
263 |
-
if( is_array($callback['function']) && sizeof($callback['function']) == 2 ) {
|
264 |
$class = $callback['function'][0];
|
265 |
-
if( is_object($class) ) {
|
266 |
-
$class_name
|
267 |
$method_name = $callback['function'][1];
|
268 |
-
$uniq_id2
|
269 |
}
|
270 |
}
|
|
|
271 |
//838339d1a188e17fec838c2df3058603
|
272 |
//838339d1a188e17fec838c2df3058603
|
273 |
-
if( !empty($get_hidden_notices) ) {
|
274 |
|
275 |
$skip_notice = true;
|
276 |
-
foreach((array)$get_hidden_notices as $key => $notice) {
|
277 |
-
$splited_notice_id = explode('_', $key);
|
278 |
-
if( empty($splited_notice_id) || sizeof($splited_notice_id) < 2 ) {
|
279 |
continue;
|
280 |
}
|
281 |
$compare_notice_id_1 = $splited_notice_id[0];
|
282 |
$compare_notice_id_2 = $splited_notice_id[1];
|
283 |
|
284 |
-
if( $compare_notice_id_1 == $uniq_id1 || $compare_notice_id_2 == $uniq_id2 ) {
|
285 |
$skip_notice = false;
|
286 |
}
|
287 |
}
|
288 |
|
289 |
-
if(
|
290 |
continue;
|
291 |
}
|
292 |
}
|
293 |
|
294 |
-
$hide_link = '<a href="#" data-nonce="' . wp_create_nonce($this->plugin->getPluginName() . '_ajax_hide_notices_nonce') . '" data-notice-id="' . $uniq_id1 . '_' . $uniq_id2 . '" class="wbcr-dan-hide-notice-link">[' . __('Hide notification forever', 'disable-admin-notices') . ']</a>';
|
295 |
|
296 |
// Fix for Woocommerce membership
|
297 |
-
if( $cont != '<div class="js-wc-memberships-admin-notice-placeholder"></div>' ) {
|
298 |
-
$cont = preg_replace('/<(script|style)([^>]+)?>(.*?)<\/(script|style)>/is', '', $cont);
|
299 |
-
$cont = rtrim(trim($cont));
|
300 |
-
$cont = preg_replace('/^(<div[^>]+>)(.*?)(<\/div>)$/is', '$1<div class="wbcr-dan-hide-notices">$2' . $hide_link . '</div>$3', $cont);
|
301 |
}
|
302 |
|
303 |
-
if( empty($cont) ) {
|
304 |
continue;
|
305 |
}
|
306 |
$content[] = $cont;
|
@@ -311,83 +306,83 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
311 |
}
|
312 |
|
313 |
try {
|
314 |
-
$wp_filter_user_admin_notices = &$this->getWPFilter('user_admin_notices');
|
315 |
} catch( Exception $e ) {
|
316 |
$wp_filter_user_admin_notices = null;
|
317 |
}
|
318 |
|
319 |
try {
|
320 |
-
$wp_filter_network_admin_notices = &$this->getWPFilter('network_admin_notices');
|
321 |
} catch( Exception $e ) {
|
322 |
$wp_filter_network_admin_notices = null;
|
323 |
}
|
324 |
|
325 |
-
if( is_user_admin() && $wp_filter_user_admin_notices !== null ) {
|
326 |
$wp_filter_user_admin_notices = null;
|
327 |
-
} else if( is_network_admin() && $wp_filter_network_admin_notices !== null ) {
|
328 |
//unset($wp_filter['network_admin_notices']);
|
329 |
-
foreach($wp_filter_network_admin_notices as $f_key => $f) {
|
330 |
-
foreach($f as $c_name => $clback) {
|
331 |
-
if( is_array($clback['function']) && sizeof($clback['function']) == 2 ) {
|
332 |
$class = $clback['function'][0];
|
333 |
-
if( is_object($class) ) {
|
334 |
-
$class_name = get_class($class);
|
335 |
}
|
336 |
}
|
337 |
|
338 |
-
unset($wp_filter_network_admin_notices[$f_key][$c_name]);
|
339 |
}
|
340 |
}
|
341 |
-
} else if( $wp_filter_admin_notices !== null ) {
|
342 |
-
foreach($wp_filter_admin_notices as $f_key => $f) {
|
343 |
-
foreach($f as $c_name => $clback) {
|
344 |
-
if( is_array($clback['function']) && sizeof($clback['function']) == 2 ) {
|
345 |
$class = $clback['function'][0];
|
346 |
-
if( is_object($class) ) {
|
347 |
-
$class_name = get_class($class);
|
348 |
}
|
349 |
}
|
350 |
|
351 |
-
unset($wp_filter_admin_notices[$f_key][$c_name]);
|
352 |
}
|
353 |
}
|
354 |
|
355 |
-
unset($f_key);
|
356 |
-
unset($f);
|
357 |
}
|
358 |
|
359 |
try {
|
360 |
-
$wp_filter_all_admin_notices = &$this->getWPfilter('all_admin_notices');
|
361 |
} catch( Exception $e ) {
|
362 |
$wp_filter_all_admin_notices = null;
|
363 |
}
|
364 |
|
365 |
-
if( $wp_filter_all_admin_notices !== null ) {
|
366 |
-
foreach($wp_filter_all_admin_notices as $f_key => $f) {
|
367 |
-
foreach($f as $c_name => $clback) {
|
368 |
-
if( is_array($clback['function']) && sizeof($clback['function']) == 2 ) {
|
369 |
$class = $clback['function'][0];
|
370 |
-
if( is_object($class) ) {
|
371 |
-
$class_name = get_class($class);
|
372 |
|
373 |
#Fix for Learn dash && Woocommerce membership && YITH WooCommerce Gift Cards
|
374 |
-
if( $class_name == 'Learndash_Admin_Menus_Tabs' || $class_name == 'WC_Memberships_Admin' || $class_name == 'YIT_Plugin_Panel_WooCommerce' ) {
|
375 |
continue;
|
376 |
}
|
377 |
}
|
378 |
}
|
379 |
|
380 |
#Fix for Divi theme
|
381 |
-
if( $c_name == 'et_pb_export_layouts_interface' ) {
|
382 |
continue;
|
383 |
}
|
384 |
|
385 |
-
unset($wp_filter_all_admin_notices[$f_key][$c_name]);
|
386 |
}
|
387 |
}
|
388 |
|
389 |
-
unset($f_key);
|
390 |
-
unset($f);
|
391 |
}
|
392 |
}
|
393 |
|
@@ -401,13 +396,12 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
401 |
*
|
402 |
* @return String excerpt
|
403 |
*/
|
404 |
-
public function getExcerpt($str, $startPos = 0, $maxLength = 100)
|
405 |
-
|
406 |
-
|
407 |
-
$
|
408 |
-
$
|
409 |
-
$excerpt
|
410 |
-
$excerpt .= '...';
|
411 |
} else {
|
412 |
$excerpt = $str;
|
413 |
}
|
@@ -426,17 +420,16 @@ class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy220_Configurate {
|
|
426 |
* @return array $wp_filter callbacks array by link
|
427 |
* @throws Exception if key not exists
|
428 |
*/
|
429 |
-
private function &getWPFilter($key)
|
430 |
-
{
|
431 |
global $wp_version, $wp_filter;
|
432 |
|
433 |
-
if( !isset($wp_filter[$key]) ) {
|
434 |
-
throw new Exception('key not exists');
|
435 |
}
|
436 |
-
if( version_compare($wp_version, '4.7.0', '>=') ) {
|
437 |
-
return $wp_filter[$key]->callbacks;
|
438 |
} else {
|
439 |
-
return $wp_filter[$key];
|
440 |
}
|
441 |
}
|
442 |
}
|
11 |
*/
|
12 |
|
13 |
// Exit if accessed directly
|
14 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
+
class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy221_Configurate {
|
19 |
|
20 |
+
public function registerActionsAndFilters() {
|
21 |
+
if ( is_admin() ) {
|
22 |
+
$hide_notices_type = $this->getPopulateOption( 'hide_admin_notices' );
|
|
|
23 |
|
24 |
+
if ( 'not_hide' !== $hide_notices_type && 'compact_panel' !== $hide_notices_type ) {
|
25 |
+
add_action( 'admin_print_scripts', [ $this, 'catchNotices' ], 999 );
|
26 |
|
27 |
+
if ( empty( $hide_notices_type ) || $hide_notices_type == 'only_selected' ) {
|
28 |
+
add_action( 'admin_head', [ $this, 'printNotices' ], 999 );
|
29 |
}
|
30 |
|
31 |
+
if ( ! empty( $hide_notices_type ) ) {
|
32 |
+
add_action( 'admin_bar_menu', [ $this, 'notificationsPanel' ], 999 );
|
33 |
+
add_action( 'admin_enqueue_scripts', [ $this, 'notificationsPanelStyles' ] );
|
34 |
}
|
35 |
}
|
36 |
}
|
37 |
}
|
38 |
|
39 |
+
public function printNotices() {
|
40 |
+
if ( is_multisite() && is_network_admin() ) {
|
41 |
+
add_action( 'network_admin_notices', [ $this, 'noticesCollection' ] );
|
|
|
42 |
} else {
|
43 |
+
add_action( 'admin_notices', [ $this, 'noticesCollection' ] );
|
44 |
}
|
45 |
}
|
46 |
|
47 |
|
48 |
+
public function notificationsPanelStyles() {
|
49 |
+
if ( ! $this->getPopulateOption( 'show_notices_in_adminbar', false ) && current_user_can( 'manage_network' ) ) {
|
|
|
50 |
return;
|
51 |
}
|
52 |
|
53 |
+
wp_enqueue_style( 'wbcr-notification-panel-styles', WDN_PLUGIN_URL . '/admin/assets/css/notifications-panel.css', [], $this->plugin->getPluginVersion() );
|
54 |
+
wp_enqueue_script( 'wbcr-notification-panel-scripts', WDN_PLUGIN_URL . '/admin/assets/js/notifications-panel.js', [], $this->plugin->getPluginVersion() );
|
55 |
}
|
56 |
|
57 |
+
public function notificationsPanel( &$wp_admin_bar ) {
|
58 |
+
if ( ! $this->getPopulateOption( 'show_notices_in_adminbar', false ) ) {
|
|
|
59 |
return;
|
60 |
}
|
61 |
|
62 |
+
if ( current_user_can( 'manage_options' ) || current_user_can( 'manage_network' ) ) {
|
63 |
$titles = [];
|
64 |
|
65 |
+
$notifications = get_user_meta( get_current_user_id(), WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
|
66 |
|
67 |
+
if ( empty( $notifications ) ) {
|
68 |
return;
|
69 |
}
|
70 |
|
71 |
+
$cont_notifications = sizeof( $notifications );
|
72 |
|
73 |
// Add top menu
|
74 |
+
$wp_admin_bar->add_menu( [
|
75 |
+
'id' => 'wbcr-han-notify-panel',
|
76 |
'parent' => 'top-secondary',
|
77 |
+
'title' => sprintf( __( 'Notifications %s', 'disable-admin-notices' ), '<span class="wbcr-han-adminbar-counter">' . $cont_notifications . '</span>' ),
|
78 |
+
'href' => false
|
79 |
+
] );
|
80 |
|
81 |
// loop
|
82 |
+
if ( ! empty( $notifications ) ) {
|
83 |
$i = 0;
|
84 |
+
foreach ( $notifications as $notice_id => $message ) {
|
85 |
+
$message = $this->getExcerpt( stripslashes( $message ), 0, 350 );
|
86 |
$message .= '<div class="wbcr-han-panel-restore-notify-line">';
|
87 |
+
$message .= '<a href="#" data-nonce="' . wp_create_nonce( $this->plugin->getPluginName() . '_ajax_restore_notice_nonce' );
|
88 |
+
$message .= '" data-notice-id="' . esc_attr( $notice_id ) . '" class="wbcr-han-panel-restore-notify-link">';
|
89 |
+
$message .= __( 'Restore notice', 'clearfy' ) . ( isset( $titles[ $notice_id ] ) ? ' (' . $titles[ $notice_id ] . ')' : '' );
|
90 |
$message .= '</a></div>';
|
91 |
|
92 |
+
$wp_admin_bar->add_menu( [
|
93 |
+
'id' => 'wbcr-han-notify-panel-item-' . $i,
|
94 |
'parent' => 'wbcr-han-notify-panel',
|
95 |
+
'title' => $message,
|
96 |
+
'href' => false,
|
97 |
+
'meta' => [
|
98 |
'class' => ''
|
99 |
]
|
100 |
+
] );
|
101 |
|
102 |
+
$i ++;
|
103 |
}
|
104 |
}
|
105 |
}
|
106 |
}
|
107 |
|
108 |
+
public function noticesCollection() {
|
|
|
109 |
global $wbcr_dan_plugin_all_notices;
|
110 |
|
111 |
+
if ( empty( $wbcr_dan_plugin_all_notices ) ) {
|
112 |
return;
|
113 |
}
|
114 |
?>
|
196 |
});
|
197 |
</script>
|
198 |
<?php
|
199 |
+
foreach ( $wbcr_dan_plugin_all_notices as $val ) {
|
200 |
echo $val;
|
201 |
}
|
202 |
}
|
203 |
|
204 |
+
public function catchNotices() {
|
|
|
205 |
global $wbcr_dan_plugin_all_notices;
|
206 |
|
207 |
try {
|
208 |
+
if ( is_multisite() && is_network_admin() ) {
|
209 |
+
$wp_filter_admin_notices = &$this->getWPFilter( 'network_admin_notices' );
|
210 |
} else {
|
211 |
+
$wp_filter_admin_notices = &$this->getWPFilter( 'admin_notices' );
|
212 |
}
|
213 |
//todo: Доработать all admin notices
|
214 |
|
216 |
$wp_filter_admin_notices = null;
|
217 |
}
|
218 |
|
219 |
+
$hide_notices_type = $this->getPopulateOption( 'hide_admin_notices' );
|
220 |
|
221 |
+
if ( empty( $hide_notices_type ) || $hide_notices_type == 'only_selected' ) {
|
222 |
+
$get_hidden_notices = get_user_meta( get_current_user_id(), WDN_Plugin::app()->getOptionName( 'hidden_notices' ), true );
|
223 |
|
224 |
$content = [];
|
225 |
+
foreach ( (array) $wp_filter_admin_notices as $filters ) {
|
226 |
+
foreach ( $filters as $callback_name => $callback ) {
|
227 |
|
228 |
+
if ( 'usof_hide_admin_notices_start' == $callback_name || 'usof_hide_admin_notices_end' == $callback_name ) {
|
229 |
continue;
|
230 |
}
|
231 |
|
233 |
|
234 |
// #CLRF-140 fix bug for php7
|
235 |
// when the developers forgot to delete the argument in the function of implementing the notification.
|
236 |
+
$args = [];
|
237 |
+
$accepted_args = isset( $callback['accepted_args'] ) && ! empty( $callback['accepted_args'] ) ? $callback['accepted_args'] : 0;
|
238 |
|
239 |
+
if ( $accepted_args > 0 ) {
|
240 |
+
for ( $i = 0; $i < (int) $accepted_args; $i ++ ) {
|
241 |
$args[] = null;
|
242 |
}
|
243 |
}
|
244 |
//===========
|
245 |
|
246 |
+
call_user_func_array( $callback['function'], $args );
|
247 |
$cont = ob_get_clean();
|
248 |
|
249 |
+
if ( empty( $cont ) ) {
|
250 |
continue;
|
251 |
}
|
252 |
|
253 |
+
$salt = is_multisite() ? get_current_blog_id() : '';
|
254 |
+
$uniq_id1 = md5( $cont . $salt );
|
255 |
+
$uniq_id2 = md5( $callback_name . $salt );
|
256 |
|
257 |
+
if ( is_array( $callback['function'] ) && sizeof( $callback['function'] ) == 2 ) {
|
258 |
$class = $callback['function'][0];
|
259 |
+
if ( is_object( $class ) ) {
|
260 |
+
$class_name = get_class( $class );
|
261 |
$method_name = $callback['function'][1];
|
262 |
+
$uniq_id2 = md5( $class_name . ':' . $method_name );
|
263 |
}
|
264 |
}
|
265 |
+
|
266 |
//838339d1a188e17fec838c2df3058603
|
267 |
//838339d1a188e17fec838c2df3058603
|
268 |
+
if ( ! empty( $get_hidden_notices ) ) {
|
269 |
|
270 |
$skip_notice = true;
|
271 |
+
foreach ( (array) $get_hidden_notices as $key => $notice ) {
|
272 |
+
$splited_notice_id = explode( '_', $key );
|
273 |
+
if ( empty( $splited_notice_id ) || sizeof( $splited_notice_id ) < 2 ) {
|
274 |
continue;
|
275 |
}
|
276 |
$compare_notice_id_1 = $splited_notice_id[0];
|
277 |
$compare_notice_id_2 = $splited_notice_id[1];
|
278 |
|
279 |
+
if ( $compare_notice_id_1 == $uniq_id1 || $compare_notice_id_2 == $uniq_id2 ) {
|
280 |
$skip_notice = false;
|
281 |
}
|
282 |
}
|
283 |
|
284 |
+
if ( ! $skip_notice ) {
|
285 |
continue;
|
286 |
}
|
287 |
}
|
288 |
|
289 |
+
$hide_link = '<a href="#" data-nonce="' . wp_create_nonce( $this->plugin->getPluginName() . '_ajax_hide_notices_nonce' ) . '" data-notice-id="' . $uniq_id1 . '_' . $uniq_id2 . '" class="wbcr-dan-hide-notice-link">[' . __( 'Hide notification forever', 'disable-admin-notices' ) . ']</a>';
|
290 |
|
291 |
// Fix for Woocommerce membership
|
292 |
+
if ( $cont != '<div class="js-wc-memberships-admin-notice-placeholder"></div>' ) {
|
293 |
+
$cont = preg_replace( '/<(script|style)([^>]+)?>(.*?)<\/(script|style)>/is', '', $cont );
|
294 |
+
$cont = rtrim( trim( $cont ) );
|
295 |
+
$cont = preg_replace( '/^(<div[^>]+>)(.*?)(<\/div>)$/is', '$1<div class="wbcr-dan-hide-notices">$2' . $hide_link . '</div>$3', $cont );
|
296 |
}
|
297 |
|
298 |
+
if ( empty( $cont ) ) {
|
299 |
continue;
|
300 |
}
|
301 |
$content[] = $cont;
|
306 |
}
|
307 |
|
308 |
try {
|
309 |
+
$wp_filter_user_admin_notices = &$this->getWPFilter( 'user_admin_notices' );
|
310 |
} catch( Exception $e ) {
|
311 |
$wp_filter_user_admin_notices = null;
|
312 |
}
|
313 |
|
314 |
try {
|
315 |
+
$wp_filter_network_admin_notices = &$this->getWPFilter( 'network_admin_notices' );
|
316 |
} catch( Exception $e ) {
|
317 |
$wp_filter_network_admin_notices = null;
|
318 |
}
|
319 |
|
320 |
+
if ( is_user_admin() && $wp_filter_user_admin_notices !== null ) {
|
321 |
$wp_filter_user_admin_notices = null;
|
322 |
+
} else if ( is_network_admin() && $wp_filter_network_admin_notices !== null ) {
|
323 |
//unset($wp_filter['network_admin_notices']);
|
324 |
+
foreach ( $wp_filter_network_admin_notices as $f_key => $f ) {
|
325 |
+
foreach ( $f as $c_name => $clback ) {
|
326 |
+
if ( is_array( $clback['function'] ) && sizeof( $clback['function'] ) == 2 ) {
|
327 |
$class = $clback['function'][0];
|
328 |
+
if ( is_object( $class ) ) {
|
329 |
+
$class_name = get_class( $class );
|
330 |
}
|
331 |
}
|
332 |
|
333 |
+
unset( $wp_filter_network_admin_notices[ $f_key ][ $c_name ] );
|
334 |
}
|
335 |
}
|
336 |
+
} else if ( $wp_filter_admin_notices !== null ) {
|
337 |
+
foreach ( $wp_filter_admin_notices as $f_key => $f ) {
|
338 |
+
foreach ( $f as $c_name => $clback ) {
|
339 |
+
if ( is_array( $clback['function'] ) && sizeof( $clback['function'] ) == 2 ) {
|
340 |
$class = $clback['function'][0];
|
341 |
+
if ( is_object( $class ) ) {
|
342 |
+
$class_name = get_class( $class );
|
343 |
}
|
344 |
}
|
345 |
|
346 |
+
unset( $wp_filter_admin_notices[ $f_key ][ $c_name ] );
|
347 |
}
|
348 |
}
|
349 |
|
350 |
+
unset( $f_key );
|
351 |
+
unset( $f );
|
352 |
}
|
353 |
|
354 |
try {
|
355 |
+
$wp_filter_all_admin_notices = &$this->getWPfilter( 'all_admin_notices' );
|
356 |
} catch( Exception $e ) {
|
357 |
$wp_filter_all_admin_notices = null;
|
358 |
}
|
359 |
|
360 |
+
if ( $wp_filter_all_admin_notices !== null ) {
|
361 |
+
foreach ( $wp_filter_all_admin_notices as $f_key => $f ) {
|
362 |
+
foreach ( $f as $c_name => $clback ) {
|
363 |
+
if ( is_array( $clback['function'] ) && sizeof( $clback['function'] ) == 2 ) {
|
364 |
$class = $clback['function'][0];
|
365 |
+
if ( is_object( $class ) ) {
|
366 |
+
$class_name = get_class( $class );
|
367 |
|
368 |
#Fix for Learn dash && Woocommerce membership && YITH WooCommerce Gift Cards
|
369 |
+
if ( $class_name == 'Learndash_Admin_Menus_Tabs' || $class_name == 'WC_Memberships_Admin' || $class_name == 'YIT_Plugin_Panel_WooCommerce' ) {
|
370 |
continue;
|
371 |
}
|
372 |
}
|
373 |
}
|
374 |
|
375 |
#Fix for Divi theme
|
376 |
+
if ( $c_name == 'et_pb_export_layouts_interface' ) {
|
377 |
continue;
|
378 |
}
|
379 |
|
380 |
+
unset( $wp_filter_all_admin_notices[ $f_key ][ $c_name ] );
|
381 |
}
|
382 |
}
|
383 |
|
384 |
+
unset( $f_key );
|
385 |
+
unset( $f );
|
386 |
}
|
387 |
}
|
388 |
|
396 |
*
|
397 |
* @return String excerpt
|
398 |
*/
|
399 |
+
public function getExcerpt( $str, $startPos = 0, $maxLength = 100 ) {
|
400 |
+
if ( strlen( $str ) > $maxLength ) {
|
401 |
+
$excerpt = substr( $str, $startPos, $maxLength - 3 );
|
402 |
+
$lastSpace = strrpos( $excerpt, ' ' );
|
403 |
+
$excerpt = substr( $excerpt, 0, $lastSpace );
|
404 |
+
$excerpt .= '...';
|
|
|
405 |
} else {
|
406 |
$excerpt = $str;
|
407 |
}
|
420 |
* @return array $wp_filter callbacks array by link
|
421 |
* @throws Exception if key not exists
|
422 |
*/
|
423 |
+
private function &getWPFilter( $key ) {
|
|
|
424 |
global $wp_version, $wp_filter;
|
425 |
|
426 |
+
if ( ! isset( $wp_filter[ $key ] ) ) {
|
427 |
+
throw new Exception( 'key not exists' );
|
428 |
}
|
429 |
+
if ( version_compare( $wp_version, '4.7.0', '>=' ) ) {
|
430 |
+
return $wp_filter[ $key ]->callbacks;
|
431 |
} else {
|
432 |
+
return $wp_filter[ $key ];
|
433 |
}
|
434 |
}
|
435 |
}
|
components/disable-admin-notices/includes/function.php
ADDED
@@ -0,0 +1,117 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Helper functions
|
4 |
+
* @author Webcraftic <alex.kovalevv@gmail.com>
|
5 |
+
* @copyright (c) 05.07.2020, Webcraftic
|
6 |
+
* @version 1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Access to global variable $wp_filter in WP core.
|
11 |
+
* Migration from WP 4.2 to 4.9
|
12 |
+
*
|
13 |
+
* @see https://codex.wordpress.org/Version_4.7 WP 4.7 changelog (WP_Hook)
|
14 |
+
*
|
15 |
+
* @param $key string filter name
|
16 |
+
*
|
17 |
+
* @return array callbacks array by link
|
18 |
+
*/
|
19 |
+
function &wdan_get_wp_filter( $key ) {
|
20 |
+
global $wp_version, $wp_filter;
|
21 |
+
|
22 |
+
if ( version_compare( $wp_version, '4.7.0', '>=' ) ) {
|
23 |
+
return $wp_filter[ $key ]->callbacks;
|
24 |
+
} else {
|
25 |
+
return $wp_filter[ $key ];
|
26 |
+
}
|
27 |
+
}
|
28 |
+
|
29 |
+
function wdan_collect_notices( $key ) {
|
30 |
+
if ( 'admin_notices' === $key ) {
|
31 |
+
if ( is_multisite() && is_network_admin() ) {
|
32 |
+
$wp_filter = &wdan_get_wp_filter( 'network_admin_notices' );
|
33 |
+
} else {
|
34 |
+
$wp_filter = &wdan_get_wp_filter( 'admin_notices' );
|
35 |
+
}
|
36 |
+
} else {
|
37 |
+
$wp_filter = &wdan_get_wp_filter( $key );
|
38 |
+
}
|
39 |
+
|
40 |
+
$content = [];
|
41 |
+
foreach ( (array) $wp_filter as $filters ) {
|
42 |
+
foreach ( $filters as $callback_name => $callback ) {
|
43 |
+
|
44 |
+
if ( 'usof_hide_admin_notices_start' == $callback_name || 'usof_hide_admin_notices_end' == $callback_name ) {
|
45 |
+
continue;
|
46 |
+
}
|
47 |
+
|
48 |
+
ob_start();
|
49 |
+
|
50 |
+
// #CLRF-140 fix bug for php7
|
51 |
+
// when the developers forgot to delete the argument in the function of implementing the notification.
|
52 |
+
$args = [];
|
53 |
+
$accepted_args = isset( $callback['accepted_args'] ) && ! empty( $callback['accepted_args'] ) ? $callback['accepted_args'] : 0;
|
54 |
+
|
55 |
+
if ( $accepted_args > 0 ) {
|
56 |
+
for ( $i = 0; $i < (int) $accepted_args; $i ++ ) {
|
57 |
+
$args[] = null;
|
58 |
+
}
|
59 |
+
}
|
60 |
+
//===========
|
61 |
+
|
62 |
+
call_user_func_array( $callback['function'], $args );
|
63 |
+
$cont = ob_get_clean();
|
64 |
+
|
65 |
+
if ( ! empty( $cont ) ) {
|
66 |
+
$salt = is_multisite() ? get_current_blog_id() : '';
|
67 |
+
$uniq_id1 = md5( $cont . $salt );
|
68 |
+
$uniq_id2 = md5( $callback_name . $salt );
|
69 |
+
|
70 |
+
if ( is_array( $callback['function'] ) && sizeof( $callback['function'] ) == 2 ) {
|
71 |
+
$class = $callback['function'][0];
|
72 |
+
if ( is_object( $class ) ) {
|
73 |
+
$class_name = get_class( $class );
|
74 |
+
$method_name = $callback['function'][1];
|
75 |
+
$uniq_id2 = md5( $class_name . ':' . $method_name );
|
76 |
+
}
|
77 |
+
}
|
78 |
+
|
79 |
+
$content[ $uniq_id1 . "_" . $uniq_id2 ] = $cont;
|
80 |
+
}
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
return $content;
|
85 |
+
}
|
86 |
+
|
87 |
+
function wdan_clear_all_notices( $key, $excluded_classes = [], $excluded_callback_names = [] ) {
|
88 |
+
if ( 'admin_notices' === $key ) {
|
89 |
+
if ( is_multisite() && is_network_admin() ) {
|
90 |
+
$wp_filter = &wdan_get_wp_filter( 'network_admin_notices' );
|
91 |
+
} else {
|
92 |
+
$wp_filter = &wdan_get_wp_filter( 'admin_notices' );
|
93 |
+
}
|
94 |
+
} else {
|
95 |
+
$wp_filter = &wdan_get_wp_filter( $key );
|
96 |
+
}
|
97 |
+
|
98 |
+
foreach ( $wp_filter as $f_key => $f ) {
|
99 |
+
foreach ( $f as $c_name => $clback ) {
|
100 |
+
if ( is_array( $clback['function'] ) && sizeof( $clback['function'] ) == 2 ) {
|
101 |
+
$class = $clback['function'][0];
|
102 |
+
if ( is_object( $class ) ) {
|
103 |
+
$class_name = get_class( $class );
|
104 |
+
|
105 |
+
if ( in_array( $class_name, $excluded_classes ) ) {
|
106 |
+
continue;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
}
|
110 |
+
|
111 |
+
if ( in_array( $c_name, $excluded_callback_names ) ) {
|
112 |
+
continue;
|
113 |
+
}
|
114 |
+
unset( $wp_filter[ $f_key ][ $c_name ] );
|
115 |
+
}
|
116 |
+
}
|
117 |
+
}
|
components/disable-admin-notices/migrations/010007.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WDNUpdate010007 extends
|
8 |
|
9 |
public function install()
|
10 |
{
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WDNUpdate010007 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
public function install()
|
10 |
{
|
components/disable-admin-notices/readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== Disable admin notices individually ===
|
2 |
Tags: hide admin notices, hide updates nags, hide nags, disable notices, disable update nags, disable nags, disable admin notices
|
3 |
Contributors: webcraftic, alexkovalevv, creativemotion
|
4 |
-
Donate link: https://
|
5 |
-
Requires at least: 4.
|
6 |
-
Tested up to: 5.
|
7 |
-
Requires PHP: 5.
|
8 |
Stable tag: trunk
|
9 |
License: GPLv2
|
10 |
|
@@ -54,6 +54,21 @@ If you want to help with the translation, please contact me through this site or
|
|
54 |
3. Notifications panel (optional)
|
55 |
|
56 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
= 1.1.1 =
|
58 |
* Added: Compatibility with Learndash
|
59 |
* Added: Compatibility with Wordpress 4.2 - 5.x
|
1 |
=== Disable admin notices individually ===
|
2 |
Tags: hide admin notices, hide updates nags, hide nags, disable notices, disable update nags, disable nags, disable admin notices
|
3 |
Contributors: webcraftic, alexkovalevv, creativemotion
|
4 |
+
Donate link: https://clearfy.pro/disable-admin-notices/
|
5 |
+
Requires at least: 4.8
|
6 |
+
Tested up to: 5.4
|
7 |
+
Requires PHP: 5.6
|
8 |
Stable tag: trunk
|
9 |
License: GPLv2
|
10 |
|
54 |
3. Notifications panel (optional)
|
55 |
|
56 |
== Changelog ==
|
57 |
+
= 1.2.0 (16.07.2020) =
|
58 |
+
* Fixed: Minor bugs
|
59 |
+
|
60 |
+
= 1.2.0 (10.07.2020) =
|
61 |
+
* Fixed: Fixed some compatibility issues with third-party plugins.
|
62 |
+
* Added: Premium features
|
63 |
+
|
64 |
+
= 1.1.3 (01.07.2020) =
|
65 |
+
* Removed: Ads notices and dashboard widget
|
66 |
+
* Fixed: Minor bugs
|
67 |
+
|
68 |
+
= 1.1.2 (23.06.2020) =
|
69 |
+
* Added: Compatibility with Wordpress 5.4
|
70 |
+
* Fixed: Minor bugs
|
71 |
+
|
72 |
= 1.1.1 =
|
73 |
* Added: Compatibility with Learndash
|
74 |
* Added: Compatibility with Wordpress 4.2 - 5.x
|
components/ga-cache/admin/activation.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
*
|
6 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.09.2017, Webcraftic
|
8 |
-
* @see
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
class WGA_Activation extends
|
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 Factory429_Activator
|
9 |
* @version 1.0
|
10 |
*/
|
11 |
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
class WGA_Activation extends Wbcr_Factory429_Activator {
|
18 |
|
19 |
/**
|
20 |
* Runs activation actions.
|
components/ga-cache/admin/boot.php
CHANGED
@@ -23,13 +23,13 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
23 |
*
|
24 |
* @since 3.0.1
|
25 |
*
|
26 |
-
* @param
|
27 |
*
|
28 |
-
* @param
|
29 |
*
|
30 |
* @return void
|
31 |
*/
|
32 |
-
add_action( '
|
33 |
if ( WGA_Plugin::app()->getPluginName() != $plugin->getPluginName() ) {
|
34 |
return;
|
35 |
}
|
23 |
*
|
24 |
* @since 3.0.1
|
25 |
*
|
26 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $page
|
27 |
*
|
28 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
29 |
*
|
30 |
* @return void
|
31 |
*/
|
32 |
+
add_action( 'wbcr_factory_429_imppage_after_form_save', function ( $plugin, $page ) {
|
33 |
if ( WGA_Plugin::app()->getPluginName() != $plugin->getPluginName() ) {
|
34 |
return;
|
35 |
}
|
components/ga-cache/admin/options.php
CHANGED
@@ -117,7 +117,7 @@ function wbcr_ga_get_plugin_options() {
|
|
117 |
|
118 |
/**
|
119 |
* @param $form
|
120 |
-
* @param $page
|
121 |
*
|
122 |
* @return mixed
|
123 |
*/
|
117 |
|
118 |
/**
|
119 |
* @param $form
|
120 |
+
* @param $page Wbcr_FactoryPages429_ImpressiveThemplate
|
121 |
*
|
122 |
* @return mixed
|
123 |
*/
|
components/ga-cache/admin/pages/class-pages-general-settings.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
* @version 1.0
|
18 |
*/
|
19 |
-
class WGA_CachePage extends
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
@@ -48,9 +48,9 @@ class WGA_CachePage extends Wbcr_FactoryClearfy220_PageBase {
|
|
48 |
public $show_right_sidebar_in_options = true;
|
49 |
|
50 |
/**
|
51 |
-
* @param
|
52 |
*/
|
53 |
-
public function __construct(
|
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_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
48 |
public $show_right_sidebar_in_options = true;
|
49 |
|
50 |
/**
|
51 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
52 |
*/
|
53 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
54 |
$this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
|
55 |
|
56 |
if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
|
components/ga-cache/admin/pages/class-pages-more-features.php
CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WGA_MoreFeaturesPage extends
|
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_FactoryClearfy221_MoreFeaturesPage {
|
20 |
|
21 |
}
|
components/ga-cache/includes/class-plugin.php
CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
-
class WGA_Plugin extends
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
-
* @var
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
@@ -58,7 +58,7 @@ class WGA_Plugin extends Wbcr_Factory428_Plugin {
|
|
58 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
59 |
* классам.
|
60 |
*
|
61 |
-
* @return \
|
62 |
*/
|
63 |
public static function app() {
|
64 |
return self::$app;
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
+
class WGA_Plugin extends Wbcr_Factory429_Plugin {
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
+
* @var Wbcr_Factory429_Plugin
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
58 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
59 |
* классам.
|
60 |
*
|
61 |
+
* @return \Wbcr_Factory429_Plugin|\WGA_Plugin
|
62 |
*/
|
63 |
public static function app() {
|
64 |
return self::$app;
|
components/ga-cache/includes/classes/class-configurate-ga.php
CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
-
class WGA_ConfigGACache extends
|
16 |
|
17 |
|
18 |
public function registerActionsAndFilters() {
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
+
class WGA_ConfigGACache extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
|
18 |
public function registerActionsAndFilters() {
|
components/ga-cache/migrations/030002.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WGACUpdate030002 extends
|
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_Factory429_Update {
|
8 |
|
9 |
public function install() {
|
10 |
/**
|
components/ga-cache/simple_google_analytics.php
CHANGED
@@ -63,15 +63,15 @@ $plugin_info = array(
|
|
63 |
|
64 |
// FRAMEWORK MODULES
|
65 |
'load_factory_modules' => array(
|
66 |
-
array( 'libs/factory/bootstrap', '
|
67 |
-
array( 'libs/factory/forms', '
|
68 |
-
array( 'libs/factory/pages', '
|
69 |
-
array( 'libs/factory/clearfy', '
|
70 |
-
array( 'libs/factory/adverts', '
|
71 |
)
|
72 |
);
|
73 |
|
74 |
-
$wga_compatibility = new
|
75 |
'plugin_already_activate' => defined( 'WGA_PLUGIN_ACTIVE' ),
|
76 |
'required_php_version' => '5.4',
|
77 |
'required_wp_version' => '4.2.0',
|
63 |
|
64 |
// FRAMEWORK MODULES
|
65 |
'load_factory_modules' => array(
|
66 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
67 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
68 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
69 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
70 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
71 |
)
|
72 |
);
|
73 |
|
74 |
+
$wga_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $plugin_info, array(
|
75 |
'plugin_already_activate' => defined( 'WGA_PLUGIN_ACTIVE' ),
|
76 |
'required_php_version' => '5.4',
|
77 |
'required_wp_version' => '4.2.0',
|
components/html-minify/admin/pages/class-pages-settings.php
CHANGED
@@ -9,7 +9,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
9 |
*
|
10 |
* @since 1.0.0
|
11 |
*/
|
12 |
-
class WHTM_SettingsPage extends
|
13 |
|
14 |
/**
|
15 |
* {@inheritDoc}
|
@@ -52,9 +52,9 @@ class WHTM_SettingsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
52 |
*
|
53 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
54 |
*
|
55 |
-
* @param \
|
56 |
*/
|
57 |
-
public function __construct(
|
58 |
// Заголовок страницы
|
59 |
$this->menu_title = __( 'HTML Minify', 'html-minify' );
|
60 |
|
9 |
*
|
10 |
* @since 1.0.0
|
11 |
*/
|
12 |
+
class WHTM_SettingsPage extends Wbcr_FactoryClearfy221_PageBase {
|
13 |
|
14 |
/**
|
15 |
* {@inheritDoc}
|
52 |
*
|
53 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
54 |
*
|
55 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
56 |
*/
|
57 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
58 |
// Заголовок страницы
|
59 |
$this->menu_title = __( 'HTML Minify', 'html-minify' );
|
60 |
|
components/html-minify/html-minify.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Text Domain: html-minify
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
/*
|
@@ -59,15 +59,15 @@ $whtml_plugin_info = array(
|
|
59 |
|
60 |
// FRAMEWORK MODULES
|
61 |
'load_factory_modules' => array(
|
62 |
-
array( 'libs/factory/bootstrap', '
|
63 |
-
array( 'libs/factory/forms', '
|
64 |
-
array( 'libs/factory/pages', '
|
65 |
-
array( 'libs/factory/clearfy', '
|
66 |
-
array( 'libs/factory/adverts', '
|
67 |
)
|
68 |
);
|
69 |
|
70 |
-
$whtml_compatibility = new
|
71 |
'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
|
72 |
'required_php_version' => '5.4',
|
73 |
'required_wp_version' => '4.2.0',
|
8 |
* Text Domain: html-minify
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
/*
|
59 |
|
60 |
// FRAMEWORK MODULES
|
61 |
'load_factory_modules' => array(
|
62 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
63 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
64 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
65 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
66 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
67 |
)
|
68 |
);
|
69 |
|
70 |
+
$whtml_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $whtml_plugin_info, array(
|
71 |
'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
|
72 |
'required_php_version' => '5.4',
|
73 |
'required_wp_version' => '4.2.0',
|
components/html-minify/includes/class-plugin.php
CHANGED
@@ -13,11 +13,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
}
|
14 |
|
15 |
|
16 |
-
class WHTM_Plugin extends
|
17 |
|
18 |
/**
|
19 |
* @see self::app()
|
20 |
-
* @var
|
21 |
*/
|
22 |
private static $app;
|
23 |
|
@@ -53,7 +53,7 @@ class WHTM_Plugin extends Wbcr_Factory428_Plugin {
|
|
53 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
54 |
* классам.
|
55 |
*
|
56 |
-
* @return \
|
57 |
*/
|
58 |
public static function app() {
|
59 |
return self::$app;
|
13 |
}
|
14 |
|
15 |
|
16 |
+
class WHTM_Plugin extends Wbcr_Factory429_Plugin {
|
17 |
|
18 |
/**
|
19 |
* @see self::app()
|
20 |
+
* @var Wbcr_Factory429_Plugin
|
21 |
*/
|
22 |
private static $app;
|
23 |
|
53 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
54 |
* классам.
|
55 |
*
|
56 |
+
* @return \Wbcr_Factory429_Plugin|\WCM_Plugin
|
57 |
*/
|
58 |
public static function app() {
|
59 |
return self::$app;
|
components/minify-and-combine/admin/boot.php
CHANGED
@@ -120,6 +120,18 @@
|
|
120 |
'tags' => array()
|
121 |
);
|
122 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
return $options;
|
124 |
});
|
125 |
|
120 |
'tags' => array()
|
121 |
);
|
122 |
|
123 |
+
$options[] = array(
|
124 |
+
'name' => 'css_critical',
|
125 |
+
'title' => __('Critical CSS files', 'minify-and-combine'),
|
126 |
+
'tags' => array()
|
127 |
+
);
|
128 |
+
|
129 |
+
$options[] = array(
|
130 |
+
'name' => 'css_critical_style',
|
131 |
+
'title' => __('Critical CSS code', 'minify-and-combine'),
|
132 |
+
'tags' => array()
|
133 |
+
);
|
134 |
+
|
135 |
return $options;
|
136 |
});
|
137 |
|
components/minify-and-combine/admin/pages/class-pages-settings.php
CHANGED
@@ -9,7 +9,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
9 |
*
|
10 |
* @since 1.0.0
|
11 |
*/
|
12 |
-
class WMAC_MinifyAndCombineSettingsPage extends
|
13 |
|
14 |
/**
|
15 |
* {@inheritDoc}
|
@@ -50,11 +50,12 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy220_PageBase
|
|
50 |
/**
|
51 |
* WMAC_MinifyAndCombineSettingsPage constructor.
|
52 |
*
|
|
|
|
|
53 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
54 |
*
|
55 |
-
* @param \Wbcr_Factory428_Plugin $plugin
|
56 |
*/
|
57 |
-
public function __construct(
|
58 |
$this->menu_title = __( 'Minify (JS/CSS)', 'minify-and-combine' );
|
59 |
|
60 |
if ( ! defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ) {
|
@@ -70,9 +71,9 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy220_PageBase
|
|
70 |
/**
|
71 |
* {@inheritDoc}
|
72 |
*
|
73 |
-
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
74 |
-
* @since 1.0.0
|
75 |
* @return string|void
|
|
|
|
|
76 |
*/
|
77 |
public function getMenuTitle() {
|
78 |
return defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ? __( 'Minify (Html/JS/CSS)', 'minify-and-combine' ) : __( 'General', 'minify-and-combine' );
|
@@ -100,8 +101,8 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy220_PageBase
|
|
100 |
/**
|
101 |
* {@inheritDoc}
|
102 |
*
|
103 |
-
* @since 1.0.0
|
104 |
* @return mixed[]
|
|
|
105 |
*/
|
106 |
public function getPageOptions() {
|
107 |
$options = [];
|
@@ -318,6 +319,27 @@ This can be fully automated for different types of pages with the Мinify And Co
|
|
318 |
'items' => $css_options
|
319 |
];
|
320 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
321 |
$options[] = [
|
322 |
'type' => 'html',
|
323 |
'html' => '<div class="wbcr-factory-page-group-header"><strong>' . __( 'Cache Info', 'minify-and-combine' ) . '</strong><p></p></div>'
|
@@ -379,7 +401,8 @@ This can be fully automated for different types of pages with the Мinify And Co
|
|
379 |
<label for="wbcr_mac_css_optimize" class="col-sm-4 control-label">
|
380 |
</label>
|
381 |
<div class="control-group col-sm-8">
|
382 |
-
<a class="btn btn-default"
|
|
|
383 |
<?php _e( 'Clear cache', 'minify-and-combine' ) ?>
|
384 |
</a>
|
385 |
</div>
|
9 |
*
|
10 |
* @since 1.0.0
|
11 |
*/
|
12 |
+
class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy221_PageBase {
|
13 |
|
14 |
/**
|
15 |
* {@inheritDoc}
|
50 |
/**
|
51 |
* WMAC_MinifyAndCombineSettingsPage constructor.
|
52 |
*
|
53 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
54 |
+
*
|
55 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
56 |
*
|
|
|
57 |
*/
|
58 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
59 |
$this->menu_title = __( 'Minify (JS/CSS)', 'minify-and-combine' );
|
60 |
|
61 |
if ( ! defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ) {
|
71 |
/**
|
72 |
* {@inheritDoc}
|
73 |
*
|
|
|
|
|
74 |
* @return string|void
|
75 |
+
* @since 1.0.0
|
76 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
77 |
*/
|
78 |
public function getMenuTitle() {
|
79 |
return defined( 'LOADING_MINIFY_AND_COMBINE_AS_ADDON' ) ? __( 'Minify (Html/JS/CSS)', 'minify-and-combine' ) : __( 'General', 'minify-and-combine' );
|
101 |
/**
|
102 |
* {@inheritDoc}
|
103 |
*
|
|
|
104 |
* @return mixed[]
|
105 |
+
* @since 1.0.0
|
106 |
*/
|
107 |
public function getPageOptions() {
|
108 |
$options = [];
|
319 |
'items' => $css_options
|
320 |
];
|
321 |
|
322 |
+
$options[] = [
|
323 |
+
'type' => 'html',
|
324 |
+
'html' => '<div class="wbcr-factory-page-group-header"><strong>' . __( 'Critical CSS', 'minify-and-combine' ) . '</strong><p></p></div>'
|
325 |
+
];
|
326 |
+
|
327 |
+
$options[] = [
|
328 |
+
'type' => 'textarea',
|
329 |
+
'name' => 'css_critical',
|
330 |
+
'title' => __( 'Critical CSS files:', 'minify-and-combine' ),
|
331 |
+
'hint' => __( 'A comma-separated list of Critical CSS files. (You can use the * mask in file names. * - these are any characters.)', 'minify-and-combine' ),
|
332 |
+
'default' => 'style.css, themes/*/style.css, style.min.css, themes/*/style.min.css'
|
333 |
+
];
|
334 |
+
|
335 |
+
$options[] = [
|
336 |
+
'type' => 'textarea',
|
337 |
+
'name' => 'css_critical_style',
|
338 |
+
'title' => __( 'Critical CSS code:', 'minify-and-combine' ),
|
339 |
+
'hint' => htmlspecialchars( __( 'Add critical CSS here. We will insert it into <style> tags in your <head> section of each page.', 'minify-and-combine' ) ),
|
340 |
+
'default' => ''
|
341 |
+
];
|
342 |
+
|
343 |
$options[] = [
|
344 |
'type' => 'html',
|
345 |
'html' => '<div class="wbcr-factory-page-group-header"><strong>' . __( 'Cache Info', 'minify-and-combine' ) . '</strong><p></p></div>'
|
401 |
<label for="wbcr_mac_css_optimize" class="col-sm-4 control-label">
|
402 |
</label>
|
403 |
<div class="control-group col-sm-8">
|
404 |
+
<a class="btn btn-default"
|
405 |
+
href="<?= wp_nonce_url( $this->getActionUrl( 'clear-cache' ), 'clear_cache_' . $this->getResultId() ); ?>">
|
406 |
<?php _e( 'Clear cache', 'minify-and-combine' ) ?>
|
407 |
</a>
|
408 |
</div>
|
components/minify-and-combine/includes/3rd-party/class-clearfy-plugin.php
CHANGED
@@ -73,6 +73,7 @@ class WMAC_Plugin {
|
|
73 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-scripts.php' );
|
74 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-css-min.php' );
|
75 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-styles.php' );
|
|
|
76 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-main.php' );
|
77 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-helper.php' );
|
78 |
|
73 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-scripts.php' );
|
74 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-css-min.php' );
|
75 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-styles.php' );
|
76 |
+
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-criticalcss.php' );
|
77 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-main.php' );
|
78 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-helper.php' );
|
79 |
|
components/minify-and-combine/includes/class-plugin.php
CHANGED
@@ -13,11 +13,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
}
|
14 |
|
15 |
|
16 |
-
class WMAC_Plugin extends
|
17 |
|
18 |
/**
|
19 |
* @see self::app()
|
20 |
-
* @var
|
21 |
*/
|
22 |
private static $app;
|
23 |
|
@@ -55,7 +55,7 @@ class WMAC_Plugin extends Wbcr_Factory428_Plugin {
|
|
55 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
56 |
* классам.
|
57 |
*
|
58 |
-
* @return \
|
59 |
*/
|
60 |
public static function app() {
|
61 |
return self::$app;
|
@@ -73,6 +73,7 @@ class WMAC_Plugin extends Wbcr_Factory428_Plugin {
|
|
73 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-scripts.php' );
|
74 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-css-min.php' );
|
75 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-styles.php' );
|
|
|
76 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-main.php' );
|
77 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-helper.php' );
|
78 |
|
13 |
}
|
14 |
|
15 |
|
16 |
+
class WMAC_Plugin extends Wbcr_Factory429_Plugin {
|
17 |
|
18 |
/**
|
19 |
* @see self::app()
|
20 |
+
* @var Wbcr_Factory429_Plugin
|
21 |
*/
|
22 |
private static $app;
|
23 |
|
55 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
56 |
* классам.
|
57 |
*
|
58 |
+
* @return \Wbcr_Factory429_Plugin|\WCM_Plugin
|
59 |
*/
|
60 |
public static function app() {
|
61 |
return self::$app;
|
73 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-scripts.php' );
|
74 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-css-min.php' );
|
75 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-styles.php' );
|
76 |
+
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-criticalcss.php' );
|
77 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-main.php' );
|
78 |
require_once( WMAC_PLUGIN_DIR . '/includes/classes/class-helper.php' );
|
79 |
|
components/minify-and-combine/includes/classes/class-cache.php
CHANGED
@@ -385,7 +385,7 @@ class WMAC_PluginCache {
|
|
385 |
}
|
386 |
}
|
387 |
add_action( 'shutdown', 'wmac_do_cachepurged_action', 11 );
|
388 |
-
add_action( 'wmac_action_cachepurged', [ '
|
389 |
}
|
390 |
|
391 |
// Warm cache (part of speedupper)!
|
385 |
}
|
386 |
}
|
387 |
add_action( 'shutdown', 'wmac_do_cachepurged_action', 11 );
|
388 |
+
add_action( 'wmac_action_cachepurged', [ 'WbcrFactoryClearfy221_Helpers', 'flushPageCache' ], 10, 0 );
|
389 |
}
|
390 |
|
391 |
// Warm cache (part of speedupper)!
|
components/minify-and-combine/includes/classes/class-criticalcss.php
ADDED
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Operations with Critical CSS
|
4 |
+
*
|
5 |
+
* @author Webcraftic <wordpress.webraftic@gmail.com>
|
6 |
+
* @copyright (c) 2020 Webraftic Ltd
|
7 |
+
* @version 1.0
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
+
exit;
|
12 |
+
}
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Class WMAC_PluginCriticalCss
|
16 |
+
*/
|
17 |
+
class WMAC_PluginCriticalCss extends WMAC_PluginStyles {
|
18 |
+
|
19 |
+
private $css_critical_style = '';
|
20 |
+
private $css_critical = [];
|
21 |
+
private $replaceTag = [ '<title', 'before' ];
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Reads the page and collects style tags.
|
25 |
+
*
|
26 |
+
* @param array $options
|
27 |
+
*
|
28 |
+
* @return bool
|
29 |
+
*/
|
30 |
+
public function read( $options ) {
|
31 |
+
$this->replaceTag = apply_filters( 'wmac_filter_css_replacetag', $this->replaceTag, $this->content );
|
32 |
+
|
33 |
+
// Set critical css code
|
34 |
+
// value: string
|
35 |
+
$this->css_critical_style = $options['css_critical_style'];
|
36 |
+
$this->css_critical_style = apply_filters( 'wmac_filter_css_critical_style', $this->css_critical_style, $this->content );
|
37 |
+
|
38 |
+
$style = "<style type='text/css'>{$this->css_critical_style}</style>";
|
39 |
+
$this->injectInHtml( $style, $this->replaceTag );
|
40 |
+
|
41 |
+
// Set critical css files
|
42 |
+
// value: array
|
43 |
+
$this->css_critical = $options['css_critical'];
|
44 |
+
$this->css_critical = apply_filters( 'wmac_filter_css_critical', $this->css_critical, $this->content );
|
45 |
+
|
46 |
+
if ( '' !== $this->css_critical ) {
|
47 |
+
$this->css_critical = array_filter( array_map( 'trim', explode( ',', $this->css_critical ) ) );
|
48 |
+
} else {
|
49 |
+
$this->css_critical = [];
|
50 |
+
}
|
51 |
+
|
52 |
+
// Get <style> and <link>.
|
53 |
+
if ( preg_match_all( '#(<style[^>]*>.*</style>)|(<link[^>]*stylesheet[^>]*>)#Usmi', $this->content, $matches ) ) {
|
54 |
+
|
55 |
+
foreach ( $matches[0] as $tag ) {
|
56 |
+
if ( $this->isCritical( $tag ) ) {
|
57 |
+
$this->content = str_replace( $tag, '', $this->content );
|
58 |
+
$this->injectInHtml( $tag, $this->replaceTag );
|
59 |
+
}
|
60 |
+
}
|
61 |
+
|
62 |
+
return true;
|
63 |
+
}
|
64 |
+
|
65 |
+
// Really, no styles?
|
66 |
+
return false;
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* @param $tag
|
71 |
+
*
|
72 |
+
* @return bool
|
73 |
+
*/
|
74 |
+
private function isCritical( $tag ) {
|
75 |
+
if ( is_array( $this->css_critical ) && ! empty( $this->css_critical ) ) {
|
76 |
+
foreach ( $this->css_critical as $match ) {
|
77 |
+
$pattern = str_replace( '.', '\.', $match );
|
78 |
+
$pattern = str_replace( '*', '.*', $pattern );
|
79 |
+
$pattern = str_replace( '/', '\/', $pattern );
|
80 |
+
if ( preg_match( "/{$pattern}/", $tag ) ) {
|
81 |
+
return true;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
return false;
|
87 |
+
}
|
88 |
+
|
89 |
+
}
|
components/minify-and-combine/includes/classes/class-main.php
CHANGED
@@ -93,7 +93,10 @@ class WMAC_PluginMain {
|
|
93 |
public function run() {
|
94 |
if ( WMAC_PluginCache::cacheAvail() ) {
|
95 |
|
96 |
-
if ( WMAC_Plugin::app()->getPopulateOption( 'js_optimize' )
|
|
|
|
|
|
|
97 |
// Hook into WordPress frontend.
|
98 |
if ( defined( 'WMAC_INIT_EARLIER' ) ) {
|
99 |
add_action( 'init', [ $this, 'startBuffering' ], self::INIT_EARLIER_PRIORITY );
|
@@ -165,7 +168,7 @@ class WMAC_PluginMain {
|
|
165 |
}
|
166 |
|
167 |
if ( apply_filters( 'wmac_filter_obkiller', false ) ) {
|
168 |
-
while( ob_get_level() > 0 ) {
|
169 |
ob_end_clean();
|
170 |
}
|
171 |
}
|
@@ -178,7 +181,7 @@ class WMAC_PluginMain {
|
|
178 |
/**
|
179 |
* Returns true if all the conditions to start output buffering are satisfied.
|
180 |
*
|
181 |
-
* @param bool $doing_tests
|
182 |
* deciding once per request (for use in tests).
|
183 |
*
|
184 |
* @return bool
|
@@ -237,7 +240,7 @@ class WMAC_PluginMain {
|
|
237 |
/**
|
238 |
* Returns true if given markup is considered valid/processable/optimizable.
|
239 |
*
|
240 |
-
* @param string $content
|
241 |
*
|
242 |
* @return bool
|
243 |
*/
|
@@ -268,7 +271,7 @@ class WMAC_PluginMain {
|
|
268 |
* Returns true if given $content is considered to be AMP markup.
|
269 |
* This is far from actual validation against AMP spec, but it'll do for now.
|
270 |
*
|
271 |
-
* @param string $content
|
272 |
*
|
273 |
* @return bool
|
274 |
*/
|
@@ -282,7 +285,7 @@ class WMAC_PluginMain {
|
|
282 |
* Processes/optimizes the output-buffered content and returns it.
|
283 |
* If the content is not processable, it is returned unmodified.
|
284 |
*
|
285 |
-
* @param string $content
|
286 |
*
|
287 |
* @return string
|
288 |
*/
|
@@ -293,7 +296,7 @@ class WMAC_PluginMain {
|
|
293 |
}
|
294 |
|
295 |
// Determine what needs to be ran.
|
296 |
-
$classes =
|
297 |
if ( WMAC_Plugin::app()->getPopulateOption( 'js_optimize' ) ) {
|
298 |
$classes[] = 'WMAC_PluginScripts';
|
299 |
}
|
@@ -302,14 +305,14 @@ class WMAC_PluginMain {
|
|
302 |
}
|
303 |
|
304 |
$classoptions = [
|
305 |
-
'WMAC_PluginScripts'
|
306 |
'aggregate' => WMAC_Plugin::app()->getPopulateOption( 'js_aggregate' ),
|
307 |
'forcehead' => WMAC_Plugin::app()->getPopulateOption( 'js_forcehead' ),
|
308 |
'trycatch' => WMAC_Plugin::app()->getPopulateOption( 'js_trycatch' ),
|
309 |
'js_exclude' => WMAC_Plugin::app()->getPopulateOption( 'js_exclude' ),
|
310 |
'include_inline' => WMAC_Plugin::app()->getPopulateOption( 'js_include_inline' ),
|
311 |
],
|
312 |
-
'WMAC_PluginStyles'
|
313 |
'aggregate' => WMAC_Plugin::app()->getPopulateOption( 'css_aggregate' ),
|
314 |
'datauris' => WMAC_Plugin::app()->getPopulateOption( 'css_datauris' ),
|
315 |
'defer' => WMAC_Plugin::app()->getPopulateOption( 'css_defer' ),
|
@@ -317,6 +320,10 @@ class WMAC_PluginMain {
|
|
317 |
'css_exclude' => WMAC_Plugin::app()->getPopulateOption( 'css_exclude' ),
|
318 |
'include_inline' => WMAC_Plugin::app()->getPopulateOption( 'css_include_inline' ),
|
319 |
],
|
|
|
|
|
|
|
|
|
320 |
];
|
321 |
|
322 |
$content = apply_filters( 'wmac_filter_html_before_minify', $content );
|
93 |
public function run() {
|
94 |
if ( WMAC_PluginCache::cacheAvail() ) {
|
95 |
|
96 |
+
if ( WMAC_Plugin::app()->getPopulateOption( 'js_optimize' )
|
97 |
+
|| WMAC_Plugin::app()->getPopulateOption( 'css_optimize' )
|
98 |
+
|| WMAC_Plugin::app()->getPopulateOption( 'css_critical' )
|
99 |
+
|| WMAC_Plugin::app()->getPopulateOption( 'css_critical_style' ) ) {
|
100 |
// Hook into WordPress frontend.
|
101 |
if ( defined( 'WMAC_INIT_EARLIER' ) ) {
|
102 |
add_action( 'init', [ $this, 'startBuffering' ], self::INIT_EARLIER_PRIORITY );
|
168 |
}
|
169 |
|
170 |
if ( apply_filters( 'wmac_filter_obkiller', false ) ) {
|
171 |
+
while ( ob_get_level() > 0 ) {
|
172 |
ob_end_clean();
|
173 |
}
|
174 |
}
|
181 |
/**
|
182 |
* Returns true if all the conditions to start output buffering are satisfied.
|
183 |
*
|
184 |
+
* @param bool $doing_tests Allows overriding the optimization of only
|
185 |
* deciding once per request (for use in tests).
|
186 |
*
|
187 |
* @return bool
|
240 |
/**
|
241 |
* Returns true if given markup is considered valid/processable/optimizable.
|
242 |
*
|
243 |
+
* @param string $content Markup.
|
244 |
*
|
245 |
* @return bool
|
246 |
*/
|
271 |
* Returns true if given $content is considered to be AMP markup.
|
272 |
* This is far from actual validation against AMP spec, but it'll do for now.
|
273 |
*
|
274 |
+
* @param string $content Markup to check.
|
275 |
*
|
276 |
* @return bool
|
277 |
*/
|
285 |
* Processes/optimizes the output-buffered content and returns it.
|
286 |
* If the content is not processable, it is returned unmodified.
|
287 |
*
|
288 |
+
* @param string $content Buffered content.
|
289 |
*
|
290 |
* @return string
|
291 |
*/
|
296 |
}
|
297 |
|
298 |
// Determine what needs to be ran.
|
299 |
+
$classes[] = 'WMAC_PluginCriticalCss';
|
300 |
if ( WMAC_Plugin::app()->getPopulateOption( 'js_optimize' ) ) {
|
301 |
$classes[] = 'WMAC_PluginScripts';
|
302 |
}
|
305 |
}
|
306 |
|
307 |
$classoptions = [
|
308 |
+
'WMAC_PluginScripts' => [
|
309 |
'aggregate' => WMAC_Plugin::app()->getPopulateOption( 'js_aggregate' ),
|
310 |
'forcehead' => WMAC_Plugin::app()->getPopulateOption( 'js_forcehead' ),
|
311 |
'trycatch' => WMAC_Plugin::app()->getPopulateOption( 'js_trycatch' ),
|
312 |
'js_exclude' => WMAC_Plugin::app()->getPopulateOption( 'js_exclude' ),
|
313 |
'include_inline' => WMAC_Plugin::app()->getPopulateOption( 'js_include_inline' ),
|
314 |
],
|
315 |
+
'WMAC_PluginStyles' => [
|
316 |
'aggregate' => WMAC_Plugin::app()->getPopulateOption( 'css_aggregate' ),
|
317 |
'datauris' => WMAC_Plugin::app()->getPopulateOption( 'css_datauris' ),
|
318 |
'defer' => WMAC_Plugin::app()->getPopulateOption( 'css_defer' ),
|
320 |
'css_exclude' => WMAC_Plugin::app()->getPopulateOption( 'css_exclude' ),
|
321 |
'include_inline' => WMAC_Plugin::app()->getPopulateOption( 'css_include_inline' ),
|
322 |
],
|
323 |
+
'WMAC_PluginCriticalCss' => [
|
324 |
+
'css_critical' => WMAC_Plugin::app()->getPopulateOption( 'css_critical' ),
|
325 |
+
'css_critical_style' => WMAC_Plugin::app()->getPopulateOption( 'css_critical_style' ),
|
326 |
+
],
|
327 |
];
|
328 |
|
329 |
$content = apply_filters( 'wmac_filter_html_before_minify', $content );
|
components/minify-and-combine/includes/classes/class-styles.php
CHANGED
@@ -54,6 +54,8 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
54 |
private $cssremovables = [];
|
55 |
private $include_inline = false;
|
56 |
private $inject_min_late = '';
|
|
|
|
|
57 |
|
58 |
/**
|
59 |
* Reads the page and collects style tags.
|
@@ -399,7 +401,7 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
399 |
* it does so by replacing the longest-matching strings first.
|
400 |
*
|
401 |
* @param string $string
|
402 |
-
* @param array
|
403 |
*
|
404 |
* @return string
|
405 |
*/
|
@@ -616,7 +618,7 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
616 |
|
617 |
// remove comments to avoid importing commented-out imports.
|
618 |
$thiscss_nocomments = preg_replace( '#/\*.*\*/#Us', '', $thiscss );
|
619 |
-
while( preg_match_all( '#@import +(?:url)?(?:(?:\((["\']?)(?:[^"\')]+)\1\)|(["\'])(?:[^"\']+)\2)(?:[^,;"\']+(?:,[^,;"\']+)*)?)(?:;)#mi', $thiscss_nocomments, $matches ) ) {
|
620 |
foreach ( $matches[0] as $import ) {
|
621 |
if ( $this->isremovable( $import, $this->cssremovables ) ) {
|
622 |
$thiscss = str_replace( $import, '', $thiscss );
|
@@ -816,6 +818,10 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
816 |
}
|
817 |
}
|
818 |
|
|
|
|
|
|
|
|
|
819 |
// Return the modified stylesheet.
|
820 |
return $this->content;
|
821 |
}
|
@@ -937,7 +943,10 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
937 |
*
|
938 |
* @return bool
|
939 |
*/
|
940 |
-
private
|
|
|
|
|
|
|
941 |
$consider_minified_array = apply_filters( 'wmac_filter_css_consider_minified', false, $cssPath );
|
942 |
if ( true !== $this->inject_min_late ) {
|
943 |
// late-inject turned off.
|
@@ -961,12 +970,15 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
961 |
* Minifies a single local css file
|
962 |
* and returns its (cached) url.
|
963 |
*
|
964 |
-
* @param string $filepath
|
965 |
-
* @param bool
|
966 |
*
|
967 |
* @return bool|string Url pointing to the minified css file or false.
|
968 |
*/
|
969 |
-
public
|
|
|
|
|
|
|
970 |
$contents = $this->prepareMinifySingle( $filepath );
|
971 |
|
972 |
if ( empty( $contents ) ) {
|
@@ -1000,7 +1012,8 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
1000 |
*
|
1001 |
* @return string
|
1002 |
*/
|
1003 |
-
public
|
|
|
1004 |
$preload_onload = apply_filters( 'wmac_filter_css_preload_onload', "this.onload=null;this.rel='stylesheet'" );
|
1005 |
|
1006 |
return $preload_onload;
|
@@ -1011,7 +1024,8 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
1011 |
*
|
1012 |
* @return string
|
1013 |
*/
|
1014 |
-
public
|
|
|
1015 |
$preload_poly = apply_filters( 'wmac_filter_css_preload_polyfill', '<script data-cfasync=\'false\'>!function(t){"use strict";t.loadCSS||(t.loadCSS=function(){});var e=loadCSS.relpreload={};if(e.support=function(){var e;try{e=t.document.createElement("link").relList.supports("preload")}catch(t){e=!1}return function(){return e}}(),e.bindMediaToggle=function(t){function e(){t.media=a}var a=t.media||"all";t.addEventListener?t.addEventListener("load",e):t.attachEvent&&t.attachEvent("onload",e),setTimeout(function(){t.rel="stylesheet",t.media="only x"}),setTimeout(e,3e3)},e.poly=function(){if(!e.support())for(var a=t.document.getElementsByTagName("link"),n=0;n<a.length;n++){var o=a[n];"preload"!==o.rel||"style"!==o.getAttribute("as")||o.getAttribute("data-loadcss")||(o.setAttribute("data-loadcss",!0),e.bindMediaToggle(o))}},!e.support()){e.poly();var a=t.setInterval(e.poly,500);t.addEventListener?t.addEventListener("load",function(){e.poly(),t.clearInterval(a)}):t.attachEvent&&t.attachEvent("onload",function(){e.poly(),t.clearInterval(a)})}"undefined"!=typeof exports?exports.loadCSS=loadCSS:t.loadCSS=loadCSS}("undefined"!=typeof global?global:this);</script>' );
|
1016 |
|
1017 |
return $preload_poly;
|
@@ -1022,21 +1036,26 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
1022 |
*
|
1023 |
* @return bool
|
1024 |
*/
|
1025 |
-
public
|
|
|
1026 |
return $this->aggregate;
|
1027 |
}
|
1028 |
|
1029 |
/**
|
1030 |
* @return array
|
1031 |
*/
|
1032 |
-
public
|
|
|
1033 |
return $this->options;
|
1034 |
}
|
1035 |
|
1036 |
/**
|
1037 |
* @param $options
|
1038 |
*/
|
1039 |
-
public
|
|
|
|
|
|
|
1040 |
$this->options = $options;
|
1041 |
}
|
1042 |
|
@@ -1044,7 +1063,10 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
1044 |
* @param $name
|
1045 |
* @param $value
|
1046 |
*/
|
1047 |
-
public
|
|
|
|
|
|
|
1048 |
$this->options[ $name ] = $value;
|
1049 |
$this->$name = $value;
|
1050 |
}
|
@@ -1054,7 +1076,10 @@ class WMAC_PluginStyles extends WMAC_PluginBase {
|
|
1054 |
*
|
1055 |
* @return mixed
|
1056 |
*/
|
1057 |
-
public
|
|
|
|
|
|
|
1058 |
return $this->options[ $name ];
|
1059 |
}
|
1060 |
}
|
54 |
private $cssremovables = [];
|
55 |
private $include_inline = false;
|
56 |
private $inject_min_late = '';
|
57 |
+
private $css_critical_style = '';
|
58 |
+
private $css_critical = [];
|
59 |
|
60 |
/**
|
61 |
* Reads the page and collects style tags.
|
401 |
* it does so by replacing the longest-matching strings first.
|
402 |
*
|
403 |
* @param string $string
|
404 |
+
* @param array $replacements
|
405 |
*
|
406 |
* @return string
|
407 |
*/
|
618 |
|
619 |
// remove comments to avoid importing commented-out imports.
|
620 |
$thiscss_nocomments = preg_replace( '#/\*.*\*/#Us', '', $thiscss );
|
621 |
+
while ( preg_match_all( '#@import +(?:url)?(?:(?:\((["\']?)(?:[^"\')]+)\1\)|(["\'])(?:[^"\']+)\2)(?:[^,;"\']+(?:,[^,;"\']+)*)?)(?:;)#mi', $thiscss_nocomments, $matches ) ) {
|
622 |
foreach ( $matches[0] as $import ) {
|
623 |
if ( $this->isremovable( $import, $this->cssremovables ) ) {
|
624 |
$thiscss = str_replace( $import, '', $thiscss );
|
818 |
}
|
819 |
}
|
820 |
|
821 |
+
if ( ! empty( $this->css_critical_style ) ) {
|
822 |
+
$this->injectInHtml( "<style type='text/css'>{$this->css_critical_style}</style>", $replaceTag );
|
823 |
+
}
|
824 |
+
|
825 |
// Return the modified stylesheet.
|
826 |
return $this->content;
|
827 |
}
|
943 |
*
|
944 |
* @return bool
|
945 |
*/
|
946 |
+
private
|
947 |
+
function canInjectLate(
|
948 |
+
$cssPath, $css
|
949 |
+
) {
|
950 |
$consider_minified_array = apply_filters( 'wmac_filter_css_consider_minified', false, $cssPath );
|
951 |
if ( true !== $this->inject_min_late ) {
|
952 |
// late-inject turned off.
|
970 |
* Minifies a single local css file
|
971 |
* and returns its (cached) url.
|
972 |
*
|
973 |
+
* @param string $filepath Filepath.
|
974 |
+
* @param bool $cache_miss Optional. Force a cache miss. Default false.
|
975 |
*
|
976 |
* @return bool|string Url pointing to the minified css file or false.
|
977 |
*/
|
978 |
+
public
|
979 |
+
function minifySingle(
|
980 |
+
$filepath, $cache_miss = false
|
981 |
+
) {
|
982 |
$contents = $this->prepareMinifySingle( $filepath );
|
983 |
|
984 |
if ( empty( $contents ) ) {
|
1012 |
*
|
1013 |
* @return string
|
1014 |
*/
|
1015 |
+
public
|
1016 |
+
function getAoCssPreloadOnload() {
|
1017 |
$preload_onload = apply_filters( 'wmac_filter_css_preload_onload', "this.onload=null;this.rel='stylesheet'" );
|
1018 |
|
1019 |
return $preload_onload;
|
1024 |
*
|
1025 |
* @return string
|
1026 |
*/
|
1027 |
+
public
|
1028 |
+
function getAoCssPreloadPolyfill() {
|
1029 |
$preload_poly = apply_filters( 'wmac_filter_css_preload_polyfill', '<script data-cfasync=\'false\'>!function(t){"use strict";t.loadCSS||(t.loadCSS=function(){});var e=loadCSS.relpreload={};if(e.support=function(){var e;try{e=t.document.createElement("link").relList.supports("preload")}catch(t){e=!1}return function(){return e}}(),e.bindMediaToggle=function(t){function e(){t.media=a}var a=t.media||"all";t.addEventListener?t.addEventListener("load",e):t.attachEvent&&t.attachEvent("onload",e),setTimeout(function(){t.rel="stylesheet",t.media="only x"}),setTimeout(e,3e3)},e.poly=function(){if(!e.support())for(var a=t.document.getElementsByTagName("link"),n=0;n<a.length;n++){var o=a[n];"preload"!==o.rel||"style"!==o.getAttribute("as")||o.getAttribute("data-loadcss")||(o.setAttribute("data-loadcss",!0),e.bindMediaToggle(o))}},!e.support()){e.poly();var a=t.setInterval(e.poly,500);t.addEventListener?t.addEventListener("load",function(){e.poly(),t.clearInterval(a)}):t.attachEvent&&t.attachEvent("onload",function(){e.poly(),t.clearInterval(a)})}"undefined"!=typeof exports?exports.loadCSS=loadCSS:t.loadCSS=loadCSS}("undefined"!=typeof global?global:this);</script>' );
|
1030 |
|
1031 |
return $preload_poly;
|
1036 |
*
|
1037 |
* @return bool
|
1038 |
*/
|
1039 |
+
public
|
1040 |
+
function aggregating() {
|
1041 |
return $this->aggregate;
|
1042 |
}
|
1043 |
|
1044 |
/**
|
1045 |
* @return array
|
1046 |
*/
|
1047 |
+
public
|
1048 |
+
function getOptions() {
|
1049 |
return $this->options;
|
1050 |
}
|
1051 |
|
1052 |
/**
|
1053 |
* @param $options
|
1054 |
*/
|
1055 |
+
public
|
1056 |
+
function replaceOptions(
|
1057 |
+
$options
|
1058 |
+
) {
|
1059 |
$this->options = $options;
|
1060 |
}
|
1061 |
|
1063 |
* @param $name
|
1064 |
* @param $value
|
1065 |
*/
|
1066 |
+
public
|
1067 |
+
function setOption(
|
1068 |
+
$name, $value
|
1069 |
+
) {
|
1070 |
$this->options[ $name ] = $value;
|
1071 |
$this->$name = $value;
|
1072 |
}
|
1076 |
*
|
1077 |
* @return mixed
|
1078 |
*/
|
1079 |
+
public
|
1080 |
+
function getOption(
|
1081 |
+
$name
|
1082 |
+
) {
|
1083 |
return $this->options[ $name ];
|
1084 |
}
|
1085 |
}
|
components/minify-and-combine/minify-and-combine.php
CHANGED
@@ -4,11 +4,11 @@
|
|
4 |
* Plugin URI: https://webcraftic.com
|
5 |
* Description: Optimizes your website, concatenating the CSS and JavaScript code, and compressing it.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
-
* Version: 1.1.
|
8 |
* Text Domain: minify-and-combine
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
/*
|
@@ -59,15 +59,15 @@ $wmac_plugin_info = array(
|
|
59 |
|
60 |
// FRAMEWORK MODULES
|
61 |
'load_factory_modules' => array(
|
62 |
-
array( 'libs/factory/bootstrap', '
|
63 |
-
array( 'libs/factory/forms', '
|
64 |
-
array( 'libs/factory/pages', '
|
65 |
-
array( 'libs/factory/clearfy', '
|
66 |
-
array( 'libs/factory/adverts', '
|
67 |
)
|
68 |
);
|
69 |
|
70 |
-
$wmac_compatibility = new
|
71 |
'plugin_already_activate' => defined( 'WMAC_PLUGIN_ACTIVE' ),
|
72 |
'required_php_version' => '5.4',
|
73 |
'required_wp_version' => '4.2.0',
|
4 |
* Plugin URI: https://webcraftic.com
|
5 |
* Description: Optimizes your website, concatenating the CSS and JavaScript code, and compressing it.
|
6 |
* Author: Webcraftic <wordpress.webraftic@gmail.com>
|
7 |
+
* Version: 1.1.1
|
8 |
* Text Domain: minify-and-combine
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
/*
|
59 |
|
60 |
// FRAMEWORK MODULES
|
61 |
'load_factory_modules' => array(
|
62 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
63 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
64 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
65 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
66 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
67 |
)
|
68 |
);
|
69 |
|
70 |
+
$wmac_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wmac_plugin_info, array(
|
71 |
'plugin_already_activate' => defined( 'WMAC_PLUGIN_ACTIVE' ),
|
72 |
'required_php_version' => '5.4',
|
73 |
'required_wp_version' => '4.2.0',
|
components/updates-manager/admin/activation.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
*
|
6 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.09.2017, Webcraftic
|
8 |
-
* @see
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly
|
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
-
class WUPM_Activation extends
|
17 |
|
18 |
/**
|
19 |
* Runs activation actions.
|
5 |
*
|
6 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
7 |
* @copyright (c) 09.09.2017, Webcraftic
|
8 |
+
* @see Factory429_Activator
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
+
class WUPM_Activation extends Wbcr_Factory429_Activator {
|
17 |
|
18 |
/**
|
19 |
* Runs activation actions.
|
components/updates-manager/admin/assets/js/ajax-components.js
CHANGED
@@ -59,15 +59,15 @@ jQuery(function($) {
|
|
59 |
|
60 |
if( !response || !response.success ) {
|
61 |
if( response.data.error_message ) {
|
62 |
-
$.
|
63 |
}
|
64 |
return false;
|
65 |
}
|
66 |
|
67 |
-
/*var noticeId = $.
|
68 |
|
69 |
setTimeout(function() {
|
70 |
-
$.
|
71 |
}, 5000);*/
|
72 |
},
|
73 |
error: function(xhr, ajaxOptions, thrownError) {
|
@@ -75,7 +75,7 @@ jQuery(function($) {
|
|
75 |
console.log(xhr.responseText);
|
76 |
console.log(thrownError);
|
77 |
|
78 |
-
$.
|
79 |
}
|
80 |
});
|
81 |
});
|
59 |
|
60 |
if( !response || !response.success ) {
|
61 |
if( response.data.error_message ) {
|
62 |
+
$.wbcr_factory_clearfy_221.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
|
63 |
}
|
64 |
return false;
|
65 |
}
|
66 |
|
67 |
+
/*var noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Settings successfully updated', 'success');
|
68 |
|
69 |
setTimeout(function() {
|
70 |
+
$.wbcr_factory_clearfy_221.app.hideNotice(noticeId);
|
71 |
}, 5000);*/
|
72 |
},
|
73 |
error: function(xhr, ajaxOptions, thrownError) {
|
75 |
console.log(xhr.responseText);
|
76 |
console.log(thrownError);
|
77 |
|
78 |
+
$.wbcr_factory_clearfy_221.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
|
79 |
}
|
80 |
});
|
81 |
});
|
components/updates-manager/admin/boot.php
CHANGED
@@ -48,7 +48,7 @@ if ( ! defined( 'LOADING_UPDATES_MANAGER_AS_ADDON' ) ) {
|
|
48 |
return $page_url;
|
49 |
}
|
50 |
|
51 |
-
add_filter( '
|
52 |
|
53 |
/**
|
54 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
48 |
return $page_url;
|
49 |
}
|
50 |
|
51 |
+
add_filter( 'wbcr_factory_pages_429_imppage_rating_widget_url', 'wbcr_upm_rating_widget_url', 10, 2 );
|
52 |
|
53 |
/**
|
54 |
* Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
|
components/updates-manager/admin/includes/class-abstract-filters.php
CHANGED
@@ -14,7 +14,7 @@ abstract class WUPM_AbstractFilters {
|
|
14 |
protected $is_disable_translation_updates;
|
15 |
|
16 |
|
17 |
-
function __construct(
|
18 |
$this->plugin = $plugin;
|
19 |
$this->load();
|
20 |
}
|
14 |
protected $is_disable_translation_updates;
|
15 |
|
16 |
|
17 |
+
function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
18 |
$this->plugin = $plugin;
|
19 |
$this->load();
|
20 |
}
|
components/updates-manager/admin/pages/class-page-advanced.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WUPM_AdvancedPage extends
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
@@ -66,9 +66,9 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
66 |
*
|
67 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
68 |
*
|
69 |
-
* @param \
|
70 |
*/
|
71 |
-
public function __construct(
|
72 |
$this->menu_title = __( 'Advanced', 'webcraftic-updates-manager' );
|
73 |
|
74 |
parent::__construct( $plugin );
|
@@ -79,8 +79,8 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
79 |
*
|
80 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
81 |
*
|
82 |
-
* @param \
|
83 |
-
* @param \
|
84 |
*/
|
85 |
public function assets( $scripts, $styles ) {
|
86 |
parent::assets( $scripts, $styles );
|
16 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WUPM_AdvancedPage extends Wbcr_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
* {@inheritDoc}
|
66 |
*
|
67 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
68 |
*
|
69 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
70 |
*/
|
71 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
72 |
$this->menu_title = __( 'Advanced', 'webcraftic-updates-manager' );
|
73 |
|
74 |
parent::__construct( $plugin );
|
79 |
*
|
80 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
81 |
*
|
82 |
+
* @param \Wbcr_Factory429_ScriptList $scripts
|
83 |
+
* @param \Wbcr_Factory429_StyleList $styles
|
84 |
*/
|
85 |
public function assets( $scripts, $styles ) {
|
86 |
parent::assets( $scripts, $styles );
|
components/updates-manager/admin/pages/class-page-more-features.php
CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WUPM_MoreFeaturesPage extends
|
20 |
|
21 |
}
|
16 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WUPM_MoreFeaturesPage extends Wbcr_FactoryClearfy221_MoreFeaturesPage {
|
20 |
|
21 |
}
|
components/updates-manager/admin/pages/class-page-plugins.php
CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
-
class WUPM_PluginsPage extends
|
20 |
|
21 |
/**
|
22 |
*{@inheritDoc}
|
@@ -83,9 +83,9 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
83 |
*
|
84 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
85 |
*
|
86 |
-
* @param \
|
87 |
*/
|
88 |
-
public function __construct(
|
89 |
$this->menu_title = __( 'Plugins', 'webcraftic-updates-manager' );
|
90 |
|
91 |
parent::__construct( $plugin );
|
@@ -121,8 +121,8 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
121 |
*
|
122 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
123 |
*
|
124 |
-
* @param \
|
125 |
-
* @param \
|
126 |
*/
|
127 |
public function assets( $scripts, $styles ) {
|
128 |
parent::assets( $scripts, $styles );
|
16 |
*
|
17 |
* @copyright (c) 2018 Webraftic Ltd
|
18 |
*/
|
19 |
+
class WUPM_PluginsPage extends Wbcr_FactoryClearfy221_PageBase {
|
20 |
|
21 |
/**
|
22 |
*{@inheritDoc}
|
83 |
*
|
84 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
85 |
*
|
86 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
87 |
*/
|
88 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
89 |
$this->menu_title = __( 'Plugins', 'webcraftic-updates-manager' );
|
90 |
|
91 |
parent::__construct( $plugin );
|
121 |
*
|
122 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
123 |
*
|
124 |
+
* @param \Wbcr_Factory429_ScriptList $scripts
|
125 |
+
* @param \Wbcr_Factory429_StyleList $styles
|
126 |
*/
|
127 |
public function assets( $scripts, $styles ) {
|
128 |
parent::assets( $scripts, $styles );
|
components/updates-manager/admin/pages/class-page-themes.php
CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
15 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
*/
|
18 |
-
class WUPM_ThemesPage extends
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
@@ -85,9 +85,9 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
85 |
private $themes_update_filters = [];
|
86 |
|
87 |
/**
|
88 |
-
* @param
|
89 |
*/
|
90 |
-
public function __construct(
|
91 |
$this->menu_title = __( 'Themes', 'webcraftic-updates-manager' );
|
92 |
|
93 |
parent::__construct( $plugin );
|
@@ -123,7 +123,7 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
123 |
*
|
124 |
* @since 1.0.0
|
125 |
* @return void
|
126 |
-
* @see
|
127 |
*
|
128 |
*/
|
129 |
public function assets( $scripts, $styles ) {
|
15 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
*/
|
18 |
+
class WUPM_ThemesPage extends Wbcr_FactoryClearfy221_PageBase {
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
85 |
private $themes_update_filters = [];
|
86 |
|
87 |
/**
|
88 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
89 |
*/
|
90 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
91 |
$this->menu_title = __( 'Themes', 'webcraftic-updates-manager' );
|
92 |
|
93 |
parent::__construct( $plugin );
|
123 |
*
|
124 |
* @since 1.0.0
|
125 |
* @return void
|
126 |
+
* @see FactoryPages429_AdminPage
|
127 |
*
|
128 |
*/
|
129 |
public function assets( $scripts, $styles ) {
|
components/updates-manager/admin/pages/class-page-updates.php
CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
15 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
*/
|
18 |
-
class WUPM_UpdatesPage extends
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
@@ -51,9 +51,9 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
51 |
*
|
52 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
53 |
*
|
54 |
-
* @param \
|
55 |
*/
|
56 |
-
public function __construct(
|
57 |
$this->menu_title = __( 'Updates manager', 'webcraftic-updates-manager' );
|
58 |
$this->page_menu_short_description = __( 'Manage all site updates', 'webcraftic-updates-manager' );
|
59 |
|
@@ -85,8 +85,8 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy220_PageBase {
|
|
85 |
*
|
86 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com> *
|
87 |
*
|
88 |
-
* @param \
|
89 |
-
* @param \
|
90 |
*/
|
91 |
public function assets( $scripts, $styles ) {
|
92 |
parent::assets( $scripts, $styles );
|
15 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
16 |
* @copyright (c) 2018 Webraftic Ltd
|
17 |
*/
|
18 |
+
class WUPM_UpdatesPage extends Wbcr_FactoryClearfy221_PageBase {
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
51 |
*
|
52 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
53 |
*
|
54 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
55 |
*/
|
56 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
57 |
$this->menu_title = __( 'Updates manager', 'webcraftic-updates-manager' );
|
58 |
$this->page_menu_short_description = __( 'Manage all site updates', 'webcraftic-updates-manager' );
|
59 |
|
85 |
*
|
86 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com> *
|
87 |
*
|
88 |
+
* @param \Wbcr_Factory429_ScriptList $scripts
|
89 |
+
* @param \Wbcr_Factory429_StyleList $styles
|
90 |
*/
|
91 |
public function assets( $scripts, $styles ) {
|
92 |
parent::assets( $scripts, $styles );
|
components/updates-manager/includes/class-plugin.php
CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
-
class WUPM_Plugin extends
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
-
* @var
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
@@ -57,7 +57,7 @@ class WUPM_Plugin extends Wbcr_Factory428_Plugin {
|
|
57 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
58 |
* классам.
|
59 |
*
|
60 |
-
* @return \
|
61 |
*/
|
62 |
public static function app() {
|
63 |
return self::$app;
|
10 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
11 |
* @copyright (c) 19.02.2018, Webcraftic
|
12 |
*/
|
13 |
+
class WUPM_Plugin extends Wbcr_Factory429_Plugin {
|
14 |
|
15 |
/**
|
16 |
* @see self::app()
|
17 |
+
* @var Wbcr_Factory429_Plugin
|
18 |
*/
|
19 |
private static $app;
|
20 |
|
57 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
58 |
* классам.
|
59 |
*
|
60 |
+
* @return \Wbcr_Factory429_Plugin|\WUPM_Plugin
|
61 |
*/
|
62 |
public static function app() {
|
63 |
return self::$app;
|
components/updates-manager/includes/classes/class-configurate-updates.php
CHANGED
@@ -12,7 +12,7 @@ require_once WUPM_PLUGIN_DIR . '/admin/includes/class-plugin-filters.php';
|
|
12 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
13 |
* @copyright (c) 2017 Webraftic Ltd
|
14 |
*/
|
15 |
-
class WUPM_ConfigUpdates extends
|
16 |
|
17 |
public function registerActionsAndFilters() {
|
18 |
/**
|
12 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
13 |
* @copyright (c) 2017 Webraftic Ltd
|
14 |
*/
|
15 |
+
class WUPM_ConfigUpdates extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
public function registerActionsAndFilters() {
|
18 |
/**
|
components/updates-manager/migrations/010008.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
-
class WUPMUpdate010008 extends
|
8 |
|
9 |
public function install()
|
10 |
{
|
4 |
* Updates for altering the table used to store statistics data.
|
5 |
* Adds new columns and renames existing ones in order to add support for the new social buttons.
|
6 |
*/
|
7 |
+
class WUPMUpdate010008 extends Wbcr_Factory429_Update {
|
8 |
|
9 |
public function install()
|
10 |
{
|
components/updates-manager/webcraftic-updates-manager.php
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
* Text Domain: webcraftic-updates-manager
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
-
* Framework Version:
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
@@ -64,15 +64,15 @@ $wupm_plugin_info = array(
|
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
-
array( 'libs/factory/bootstrap', '
|
68 |
-
array( 'libs/factory/forms', '
|
69 |
-
array( 'libs/factory/pages', '
|
70 |
-
array( 'libs/factory/clearfy', '
|
71 |
-
array( 'libs/factory/adverts', '
|
72 |
)
|
73 |
);
|
74 |
|
75 |
-
$wupm_compatibility = new
|
76 |
'plugin_already_activate' => defined( 'WUPM_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
8 |
* Text Domain: webcraftic-updates-manager
|
9 |
* Domain Path: /languages/
|
10 |
* Author URI: https://webcraftic.com
|
11 |
+
* Framework Version: FACTORY_429_VERSION
|
12 |
*/
|
13 |
|
14 |
// Exit if accessed directly
|
64 |
|
65 |
// FRAMEWORK MODULES
|
66 |
'load_factory_modules' => array(
|
67 |
+
array( 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ),
|
68 |
+
array( 'libs/factory/forms', 'factory_forms_427', 'admin' ),
|
69 |
+
array( 'libs/factory/pages', 'factory_pages_429', 'admin' ),
|
70 |
+
array( 'libs/factory/clearfy', 'factory_clearfy_221', 'all' ),
|
71 |
+
array( 'libs/factory/adverts', 'factory_adverts_109', 'admin')
|
72 |
)
|
73 |
);
|
74 |
|
75 |
+
$wupm_compatibility = new Wbcr_Factory429_Requirements( __FILE__, array_merge( $wupm_plugin_info, array(
|
76 |
'plugin_already_activate' => defined( 'WUPM_PLUGIN_ACTIVE' ),
|
77 |
'required_php_version' => '5.4',
|
78 |
'required_wp_version' => '4.2.0',
|
includes/boot.php
CHANGED
@@ -54,7 +54,7 @@
|
|
54 |
* @since 1.1.3 - добавлен
|
55 |
* @since 1.1.4 - является устаревшим
|
56 |
*/
|
57 |
-
$menu_items =
|
58 |
|
59 |
/**
|
60 |
* @since 1.1.3 - добавлен
|
54 |
* @since 1.1.3 - добавлен
|
55 |
* @since 1.1.4 - является устаревшим
|
56 |
*/
|
57 |
+
$menu_items = wbcr_factory_429_apply_filters_deprecated( 'wbcr_clearfy_admin_bar_menu_items', [ $menu_items ], '1.4.0', 'wbcr/clearfy/adminbar_menu_items' );
|
58 |
|
59 |
/**
|
60 |
* @since 1.1.3 - добавлен
|
includes/class.plugin.php
CHANGED
@@ -12,11 +12,11 @@ if( !defined('ABSPATH') ) {
|
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
-
class WCL_Plugin extends
|
16 |
|
17 |
/**
|
18 |
* @see self::app()
|
19 |
-
* @var
|
20 |
*/
|
21 |
private static $app;
|
22 |
|
@@ -71,7 +71,7 @@ class WCL_Plugin extends Wbcr_Factory428_Plugin {
|
|
71 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
72 |
* классам.
|
73 |
*
|
74 |
-
* @return \
|
75 |
*/
|
76 |
public static function app()
|
77 |
{
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
+
class WCL_Plugin extends Wbcr_Factory429_Plugin {
|
16 |
|
17 |
/**
|
18 |
* @see self::app()
|
19 |
+
* @var Wbcr_Factory429_Plugin
|
20 |
*/
|
21 |
private static $app;
|
22 |
|
71 |
* Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
|
72 |
* классам.
|
73 |
*
|
74 |
+
* @return \Wbcr_Factory429_Plugin|\WCL_Plugin
|
75 |
*/
|
76 |
public static function app()
|
77 |
{
|
includes/classes/class.configurate-advanced.php
CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
11 |
exit;
|
12 |
}
|
13 |
|
14 |
-
class WCL_ConfigAdvanced extends
|
15 |
|
16 |
/**
|
17 |
* @param WCL_Plugin $plugin
|
11 |
exit;
|
12 |
}
|
13 |
|
14 |
+
class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy221_Configurate {
|
15 |
|
16 |
/**
|
17 |
* @param WCL_Plugin $plugin
|
includes/classes/class.configurate-google-performance.php
CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
-
class WCL_ConfigGooglePerformance extends
|
16 |
|
17 |
/**
|
18 |
* @param WCL_Plugin $plugin
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
+
class WCL_ConfigGooglePerformance extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
/**
|
18 |
* @param WCL_Plugin $plugin
|
includes/classes/class.configurate-performance.php
CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
-
class WCL_ConfigPerformance extends
|
16 |
|
17 |
/**
|
18 |
* @param WCL_Plugin $plugin
|
@@ -216,6 +216,10 @@ class WCL_ConfigPerformance extends Wbcr_FactoryClearfy220_Configurate {
|
|
216 |
$num = (int) $revision_limit;
|
217 |
}
|
218 |
|
|
|
|
|
|
|
|
|
219 |
if ( $this->getPopulateOption( 'revisions_disable' ) ) {
|
220 |
$num = 0;
|
221 |
}
|
12 |
exit;
|
13 |
}
|
14 |
|
15 |
+
class WCL_ConfigPerformance extends Wbcr_FactoryClearfy221_Configurate {
|
16 |
|
17 |
/**
|
18 |
* @param WCL_Plugin $plugin
|
216 |
$num = (int) $revision_limit;
|
217 |
}
|
218 |
|
219 |
+
if ( 'default' == $revision_limit ) {
|
220 |
+
$num = true;
|
221 |
+
}
|
222 |
+
|
223 |
if ( $this->getPopulateOption( 'revisions_disable' ) ) {
|
224 |
$num = 0;
|
225 |
}
|
includes/classes/class.configurate-privacy.php
CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
-
class WCL_ConfigPrivacy extends
|
17 |
|
18 |
/**
|
19 |
* @param WCL_Plugin $plugin
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
+
class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy221_Configurate {
|
17 |
|
18 |
/**
|
19 |
* @param WCL_Plugin $plugin
|
includes/classes/class.configurate-security.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
exit;
|
12 |
}
|
13 |
|
14 |
-
class WCL_ConfigSecurity extends
|
15 |
|
16 |
/**
|
17 |
* @param WCL_Plugin $plugin
|
11 |
exit;
|
12 |
}
|
13 |
|
14 |
+
class WCL_ConfigSecurity extends Wbcr_FactoryClearfy221_Configurate {
|
15 |
|
16 |
/**
|
17 |
* @param WCL_Plugin $plugin
|
includes/classes/class.configurate-seo.php
CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
-
class WCL_ConfigSeo extends
|
17 |
|
18 |
/**
|
19 |
* @param WCL_Plugin $plugin
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
+
class WCL_ConfigSeo extends Wbcr_FactoryClearfy221_Configurate {
|
17 |
|
18 |
/**
|
19 |
* @param WCL_Plugin $plugin
|
libs/factory/adverts/boot.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
use WBCR\
|
4 |
|
5 |
/**
|
6 |
* Factory Adverts
|
@@ -20,31 +20,31 @@ if( !defined('ABSPATH') ) {
|
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
-
if( defined('
|
24 |
return;
|
25 |
}
|
26 |
|
27 |
# Устанавливаем константу, что модуль уже загружен
|
28 |
-
define('
|
29 |
|
30 |
# Устанавливаем версию модуля
|
31 |
-
define('
|
32 |
|
33 |
# Регистрируем тектовый домен, для интернализации интерфейса модуля
|
34 |
-
load_plugin_textdomain('
|
35 |
|
36 |
# Устанавливаем директорию модуля
|
37 |
-
define('
|
38 |
|
39 |
# Устанавливаем url модуля
|
40 |
-
define('
|
41 |
|
42 |
-
require_once(
|
43 |
-
require_once(
|
44 |
|
45 |
/**
|
46 |
-
* @param
|
47 |
*/
|
48 |
-
add_action('
|
49 |
-
$plugin->set_adverts_manager("WBCR\
|
50 |
});
|
1 |
<?php
|
2 |
|
3 |
+
use WBCR\Factory_Adverts_109\Base;
|
4 |
|
5 |
/**
|
6 |
* Factory Adverts
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
+
if( defined('FACTORY_ADVERTS_109_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
|
24 |
return;
|
25 |
}
|
26 |
|
27 |
# Устанавливаем константу, что модуль уже загружен
|
28 |
+
define('FACTORY_ADVERTS_109_LOADED', true);
|
29 |
|
30 |
# Устанавливаем версию модуля
|
31 |
+
define('FACTORY_ADVERTS_109_VERSION', '1.0.9');
|
32 |
|
33 |
# Регистрируем тектовый домен, для интернализации интерфейса модуля
|
34 |
+
load_plugin_textdomain('wbcr_factory_adverts_109', false, dirname(plugin_basename(__FILE__)) . '/langs');
|
35 |
|
36 |
# Устанавливаем директорию модуля
|
37 |
+
define('FACTORY_ADVERTS_109_DIR', dirname(__FILE__));
|
38 |
|
39 |
# Устанавливаем url модуля
|
40 |
+
define('FACTORY_ADVERTS_109_URL', plugins_url(null, __FILE__));
|
41 |
|
42 |
+
require_once(FACTORY_ADVERTS_109_DIR . '/includes/class-rest-request.php');
|
43 |
+
require_once(FACTORY_ADVERTS_109_DIR . '/includes/class-base.php');
|
44 |
|
45 |
/**
|
46 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
47 |
*/
|
48 |
+
add_action('wbcr_factory_adverts_109_plugin_created', function ($plugin) {
|
49 |
+
$plugin->set_adverts_manager("WBCR\Factory_Adverts_109\Base");
|
50 |
});
|
libs/factory/adverts/includes/class-base.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
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 \
|
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\
|
57 |
*/
|
58 |
private $api;
|
59 |
|
@@ -82,9 +82,9 @@ class Base {
|
|
82 |
*
|
83 |
* @since 1.0.0 Added
|
84 |
*
|
85 |
-
* @param \
|
86 |
*/
|
87 |
-
public function __construct( \
|
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
|
261 |
new Dashboard_Widget( $this->plugin, $content );
|
262 |
}
|
263 |
}
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_Adverts_109;
|
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_Factory429_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_109\Creative_Motion_API
|
57 |
*/
|
58 |
private $api;
|
59 |
|
82 |
*
|
83 |
* @since 1.0.0 Added
|
84 |
*
|
85 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
86 |
*/
|
87 |
+
public function __construct( \Wbcr_Factory429_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_109_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\
|
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 \
|
39 |
*/
|
40 |
private $plugin;
|
41 |
|
@@ -46,10 +46,10 @@ class Dashboard_Widget {
|
|
46 |
*
|
47 |
* @since 1.0.0 Added
|
48 |
*
|
49 |
-
* @param \
|
50 |
* @param string $content
|
51 |
*/
|
52 |
-
public function __construct( \
|
53 |
|
54 |
$this->plugin = $plugin;
|
55 |
$this->content = $content;
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_Adverts_109;
|
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_Factory429_Plugin
|
39 |
*/
|
40 |
private $plugin;
|
41 |
|
46 |
*
|
47 |
* @since 1.0.0 Added
|
48 |
*
|
49 |
+
* @param \Wbcr_Factory429_Plugin $plugin
|
50 |
* @param string $content
|
51 |
*/
|
52 |
+
public function __construct( \Wbcr_Factory429_Plugin $plugin, $content ) {
|
53 |
|
54 |
$this->plugin = $plugin;
|
55 |
$this->content = $content;
|
libs/factory/adverts/includes/class-rest-request.php
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
-
if
|
7 |
exit;
|
8 |
}
|
9 |
|
@@ -65,7 +65,7 @@ class Creative_Motion_API {
|
|
65 |
*
|
66 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
67 |
* @since 1.0.1
|
68 |
-
* @var \
|
69 |
*/
|
70 |
private $plugin;
|
71 |
|
@@ -75,32 +75,34 @@ class Creative_Motion_API {
|
|
75 |
*
|
76 |
* Variable initialization.
|
77 |
*
|
|
|
78 |
* @since 1.0.0 Added
|
79 |
*
|
80 |
-
* @param \Wbcr_Factory428_Plugin $plugin_name
|
81 |
*/
|
82 |
-
public function __construct(
|
|
|
83 |
$this->plugin = $plugin;
|
84 |
}
|
85 |
|
86 |
/**
|
87 |
* Get adverts content.
|
88 |
*
|
89 |
-
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
90 |
-
* @since 1.0.1
|
91 |
-
*
|
92 |
* @param $position
|
93 |
*
|
94 |
* @return string|\WP_Error
|
|
|
|
|
|
|
95 |
*/
|
96 |
-
public function get_content(
|
97 |
-
|
|
|
98 |
|
99 |
-
if
|
100 |
return $data;
|
101 |
}
|
102 |
|
103 |
-
return strip_tags(
|
104 |
}
|
105 |
|
106 |
/**
|
@@ -108,47 +110,52 @@ class Creative_Motion_API {
|
|
108 |
*
|
109 |
* If data in the cache, not empty and not expired, then get data from cache. Or get data from server.
|
110 |
*
|
111 |
-
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
112 |
-
*
|
113 |
-
* @since 1.0.1 Полностью переписан, с перехватом api ошибок
|
114 |
-
* @since 1.0.0 Added
|
115 |
-
*
|
116 |
* @return mixed array(
|
117 |
* 'plugin' => 'wbcr_insert_php',
|
118 |
* 'content' => '<p></p>',
|
119 |
* 'expires' => 1563542199,
|
120 |
* );
|
|
|
|
|
|
|
|
|
|
|
121 |
*/
|
122 |
-
private function get_cache(
|
|
|
123 |
|
124 |
-
if
|
125 |
-
return $this->do_api_request(
|
126 |
}
|
127 |
|
128 |
-
$key = $this->plugin->getPrefix() . md5(
|
|
|
|
|
|
|
|
|
129 |
|
130 |
-
$cached = get_transient(
|
131 |
|
132 |
-
if
|
133 |
-
if
|
134 |
-
return new \WP_Error(
|
135 |
}
|
136 |
-
|
137 |
return $cached;
|
138 |
}
|
139 |
|
140 |
-
$data = $this->do_api_request(
|
141 |
|
142 |
-
if
|
143 |
-
set_transient(
|
144 |
-
'error'
|
145 |
'error_code' => $data->get_error_code()
|
146 |
-
], self::SERVER_UNAVAILABLE_INTERVAL * HOUR_IN_SECONDS
|
147 |
|
148 |
return $data;
|
149 |
}
|
150 |
-
|
151 |
-
set_transient(
|
152 |
|
153 |
return $data;
|
154 |
}
|
@@ -159,39 +166,52 @@ class Creative_Motion_API {
|
|
159 |
* In some case on the server (Apache) in the .htaccess must be set
|
160 |
* RewriteRule ^wp-json/(.*)[?](.*) /?rest_route=/$1&$2 [L]
|
161 |
*
|
162 |
-
* @since 1.0.1 Добавлен перехват ошибок, рефакторинг кода.
|
163 |
-
* @since 1.0.0 Added
|
164 |
-
*
|
165 |
* @return mixed array(
|
166 |
* 'plugin' => 'wbcr_insert_php',
|
167 |
* 'content' => '<p></p>',
|
168 |
* 'expires' => 1563542199,
|
169 |
* );
|
|
|
|
|
|
|
170 |
*/
|
171 |
-
private function do_api_request(
|
|
|
172 |
$default_result = [
|
173 |
'content' => '',
|
174 |
'expires' => self::DEFAULT_REQUESTS_INTERVAL * HOUR_IN_SECONDS,
|
175 |
];
|
176 |
|
177 |
-
$url = untrailingslashit(
|
178 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
|
180 |
-
$response = wp_remote_get(
|
181 |
|
182 |
-
$code = wp_remote_retrieve_response_code(
|
183 |
-
$body = wp_remote_retrieve_body(
|
184 |
|
185 |
-
$data = @json_decode(
|
186 |
|
187 |
-
if
|
188 |
return $response;
|
189 |
}
|
190 |
|
191 |
-
if
|
192 |
-
return new \WP_Error(
|
193 |
}
|
194 |
|
195 |
-
return wp_parse_args(
|
196 |
}
|
197 |
}
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_Adverts_109;
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
+
if( !defined('ABSPATH') ) {
|
7 |
exit;
|
8 |
}
|
9 |
|
65 |
*
|
66 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
67 |
* @since 1.0.1
|
68 |
+
* @var \Wbcr_Factory429_Plugin
|
69 |
*/
|
70 |
private $plugin;
|
71 |
|
75 |
*
|
76 |
* Variable initialization.
|
77 |
*
|
78 |
+
* @param \Wbcr_Factory429_Plugin $plugin_name
|
79 |
* @since 1.0.0 Added
|
80 |
*
|
|
|
81 |
*/
|
82 |
+
public function __construct(\Wbcr_Factory429_Plugin $plugin)
|
83 |
+
{
|
84 |
$this->plugin = $plugin;
|
85 |
}
|
86 |
|
87 |
/**
|
88 |
* Get adverts content.
|
89 |
*
|
|
|
|
|
|
|
90 |
* @param $position
|
91 |
*
|
92 |
* @return string|\WP_Error
|
93 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
94 |
+
* @since 1.0.1
|
95 |
+
*
|
96 |
*/
|
97 |
+
public function get_content($position)
|
98 |
+
{
|
99 |
+
$data = $this->get_cache($position);
|
100 |
|
101 |
+
if( is_wp_error($data) ) {
|
102 |
return $data;
|
103 |
}
|
104 |
|
105 |
+
return strip_tags($data['content'], '<b>,<a>,<i>,<strong>,<img>,<ul>,<ol>,<li>');
|
106 |
}
|
107 |
|
108 |
/**
|
110 |
*
|
111 |
* If data in the cache, not empty and not expired, then get data from cache. Or get data from server.
|
112 |
*
|
|
|
|
|
|
|
|
|
|
|
113 |
* @return mixed array(
|
114 |
* 'plugin' => 'wbcr_insert_php',
|
115 |
* 'content' => '<p></p>',
|
116 |
* 'expires' => 1563542199,
|
117 |
* );
|
118 |
+
* @since 1.0.1 Полностью переписан, с перехватом api ошибок
|
119 |
+
* @since 1.0.0 Added
|
120 |
+
*
|
121 |
+
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
122 |
+
*
|
123 |
*/
|
124 |
+
private function get_cache($position)
|
125 |
+
{
|
126 |
|
127 |
+
if( defined('FACTORY_ADVERTS_DEBUG') && FACTORY_ADVERTS_DEBUG ) {
|
128 |
+
return $this->do_api_request($position);
|
129 |
}
|
130 |
|
131 |
+
$key = $this->plugin->getPrefix() . md5($position . 'adverts_transient_');
|
132 |
+
|
133 |
+
if( 'ru_RU' === get_locale() ) {
|
134 |
+
$key .= 'ru_';
|
135 |
+
}
|
136 |
|
137 |
+
$cached = get_transient($key);
|
138 |
|
139 |
+
if( $cached !== false ) {
|
140 |
+
if( isset($cached['error_code']) && isset($cached['error']) ) {
|
141 |
+
return new \WP_Error($cached['error_code'], $cached['error']);
|
142 |
}
|
143 |
+
|
144 |
return $cached;
|
145 |
}
|
146 |
|
147 |
+
$data = $this->do_api_request($position);
|
148 |
|
149 |
+
if( is_wp_error($data) ) {
|
150 |
+
set_transient($key, [
|
151 |
+
'error' => $data->get_error_message(),
|
152 |
'error_code' => $data->get_error_code()
|
153 |
+
], self::SERVER_UNAVAILABLE_INTERVAL * HOUR_IN_SECONDS);
|
154 |
|
155 |
return $data;
|
156 |
}
|
157 |
+
|
158 |
+
set_transient($key, $data, self::DEFAULT_REQUESTS_INTERVAL * HOUR_IN_SECONDS);
|
159 |
|
160 |
return $data;
|
161 |
}
|
166 |
* In some case on the server (Apache) in the .htaccess must be set
|
167 |
* RewriteRule ^wp-json/(.*)[?](.*) /?rest_route=/$1&$2 [L]
|
168 |
*
|
|
|
|
|
|
|
169 |
* @return mixed array(
|
170 |
* 'plugin' => 'wbcr_insert_php',
|
171 |
* 'content' => '<p></p>',
|
172 |
* 'expires' => 1563542199,
|
173 |
* );
|
174 |
+
* @since 1.0.0 Added
|
175 |
+
*
|
176 |
+
* @since 1.0.1 Добавлен перехват ошибок, рефакторинг кода.
|
177 |
*/
|
178 |
+
private function do_api_request($position)
|
179 |
+
{
|
180 |
$default_result = [
|
181 |
'content' => '',
|
182 |
'expires' => self::DEFAULT_REQUESTS_INTERVAL * HOUR_IN_SECONDS,
|
183 |
];
|
184 |
|
185 |
+
$url = untrailingslashit(self::SERVER_URL) . '/wp-json' . self::REST_ROUTE;
|
186 |
+
|
187 |
+
$ads_ID = $this->plugin->getPluginName();
|
188 |
+
|
189 |
+
if( 'ru_RU' === get_locale() ) {
|
190 |
+
$ads_ID .= '-ru';
|
191 |
+
}
|
192 |
+
|
193 |
+
$url = add_query_arg([
|
194 |
+
'plugin' => $ads_ID,
|
195 |
+
'position' => $position,
|
196 |
+
'plugin_title' => $this->plugin->getPluginTitle(),
|
197 |
+
'lang' => get_locale()
|
198 |
+
], $url);
|
199 |
|
200 |
+
$response = wp_remote_get($url);
|
201 |
|
202 |
+
$code = wp_remote_retrieve_response_code($response);
|
203 |
+
$body = wp_remote_retrieve_body($response);
|
204 |
|
205 |
+
$data = @json_decode($body, true);
|
206 |
|
207 |
+
if( is_wp_error($response) ) {
|
208 |
return $response;
|
209 |
}
|
210 |
|
211 |
+
if( 200 !== $code ) {
|
212 |
+
return new \WP_Error('http_request_error', 'Failed request to the remote server. Code: ' . $code);
|
213 |
}
|
214 |
|
215 |
+
return wp_parse_args($data, $default_result);
|
216 |
}
|
217 |
}
|
libs/factory/adverts/langs/wbcr_factory_adverts_109-ru_RU.mo
ADDED
Binary file
|
libs/factory/adverts/langs/wbcr_factory_adverts_109-ru_RU.po
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: factory_forms\n"
|
4 |
+
"POT-Creation-Date: 2018-10-16 22:44+0300\n"
|
5 |
+
"PO-Revision-Date: 2018-10-16 22:45+0300\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
|
8 |
+
"Language: ru_RU\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 2.1.1\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
15 |
+
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
|
18 |
+
"X-Poedit-SearchPath-0: .\n"
|
19 |
+
|
20 |
+
#: includes/check-compatibility.php:80
|
21 |
+
msgid "warning"
|
22 |
+
msgstr "предупреждение"
|
23 |
+
|
24 |
+
#: includes/check-compatibility.php:82
|
25 |
+
#, php-format
|
26 |
+
msgid "The %s plugin has stopped."
|
27 |
+
msgstr "Работа плагина %s была остановлена."
|
28 |
+
|
29 |
+
#: includes/check-compatibility.php:83
|
30 |
+
msgid "Possible reasons:"
|
31 |
+
msgstr "Возможные причины:"
|
32 |
+
|
33 |
+
#: includes/check-compatibility.php:89
|
34 |
+
#, php-format
|
35 |
+
msgid "You need to update the PHP version to %s or higher!"
|
36 |
+
msgstr "Вам нужно обновить версию PHP до %s или выше!"
|
37 |
+
|
38 |
+
#: includes/check-compatibility.php:94
|
39 |
+
#, php-format
|
40 |
+
msgid "You need to update WordPress to %s or higher!"
|
41 |
+
msgstr "Вам нужно обновить WordPress до %s или выше!"
|
42 |
+
|
43 |
+
#: includes/functions.php:132
|
44 |
+
#, php-format
|
45 |
+
msgid ""
|
46 |
+
"%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead."
|
47 |
+
msgstr ""
|
48 |
+
"%1$s является <strong>устаревшим,</strong> начиная с версии %2$s в "
|
49 |
+
"Wordpress! Используйте %3$s."
|
50 |
+
|
51 |
+
#: includes/functions.php:134
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"%1$s is <strong>deprecated</strong> since version %2$s with no alternative "
|
55 |
+
"available."
|
56 |
+
msgstr ""
|
57 |
+
"%1$s был вызван с параметром, который является <strong>устаревшими</strong> "
|
58 |
+
"начиная с версии %2$s , в настоящее время доступных альтернатив нет."
|
59 |
+
|
60 |
+
#: includes/plugin.class.php:202 includes/plugin.class.php:237
|
61 |
+
msgid ""
|
62 |
+
"You are trying to call this earlier than the plugin menu will be registered."
|
63 |
+
msgstr ""
|
64 |
+
"Вы пытаетесь вызвать это раньше, чем будет зарегистрировано меню плагина."
|
65 |
+
|
66 |
+
#: includes/plugin.class.php:220
|
67 |
+
msgid ""
|
68 |
+
"You are trying to get a link to a page that does not have multisite mode. "
|
69 |
+
"Clicking this link will lead the user to a non-existent page."
|
70 |
+
msgstr ""
|
71 |
+
"Вы пытаетесь получить ссылку на страницу, которая не имеет "
|
72 |
+
"многопользовательского режима. Щелчок по этой ссылке приведет пользователя "
|
73 |
+
"к несуществующей странице."
|
74 |
+
|
75 |
+
#: includes/plugin.class.php:222
|
76 |
+
msgid ""
|
77 |
+
"Trying to get a link to an unregistered page. You are trying to call this "
|
78 |
+
"earlier than the plugin menu will be registered."
|
79 |
+
msgstr ""
|
80 |
+
"Попытка получить ссылку на незарегистрированную страницу. Вы пытаетесь "
|
81 |
+
"вызвать это раньше, чем будет зарегистрировано меню плагина."
|
82 |
+
|
83 |
+
|
libs/factory/bootstrap/assets/cache/c54ca97249456e97dd6f68e39fe5fd8c.min.js
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
/*!
|
2 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
3 |
-
* Webcraftic factory build
|
4 |
-
*
|
5 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
6 |
-
* Site: http://webcraftic.com
|
7 |
-
* Support: http://webcraftic.com/contact-us/
|
8 |
-
*/
|
9 |
-
|
10 |
-
!function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.attr("checked","checked"),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.removeAttr("checked"),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&(console.log(l[m]),a(m).val(l[m]))}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap429_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.factoryBootstrap429_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-429 .factory-checkbox.factory-buttons-way").factoryBootstrap429_checkboxControl()})}(jQuery);
|
11 |
-
/*!
|
12 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
13 |
-
* Webcraftic factory build
|
14 |
-
*
|
15 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
16 |
-
* Site: http://webcraftic.com
|
17 |
-
* Support: http://webcraftic.com/contact-us/
|
18 |
-
*/
|
19 |
-
|
20 |
-
!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.factoryBootstrap429_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.factoryBootstrap429_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-429 .factory-dropdown").factoryBootstrap429_dropdownControl()})}(jQuery);
|
21 |
-
/*!
|
22 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
23 |
-
* Webcraftic factory build
|
24 |
-
*
|
25 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
26 |
-
* Site: http://webcraftic.com
|
27 |
-
* Support: http://webcraftic.com/contact-us/
|
28 |
-
*/
|
29 |
-
|
30 |
-
+function(a){"use strict";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};b.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focus",i="hover"==g?"mouseleave":"blur";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show()},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},b.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(b),b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass("fade");var d="function"==typeof this.options.placement?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\s?auto?\s?/i,f=e.test(d);f&&(d=d.replace(e,"")||"top"),c.detach().css({top:0,left:0,display:"block"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m="body"==this.options.container?window.innerWidth:j.outerWidth(),n="body"==this.options.container?window.innerHeight:j.outerHeight(),o="body"==this.options.container?0:j.offset().left;d="bottom"==d&&g.top+g.height+i-l>n?"top":"top"==d&&g.top-l-i<0?"bottom":"right"==d&&g.right+h>m?"left":"left"==d&&g.left-h<o?"right":d,c.removeClass(k).addClass(d)}var p=this.getCalculatedOffset(d,g,h,i);this.applyPlacement(p,d),this.$element.trigger("shown.bs."+this.type)}},b.prototype.applyPlacement=function(a,b){var c,d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),a.top=a.top+g,a.left=a.left+h,d.offset(a).addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;if("top"==b&&j!=f&&(c=!0,a.top=a.top+f-j),/bottom|top/.test(b)){var k=0;a.left<0&&(k=-2*a.left,a.left=0,d.offset(a),i=d[0].offsetWidth,j=d[0].offsetHeight),this.replaceArrow(k-e+i,i,"left")}else this.replaceArrow(j-f,j,"top");c&&d.offset(a)},b.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+"%":"")},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},b.prototype.hide=function(){function b(){"in"!=c.hoverState&&d.detach()}var c=this,d=this.tip(),e=a.Event("hide.bs."+this.type);return this.$element.trigger(e),e.isDefaultPrevented()?void 0:(d.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d.one(a.support.transition.end,b).emulateTransitionEnd(150):b(),this.$element.trigger("hidden.bs."+this.type),this)},b.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},b.prototype.hasContent=function(){return this.getTitle()},b.prototype.getPosition=function(){var b=this.$element[0];return a.extend({},"function"==typeof b.getBoundingClientRect?b.getBoundingClientRect():{width:b.offsetWidth,height:b.offsetHeight},this.$element.offset())},b.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},b.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},b.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},b.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},b.prototype.enable=function(){this.enabled=!0},b.prototype.disable=function(){this.enabled=!1},b.prototype.toggleEnabled=function(){this.enabled=!this.enabled},b.prototype.toggle=function(b){var c=b?a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;c.tip().hasClass("in")?c.leave(c):c.enter(c)},b.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var c=a.fn.tooltip;a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof c&&c;e||d.data("bs.tooltip",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=c,this},a(function(){a('[data-toggle="factory-tooltip"]').tooltip({html:!0})})}(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libs/factory/bootstrap/assets/cache/d3f7e6e8889a6d921650a5046bd131b4.min.css
DELETED
@@ -1,69 +0,0 @@
|
|
1 |
-
/*!
|
2 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
3 |
-
* Webcraftic factory build
|
4 |
-
*
|
5 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
6 |
-
* Site: http://webcraftic.com
|
7 |
-
* Support: http://webcraftic.com/contact-us/
|
8 |
-
*/
|
9 |
-
|
10 |
-
|
11 |
-
.factory-bootstrap-429 article,.factory-bootstrap-429 aside,.factory-bootstrap-429 details,.factory-bootstrap-429 figcaption,.factory-bootstrap-429 figure,.factory-bootstrap-429 footer,.factory-bootstrap-429 header,.factory-bootstrap-429 hgroup,.factory-bootstrap-429 main,.factory-bootstrap-429 nav,.factory-bootstrap-429 section,.factory-bootstrap-429 summary{display:block}.factory-bootstrap-429 audio,.factory-bootstrap-429 canvas,.factory-bootstrap-429 video{display:inline-block}.factory-bootstrap-429 audio:not([controls]){display:none;height:0}.factory-bootstrap-429 [hidden],.factory-bootstrap-429 template{display:none}.factory-bootstrap-429 body{margin:0}.factory-bootstrap-429 a{background:0 0}.factory-bootstrap-429 a:focus{outline:thin dotted}.factory-bootstrap-429 a:active,.factory-bootstrap-429 a:hover{outline:0}.factory-bootstrap-429 h1{margin:.67em 0}.factory-bootstrap-429 b,.factory-bootstrap-429 strong{font-weight:700}.factory-bootstrap-429 dfn{font-style:italic}.factory-bootstrap-429 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-429 mark{color:#000;background:#ff0}.factory-bootstrap-429 code,.factory-bootstrap-429 kbd,.factory-bootstrap-429 pre,.factory-bootstrap-429 samp{font-size:1em}.factory-bootstrap-429 pre{white-space:pre-wrap}.factory-bootstrap-429 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-429 sub,.factory-bootstrap-429 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-429 sup{top:-.5em}.factory-bootstrap-429 sub{bottom:-.25em}.factory-bootstrap-429 img{border:0}.factory-bootstrap-429 svg:not(:root){overflow:hidden}.factory-bootstrap-429 figure{margin:0}.factory-bootstrap-429 button,.factory-bootstrap-429 input,.factory-bootstrap-429 select,.factory-bootstrap-429 textarea{margin:0}.factory-bootstrap-429 button,.factory-bootstrap-429 select{text-transform:none}.factory-bootstrap-429 select{padding-right:4px!important}.factory-bootstrap-429 button,.factory-bootstrap-429 input[type=reset],.factory-bootstrap-429 input[type=submit],html .factory-bootstrap-429 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-429 button[disabled],html .factory-bootstrap-429 input[disabled]{cursor:default}.factory-bootstrap-429 input[type=checkbox],.factory-bootstrap-429 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-429 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-429 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-429 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-429 button::-moz-focus-inner,.factory-bootstrap-429 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-429 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-429 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-429 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-429 a,.factory-bootstrap-429 a:visited{text-decoration:underline}.factory-bootstrap-429 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-429 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-429 a[href^="javascript:"]:after,.factory-bootstrap-429 a[href^="#"]:after{content:""}.factory-bootstrap-429 blockquote,.factory-bootstrap-429 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-429 thead{display:table-header-group}.factory-bootstrap-429 img,.factory-bootstrap-429 tr{page-break-inside:avoid}.factory-bootstrap-429 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-429 h2,.factory-bootstrap-429 h3,.factory-bootstrap-429 p{orphans:3;widows:3}.factory-bootstrap-429 h2,.factory-bootstrap-429 h3{page-break-after:avoid}.factory-bootstrap-429 select{background:#fff!important}.factory-bootstrap-429 .navbar{display:none}.factory-bootstrap-429 .table td,.factory-bootstrap-429 .table th{background-color:#fff!important}.factory-bootstrap-429 .btn>.caret,.factory-bootstrap-429 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-429 .label{border:1px solid #000}.factory-bootstrap-429 .table{border-collapse:collapse!important}.factory-bootstrap-429 .table-bordered td,.factory-bootstrap-429 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-429 *,.factory-bootstrap-429 :after,.factory-bootstrap-429 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-429{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-429 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-429 button,.factory-bootstrap-429 input,.factory-bootstrap-429 select,.factory-bootstrap-429 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-429 img{vertical-align:middle}.factory-bootstrap-429 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-429 .img-rounded{border-radius:6px}.factory-bootstrap-429 .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-429 .img-circle{border-radius:50%}.factory-bootstrap-429 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-429 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-429 .h1,.factory-bootstrap-429 .h2,.factory-bootstrap-429 .h3,.factory-bootstrap-429 .h4,.factory-bootstrap-429 .h5,.factory-bootstrap-429 .h6,.factory-bootstrap-429 h1,.factory-bootstrap-429 h2,.factory-bootstrap-429 h3,.factory-bootstrap-429 h4,.factory-bootstrap-429 h5,.factory-bootstrap-429 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-429 .h1 .small,.factory-bootstrap-429 .h1 small,.factory-bootstrap-429 .h2 .small,.factory-bootstrap-429 .h2 small,.factory-bootstrap-429 .h3 .small,.factory-bootstrap-429 .h3 small,.factory-bootstrap-429 .h4 .small,.factory-bootstrap-429 .h4 small,.factory-bootstrap-429 .h5 .small,.factory-bootstrap-429 .h5 small,.factory-bootstrap-429 .h6 .small,.factory-bootstrap-429 .h6 small,.factory-bootstrap-429 h1 .small,.factory-bootstrap-429 h1 small,.factory-bootstrap-429 h2 .small,.factory-bootstrap-429 h2 small,.factory-bootstrap-429 h3 .small,.factory-bootstrap-429 h3 small,.factory-bootstrap-429 h4 .small,.factory-bootstrap-429 h4 small,.factory-bootstrap-429 h5 .small,.factory-bootstrap-429 h5 small,.factory-bootstrap-429 h6 .small,.factory-bootstrap-429 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-429 h1,.factory-bootstrap-429 h2,.factory-bootstrap-429 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-429 h1 .small,.factory-bootstrap-429 h1 small,.factory-bootstrap-429 h2 .small,.factory-bootstrap-429 h2 small,.factory-bootstrap-429 h3 .small,.factory-bootstrap-429 h3 small{font-size:65%}.factory-bootstrap-429 h4,.factory-bootstrap-429 h5,.factory-bootstrap-429 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-429 h4 .small,.factory-bootstrap-429 h4 small,.factory-bootstrap-429 h5 .small,.factory-bootstrap-429 h5 small,.factory-bootstrap-429 h6 .small,.factory-bootstrap-429 h6 small{font-size:75%}.factory-bootstrap-429 .h1,.factory-bootstrap-429 h1{font-size:36px}.factory-bootstrap-429 .h2,.factory-bootstrap-429 h2{font-size:30px}.factory-bootstrap-429 .h3,.factory-bootstrap-429 h3{font-size:24px}.factory-bootstrap-429 .h4,.factory-bootstrap-429 h4{font-size:18px}.factory-bootstrap-429 .h5,.factory-bootstrap-429 h5{font-size:14px}.factory-bootstrap-429 .h6,.factory-bootstrap-429 h6{font-size:12px}.factory-bootstrap-429 p{margin:0 0 10px}.factory-bootstrap-429 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-429 .small,.factory-bootstrap-429 small{font-size:85%}.factory-bootstrap-429 cite{font-style:normal}.factory-bootstrap-429 .text-muted{color:#999}.factory-bootstrap-429 .text-primary{color:#428bca}.factory-bootstrap-429 .text-primary:hover{color:#3071a9}.factory-bootstrap-429 .text-warning{color:#8a6d3b}.factory-bootstrap-429 .text-warning:hover{color:#66512c}.factory-bootstrap-429 .text-danger{color:#a94442}.factory-bootstrap-429 .text-danger:hover{color:#843534}.factory-bootstrap-429 .text-success{color:#3c763d}.factory-bootstrap-429 .text-success:hover{color:#2b542c}.factory-bootstrap-429 .text-info{color:#31708f}.factory-bootstrap-429 .text-info:hover{color:#245269}.factory-bootstrap-429 .text-left{text-align:left}.factory-bootstrap-429 .text-right{text-align:right}.factory-bootstrap-429 .text-center{text-align:center}.factory-bootstrap-429 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-429 ol,.factory-bootstrap-429 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-429 ol ol,.factory-bootstrap-429 ol ul,.factory-bootstrap-429 ul ol,.factory-bootstrap-429 ul ul{margin-bottom:0}.factory-bootstrap-429 .list-inline,.factory-bootstrap-429 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-429 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-429 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-429 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-429 dd,.factory-bootstrap-429 dt{line-height:1.428571429}.factory-bootstrap-429 dt{font-weight:700}.factory-bootstrap-429 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-429 abbr[data-original-title],.factory-bootstrap-429 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-429 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-429 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-429 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-429 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-429 blockquote .small,.factory-bootstrap-429 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-429 blockquote .small:before,.factory-bootstrap-429 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-429 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-429 blockquote.pull-right .small,.factory-bootstrap-429 blockquote.pull-right p,.factory-bootstrap-429 blockquote.pull-right small{text-align:right}.factory-bootstrap-429 blockquote.pull-right .small:before,.factory-bootstrap-429 blockquote.pull-right small:before{content:''}.factory-bootstrap-429 blockquote.pull-right .small:after,.factory-bootstrap-429 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-429 blockquote:after,.factory-bootstrap-429 blockquote:before{content:""}.factory-bootstrap-429 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-429 code,.factory-bootstrap-429 kbd,.factory-bootstrap-429 pre,.factory-bootstrap-429 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-429 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-429 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-429 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-429 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-429 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-429 .container:after,.factory-bootstrap-429 .container:before{display:table;content:" "}.factory-bootstrap-429 .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-429 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-429 .row:after,.factory-bootstrap-429 .row:before{display:table;content:" "}.factory-bootstrap-429 .row:after{clear:both}.factory-bootstrap-429 .col-lg-1,.factory-bootstrap-429 .col-lg-10,.factory-bootstrap-429 .col-lg-11,.factory-bootstrap-429 .col-lg-12,.factory-bootstrap-429 .col-lg-2,.factory-bootstrap-429 .col-lg-3,.factory-bootstrap-429 .col-lg-4,.factory-bootstrap-429 .col-lg-5,.factory-bootstrap-429 .col-lg-6,.factory-bootstrap-429 .col-lg-7,.factory-bootstrap-429 .col-lg-8,.factory-bootstrap-429 .col-lg-9,.factory-bootstrap-429 .col-md-1,.factory-bootstrap-429 .col-md-10,.factory-bootstrap-429 .col-md-11,.factory-bootstrap-429 .col-md-12,.factory-bootstrap-429 .col-md-2,.factory-bootstrap-429 .col-md-3,.factory-bootstrap-429 .col-md-4,.factory-bootstrap-429 .col-md-5,.factory-bootstrap-429 .col-md-6,.factory-bootstrap-429 .col-md-7,.factory-bootstrap-429 .col-md-8,.factory-bootstrap-429 .col-md-9,.factory-bootstrap-429 .col-sm-1,.factory-bootstrap-429 .col-sm-10,.factory-bootstrap-429 .col-sm-11,.factory-bootstrap-429 .col-sm-12,.factory-bootstrap-429 .col-sm-2,.factory-bootstrap-429 .col-sm-3,.factory-bootstrap-429 .col-sm-4,.factory-bootstrap-429 .col-sm-5,.factory-bootstrap-429 .col-sm-6,.factory-bootstrap-429 .col-sm-7,.factory-bootstrap-429 .col-sm-8,.factory-bootstrap-429 .col-sm-9,.factory-bootstrap-429 .col-xs-1,.factory-bootstrap-429 .col-xs-10,.factory-bootstrap-429 .col-xs-11,.factory-bootstrap-429 .col-xs-12,.factory-bootstrap-429 .col-xs-2,.factory-bootstrap-429 .col-xs-3,.factory-bootstrap-429 .col-xs-4,.factory-bootstrap-429 .col-xs-5,.factory-bootstrap-429 .col-xs-6,.factory-bootstrap-429 .col-xs-7,.factory-bootstrap-429 .col-xs-8,.factory-bootstrap-429 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-429 .col-xs-1,.factory-bootstrap-429 .col-xs-10,.factory-bootstrap-429 .col-xs-11,.factory-bootstrap-429 .col-xs-12,.factory-bootstrap-429 .col-xs-2,.factory-bootstrap-429 .col-xs-3,.factory-bootstrap-429 .col-xs-4,.factory-bootstrap-429 .col-xs-5,.factory-bootstrap-429 .col-xs-6,.factory-bootstrap-429 .col-xs-7,.factory-bootstrap-429 .col-xs-8,.factory-bootstrap-429 .col-xs-9{float:left}.factory-bootstrap-429 .col-xs-12{width:100%}.factory-bootstrap-429 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-429 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-429 .col-xs-9{width:75%}.factory-bootstrap-429 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-429 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-429 .col-xs-6{width:50%}.factory-bootstrap-429 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-429 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-429 .col-xs-3{width:25%}.factory-bootstrap-429 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-429 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-429 .col-xs-pull-12{right:100%}.factory-bootstrap-429 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-429 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-429 .col-xs-pull-9{right:75%}.factory-bootstrap-429 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-429 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-429 .col-xs-pull-6{right:50%}.factory-bootstrap-429 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-429 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-429 .col-xs-pull-3{right:25%}.factory-bootstrap-429 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-429 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-429 .col-xs-pull-0{right:0}.factory-bootstrap-429 .col-xs-push-12{left:100%}.factory-bootstrap-429 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-429 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-429 .col-xs-push-9{left:75%}.factory-bootstrap-429 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-429 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-429 .col-xs-push-6{left:50%}.factory-bootstrap-429 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-429 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-429 .col-xs-push-3{left:25%}.factory-bootstrap-429 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-429 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-429 .col-xs-push-0{left:0}.factory-bootstrap-429 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-429 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-429 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-429 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-429 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-429 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-429 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-429 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-429 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-429 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-429 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-429 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-429 .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-429 table{max-width:100%;background-color:transparent}.factory-bootstrap-429 th{text-align:left}.factory-bootstrap-429 .table{width:100%;margin-bottom:20px}.factory-bootstrap-429 .table>tbody>tr>td,.factory-bootstrap-429 .table>tbody>tr>th,.factory-bootstrap-429 .table>tfoot>tr>td,.factory-bootstrap-429 .table>tfoot>tr>th,.factory-bootstrap-429 .table>thead>tr>td,.factory-bootstrap-429 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-429 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-429 .table>caption+thead>tr:first-child>td,.factory-bootstrap-429 .table>caption+thead>tr:first-child>th,.factory-bootstrap-429 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-429 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-429 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-429 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-429 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-429 .table .table{background-color:#fff}.factory-bootstrap-429 .table-condensed>tbody>tr>td,.factory-bootstrap-429 .table-condensed>tbody>tr>th,.factory-bootstrap-429 .table-condensed>tfoot>tr>td,.factory-bootstrap-429 .table-condensed>tfoot>tr>th,.factory-bootstrap-429 .table-condensed>thead>tr>td,.factory-bootstrap-429 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-429 .table-bordered,.factory-bootstrap-429 .table-bordered>tbody>tr>td,.factory-bootstrap-429 .table-bordered>tbody>tr>th,.factory-bootstrap-429 .table-bordered>tfoot>tr>td,.factory-bootstrap-429 .table-bordered>tfoot>tr>th,.factory-bootstrap-429 .table-bordered>thead>tr>td,.factory-bootstrap-429 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-429 .table-bordered>thead>tr>td,.factory-bootstrap-429 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-429 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-429 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-429 .table-hover>tbody>tr:hover>td,.factory-bootstrap-429 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-429 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-429 table td[class*=col-],.factory-bootstrap-429 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-429 .table>tbody>.active>td,.factory-bootstrap-429 .table>tbody>.active>th,.factory-bootstrap-429 .table>tbody>tr>.active,.factory-bootstrap-429 .table>tfoot>.active>td,.factory-bootstrap-429 .table>tfoot>.active>th,.factory-bootstrap-429 .table>tfoot>tr>.active,.factory-bootstrap-429 .table>thead>.active>td,.factory-bootstrap-429 .table>thead>.active>th,.factory-bootstrap-429 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-429 .table-hover>tbody>.active:hover>td,.factory-bootstrap-429 .table-hover>tbody>.active:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-429 .table>tbody>.success>td,.factory-bootstrap-429 .table>tbody>.success>th,.factory-bootstrap-429 .table>tbody>tr>.success,.factory-bootstrap-429 .table>tfoot>.success>td,.factory-bootstrap-429 .table>tfoot>.success>th,.factory-bootstrap-429 .table>tfoot>tr>.success,.factory-bootstrap-429 .table>thead>.success>td,.factory-bootstrap-429 .table>thead>.success>th,.factory-bootstrap-429 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-429 .table-hover>tbody>.success:hover>td,.factory-bootstrap-429 .table-hover>tbody>.success:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-429 .table>tbody>.danger>td,.factory-bootstrap-429 .table>tbody>.danger>th,.factory-bootstrap-429 .table>tbody>tr>.danger,.factory-bootstrap-429 .table>tfoot>.danger>td,.factory-bootstrap-429 .table>tfoot>.danger>th,.factory-bootstrap-429 .table>tfoot>tr>.danger,.factory-bootstrap-429 .table>thead>.danger>td,.factory-bootstrap-429 .table>thead>.danger>th,.factory-bootstrap-429 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-429 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-429 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-429 .table>tbody>.warning>td,.factory-bootstrap-429 .table>tbody>.warning>th,.factory-bootstrap-429 .table>tbody>tr>.warning,.factory-bootstrap-429 .table>tfoot>.warning>td,.factory-bootstrap-429 .table>tfoot>.warning>th,.factory-bootstrap-429 .table>tfoot>tr>.warning,.factory-bootstrap-429 .table>thead>.warning>td,.factory-bootstrap-429 .table>thead>.warning>th,.factory-bootstrap-429 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-429 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-429 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-429 .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-429 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-429 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-429 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-429 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-429 input[type=checkbox],.factory-bootstrap-429 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-429 input[type=file]{display:block}.factory-bootstrap-429 select[multiple],.factory-bootstrap-429 select[size]{height:auto}.factory-bootstrap-429 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-429 input[type=checkbox]:focus,.factory-bootstrap-429 input[type=file]:focus,.factory-bootstrap-429 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-429 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-429 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-429 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-429 .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-429 .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-429 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-429 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-429 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-429 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-429 .form-control[disabled],.factory-bootstrap-429 .form-control[readonly],.factory-bootstrap-429 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-429 textarea.form-control{height:auto}.factory-bootstrap-429 .form-group{margin-bottom:15px}.factory-bootstrap-429 .checkbox,.factory-bootstrap-429 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-429 .checkbox label,.factory-bootstrap-429 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-429 .checkbox input[type=checkbox],.factory-bootstrap-429 .checkbox-inline input[type=checkbox],.factory-bootstrap-429 .radio input[type=radio],.factory-bootstrap-429 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-429 .checkbox+.checkbox,.factory-bootstrap-429 .radio+.radio{margin-top:-5px}.factory-bootstrap-429 .checkbox-inline,.factory-bootstrap-429 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-429 .checkbox-inline+.checkbox-inline,.factory-bootstrap-429 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-429 .checkbox-inline[disabled],.factory-bootstrap-429 .checkbox[disabled],.factory-bootstrap-429 .radio-inline[disabled],.factory-bootstrap-429 .radio[disabled],.factory-bootstrap-429 fieldset[disabled] .checkbox,.factory-bootstrap-429 fieldset[disabled] .checkbox-inline,.factory-bootstrap-429 fieldset[disabled] .radio,.factory-bootstrap-429 fieldset[disabled] .radio-inline,.factory-bootstrap-429 fieldset[disabled] input[type=checkbox],.factory-bootstrap-429 fieldset[disabled] input[type=radio],.factory-bootstrap-429 input[type=checkbox][disabled],.factory-bootstrap-429 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-429 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-429 textarea.input-sm{height:auto}.factory-bootstrap-429 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-429 textarea.input-lg{height:auto}.factory-bootstrap-429 .has-warning .checkbox,.factory-bootstrap-429 .has-warning .checkbox-inline,.factory-bootstrap-429 .has-warning .control-label,.factory-bootstrap-429 .has-warning .help-block,.factory-bootstrap-429 .has-warning .radio,.factory-bootstrap-429 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-429 .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-429 .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-429 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-429 .has-error .checkbox,.factory-bootstrap-429 .has-error .checkbox-inline,.factory-bootstrap-429 .has-error .control-label,.factory-bootstrap-429 .has-error .help-block,.factory-bootstrap-429 .has-error .radio,.factory-bootstrap-429 .has-error .radio-inline{color:#a94442}.factory-bootstrap-429 .controls{display:block}.factory-bootstrap-429 .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-429 .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-429 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-429 .has-success .checkbox,.factory-bootstrap-429 .has-success .checkbox-inline,.factory-bootstrap-429 .has-success .control-label,.factory-bootstrap-429 .has-success .help-block,.factory-bootstrap-429 .has-success .radio,.factory-bootstrap-429 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-429 .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-429 .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-429 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-429 .form-control-static{margin-bottom:0}.factory-bootstrap-429 .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-429 .form-horizontal .checkbox,.factory-bootstrap-429 .form-horizontal .checkbox-inline,.factory-bootstrap-429 .form-horizontal .control-label,.factory-bootstrap-429 .form-horizontal .radio,.factory-bootstrap-429 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-429 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-429 .form-horizontal .checkbox,.factory-bootstrap-429 .form-horizontal .radio{min-height:27px}.factory-bootstrap-429 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-429 .form-horizontal .form-group:after,.factory-bootstrap-429 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-429 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-429 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-429 .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-429 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-429 .btn{text-decoration:none}.factory-bootstrap-429 .btn:focus,.factory-bootstrap-429 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-429 .btn.disabled,.factory-bootstrap-429 .btn[disabled],.factory-bootstrap-429 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .btn-default:focus,.factory-bootstrap-429 .btn-default:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-429 .btn-default.disabled,.factory-bootstrap-429 .btn-default.disabled.active,.factory-bootstrap-429 .btn-default.disabled:active,.factory-bootstrap-429 .btn-default.disabled:focus,.factory-bootstrap-429 .btn-default.disabled:hover,.factory-bootstrap-429 .btn-default[disabled],.factory-bootstrap-429 .btn-default[disabled].active,.factory-bootstrap-429 .btn-default[disabled]:active,.factory-bootstrap-429 .btn-default[disabled]:focus,.factory-bootstrap-429 .btn-default[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-default,.factory-bootstrap-429 fieldset[disabled] .btn-default.active,.factory-bootstrap-429 fieldset[disabled] .btn-default:active,.factory-bootstrap-429 fieldset[disabled] .btn-default:focus,.factory-bootstrap-429 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-429 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .btn-primary:focus,.factory-bootstrap-429 .btn-primary:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-429 .btn-primary.disabled,.factory-bootstrap-429 .btn-primary.disabled.active,.factory-bootstrap-429 .btn-primary.disabled:active,.factory-bootstrap-429 .btn-primary.disabled:focus,.factory-bootstrap-429 .btn-primary.disabled:hover,.factory-bootstrap-429 .btn-primary[disabled],.factory-bootstrap-429 .btn-primary[disabled].active,.factory-bootstrap-429 .btn-primary[disabled]:active,.factory-bootstrap-429 .btn-primary[disabled]:focus,.factory-bootstrap-429 .btn-primary[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-primary,.factory-bootstrap-429 fieldset[disabled] .btn-primary.active,.factory-bootstrap-429 fieldset[disabled] .btn-primary:active,.factory-bootstrap-429 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-429 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-429 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-429 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active,.factory-bootstrap-429 .btn-warning:focus,.factory-bootstrap-429 .btn-warning:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-429 .btn-warning.disabled,.factory-bootstrap-429 .btn-warning.disabled.active,.factory-bootstrap-429 .btn-warning.disabled:active,.factory-bootstrap-429 .btn-warning.disabled:focus,.factory-bootstrap-429 .btn-warning.disabled:hover,.factory-bootstrap-429 .btn-warning[disabled],.factory-bootstrap-429 .btn-warning[disabled].active,.factory-bootstrap-429 .btn-warning[disabled]:active,.factory-bootstrap-429 .btn-warning[disabled]:focus,.factory-bootstrap-429 .btn-warning[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-warning,.factory-bootstrap-429 fieldset[disabled] .btn-warning.active,.factory-bootstrap-429 fieldset[disabled] .btn-warning:active,.factory-bootstrap-429 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-429 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-429 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-429 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .btn-success:focus,.factory-bootstrap-429 .btn-success:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-429 .btn-success.disabled,.factory-bootstrap-429 .btn-success.disabled.active,.factory-bootstrap-429 .btn-success.disabled:active,.factory-bootstrap-429 .btn-success.disabled:focus,.factory-bootstrap-429 .btn-success.disabled:hover,.factory-bootstrap-429 .btn-success[disabled],.factory-bootstrap-429 .btn-success[disabled].active,.factory-bootstrap-429 .btn-success[disabled]:active,.factory-bootstrap-429 .btn-success[disabled]:focus,.factory-bootstrap-429 .btn-success[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-success,.factory-bootstrap-429 fieldset[disabled] .btn-success.active,.factory-bootstrap-429 fieldset[disabled] .btn-success:active,.factory-bootstrap-429 fieldset[disabled] .btn-success:focus,.factory-bootstrap-429 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-429 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-429 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .btn-info:focus,.factory-bootstrap-429 .btn-info:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-429 .btn-info.disabled,.factory-bootstrap-429 .btn-info.disabled.active,.factory-bootstrap-429 .btn-info.disabled:active,.factory-bootstrap-429 .btn-info.disabled:focus,.factory-bootstrap-429 .btn-info.disabled:hover,.factory-bootstrap-429 .btn-info[disabled],.factory-bootstrap-429 .btn-info[disabled].active,.factory-bootstrap-429 .btn-info[disabled]:active,.factory-bootstrap-429 .btn-info[disabled]:focus,.factory-bootstrap-429 .btn-info[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-info,.factory-bootstrap-429 fieldset[disabled] .btn-info.active,.factory-bootstrap-429 fieldset[disabled] .btn-info:active,.factory-bootstrap-429 fieldset[disabled] .btn-info:focus,.factory-bootstrap-429 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-429 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-429 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-429 .btn-link,.factory-bootstrap-429 .btn-link:active,.factory-bootstrap-429 .btn-link[disabled],.factory-bootstrap-429 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-link,.factory-bootstrap-429 .btn-link:active,.factory-bootstrap-429 .btn-link:focus,.factory-bootstrap-429 .btn-link:hover{border-color:transparent}.factory-bootstrap-429 .btn-link:focus,.factory-bootstrap-429 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-429 .btn-link[disabled]:focus,.factory-bootstrap-429 .btn-link[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-link:focus,.factory-bootstrap-429 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-429 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-429 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-429 input[type=button].btn-block,.factory-bootstrap-429 input[type=reset].btn-block,.factory-bootstrap-429 input[type=submit].btn-block{width:100%}.factory-bootstrap-429 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-429 .fade.in{opacity:1}.factory-bootstrap-429 .collapse{display:none}.factory-bootstrap-429 .collapse.in{display:block}.factory-bootstrap-429 .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-429 .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-429 .glyphicon:empty{width:1em}.factory-bootstrap-429 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-429 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-429 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-429 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-429 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-429 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-429 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-429 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-429 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-429 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-429 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-429 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-429 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-429 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-429 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-429 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-429 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-429 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-429 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-429 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-429 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-429 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-429 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-429 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-429 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-429 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-429 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-429 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-429 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-429 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-429 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-429 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-429 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-429 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-429 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-429 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-429 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-429 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-429 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-429 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-429 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-429 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-429 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-429 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-429 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-429 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-429 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-429 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-429 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-429 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-429 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-429 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-429 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-429 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-429 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-429 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-429 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-429 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-429 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-429 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-429 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-429 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-429 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-429 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-429 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-429 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-429 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-429 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-429 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-429 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-429 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-429 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-429 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-429 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-429 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-429 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-429 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-429 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-429 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-429 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-429 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-429 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-429 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-429 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-429 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-429 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-429 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-429 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-429 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-429 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-429 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-429 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-429 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-429 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-429 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-429 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-429 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-429 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-429 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-429 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-429 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-429 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-429 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-429 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-429 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-429 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-429 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-429 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-429 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-429 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-429 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-429 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-429 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-429 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-429 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-429 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-429 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-429 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-429 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-429 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-429 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-429 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-429 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-429 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-429 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-429 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-429 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-429 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-429 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-429 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-429 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-429 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-429 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-429 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-429 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-429 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-429 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-429 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-429 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-429 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-429 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-429 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-429 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-429 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-429 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-429 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-429 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-429 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-429 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-429 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-429 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-429 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-429 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-429 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-429 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-429 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-429 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-429 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-429 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-429 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-429 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-429 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-429 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-429 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-429 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-429 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-429 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-429 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-429 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-429 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-429 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-429 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-429 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-429 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-429 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-429 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-429 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-429 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-429 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-429 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-429 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-429 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-429 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-429 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-429 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-429 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-429 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-429 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-429 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-429 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-429 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-429 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-429 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-429 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-429 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-429 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-429 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-429 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-429 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-429 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-429 .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-429 .dropdown{position:relative}.factory-bootstrap-429 .dropdown-toggle:focus{outline:0}.factory-bootstrap-429 .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-429 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-429 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-429 .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-429 .dropdown-menu>li>a:focus,.factory-bootstrap-429 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-429 .dropdown-menu>.active>a,.factory-bootstrap-429 .dropdown-menu>.active>a:focus,.factory-bootstrap-429 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-429 .dropdown-menu>.disabled>a,.factory-bootstrap-429 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-429 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-429 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-429 .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-429 .open>.dropdown-menu{display:block}.factory-bootstrap-429 .open>a{outline:0}.factory-bootstrap-429 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-429 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-429 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-429 .dropup .caret,.factory-bootstrap-429 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-429 .dropup .dropdown-menu,.factory-bootstrap-429 .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-429 .btn-group,.factory-bootstrap-429 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-429 .btn-group-vertical>.btn,.factory-bootstrap-429 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-429 .btn-group-vertical>.btn.active,.factory-bootstrap-429 .btn-group-vertical>.btn:active,.factory-bootstrap-429 .btn-group-vertical>.btn:focus,.factory-bootstrap-429 .btn-group-vertical>.btn:hover,.factory-bootstrap-429 .btn-group>.btn.active,.factory-bootstrap-429 .btn-group>.btn:active,.factory-bootstrap-429 .btn-group>.btn:focus,.factory-bootstrap-429 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-429 .btn-group-vertical>.btn:focus,.factory-bootstrap-429 .btn-group>.btn:focus{outline:0}.factory-bootstrap-429 .btn-group .btn+.btn,.factory-bootstrap-429 .btn-group .btn+.btn-group,.factory-bootstrap-429 .btn-group .btn-group+.btn,.factory-bootstrap-429 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-429 .btn-toolbar:after,.factory-bootstrap-429 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-429 .btn-toolbar:after{clear:both}.factory-bootstrap-429 .btn-toolbar .btn-group{float:left}.factory-bootstrap-429 .btn-toolbar>.btn+.btn,.factory-bootstrap-429 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-429 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-429 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-429 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-429 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-429 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-429 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group>.btn-group{float:left}.factory-bootstrap-429 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-429 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-429 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group .dropdown-toggle:active,.factory-bootstrap-429 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-429 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-429 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-429 .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-429 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-429 .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-429 .btn .caret{margin-left:0}.factory-bootstrap-429 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-429 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-429 .btn-group-vertical>.btn,.factory-bootstrap-429 .btn-group-vertical>.btn-group,.factory-bootstrap-429 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-429 .btn-group-vertical>.btn-group:after,.factory-bootstrap-429 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-429 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-429 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-429 .btn-group-vertical>.btn+.btn,.factory-bootstrap-429 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-429 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-429 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-429 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-429 .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-429 .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-429 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-429 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-429 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-429 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-429 .btn-group-justified>.btn,.factory-bootstrap-429 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-429 .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-429 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-429 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-429 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-429 .input-group-lg>.form-control,.factory-bootstrap-429 .input-group-lg>.input-group-addon,.factory-bootstrap-429 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 select.input-group-lg>.form-control,.factory-bootstrap-429 select.input-group-lg>.input-group-addon,.factory-bootstrap-429 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-429 textarea.input-group-lg>.form-control,.factory-bootstrap-429 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-429 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-429 .input-group-sm>.form-control,.factory-bootstrap-429 .input-group-sm>.input-group-addon,.factory-bootstrap-429 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 select.input-group-sm>.form-control,.factory-bootstrap-429 select.input-group-sm>.input-group-addon,.factory-bootstrap-429 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-429 textarea.input-group-sm>.form-control,.factory-bootstrap-429 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-429 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-429 .input-group .form-control,.factory-bootstrap-429 .input-group-addon,.factory-bootstrap-429 .input-group-btn{display:table-cell}.factory-bootstrap-429 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-429 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-429 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-429 .input-group-addon,.factory-bootstrap-429 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-429 .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-429 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-429 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-429 .input-group-addon input[type=checkbox],.factory-bootstrap-429 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-429 .input-group .form-control:first-child,.factory-bootstrap-429 .input-group-addon:first-child,.factory-bootstrap-429 .input-group-btn:first-child>.btn,.factory-bootstrap-429 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-429 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .input-group-addon:first-child{border-right:0}.factory-bootstrap-429 .input-group .form-control:last-child,.factory-bootstrap-429 .input-group-addon:last-child,.factory-bootstrap-429 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-429 .input-group-btn:last-child>.btn,.factory-bootstrap-429 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .input-group-addon:last-child{border-left:0}.factory-bootstrap-429 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-429 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-429 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-429 .input-group-btn>.btn{position:relative}.factory-bootstrap-429 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-429 .input-group-btn>.btn:active,.factory-bootstrap-429 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-429 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-429 .nav:after,.factory-bootstrap-429 .nav:before{display:table;content:" "}.factory-bootstrap-429 .nav:after{clear:both}.factory-bootstrap-429 .nav>li{position:relative;display:block}.factory-bootstrap-429 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-429 .nav>li>a:focus,.factory-bootstrap-429 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-429 .nav>li.disabled>a{color:#999}.factory-bootstrap-429 .nav>li.disabled>a:focus,.factory-bootstrap-429 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-429 .nav .open>a,.factory-bootstrap-429 .nav .open>a:focus,.factory-bootstrap-429 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-429 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-429 .nav>li>a>img{max-width:none}.factory-bootstrap-429 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-429 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-429 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-429 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-429 .nav-tabs>li.active>a,.factory-bootstrap-429 .nav-tabs>li.active>a:focus,.factory-bootstrap-429 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-429 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-429 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-429 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-429 .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-429 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-429 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-429 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-429 .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-429 .nav-pills>li{float:left}.factory-bootstrap-429 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-429 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-429 .nav-pills>li.active>a,.factory-bootstrap-429 .nav-pills>li.active>a:focus,.factory-bootstrap-429 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-429 .nav-stacked>li{float:none}.factory-bootstrap-429 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-429 .nav-justified{width:100%}.factory-bootstrap-429 .nav-justified>li{float:none}.factory-bootstrap-429 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-429 .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-429 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-429 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-429 .nav-tabs-justified>.active>a,.factory-bootstrap-429 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-429 .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-429 .tab-content>.tab-pane{display:none}.factory-bootstrap-429 .tab-content>.active{display:block}.factory-bootstrap-429 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-429 .navbar:after,.factory-bootstrap-429 .navbar:before{display:table;content:" "}.factory-bootstrap-429 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-429 .navbar-header:after,.factory-bootstrap-429 .navbar-header:before{display:table;content:" "}.factory-bootstrap-429 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-429 .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-429 .navbar-collapse:after,.factory-bootstrap-429 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-429 .navbar-collapse:after{clear:both}.factory-bootstrap-429 .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-429 .container>.navbar-collapse,.factory-bootstrap-429 .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-429 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-429 .navbar-fixed-bottom,.factory-bootstrap-429 .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-429 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-429 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-429 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-429 .navbar-brand:focus,.factory-bootstrap-429 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-429 .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-429 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-429 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-429 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-429 .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-429 .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-429 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-429 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-429 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-429 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-429 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-429 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-429 .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-429 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-429 .navbar-default .navbar-brand:focus,.factory-bootstrap-429 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-nav>li>a,.factory-bootstrap-429 .navbar-default .navbar-text{color:#777}.factory-bootstrap-429 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-429 .navbar-default .navbar-toggle:focus,.factory-bootstrap-429 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-429 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-429 .navbar-default .navbar-collapse,.factory-bootstrap-429 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-429 .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-429 .navbar-default .navbar-link{color:#777}.factory-bootstrap-429 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-429 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-429 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-429 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-429 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-429 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-429 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-429 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-429 .navbar-inverse .navbar-collapse,.factory-bootstrap-429 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-429 .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-429 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-429 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-429 .breadcrumb>li{display:inline-block}.factory-bootstrap-429 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-429 .breadcrumb>.active{color:#999}.factory-bootstrap-429 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-429 .pagination>li{display:inline}.factory-bootstrap-429 .pagination>li>a,.factory-bootstrap-429 .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-429 .pagination>li:first-child>a,.factory-bootstrap-429 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-429 .pagination>li:last-child>a,.factory-bootstrap-429 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-429 .pagination>li>a:focus,.factory-bootstrap-429 .pagination>li>a:hover,.factory-bootstrap-429 .pagination>li>span:focus,.factory-bootstrap-429 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-429 .pagination>.active>a,.factory-bootstrap-429 .pagination>.active>a:focus,.factory-bootstrap-429 .pagination>.active>a:hover,.factory-bootstrap-429 .pagination>.active>span,.factory-bootstrap-429 .pagination>.active>span:focus,.factory-bootstrap-429 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-429 .pagination>.disabled>a,.factory-bootstrap-429 .pagination>.disabled>a:focus,.factory-bootstrap-429 .pagination>.disabled>a:hover,.factory-bootstrap-429 .pagination>.disabled>span,.factory-bootstrap-429 .pagination>.disabled>span:focus,.factory-bootstrap-429 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-429 .pagination-lg>li>a,.factory-bootstrap-429 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-429 .pagination-lg>li:first-child>a,.factory-bootstrap-429 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-429 .pagination-lg>li:last-child>a,.factory-bootstrap-429 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-429 .pagination-sm>li>a,.factory-bootstrap-429 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-429 .pagination-sm>li:first-child>a,.factory-bootstrap-429 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-429 .pagination-sm>li:last-child>a,.factory-bootstrap-429 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-429 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-429 .pager:after,.factory-bootstrap-429 .pager:before{display:table;content:" "}.factory-bootstrap-429 .pager:after{clear:both}.factory-bootstrap-429 .pager li{display:inline}.factory-bootstrap-429 .pager li>a,.factory-bootstrap-429 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-429 .pager li>a:focus,.factory-bootstrap-429 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-429 .pager .next>a,.factory-bootstrap-429 .pager .next>span{float:right}.factory-bootstrap-429 .pager .previous>a,.factory-bootstrap-429 .pager .previous>span{float:left}.factory-bootstrap-429 .pager .disabled>a,.factory-bootstrap-429 .pager .disabled>a:focus,.factory-bootstrap-429 .pager .disabled>a:hover,.factory-bootstrap-429 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-429 .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-429 .label[href]:focus,.factory-bootstrap-429 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-429 .label:empty{display:none}.factory-bootstrap-429 .btn .label{position:relative;top:-1px}.factory-bootstrap-429 .label-default{background-color:#999}.factory-bootstrap-429 .label-default[href]:focus,.factory-bootstrap-429 .label-default[href]:hover{background-color:gray}.factory-bootstrap-429 .label-primary{background-color:#428bca}.factory-bootstrap-429 .label-primary[href]:focus,.factory-bootstrap-429 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-429 .label-success{background-color:#5cb85c}.factory-bootstrap-429 .label-success[href]:focus,.factory-bootstrap-429 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-429 .label-info{background-color:#5bc0de}.factory-bootstrap-429 .label-info[href]:focus,.factory-bootstrap-429 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-429 .label-warning{background-color:#f0ad4e}.factory-bootstrap-429 .label-warning[href]:focus,.factory-bootstrap-429 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-429 .label-danger{background-color:#d9534f}.factory-bootstrap-429 .label-danger[href]:focus,.factory-bootstrap-429 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-429 .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-429 .badge:empty{display:none}.factory-bootstrap-429 .btn .badge{position:relative;top:-1px}.factory-bootstrap-429 a.badge:focus,.factory-bootstrap-429 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-429 .nav-pills>.active>a>.badge,.factory-bootstrap-429 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-429 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-429 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-429 .jumbotron .h1,.factory-bootstrap-429 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-429 .jumbotron p{line-height:1.4}.factory-bootstrap-429 .container .jumbotron{border-radius:6px}.factory-bootstrap-429 .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-429 .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-429 .thumbnail a>img,.factory-bootstrap-429 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-429 a.thumbnail.active,.factory-bootstrap-429 a.thumbnail:focus,.factory-bootstrap-429 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-429 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-429 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-429 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-429 .alert .alert-link{font-weight:700}.factory-bootstrap-429 .alert>p,.factory-bootstrap-429 .alert>ul{margin-bottom:0}.factory-bootstrap-429 .alert>p+p{margin-top:5px}.factory-bootstrap-429 .alert-dismissable{padding-right:35px}.factory-bootstrap-429 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-429 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-429 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-429 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-429 .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-429 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-429 .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-429 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-429 .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-429 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-429 .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-429 .media,.factory-bootstrap-429 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-429 .media,.factory-bootstrap-429 .media .media{margin-top:15px}.factory-bootstrap-429 .media:first-child{margin-top:0}.factory-bootstrap-429 .media-object{display:block}.factory-bootstrap-429 .media-heading{margin:0 0 5px}.factory-bootstrap-429 .media>.pull-left{margin-right:10px}.factory-bootstrap-429 .media>.pull-right{margin-left:10px}.factory-bootstrap-429 .media-list{padding-left:0;list-style:none}.factory-bootstrap-429 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-429 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-429 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-429 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-429 .list-group-item>.badge{float:right}.factory-bootstrap-429 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-429 a.list-group-item{color:#555}.factory-bootstrap-429 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-429 a.list-group-item:focus,.factory-bootstrap-429 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-429 a.list-group-item.active,.factory-bootstrap-429 a.list-group-item.active:focus,.factory-bootstrap-429 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-429 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-429 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-429 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-429 a.list-group-item.active .list-group-item-text,.factory-bootstrap-429 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-429 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-429 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-429 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-429 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-429 .panel-body{padding:15px}.factory-bootstrap-429 .panel-body:after,.factory-bootstrap-429 .panel-body:before{display:table;content:" "}.factory-bootstrap-429 .panel-body:after{clear:both}.factory-bootstrap-429 .panel>.list-group{margin-bottom:0}.factory-bootstrap-429 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-429 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-429 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-429 .panel>.table,.factory-bootstrap-429 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-429 .panel>.panel-body+.table,.factory-bootstrap-429 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-429 .panel>.table>tbody:first-child td,.factory-bootstrap-429 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-429 .panel>.table-bordered,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-429 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-429 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-429 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-429 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-429 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-429 .panel-title>a{color:inherit}.factory-bootstrap-429 .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-429 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-429 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-429 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-429 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-429 .panel-group .panel-footer{border-top:0}.factory-bootstrap-429 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-429 .panel-default{border-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-429 .panel-primary{border-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-429 .panel-success{border-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-429 .panel-warning{border-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-429 .panel-danger{border-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-429 .panel-info{border-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-429 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-429 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-429 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-429 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-429 .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-429 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-429 .close:focus,.factory-bootstrap-429 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-429 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-429 .modal-open{overflow:hidden}.factory-bootstrap-429 .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-429 .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-429 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-429 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-429 .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-429 .modal-backdrop,.factory-bootstrap-429-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-429 .modal-backdrop.fade,.factory-bootstrap-429-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-429 .modal-backdrop.in,.factory-bootstrap-429-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-429 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-429 .modal-header .close{margin-top:-2px}.factory-bootstrap-429 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-429 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-429 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-429 .modal-footer:after,.factory-bootstrap-429 .modal-footer:before{display:table;content:" "}.factory-bootstrap-429 .modal-footer:after{clear:both}.factory-bootstrap-429 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-429 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-429 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-429 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-429 .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-429 .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-429 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-429 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-429 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-429 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-429 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-429 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-429 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-429 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-429 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-429 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .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-429 .popover.top{margin-top:-10px}.factory-bootstrap-429 .popover.right{margin-left:10px}.factory-bootstrap-429 .popover.bottom{margin-top:10px}.factory-bootstrap-429 .popover.left{margin-left:-10px}.factory-bootstrap-429 .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-429 .popover-content{padding:9px 14px}.factory-bootstrap-429 .popover .arrow,.factory-bootstrap-429 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-429 .popover .arrow{border-width:11px}.factory-bootstrap-429 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-429 .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-429 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-429 .carousel{position:relative}.factory-bootstrap-429 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-429 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-429 .carousel-inner>.item>a>img,.factory-bootstrap-429 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-429 .carousel-inner>.active,.factory-bootstrap-429 .carousel-inner>.next,.factory-bootstrap-429 .carousel-inner>.prev{display:block}.factory-bootstrap-429 .carousel-inner>.active{left:0}.factory-bootstrap-429 .carousel-inner>.next,.factory-bootstrap-429 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-429 .carousel-inner>.next{left:100%}.factory-bootstrap-429 .carousel-inner>.prev{left:-100%}.factory-bootstrap-429 .carousel-inner>.next.left,.factory-bootstrap-429 .carousel-inner>.prev.right{left:0}.factory-bootstrap-429 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-429 .carousel-inner>.active.right{left:100%}.factory-bootstrap-429 .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-429 .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-429 .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-429 .carousel-control:focus,.factory-bootstrap-429 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-429 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-429 .carousel-control .icon-next,.factory-bootstrap-429 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-429 .carousel-control .icon-prev{left:50%}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-429 .carousel-control .icon-next{right:50%}.factory-bootstrap-429 .carousel-control .icon-next,.factory-bootstrap-429 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-429 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-429 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-429 .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-429 .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-429 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-429 .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-429 .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-429 .clearfix:after,.factory-bootstrap-429 .clearfix:before{display:table;content:" "}.factory-bootstrap-429 .clearfix:after{clear:both}.factory-bootstrap-429 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-429 .pull-right{float:right!important}.factory-bootstrap-429 .pull-left{float:left!important}.factory-bootstrap-429 .hide{display:none!important}.factory-bootstrap-429 .show{display:block!important}.factory-bootstrap-429 .invisible{visibility:hidden}.factory-bootstrap-429 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-429 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-429 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-429 .visible-lg,.factory-bootstrap-429 .visible-md,.factory-bootstrap-429 .visible-sm,.factory-bootstrap-429 .visible-xs,.factory-bootstrap-429 td.visible-lg,.factory-bootstrap-429 td.visible-md,.factory-bootstrap-429 td.visible-sm,.factory-bootstrap-429 td.visible-xs,.factory-bootstrap-429 th.visible-lg,.factory-bootstrap-429 th.visible-md,.factory-bootstrap-429 th.visible-sm,.factory-bootstrap-429 th.visible-xs,.factory-bootstrap-429 tr.visible-lg,.factory-bootstrap-429 tr.visible-md,.factory-bootstrap-429 tr.visible-sm,.factory-bootstrap-429 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-429 .hidden-xs{display:block!important}.factory-bootstrap-429 table.hidden-xs{display:table}.factory-bootstrap-429 tr.hidden-xs{display:table-row!important}.factory-bootstrap-429 td.hidden-xs,.factory-bootstrap-429 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-429 .hidden-sm{display:block!important}.factory-bootstrap-429 table.hidden-sm{display:table}.factory-bootstrap-429 tr.hidden-sm{display:table-row!important}.factory-bootstrap-429 td.hidden-sm,.factory-bootstrap-429 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-429 .hidden-md{display:block!important}.factory-bootstrap-429 table.hidden-md{display:table}.factory-bootstrap-429 tr.hidden-md{display:table-row!important}.factory-bootstrap-429 td.hidden-md,.factory-bootstrap-429 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-429 .hidden-lg{display:block!important}.factory-bootstrap-429 table.hidden-lg{display:table}.factory-bootstrap-429 tr.hidden-lg{display:table-row!important}.factory-bootstrap-429 td.hidden-lg,.factory-bootstrap-429 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-429 .hidden-lg.hidden-xs,.factory-bootstrap-429 td.hidden-lg.hidden-xs,.factory-bootstrap-429 th.hidden-lg.hidden-xs,.factory-bootstrap-429 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-429 .hidden-lg.hidden-sm,.factory-bootstrap-429 td.hidden-lg.hidden-sm,.factory-bootstrap-429 th.hidden-lg.hidden-sm,.factory-bootstrap-429 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-429 .hidden-lg.hidden-md,.factory-bootstrap-429 td.hidden-lg.hidden-md,.factory-bootstrap-429 th.hidden-lg.hidden-md,.factory-bootstrap-429 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-429 .hidden-lg,.factory-bootstrap-429 td.hidden-lg,.factory-bootstrap-429 th.hidden-lg,.factory-bootstrap-429 tr.hidden-lg{display:none!important}}.factory-bootstrap-429 .visible-print,.factory-bootstrap-429 td.visible-print,.factory-bootstrap-429 th.visible-print,.factory-bootstrap-429 tr.visible-print{display:none!important}@media print{.factory-bootstrap-429 .visible-print{display:block!important}.factory-bootstrap-429 table.visible-print{display:table}.factory-bootstrap-429 tr.visible-print{display:table-row!important}.factory-bootstrap-429 td.visible-print,.factory-bootstrap-429 th.visible-print{display:table-cell!important}.factory-bootstrap-429 .hidden-print,.factory-bootstrap-429 td.hidden-print,.factory-bootstrap-429 th.hidden-print,.factory-bootstrap-429 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-429 .btn-danger,.factory-bootstrap-429 .btn-default,.factory-bootstrap-429 .btn-info,.factory-bootstrap-429 .btn-primary,.factory-bootstrap-429 .btn-success,.factory-bootstrap-429 .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-429 .btn-danger.active,.factory-bootstrap-429 .btn-danger:active,.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .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-429 .btn.active,.factory-bootstrap-429 .btn:active{background-image:none}.factory-bootstrap-429 .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-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-429 .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-429 .btn-gold:focus,.factory-bootstrap-429 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-429 .btn-gold.active,.factory-bootstrap-429 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-429 .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-429 .btn-primary:focus,.factory-bootstrap-429 .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-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-429 .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-429 .btn-success:focus,.factory-bootstrap-429 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-429 .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-429 .btn-warning:focus,.factory-bootstrap-429 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-429 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-429 .btn-danger.active,.factory-bootstrap-429 .btn-danger:active,.factory-bootstrap-429 .btn-danger:focus,.factory-bootstrap-429 .btn-danger:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-429 .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-429 .btn-info:focus,.factory-bootstrap-429 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-429 .img-thumbnail,.factory-bootstrap-429 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-429 .dropdown-menu>li>a:focus,.factory-bootstrap-429 .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-429 .dropdown-menu>.active>a,.factory-bootstrap-429 .dropdown-menu>.active>a:focus,.factory-bootstrap-429 .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-429 .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-429 .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-429 .navbar-brand,.factory-bootstrap-429 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-429 .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-429 .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-429 .navbar-inverse .navbar-brand,.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-429 .navbar-fixed-bottom,.factory-bootstrap-429 .navbar-fixed-top,.factory-bootstrap-429 .navbar-static-top{border-radius:0}.factory-bootstrap-429 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-429 .alert .actions{padding-top:10px}.factory-bootstrap-429 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-429 .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-429 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-429 .alert-normal,.factory-bootstrap-429 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-429 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-429 .alert-danger a:not(.btn),.factory-bootstrap-429 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .list-group-item.active,.factory-bootstrap-429 .list-group-item.active:focus,.factory-bootstrap-429 .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-429 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-429 .factory-hidden{display:none}.factory-bootstrap-429 .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}
|
26 |
-
/*!
|
27 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
28 |
-
* Webcraftic factory build
|
29 |
-
*
|
30 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
31 |
-
* Site: http://webcraftic.com
|
32 |
-
* Support: http://webcraftic.com/contact-us/
|
33 |
-
*/
|
34 |
-
|
35 |
-
|
36 |
-
.factory-bootstrap-429 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-429 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-429 .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-429 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-429 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-429 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-429 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-429 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-429 .factory-form-group legend+.control-group{margin-top:0}
|
37 |
-
/*!
|
38 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
39 |
-
* Webcraftic factory build
|
40 |
-
*
|
41 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
42 |
-
* Site: http://webcraftic.com
|
43 |
-
* Support: http://webcraftic.com/contact-us/
|
44 |
-
*/
|
45 |
-
|
46 |
-
|
47 |
-
.factory-bootstrap-429 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
|
48 |
-
/*!
|
49 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
50 |
-
* Webcraftic factory build
|
51 |
-
*
|
52 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
53 |
-
* Site: http://webcraftic.com
|
54 |
-
* Support: http://webcraftic.com/contact-us/
|
55 |
-
*/
|
56 |
-
|
57 |
-
|
58 |
-
.factory-bootstrap-429 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-429 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-429 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-429 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-429 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-429 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
|
59 |
-
/*!
|
60 |
-
* Bootstrap generator - v1.0.1, 2018-02-26
|
61 |
-
* Webcraftic factory build
|
62 |
-
*
|
63 |
-
* Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
|
64 |
-
* Site: http://webcraftic.com
|
65 |
-
* Support: http://webcraftic.com/contact-us/
|
66 |
-
*/
|
67 |
-
|
68 |
-
|
69 |
-
#side-sortables .factory-bootstrap-429 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-429 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-429 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-429 .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-429 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-429 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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/bootstrap.accordion.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-430 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-430 .factory-accordion-item{display:none}.factory-bootstrap-430 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-430 .factory-accordion>h3.active:hover{cursor:default}
|
libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
|
libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
|
libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-429 article,.factory-bootstrap-429 aside,.factory-bootstrap-429 details,.factory-bootstrap-429 figcaption,.factory-bootstrap-429 figure,.factory-bootstrap-429 footer,.factory-bootstrap-429 header,.factory-bootstrap-429 hgroup,.factory-bootstrap-429 main,.factory-bootstrap-429 nav,.factory-bootstrap-429 section,.factory-bootstrap-429 summary{display:block}.factory-bootstrap-429 audio,.factory-bootstrap-429 canvas,.factory-bootstrap-429 video{display:inline-block}.factory-bootstrap-429 audio:not([controls]){display:none;height:0}.factory-bootstrap-429 [hidden],.factory-bootstrap-429 template{display:none}.factory-bootstrap-429 body{margin:0}.factory-bootstrap-429 a{background:0 0}.factory-bootstrap-429 a:focus{outline:thin dotted}.factory-bootstrap-429 a:active,.factory-bootstrap-429 a:hover{outline:0}.factory-bootstrap-429 h1{margin:.67em 0}.factory-bootstrap-429 b,.factory-bootstrap-429 strong{font-weight:700}.factory-bootstrap-429 dfn{font-style:italic}.factory-bootstrap-429 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-429 mark{color:#000;background:#ff0}.factory-bootstrap-429 code,.factory-bootstrap-429 kbd,.factory-bootstrap-429 pre,.factory-bootstrap-429 samp{font-size:1em}.factory-bootstrap-429 pre{white-space:pre-wrap}.factory-bootstrap-429 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-429 sub,.factory-bootstrap-429 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-429 sup{top:-.5em}.factory-bootstrap-429 sub{bottom:-.25em}.factory-bootstrap-429 img{border:0}.factory-bootstrap-429 svg:not(:root){overflow:hidden}.factory-bootstrap-429 figure{margin:0}.factory-bootstrap-429 button,.factory-bootstrap-429 input,.factory-bootstrap-429 select,.factory-bootstrap-429 textarea{margin:0}.factory-bootstrap-429 button,.factory-bootstrap-429 select{text-transform:none}.factory-bootstrap-429 select{padding-right:4px!important}.factory-bootstrap-429 button,.factory-bootstrap-429 input[type=reset],.factory-bootstrap-429 input[type=submit],html .factory-bootstrap-429 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-429 button[disabled],html .factory-bootstrap-429 input[disabled]{cursor:default}.factory-bootstrap-429 input[type=checkbox],.factory-bootstrap-429 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-429 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-429 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-429 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-429 button::-moz-focus-inner,.factory-bootstrap-429 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-429 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-429 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-429 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-429 a,.factory-bootstrap-429 a:visited{text-decoration:underline}.factory-bootstrap-429 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-429 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-429 a[href^="javascript:"]:after,.factory-bootstrap-429 a[href^="#"]:after{content:""}.factory-bootstrap-429 blockquote,.factory-bootstrap-429 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-429 thead{display:table-header-group}.factory-bootstrap-429 img,.factory-bootstrap-429 tr{page-break-inside:avoid}.factory-bootstrap-429 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-429 h2,.factory-bootstrap-429 h3,.factory-bootstrap-429 p{orphans:3;widows:3}.factory-bootstrap-429 h2,.factory-bootstrap-429 h3{page-break-after:avoid}.factory-bootstrap-429 select{background:#fff!important}.factory-bootstrap-429 .navbar{display:none}.factory-bootstrap-429 .table td,.factory-bootstrap-429 .table th{background-color:#fff!important}.factory-bootstrap-429 .btn>.caret,.factory-bootstrap-429 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-429 .label{border:1px solid #000}.factory-bootstrap-429 .table{border-collapse:collapse!important}.factory-bootstrap-429 .table-bordered td,.factory-bootstrap-429 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-429 *,.factory-bootstrap-429 :after,.factory-bootstrap-429 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-429{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-429 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-429 button,.factory-bootstrap-429 input,.factory-bootstrap-429 select,.factory-bootstrap-429 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-429 img{vertical-align:middle}.factory-bootstrap-429 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-429 .img-rounded{border-radius:6px}.factory-bootstrap-429 .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-429 .img-circle{border-radius:50%}.factory-bootstrap-429 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-429 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-429 .h1,.factory-bootstrap-429 .h2,.factory-bootstrap-429 .h3,.factory-bootstrap-429 .h4,.factory-bootstrap-429 .h5,.factory-bootstrap-429 .h6,.factory-bootstrap-429 h1,.factory-bootstrap-429 h2,.factory-bootstrap-429 h3,.factory-bootstrap-429 h4,.factory-bootstrap-429 h5,.factory-bootstrap-429 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-429 .h1 .small,.factory-bootstrap-429 .h1 small,.factory-bootstrap-429 .h2 .small,.factory-bootstrap-429 .h2 small,.factory-bootstrap-429 .h3 .small,.factory-bootstrap-429 .h3 small,.factory-bootstrap-429 .h4 .small,.factory-bootstrap-429 .h4 small,.factory-bootstrap-429 .h5 .small,.factory-bootstrap-429 .h5 small,.factory-bootstrap-429 .h6 .small,.factory-bootstrap-429 .h6 small,.factory-bootstrap-429 h1 .small,.factory-bootstrap-429 h1 small,.factory-bootstrap-429 h2 .small,.factory-bootstrap-429 h2 small,.factory-bootstrap-429 h3 .small,.factory-bootstrap-429 h3 small,.factory-bootstrap-429 h4 .small,.factory-bootstrap-429 h4 small,.factory-bootstrap-429 h5 .small,.factory-bootstrap-429 h5 small,.factory-bootstrap-429 h6 .small,.factory-bootstrap-429 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-429 h1,.factory-bootstrap-429 h2,.factory-bootstrap-429 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-429 h1 .small,.factory-bootstrap-429 h1 small,.factory-bootstrap-429 h2 .small,.factory-bootstrap-429 h2 small,.factory-bootstrap-429 h3 .small,.factory-bootstrap-429 h3 small{font-size:65%}.factory-bootstrap-429 h4,.factory-bootstrap-429 h5,.factory-bootstrap-429 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-429 h4 .small,.factory-bootstrap-429 h4 small,.factory-bootstrap-429 h5 .small,.factory-bootstrap-429 h5 small,.factory-bootstrap-429 h6 .small,.factory-bootstrap-429 h6 small{font-size:75%}.factory-bootstrap-429 .h1,.factory-bootstrap-429 h1{font-size:36px}.factory-bootstrap-429 .h2,.factory-bootstrap-429 h2{font-size:30px}.factory-bootstrap-429 .h3,.factory-bootstrap-429 h3{font-size:24px}.factory-bootstrap-429 .h4,.factory-bootstrap-429 h4{font-size:18px}.factory-bootstrap-429 .h5,.factory-bootstrap-429 h5{font-size:14px}.factory-bootstrap-429 .h6,.factory-bootstrap-429 h6{font-size:12px}.factory-bootstrap-429 p{margin:0 0 10px}.factory-bootstrap-429 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-429 .small,.factory-bootstrap-429 small{font-size:85%}.factory-bootstrap-429 cite{font-style:normal}.factory-bootstrap-429 .text-muted{color:#999}.factory-bootstrap-429 .text-primary{color:#428bca}.factory-bootstrap-429 .text-primary:hover{color:#3071a9}.factory-bootstrap-429 .text-warning{color:#8a6d3b}.factory-bootstrap-429 .text-warning:hover{color:#66512c}.factory-bootstrap-429 .text-danger{color:#a94442}.factory-bootstrap-429 .text-danger:hover{color:#843534}.factory-bootstrap-429 .text-success{color:#3c763d}.factory-bootstrap-429 .text-success:hover{color:#2b542c}.factory-bootstrap-429 .text-info{color:#31708f}.factory-bootstrap-429 .text-info:hover{color:#245269}.factory-bootstrap-429 .text-left{text-align:left}.factory-bootstrap-429 .text-right{text-align:right}.factory-bootstrap-429 .text-center{text-align:center}.factory-bootstrap-429 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-429 ol,.factory-bootstrap-429 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-429 ol ol,.factory-bootstrap-429 ol ul,.factory-bootstrap-429 ul ol,.factory-bootstrap-429 ul ul{margin-bottom:0}.factory-bootstrap-429 .list-inline,.factory-bootstrap-429 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-429 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-429 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-429 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-429 dd,.factory-bootstrap-429 dt{line-height:1.428571429}.factory-bootstrap-429 dt{font-weight:700}.factory-bootstrap-429 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-429 abbr[data-original-title],.factory-bootstrap-429 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-429 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-429 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-429 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-429 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-429 blockquote .small,.factory-bootstrap-429 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-429 blockquote .small:before,.factory-bootstrap-429 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-429 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-429 blockquote.pull-right .small,.factory-bootstrap-429 blockquote.pull-right p,.factory-bootstrap-429 blockquote.pull-right small{text-align:right}.factory-bootstrap-429 blockquote.pull-right .small:before,.factory-bootstrap-429 blockquote.pull-right small:before{content:''}.factory-bootstrap-429 blockquote.pull-right .small:after,.factory-bootstrap-429 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-429 blockquote:after,.factory-bootstrap-429 blockquote:before{content:""}.factory-bootstrap-429 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-429 code,.factory-bootstrap-429 kbd,.factory-bootstrap-429 pre,.factory-bootstrap-429 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-429 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-429 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-429 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-429 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-429 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-429 .container:after,.factory-bootstrap-429 .container:before{display:table;content:" "}.factory-bootstrap-429 .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-429 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-429 .row:after,.factory-bootstrap-429 .row:before{display:table;content:" "}.factory-bootstrap-429 .row:after{clear:both}.factory-bootstrap-429 .col-lg-1,.factory-bootstrap-429 .col-lg-10,.factory-bootstrap-429 .col-lg-11,.factory-bootstrap-429 .col-lg-12,.factory-bootstrap-429 .col-lg-2,.factory-bootstrap-429 .col-lg-3,.factory-bootstrap-429 .col-lg-4,.factory-bootstrap-429 .col-lg-5,.factory-bootstrap-429 .col-lg-6,.factory-bootstrap-429 .col-lg-7,.factory-bootstrap-429 .col-lg-8,.factory-bootstrap-429 .col-lg-9,.factory-bootstrap-429 .col-md-1,.factory-bootstrap-429 .col-md-10,.factory-bootstrap-429 .col-md-11,.factory-bootstrap-429 .col-md-12,.factory-bootstrap-429 .col-md-2,.factory-bootstrap-429 .col-md-3,.factory-bootstrap-429 .col-md-4,.factory-bootstrap-429 .col-md-5,.factory-bootstrap-429 .col-md-6,.factory-bootstrap-429 .col-md-7,.factory-bootstrap-429 .col-md-8,.factory-bootstrap-429 .col-md-9,.factory-bootstrap-429 .col-sm-1,.factory-bootstrap-429 .col-sm-10,.factory-bootstrap-429 .col-sm-11,.factory-bootstrap-429 .col-sm-12,.factory-bootstrap-429 .col-sm-2,.factory-bootstrap-429 .col-sm-3,.factory-bootstrap-429 .col-sm-4,.factory-bootstrap-429 .col-sm-5,.factory-bootstrap-429 .col-sm-6,.factory-bootstrap-429 .col-sm-7,.factory-bootstrap-429 .col-sm-8,.factory-bootstrap-429 .col-sm-9,.factory-bootstrap-429 .col-xs-1,.factory-bootstrap-429 .col-xs-10,.factory-bootstrap-429 .col-xs-11,.factory-bootstrap-429 .col-xs-12,.factory-bootstrap-429 .col-xs-2,.factory-bootstrap-429 .col-xs-3,.factory-bootstrap-429 .col-xs-4,.factory-bootstrap-429 .col-xs-5,.factory-bootstrap-429 .col-xs-6,.factory-bootstrap-429 .col-xs-7,.factory-bootstrap-429 .col-xs-8,.factory-bootstrap-429 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-429 .col-xs-1,.factory-bootstrap-429 .col-xs-10,.factory-bootstrap-429 .col-xs-11,.factory-bootstrap-429 .col-xs-12,.factory-bootstrap-429 .col-xs-2,.factory-bootstrap-429 .col-xs-3,.factory-bootstrap-429 .col-xs-4,.factory-bootstrap-429 .col-xs-5,.factory-bootstrap-429 .col-xs-6,.factory-bootstrap-429 .col-xs-7,.factory-bootstrap-429 .col-xs-8,.factory-bootstrap-429 .col-xs-9{float:left}.factory-bootstrap-429 .col-xs-12{width:100%}.factory-bootstrap-429 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-429 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-429 .col-xs-9{width:75%}.factory-bootstrap-429 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-429 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-429 .col-xs-6{width:50%}.factory-bootstrap-429 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-429 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-429 .col-xs-3{width:25%}.factory-bootstrap-429 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-429 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-429 .col-xs-pull-12{right:100%}.factory-bootstrap-429 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-429 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-429 .col-xs-pull-9{right:75%}.factory-bootstrap-429 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-429 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-429 .col-xs-pull-6{right:50%}.factory-bootstrap-429 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-429 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-429 .col-xs-pull-3{right:25%}.factory-bootstrap-429 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-429 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-429 .col-xs-pull-0{right:0}.factory-bootstrap-429 .col-xs-push-12{left:100%}.factory-bootstrap-429 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-429 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-429 .col-xs-push-9{left:75%}.factory-bootstrap-429 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-429 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-429 .col-xs-push-6{left:50%}.factory-bootstrap-429 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-429 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-429 .col-xs-push-3{left:25%}.factory-bootstrap-429 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-429 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-429 .col-xs-push-0{left:0}.factory-bootstrap-429 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-429 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-429 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-429 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-429 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-429 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-429 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-429 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-429 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-429 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-429 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-429 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-429 .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-429 table{max-width:100%;background-color:transparent}.factory-bootstrap-429 th{text-align:left}.factory-bootstrap-429 .table{width:100%;margin-bottom:20px}.factory-bootstrap-429 .table>tbody>tr>td,.factory-bootstrap-429 .table>tbody>tr>th,.factory-bootstrap-429 .table>tfoot>tr>td,.factory-bootstrap-429 .table>tfoot>tr>th,.factory-bootstrap-429 .table>thead>tr>td,.factory-bootstrap-429 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-429 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-429 .table>caption+thead>tr:first-child>td,.factory-bootstrap-429 .table>caption+thead>tr:first-child>th,.factory-bootstrap-429 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-429 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-429 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-429 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-429 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-429 .table .table{background-color:#fff}.factory-bootstrap-429 .table-condensed>tbody>tr>td,.factory-bootstrap-429 .table-condensed>tbody>tr>th,.factory-bootstrap-429 .table-condensed>tfoot>tr>td,.factory-bootstrap-429 .table-condensed>tfoot>tr>th,.factory-bootstrap-429 .table-condensed>thead>tr>td,.factory-bootstrap-429 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-429 .table-bordered,.factory-bootstrap-429 .table-bordered>tbody>tr>td,.factory-bootstrap-429 .table-bordered>tbody>tr>th,.factory-bootstrap-429 .table-bordered>tfoot>tr>td,.factory-bootstrap-429 .table-bordered>tfoot>tr>th,.factory-bootstrap-429 .table-bordered>thead>tr>td,.factory-bootstrap-429 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-429 .table-bordered>thead>tr>td,.factory-bootstrap-429 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-429 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-429 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-429 .table-hover>tbody>tr:hover>td,.factory-bootstrap-429 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-429 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-429 table td[class*=col-],.factory-bootstrap-429 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-429 .table>tbody>.active>td,.factory-bootstrap-429 .table>tbody>.active>th,.factory-bootstrap-429 .table>tbody>tr>.active,.factory-bootstrap-429 .table>tfoot>.active>td,.factory-bootstrap-429 .table>tfoot>.active>th,.factory-bootstrap-429 .table>tfoot>tr>.active,.factory-bootstrap-429 .table>thead>.active>td,.factory-bootstrap-429 .table>thead>.active>th,.factory-bootstrap-429 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-429 .table-hover>tbody>.active:hover>td,.factory-bootstrap-429 .table-hover>tbody>.active:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-429 .table>tbody>.success>td,.factory-bootstrap-429 .table>tbody>.success>th,.factory-bootstrap-429 .table>tbody>tr>.success,.factory-bootstrap-429 .table>tfoot>.success>td,.factory-bootstrap-429 .table>tfoot>.success>th,.factory-bootstrap-429 .table>tfoot>tr>.success,.factory-bootstrap-429 .table>thead>.success>td,.factory-bootstrap-429 .table>thead>.success>th,.factory-bootstrap-429 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-429 .table-hover>tbody>.success:hover>td,.factory-bootstrap-429 .table-hover>tbody>.success:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-429 .table>tbody>.danger>td,.factory-bootstrap-429 .table>tbody>.danger>th,.factory-bootstrap-429 .table>tbody>tr>.danger,.factory-bootstrap-429 .table>tfoot>.danger>td,.factory-bootstrap-429 .table>tfoot>.danger>th,.factory-bootstrap-429 .table>tfoot>tr>.danger,.factory-bootstrap-429 .table>thead>.danger>td,.factory-bootstrap-429 .table>thead>.danger>th,.factory-bootstrap-429 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-429 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-429 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-429 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-429 .table>tbody>.warning>td,.factory-bootstrap-429 .table>tbody>.warning>th,.factory-bootstrap-429 .table>tbody>tr>.warning,.factory-bootstrap-429 .table>tfoot>.warning>td,.factory-bootstrap-429 .table>tfoot>.warning>th,.factory-bootstrap-429 .table>tfoot>tr>.warning,.factory-bootstrap-429 .table>thead>.warning>td,.factory-bootstrap-429 .table>thead>.warning>th,.factory-bootstrap-429 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-429 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-429 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-429 .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-429 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-429 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-429 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-429 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-429 input[type=checkbox],.factory-bootstrap-429 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-429 input[type=file]{display:block}.factory-bootstrap-429 select[multiple],.factory-bootstrap-429 select[size]{height:auto}.factory-bootstrap-429 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-429 input[type=checkbox]:focus,.factory-bootstrap-429 input[type=file]:focus,.factory-bootstrap-429 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-429 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-429 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-429 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-429 .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-429 .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-429 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-429 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-429 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-429 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-429 .form-control[disabled],.factory-bootstrap-429 .form-control[readonly],.factory-bootstrap-429 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-429 textarea.form-control{height:auto}.factory-bootstrap-429 .form-group{margin-bottom:15px}.factory-bootstrap-429 .checkbox,.factory-bootstrap-429 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-429 .checkbox label,.factory-bootstrap-429 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-429 .checkbox input[type=checkbox],.factory-bootstrap-429 .checkbox-inline input[type=checkbox],.factory-bootstrap-429 .radio input[type=radio],.factory-bootstrap-429 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-429 .checkbox+.checkbox,.factory-bootstrap-429 .radio+.radio{margin-top:-5px}.factory-bootstrap-429 .checkbox-inline,.factory-bootstrap-429 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-429 .checkbox-inline+.checkbox-inline,.factory-bootstrap-429 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-429 .checkbox-inline[disabled],.factory-bootstrap-429 .checkbox[disabled],.factory-bootstrap-429 .radio-inline[disabled],.factory-bootstrap-429 .radio[disabled],.factory-bootstrap-429 fieldset[disabled] .checkbox,.factory-bootstrap-429 fieldset[disabled] .checkbox-inline,.factory-bootstrap-429 fieldset[disabled] .radio,.factory-bootstrap-429 fieldset[disabled] .radio-inline,.factory-bootstrap-429 fieldset[disabled] input[type=checkbox],.factory-bootstrap-429 fieldset[disabled] input[type=radio],.factory-bootstrap-429 input[type=checkbox][disabled],.factory-bootstrap-429 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-429 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-429 textarea.input-sm{height:auto}.factory-bootstrap-429 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-429 textarea.input-lg{height:auto}.factory-bootstrap-429 .has-warning .checkbox,.factory-bootstrap-429 .has-warning .checkbox-inline,.factory-bootstrap-429 .has-warning .control-label,.factory-bootstrap-429 .has-warning .help-block,.factory-bootstrap-429 .has-warning .radio,.factory-bootstrap-429 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-429 .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-429 .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-429 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-429 .has-error .checkbox,.factory-bootstrap-429 .has-error .checkbox-inline,.factory-bootstrap-429 .has-error .control-label,.factory-bootstrap-429 .has-error .help-block,.factory-bootstrap-429 .has-error .radio,.factory-bootstrap-429 .has-error .radio-inline{color:#a94442}.factory-bootstrap-429 .controls{display:block}.factory-bootstrap-429 .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-429 .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-429 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-429 .has-success .checkbox,.factory-bootstrap-429 .has-success .checkbox-inline,.factory-bootstrap-429 .has-success .control-label,.factory-bootstrap-429 .has-success .help-block,.factory-bootstrap-429 .has-success .radio,.factory-bootstrap-429 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-429 .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-429 .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-429 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-429 .form-control-static{margin-bottom:0}.factory-bootstrap-429 .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-429 .form-horizontal .checkbox,.factory-bootstrap-429 .form-horizontal .checkbox-inline,.factory-bootstrap-429 .form-horizontal .control-label,.factory-bootstrap-429 .form-horizontal .radio,.factory-bootstrap-429 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-429 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-429 .form-horizontal .checkbox,.factory-bootstrap-429 .form-horizontal .radio{min-height:27px}.factory-bootstrap-429 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-429 .form-horizontal .form-group:after,.factory-bootstrap-429 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-429 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-429 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-429 .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-429 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-429 .btn{text-decoration:none}.factory-bootstrap-429 .btn:focus,.factory-bootstrap-429 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-429 .btn.disabled,.factory-bootstrap-429 .btn[disabled],.factory-bootstrap-429 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .btn-default:focus,.factory-bootstrap-429 .btn-default:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-429 .btn-default.disabled,.factory-bootstrap-429 .btn-default.disabled.active,.factory-bootstrap-429 .btn-default.disabled:active,.factory-bootstrap-429 .btn-default.disabled:focus,.factory-bootstrap-429 .btn-default.disabled:hover,.factory-bootstrap-429 .btn-default[disabled],.factory-bootstrap-429 .btn-default[disabled].active,.factory-bootstrap-429 .btn-default[disabled]:active,.factory-bootstrap-429 .btn-default[disabled]:focus,.factory-bootstrap-429 .btn-default[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-default,.factory-bootstrap-429 fieldset[disabled] .btn-default.active,.factory-bootstrap-429 fieldset[disabled] .btn-default:active,.factory-bootstrap-429 fieldset[disabled] .btn-default:focus,.factory-bootstrap-429 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-429 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .btn-primary:focus,.factory-bootstrap-429 .btn-primary:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-429 .btn-primary.disabled,.factory-bootstrap-429 .btn-primary.disabled.active,.factory-bootstrap-429 .btn-primary.disabled:active,.factory-bootstrap-429 .btn-primary.disabled:focus,.factory-bootstrap-429 .btn-primary.disabled:hover,.factory-bootstrap-429 .btn-primary[disabled],.factory-bootstrap-429 .btn-primary[disabled].active,.factory-bootstrap-429 .btn-primary[disabled]:active,.factory-bootstrap-429 .btn-primary[disabled]:focus,.factory-bootstrap-429 .btn-primary[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-primary,.factory-bootstrap-429 fieldset[disabled] .btn-primary.active,.factory-bootstrap-429 fieldset[disabled] .btn-primary:active,.factory-bootstrap-429 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-429 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-429 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-429 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active,.factory-bootstrap-429 .btn-warning:focus,.factory-bootstrap-429 .btn-warning:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-429 .btn-warning.disabled,.factory-bootstrap-429 .btn-warning.disabled.active,.factory-bootstrap-429 .btn-warning.disabled:active,.factory-bootstrap-429 .btn-warning.disabled:focus,.factory-bootstrap-429 .btn-warning.disabled:hover,.factory-bootstrap-429 .btn-warning[disabled],.factory-bootstrap-429 .btn-warning[disabled].active,.factory-bootstrap-429 .btn-warning[disabled]:active,.factory-bootstrap-429 .btn-warning[disabled]:focus,.factory-bootstrap-429 .btn-warning[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-warning,.factory-bootstrap-429 fieldset[disabled] .btn-warning.active,.factory-bootstrap-429 fieldset[disabled] .btn-warning:active,.factory-bootstrap-429 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-429 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-429 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-429 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .btn-success:focus,.factory-bootstrap-429 .btn-success:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-429 .btn-success.disabled,.factory-bootstrap-429 .btn-success.disabled.active,.factory-bootstrap-429 .btn-success.disabled:active,.factory-bootstrap-429 .btn-success.disabled:focus,.factory-bootstrap-429 .btn-success.disabled:hover,.factory-bootstrap-429 .btn-success[disabled],.factory-bootstrap-429 .btn-success[disabled].active,.factory-bootstrap-429 .btn-success[disabled]:active,.factory-bootstrap-429 .btn-success[disabled]:focus,.factory-bootstrap-429 .btn-success[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-success,.factory-bootstrap-429 fieldset[disabled] .btn-success.active,.factory-bootstrap-429 fieldset[disabled] .btn-success:active,.factory-bootstrap-429 fieldset[disabled] .btn-success:focus,.factory-bootstrap-429 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-429 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-429 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .btn-info:focus,.factory-bootstrap-429 .btn-info:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-429 .btn-info.disabled,.factory-bootstrap-429 .btn-info.disabled.active,.factory-bootstrap-429 .btn-info.disabled:active,.factory-bootstrap-429 .btn-info.disabled:focus,.factory-bootstrap-429 .btn-info.disabled:hover,.factory-bootstrap-429 .btn-info[disabled],.factory-bootstrap-429 .btn-info[disabled].active,.factory-bootstrap-429 .btn-info[disabled]:active,.factory-bootstrap-429 .btn-info[disabled]:focus,.factory-bootstrap-429 .btn-info[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-info,.factory-bootstrap-429 fieldset[disabled] .btn-info.active,.factory-bootstrap-429 fieldset[disabled] .btn-info:active,.factory-bootstrap-429 fieldset[disabled] .btn-info:focus,.factory-bootstrap-429 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-429 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-429 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-429 .btn-link,.factory-bootstrap-429 .btn-link:active,.factory-bootstrap-429 .btn-link[disabled],.factory-bootstrap-429 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-link,.factory-bootstrap-429 .btn-link:active,.factory-bootstrap-429 .btn-link:focus,.factory-bootstrap-429 .btn-link:hover{border-color:transparent}.factory-bootstrap-429 .btn-link:focus,.factory-bootstrap-429 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-429 .btn-link[disabled]:focus,.factory-bootstrap-429 .btn-link[disabled]:hover,.factory-bootstrap-429 fieldset[disabled] .btn-link:focus,.factory-bootstrap-429 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-429 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-429 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-429 input[type=button].btn-block,.factory-bootstrap-429 input[type=reset].btn-block,.factory-bootstrap-429 input[type=submit].btn-block{width:100%}.factory-bootstrap-429 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-429 .fade.in{opacity:1}.factory-bootstrap-429 .collapse{display:none}.factory-bootstrap-429 .collapse.in{display:block}.factory-bootstrap-429 .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-429 .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-429 .glyphicon:empty{width:1em}.factory-bootstrap-429 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-429 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-429 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-429 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-429 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-429 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-429 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-429 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-429 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-429 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-429 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-429 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-429 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-429 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-429 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-429 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-429 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-429 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-429 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-429 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-429 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-429 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-429 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-429 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-429 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-429 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-429 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-429 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-429 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-429 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-429 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-429 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-429 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-429 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-429 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-429 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-429 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-429 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-429 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-429 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-429 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-429 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-429 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-429 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-429 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-429 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-429 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-429 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-429 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-429 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-429 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-429 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-429 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-429 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-429 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-429 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-429 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-429 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-429 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-429 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-429 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-429 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-429 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-429 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-429 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-429 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-429 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-429 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-429 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-429 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-429 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-429 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-429 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-429 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-429 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-429 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-429 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-429 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-429 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-429 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-429 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-429 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-429 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-429 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-429 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-429 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-429 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-429 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-429 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-429 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-429 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-429 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-429 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-429 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-429 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-429 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-429 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-429 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-429 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-429 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-429 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-429 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-429 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-429 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-429 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-429 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-429 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-429 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-429 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-429 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-429 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-429 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-429 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-429 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-429 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-429 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-429 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-429 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-429 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-429 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-429 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-429 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-429 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-429 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-429 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-429 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-429 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-429 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-429 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-429 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-429 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-429 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-429 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-429 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-429 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-429 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-429 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-429 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-429 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-429 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-429 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-429 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-429 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-429 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-429 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-429 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-429 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-429 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-429 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-429 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-429 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-429 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-429 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-429 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-429 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-429 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-429 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-429 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-429 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-429 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-429 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-429 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-429 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-429 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-429 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-429 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-429 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-429 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-429 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-429 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-429 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-429 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-429 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-429 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-429 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-429 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-429 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-429 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-429 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-429 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-429 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-429 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-429 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-429 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-429 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-429 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-429 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-429 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-429 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-429 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-429 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-429 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-429 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-429 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-429 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-429 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-429 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-429 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-429 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-429 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-429 .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-429 .dropdown{position:relative}.factory-bootstrap-429 .dropdown-toggle:focus{outline:0}.factory-bootstrap-429 .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-429 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-429 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-429 .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-429 .dropdown-menu>li>a:focus,.factory-bootstrap-429 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-429 .dropdown-menu>.active>a,.factory-bootstrap-429 .dropdown-menu>.active>a:focus,.factory-bootstrap-429 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-429 .dropdown-menu>.disabled>a,.factory-bootstrap-429 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-429 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-429 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-429 .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-429 .open>.dropdown-menu{display:block}.factory-bootstrap-429 .open>a{outline:0}.factory-bootstrap-429 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-429 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-429 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-429 .dropup .caret,.factory-bootstrap-429 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-429 .dropup .dropdown-menu,.factory-bootstrap-429 .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-429 .btn-group,.factory-bootstrap-429 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-429 .btn-group-vertical>.btn,.factory-bootstrap-429 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-429 .btn-group-vertical>.btn.active,.factory-bootstrap-429 .btn-group-vertical>.btn:active,.factory-bootstrap-429 .btn-group-vertical>.btn:focus,.factory-bootstrap-429 .btn-group-vertical>.btn:hover,.factory-bootstrap-429 .btn-group>.btn.active,.factory-bootstrap-429 .btn-group>.btn:active,.factory-bootstrap-429 .btn-group>.btn:focus,.factory-bootstrap-429 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-429 .btn-group-vertical>.btn:focus,.factory-bootstrap-429 .btn-group>.btn:focus{outline:0}.factory-bootstrap-429 .btn-group .btn+.btn,.factory-bootstrap-429 .btn-group .btn+.btn-group,.factory-bootstrap-429 .btn-group .btn-group+.btn,.factory-bootstrap-429 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-429 .btn-toolbar:after,.factory-bootstrap-429 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-429 .btn-toolbar:after{clear:both}.factory-bootstrap-429 .btn-toolbar .btn-group{float:left}.factory-bootstrap-429 .btn-toolbar>.btn+.btn,.factory-bootstrap-429 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-429 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-429 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-429 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-429 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-429 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-429 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group>.btn-group{float:left}.factory-bootstrap-429 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-429 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-429 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group .dropdown-toggle:active,.factory-bootstrap-429 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-429 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-429 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-429 .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-429 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-429 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-429 .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-429 .btn .caret{margin-left:0}.factory-bootstrap-429 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-429 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-429 .btn-group-vertical>.btn,.factory-bootstrap-429 .btn-group-vertical>.btn-group,.factory-bootstrap-429 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-429 .btn-group-vertical>.btn-group:after,.factory-bootstrap-429 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-429 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-429 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-429 .btn-group-vertical>.btn+.btn,.factory-bootstrap-429 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-429 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-429 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-429 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-429 .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-429 .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-429 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-429 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-429 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-429 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-429 .btn-group-justified>.btn,.factory-bootstrap-429 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-429 .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-429 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-429 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-429 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-429 .input-group-lg>.form-control,.factory-bootstrap-429 .input-group-lg>.input-group-addon,.factory-bootstrap-429 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-429 select.input-group-lg>.form-control,.factory-bootstrap-429 select.input-group-lg>.input-group-addon,.factory-bootstrap-429 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-429 textarea.input-group-lg>.form-control,.factory-bootstrap-429 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-429 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-429 .input-group-sm>.form-control,.factory-bootstrap-429 .input-group-sm>.input-group-addon,.factory-bootstrap-429 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-429 select.input-group-sm>.form-control,.factory-bootstrap-429 select.input-group-sm>.input-group-addon,.factory-bootstrap-429 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-429 textarea.input-group-sm>.form-control,.factory-bootstrap-429 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-429 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-429 .input-group .form-control,.factory-bootstrap-429 .input-group-addon,.factory-bootstrap-429 .input-group-btn{display:table-cell}.factory-bootstrap-429 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-429 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-429 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-429 .input-group-addon,.factory-bootstrap-429 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-429 .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-429 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-429 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-429 .input-group-addon input[type=checkbox],.factory-bootstrap-429 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-429 .input-group .form-control:first-child,.factory-bootstrap-429 .input-group-addon:first-child,.factory-bootstrap-429 .input-group-btn:first-child>.btn,.factory-bootstrap-429 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-429 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-429 .input-group-addon:first-child{border-right:0}.factory-bootstrap-429 .input-group .form-control:last-child,.factory-bootstrap-429 .input-group-addon:last-child,.factory-bootstrap-429 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-429 .input-group-btn:last-child>.btn,.factory-bootstrap-429 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .input-group-addon:last-child{border-left:0}.factory-bootstrap-429 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-429 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-429 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-429 .input-group-btn>.btn{position:relative}.factory-bootstrap-429 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-429 .input-group-btn>.btn:active,.factory-bootstrap-429 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-429 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-429 .nav:after,.factory-bootstrap-429 .nav:before{display:table;content:" "}.factory-bootstrap-429 .nav:after{clear:both}.factory-bootstrap-429 .nav>li{position:relative;display:block}.factory-bootstrap-429 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-429 .nav>li>a:focus,.factory-bootstrap-429 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-429 .nav>li.disabled>a{color:#999}.factory-bootstrap-429 .nav>li.disabled>a:focus,.factory-bootstrap-429 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-429 .nav .open>a,.factory-bootstrap-429 .nav .open>a:focus,.factory-bootstrap-429 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-429 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-429 .nav>li>a>img{max-width:none}.factory-bootstrap-429 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-429 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-429 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-429 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-429 .nav-tabs>li.active>a,.factory-bootstrap-429 .nav-tabs>li.active>a:focus,.factory-bootstrap-429 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-429 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-429 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-429 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-429 .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-429 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-429 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-429 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-429 .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-429 .nav-pills>li{float:left}.factory-bootstrap-429 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-429 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-429 .nav-pills>li.active>a,.factory-bootstrap-429 .nav-pills>li.active>a:focus,.factory-bootstrap-429 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-429 .nav-stacked>li{float:none}.factory-bootstrap-429 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-429 .nav-justified{width:100%}.factory-bootstrap-429 .nav-justified>li{float:none}.factory-bootstrap-429 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-429 .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-429 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-429 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-429 .nav-tabs-justified>.active>a,.factory-bootstrap-429 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-429 .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-429 .tab-content>.tab-pane{display:none}.factory-bootstrap-429 .tab-content>.active{display:block}.factory-bootstrap-429 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-429 .navbar:after,.factory-bootstrap-429 .navbar:before{display:table;content:" "}.factory-bootstrap-429 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-429 .navbar-header:after,.factory-bootstrap-429 .navbar-header:before{display:table;content:" "}.factory-bootstrap-429 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-429 .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-429 .navbar-collapse:after,.factory-bootstrap-429 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-429 .navbar-collapse:after{clear:both}.factory-bootstrap-429 .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-429 .container>.navbar-collapse,.factory-bootstrap-429 .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-429 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-429 .navbar-fixed-bottom,.factory-bootstrap-429 .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-429 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-429 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-429 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-429 .navbar-brand:focus,.factory-bootstrap-429 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-429 .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-429 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-429 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-429 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-429 .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-429 .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-429 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-429 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-429 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-429 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-429 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-429 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-429 .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-429 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-429 .navbar-default .navbar-brand:focus,.factory-bootstrap-429 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-nav>li>a,.factory-bootstrap-429 .navbar-default .navbar-text{color:#777}.factory-bootstrap-429 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-429 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-429 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-429 .navbar-default .navbar-toggle:focus,.factory-bootstrap-429 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-429 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-429 .navbar-default .navbar-collapse,.factory-bootstrap-429 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-429 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-429 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-429 .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-429 .navbar-default .navbar-link{color:#777}.factory-bootstrap-429 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-429 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-429 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-429 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-429 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-429 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-429 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-429 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-429 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-429 .navbar-inverse .navbar-collapse,.factory-bootstrap-429 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-429 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-429 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-429 .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-429 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-429 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-429 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-429 .breadcrumb>li{display:inline-block}.factory-bootstrap-429 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-429 .breadcrumb>.active{color:#999}.factory-bootstrap-429 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-429 .pagination>li{display:inline}.factory-bootstrap-429 .pagination>li>a,.factory-bootstrap-429 .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-429 .pagination>li:first-child>a,.factory-bootstrap-429 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-429 .pagination>li:last-child>a,.factory-bootstrap-429 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-429 .pagination>li>a:focus,.factory-bootstrap-429 .pagination>li>a:hover,.factory-bootstrap-429 .pagination>li>span:focus,.factory-bootstrap-429 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-429 .pagination>.active>a,.factory-bootstrap-429 .pagination>.active>a:focus,.factory-bootstrap-429 .pagination>.active>a:hover,.factory-bootstrap-429 .pagination>.active>span,.factory-bootstrap-429 .pagination>.active>span:focus,.factory-bootstrap-429 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-429 .pagination>.disabled>a,.factory-bootstrap-429 .pagination>.disabled>a:focus,.factory-bootstrap-429 .pagination>.disabled>a:hover,.factory-bootstrap-429 .pagination>.disabled>span,.factory-bootstrap-429 .pagination>.disabled>span:focus,.factory-bootstrap-429 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-429 .pagination-lg>li>a,.factory-bootstrap-429 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-429 .pagination-lg>li:first-child>a,.factory-bootstrap-429 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-429 .pagination-lg>li:last-child>a,.factory-bootstrap-429 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-429 .pagination-sm>li>a,.factory-bootstrap-429 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-429 .pagination-sm>li:first-child>a,.factory-bootstrap-429 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-429 .pagination-sm>li:last-child>a,.factory-bootstrap-429 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-429 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-429 .pager:after,.factory-bootstrap-429 .pager:before{display:table;content:" "}.factory-bootstrap-429 .pager:after{clear:both}.factory-bootstrap-429 .pager li{display:inline}.factory-bootstrap-429 .pager li>a,.factory-bootstrap-429 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-429 .pager li>a:focus,.factory-bootstrap-429 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-429 .pager .next>a,.factory-bootstrap-429 .pager .next>span{float:right}.factory-bootstrap-429 .pager .previous>a,.factory-bootstrap-429 .pager .previous>span{float:left}.factory-bootstrap-429 .pager .disabled>a,.factory-bootstrap-429 .pager .disabled>a:focus,.factory-bootstrap-429 .pager .disabled>a:hover,.factory-bootstrap-429 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-429 .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-429 .label[href]:focus,.factory-bootstrap-429 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-429 .label:empty{display:none}.factory-bootstrap-429 .btn .label{position:relative;top:-1px}.factory-bootstrap-429 .label-default{background-color:#999}.factory-bootstrap-429 .label-default[href]:focus,.factory-bootstrap-429 .label-default[href]:hover{background-color:gray}.factory-bootstrap-429 .label-primary{background-color:#428bca}.factory-bootstrap-429 .label-primary[href]:focus,.factory-bootstrap-429 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-429 .label-success{background-color:#5cb85c}.factory-bootstrap-429 .label-success[href]:focus,.factory-bootstrap-429 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-429 .label-info{background-color:#5bc0de}.factory-bootstrap-429 .label-info[href]:focus,.factory-bootstrap-429 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-429 .label-warning{background-color:#f0ad4e}.factory-bootstrap-429 .label-warning[href]:focus,.factory-bootstrap-429 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-429 .label-danger{background-color:#d9534f}.factory-bootstrap-429 .label-danger[href]:focus,.factory-bootstrap-429 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-429 .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-429 .badge:empty{display:none}.factory-bootstrap-429 .btn .badge{position:relative;top:-1px}.factory-bootstrap-429 a.badge:focus,.factory-bootstrap-429 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-429 .nav-pills>.active>a>.badge,.factory-bootstrap-429 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-429 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-429 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-429 .jumbotron .h1,.factory-bootstrap-429 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-429 .jumbotron p{line-height:1.4}.factory-bootstrap-429 .container .jumbotron{border-radius:6px}.factory-bootstrap-429 .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-429 .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-429 .thumbnail a>img,.factory-bootstrap-429 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-429 a.thumbnail.active,.factory-bootstrap-429 a.thumbnail:focus,.factory-bootstrap-429 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-429 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-429 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-429 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-429 .alert .alert-link{font-weight:700}.factory-bootstrap-429 .alert>p,.factory-bootstrap-429 .alert>ul{margin-bottom:0}.factory-bootstrap-429 .alert>p+p{margin-top:5px}.factory-bootstrap-429 .alert-dismissable{padding-right:35px}.factory-bootstrap-429 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-429 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-429 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-429 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-429 .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-429 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-429 .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-429 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-429 .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-429 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-429 .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-429 .media,.factory-bootstrap-429 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-429 .media,.factory-bootstrap-429 .media .media{margin-top:15px}.factory-bootstrap-429 .media:first-child{margin-top:0}.factory-bootstrap-429 .media-object{display:block}.factory-bootstrap-429 .media-heading{margin:0 0 5px}.factory-bootstrap-429 .media>.pull-left{margin-right:10px}.factory-bootstrap-429 .media>.pull-right{margin-left:10px}.factory-bootstrap-429 .media-list{padding-left:0;list-style:none}.factory-bootstrap-429 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-429 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-429 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-429 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-429 .list-group-item>.badge{float:right}.factory-bootstrap-429 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-429 a.list-group-item{color:#555}.factory-bootstrap-429 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-429 a.list-group-item:focus,.factory-bootstrap-429 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-429 a.list-group-item.active,.factory-bootstrap-429 a.list-group-item.active:focus,.factory-bootstrap-429 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-429 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-429 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-429 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-429 a.list-group-item.active .list-group-item-text,.factory-bootstrap-429 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-429 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-429 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-429 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-429 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-429 .panel-body{padding:15px}.factory-bootstrap-429 .panel-body:after,.factory-bootstrap-429 .panel-body:before{display:table;content:" "}.factory-bootstrap-429 .panel-body:after{clear:both}.factory-bootstrap-429 .panel>.list-group{margin-bottom:0}.factory-bootstrap-429 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-429 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-429 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-429 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-429 .panel>.table,.factory-bootstrap-429 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-429 .panel>.panel-body+.table,.factory-bootstrap-429 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-429 .panel>.table>tbody:first-child td,.factory-bootstrap-429 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-429 .panel>.table-bordered,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-429 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-429 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-429 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-429 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-429 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-429 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-429 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-429 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-429 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-429 .panel-title>a{color:inherit}.factory-bootstrap-429 .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-429 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-429 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-429 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-429 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-429 .panel-group .panel-footer{border-top:0}.factory-bootstrap-429 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-429 .panel-default{border-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-429 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-429 .panel-primary{border-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-429 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-429 .panel-success{border-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-429 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-429 .panel-warning{border-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-429 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-429 .panel-danger{border-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-429 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-429 .panel-info{border-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-429 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-429 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-429 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-429 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-429 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-429 .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-429 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-429 .close:focus,.factory-bootstrap-429 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-429 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-429 .modal-open{overflow:hidden}.factory-bootstrap-429 .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-429 .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-429 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-429 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-429 .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-429 .modal-backdrop,.factory-bootstrap-429-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-429 .modal-backdrop.fade,.factory-bootstrap-429-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-429 .modal-backdrop.in,.factory-bootstrap-429-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-429 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-429 .modal-header .close{margin-top:-2px}.factory-bootstrap-429 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-429 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-429 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-429 .modal-footer:after,.factory-bootstrap-429 .modal-footer:before{display:table;content:" "}.factory-bootstrap-429 .modal-footer:after{clear:both}.factory-bootstrap-429 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-429 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-429 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-429 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-429 .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-429 .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-429 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-429 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-429 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-429 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-429 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-429 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-429 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-429 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-429 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-429 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-429 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-429 .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-429 .popover.top{margin-top:-10px}.factory-bootstrap-429 .popover.right{margin-left:10px}.factory-bootstrap-429 .popover.bottom{margin-top:10px}.factory-bootstrap-429 .popover.left{margin-left:-10px}.factory-bootstrap-429 .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-429 .popover-content{padding:9px 14px}.factory-bootstrap-429 .popover .arrow,.factory-bootstrap-429 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-429 .popover .arrow{border-width:11px}.factory-bootstrap-429 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-429 .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-429 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-429 .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-429 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-429 .carousel{position:relative}.factory-bootstrap-429 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-429 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-429 .carousel-inner>.item>a>img,.factory-bootstrap-429 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-429 .carousel-inner>.active,.factory-bootstrap-429 .carousel-inner>.next,.factory-bootstrap-429 .carousel-inner>.prev{display:block}.factory-bootstrap-429 .carousel-inner>.active{left:0}.factory-bootstrap-429 .carousel-inner>.next,.factory-bootstrap-429 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-429 .carousel-inner>.next{left:100%}.factory-bootstrap-429 .carousel-inner>.prev{left:-100%}.factory-bootstrap-429 .carousel-inner>.next.left,.factory-bootstrap-429 .carousel-inner>.prev.right{left:0}.factory-bootstrap-429 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-429 .carousel-inner>.active.right{left:100%}.factory-bootstrap-429 .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-429 .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-429 .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-429 .carousel-control:focus,.factory-bootstrap-429 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-429 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-429 .carousel-control .icon-next,.factory-bootstrap-429 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-429 .carousel-control .icon-prev{left:50%}.factory-bootstrap-429 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-429 .carousel-control .icon-next{right:50%}.factory-bootstrap-429 .carousel-control .icon-next,.factory-bootstrap-429 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-429 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-429 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-429 .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-429 .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-429 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-429 .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-429 .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-429 .clearfix:after,.factory-bootstrap-429 .clearfix:before{display:table;content:" "}.factory-bootstrap-429 .clearfix:after{clear:both}.factory-bootstrap-429 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-429 .pull-right{float:right!important}.factory-bootstrap-429 .pull-left{float:left!important}.factory-bootstrap-429 .hide{display:none!important}.factory-bootstrap-429 .show{display:block!important}.factory-bootstrap-429 .invisible{visibility:hidden}.factory-bootstrap-429 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-429 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-429 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-429 .visible-lg,.factory-bootstrap-429 .visible-md,.factory-bootstrap-429 .visible-sm,.factory-bootstrap-429 .visible-xs,.factory-bootstrap-429 td.visible-lg,.factory-bootstrap-429 td.visible-md,.factory-bootstrap-429 td.visible-sm,.factory-bootstrap-429 td.visible-xs,.factory-bootstrap-429 th.visible-lg,.factory-bootstrap-429 th.visible-md,.factory-bootstrap-429 th.visible-sm,.factory-bootstrap-429 th.visible-xs,.factory-bootstrap-429 tr.visible-lg,.factory-bootstrap-429 tr.visible-md,.factory-bootstrap-429 tr.visible-sm,.factory-bootstrap-429 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-429 .hidden-xs{display:block!important}.factory-bootstrap-429 table.hidden-xs{display:table}.factory-bootstrap-429 tr.hidden-xs{display:table-row!important}.factory-bootstrap-429 td.hidden-xs,.factory-bootstrap-429 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-429 .hidden-sm{display:block!important}.factory-bootstrap-429 table.hidden-sm{display:table}.factory-bootstrap-429 tr.hidden-sm{display:table-row!important}.factory-bootstrap-429 td.hidden-sm,.factory-bootstrap-429 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-429 .hidden-md{display:block!important}.factory-bootstrap-429 table.hidden-md{display:table}.factory-bootstrap-429 tr.hidden-md{display:table-row!important}.factory-bootstrap-429 td.hidden-md,.factory-bootstrap-429 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-429 .hidden-lg{display:block!important}.factory-bootstrap-429 table.hidden-lg{display:table}.factory-bootstrap-429 tr.hidden-lg{display:table-row!important}.factory-bootstrap-429 td.hidden-lg,.factory-bootstrap-429 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-429 .hidden-lg.hidden-xs,.factory-bootstrap-429 td.hidden-lg.hidden-xs,.factory-bootstrap-429 th.hidden-lg.hidden-xs,.factory-bootstrap-429 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-429 .hidden-lg.hidden-sm,.factory-bootstrap-429 td.hidden-lg.hidden-sm,.factory-bootstrap-429 th.hidden-lg.hidden-sm,.factory-bootstrap-429 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-429 .hidden-lg.hidden-md,.factory-bootstrap-429 td.hidden-lg.hidden-md,.factory-bootstrap-429 th.hidden-lg.hidden-md,.factory-bootstrap-429 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-429 .hidden-lg,.factory-bootstrap-429 td.hidden-lg,.factory-bootstrap-429 th.hidden-lg,.factory-bootstrap-429 tr.hidden-lg{display:none!important}}.factory-bootstrap-429 .visible-print,.factory-bootstrap-429 td.visible-print,.factory-bootstrap-429 th.visible-print,.factory-bootstrap-429 tr.visible-print{display:none!important}@media print{.factory-bootstrap-429 .visible-print{display:block!important}.factory-bootstrap-429 table.visible-print{display:table}.factory-bootstrap-429 tr.visible-print{display:table-row!important}.factory-bootstrap-429 td.visible-print,.factory-bootstrap-429 th.visible-print{display:table-cell!important}.factory-bootstrap-429 .hidden-print,.factory-bootstrap-429 td.hidden-print,.factory-bootstrap-429 th.hidden-print,.factory-bootstrap-429 tr.hidden-print{display:none!important}}/*!
|
12 |
* Factory Default Bootstrap Theme
|
13 |
*
|
14 |
* The code is based on Bootstrap v2.1.1
|
@@ -22,4 +22,4 @@
|
|
22 |
*
|
23 |
* @package factory-bootstrap
|
24 |
* @since 1.0.0
|
25 |
-
*/.factory-bootstrap-429 .btn-danger,.factory-bootstrap-429 .btn-default,.factory-bootstrap-429 .btn-info,.factory-bootstrap-429 .btn-primary,.factory-bootstrap-429 .btn-success,.factory-bootstrap-429 .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-429 .btn-danger.active,.factory-bootstrap-429 .btn-danger:active,.factory-bootstrap-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active,.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active,.factory-bootstrap-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active,.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active,.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .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-429 .btn.active,.factory-bootstrap-429 .btn:active{background-image:none}.factory-bootstrap-429 .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-429 .btn-default.active,.factory-bootstrap-429 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-429 .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-429 .btn-gold:focus,.factory-bootstrap-429 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-429 .btn-gold.active,.factory-bootstrap-429 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-429 .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-429 .btn-primary:focus,.factory-bootstrap-429 .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-429 .btn-primary.active,.factory-bootstrap-429 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-429 .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-429 .btn-success:focus,.factory-bootstrap-429 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-429 .btn-success.active,.factory-bootstrap-429 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-429 .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-429 .btn-warning:focus,.factory-bootstrap-429 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-429 .btn-warning.active,.factory-bootstrap-429 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-429 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-429 .btn-danger.active,.factory-bootstrap-429 .btn-danger:active,.factory-bootstrap-429 .btn-danger:focus,.factory-bootstrap-429 .btn-danger:hover,.factory-bootstrap-429 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-429 .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-429 .btn-info:focus,.factory-bootstrap-429 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-429 .btn-info.active,.factory-bootstrap-429 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-429 .img-thumbnail,.factory-bootstrap-429 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-429 .dropdown-menu>li>a:focus,.factory-bootstrap-429 .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-429 .dropdown-menu>.active>a,.factory-bootstrap-429 .dropdown-menu>.active>a:focus,.factory-bootstrap-429 .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-429 .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-429 .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-429 .navbar-brand,.factory-bootstrap-429 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-429 .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-429 .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-429 .navbar-inverse .navbar-brand,.factory-bootstrap-429 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-429 .navbar-fixed-bottom,.factory-bootstrap-429 .navbar-fixed-top,.factory-bootstrap-429 .navbar-static-top{border-radius:0}.factory-bootstrap-429 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-429 .alert .actions{padding-top:10px}.factory-bootstrap-429 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-429 .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-429 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-429 .alert-normal,.factory-bootstrap-429 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-429 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-429 .alert-danger a:not(.btn),.factory-bootstrap-429 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .list-group-item.active,.factory-bootstrap-429 .list-group-item.active:focus,.factory-bootstrap-429 .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-429 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .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-429 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-429 .factory-hidden{display:none}.factory-bootstrap-429 .factory-ajax-loader{width:25px;height:25px;background:url(../assets/images/loader-sm-tr.gif)}.factory-control-error{background-color:rgba(0,0,0,.8);white-space:normal;z-index:10;font-weight:400;line-height:150%;border-radius:4px;color:#fff;font-size:13px;margin-top:5px;padding:4px 10px 3px;max-width:500px;display:inline-block}.factory-control-error i{margin:0 7px 0 1px}
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 article,.factory-bootstrap-430 aside,.factory-bootstrap-430 details,.factory-bootstrap-430 figcaption,.factory-bootstrap-430 figure,.factory-bootstrap-430 footer,.factory-bootstrap-430 header,.factory-bootstrap-430 hgroup,.factory-bootstrap-430 main,.factory-bootstrap-430 nav,.factory-bootstrap-430 section,.factory-bootstrap-430 summary{display:block}.factory-bootstrap-430 audio,.factory-bootstrap-430 canvas,.factory-bootstrap-430 video{display:inline-block}.factory-bootstrap-430 audio:not([controls]){display:none;height:0}.factory-bootstrap-430 [hidden],.factory-bootstrap-430 template{display:none}.factory-bootstrap-430 body{margin:0}.factory-bootstrap-430 a{background:0 0}.factory-bootstrap-430 a:focus{outline:thin dotted}.factory-bootstrap-430 a:active,.factory-bootstrap-430 a:hover{outline:0}.factory-bootstrap-430 h1{margin:.67em 0}.factory-bootstrap-430 b,.factory-bootstrap-430 strong{font-weight:700}.factory-bootstrap-430 dfn{font-style:italic}.factory-bootstrap-430 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-430 mark{color:#000;background:#ff0}.factory-bootstrap-430 code,.factory-bootstrap-430 kbd,.factory-bootstrap-430 pre,.factory-bootstrap-430 samp{font-size:1em}.factory-bootstrap-430 pre{white-space:pre-wrap}.factory-bootstrap-430 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-430 sub,.factory-bootstrap-430 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-430 sup{top:-.5em}.factory-bootstrap-430 sub{bottom:-.25em}.factory-bootstrap-430 img{border:0}.factory-bootstrap-430 svg:not(:root){overflow:hidden}.factory-bootstrap-430 figure{margin:0}.factory-bootstrap-430 button,.factory-bootstrap-430 input,.factory-bootstrap-430 select,.factory-bootstrap-430 textarea{margin:0}.factory-bootstrap-430 button,.factory-bootstrap-430 select{text-transform:none}.factory-bootstrap-430 select{padding-right:4px!important}.factory-bootstrap-430 button,.factory-bootstrap-430 input[type=reset],.factory-bootstrap-430 input[type=submit],html .factory-bootstrap-430 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-430 button[disabled],html .factory-bootstrap-430 input[disabled]{cursor:default}.factory-bootstrap-430 input[type=checkbox],.factory-bootstrap-430 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-430 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-430 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-430 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-430 button::-moz-focus-inner,.factory-bootstrap-430 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-430 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-430 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-430 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-430 a,.factory-bootstrap-430 a:visited{text-decoration:underline}.factory-bootstrap-430 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-430 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-430 a[href^="javascript:"]:after,.factory-bootstrap-430 a[href^="#"]:after{content:""}.factory-bootstrap-430 blockquote,.factory-bootstrap-430 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-430 thead{display:table-header-group}.factory-bootstrap-430 img,.factory-bootstrap-430 tr{page-break-inside:avoid}.factory-bootstrap-430 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-430 h2,.factory-bootstrap-430 h3,.factory-bootstrap-430 p{orphans:3;widows:3}.factory-bootstrap-430 h2,.factory-bootstrap-430 h3{page-break-after:avoid}.factory-bootstrap-430 select{background:#fff!important}.factory-bootstrap-430 .navbar{display:none}.factory-bootstrap-430 .table td,.factory-bootstrap-430 .table th{background-color:#fff!important}.factory-bootstrap-430 .btn>.caret,.factory-bootstrap-430 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-430 .label{border:1px solid #000}.factory-bootstrap-430 .table{border-collapse:collapse!important}.factory-bootstrap-430 .table-bordered td,.factory-bootstrap-430 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-430 *,.factory-bootstrap-430 :after,.factory-bootstrap-430 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-430{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-430 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-430 button,.factory-bootstrap-430 input,.factory-bootstrap-430 select,.factory-bootstrap-430 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-430 img{vertical-align:middle}.factory-bootstrap-430 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-430 .img-rounded{border-radius:6px}.factory-bootstrap-430 .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-430 .img-circle{border-radius:50%}.factory-bootstrap-430 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-430 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-430 .h1,.factory-bootstrap-430 .h2,.factory-bootstrap-430 .h3,.factory-bootstrap-430 .h4,.factory-bootstrap-430 .h5,.factory-bootstrap-430 .h6,.factory-bootstrap-430 h1,.factory-bootstrap-430 h2,.factory-bootstrap-430 h3,.factory-bootstrap-430 h4,.factory-bootstrap-430 h5,.factory-bootstrap-430 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-430 .h1 .small,.factory-bootstrap-430 .h1 small,.factory-bootstrap-430 .h2 .small,.factory-bootstrap-430 .h2 small,.factory-bootstrap-430 .h3 .small,.factory-bootstrap-430 .h3 small,.factory-bootstrap-430 .h4 .small,.factory-bootstrap-430 .h4 small,.factory-bootstrap-430 .h5 .small,.factory-bootstrap-430 .h5 small,.factory-bootstrap-430 .h6 .small,.factory-bootstrap-430 .h6 small,.factory-bootstrap-430 h1 .small,.factory-bootstrap-430 h1 small,.factory-bootstrap-430 h2 .small,.factory-bootstrap-430 h2 small,.factory-bootstrap-430 h3 .small,.factory-bootstrap-430 h3 small,.factory-bootstrap-430 h4 .small,.factory-bootstrap-430 h4 small,.factory-bootstrap-430 h5 .small,.factory-bootstrap-430 h5 small,.factory-bootstrap-430 h6 .small,.factory-bootstrap-430 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-430 h1,.factory-bootstrap-430 h2,.factory-bootstrap-430 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-430 h1 .small,.factory-bootstrap-430 h1 small,.factory-bootstrap-430 h2 .small,.factory-bootstrap-430 h2 small,.factory-bootstrap-430 h3 .small,.factory-bootstrap-430 h3 small{font-size:65%}.factory-bootstrap-430 h4,.factory-bootstrap-430 h5,.factory-bootstrap-430 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-430 h4 .small,.factory-bootstrap-430 h4 small,.factory-bootstrap-430 h5 .small,.factory-bootstrap-430 h5 small,.factory-bootstrap-430 h6 .small,.factory-bootstrap-430 h6 small{font-size:75%}.factory-bootstrap-430 .h1,.factory-bootstrap-430 h1{font-size:36px}.factory-bootstrap-430 .h2,.factory-bootstrap-430 h2{font-size:30px}.factory-bootstrap-430 .h3,.factory-bootstrap-430 h3{font-size:24px}.factory-bootstrap-430 .h4,.factory-bootstrap-430 h4{font-size:18px}.factory-bootstrap-430 .h5,.factory-bootstrap-430 h5{font-size:14px}.factory-bootstrap-430 .h6,.factory-bootstrap-430 h6{font-size:12px}.factory-bootstrap-430 p{margin:0 0 10px}.factory-bootstrap-430 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-430 .small,.factory-bootstrap-430 small{font-size:85%}.factory-bootstrap-430 cite{font-style:normal}.factory-bootstrap-430 .text-muted{color:#999}.factory-bootstrap-430 .text-primary{color:#428bca}.factory-bootstrap-430 .text-primary:hover{color:#3071a9}.factory-bootstrap-430 .text-warning{color:#8a6d3b}.factory-bootstrap-430 .text-warning:hover{color:#66512c}.factory-bootstrap-430 .text-danger{color:#a94442}.factory-bootstrap-430 .text-danger:hover{color:#843534}.factory-bootstrap-430 .text-success{color:#3c763d}.factory-bootstrap-430 .text-success:hover{color:#2b542c}.factory-bootstrap-430 .text-info{color:#31708f}.factory-bootstrap-430 .text-info:hover{color:#245269}.factory-bootstrap-430 .text-left{text-align:left}.factory-bootstrap-430 .text-right{text-align:right}.factory-bootstrap-430 .text-center{text-align:center}.factory-bootstrap-430 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-430 ol,.factory-bootstrap-430 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-430 ol ol,.factory-bootstrap-430 ol ul,.factory-bootstrap-430 ul ol,.factory-bootstrap-430 ul ul{margin-bottom:0}.factory-bootstrap-430 .list-inline,.factory-bootstrap-430 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-430 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-430 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-430 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-430 dd,.factory-bootstrap-430 dt{line-height:1.428571429}.factory-bootstrap-430 dt{font-weight:700}.factory-bootstrap-430 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-430 abbr[data-original-title],.factory-bootstrap-430 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-430 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-430 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-430 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-430 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-430 blockquote .small,.factory-bootstrap-430 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-430 blockquote .small:before,.factory-bootstrap-430 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-430 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-430 blockquote.pull-right .small,.factory-bootstrap-430 blockquote.pull-right p,.factory-bootstrap-430 blockquote.pull-right small{text-align:right}.factory-bootstrap-430 blockquote.pull-right .small:before,.factory-bootstrap-430 blockquote.pull-right small:before{content:''}.factory-bootstrap-430 blockquote.pull-right .small:after,.factory-bootstrap-430 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-430 blockquote:after,.factory-bootstrap-430 blockquote:before{content:""}.factory-bootstrap-430 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-430 code,.factory-bootstrap-430 kbd,.factory-bootstrap-430 pre,.factory-bootstrap-430 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-430 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-430 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-430 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-430 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-430 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-430 .container:after,.factory-bootstrap-430 .container:before{display:table;content:" "}.factory-bootstrap-430 .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-430 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-430 .row:after,.factory-bootstrap-430 .row:before{display:table;content:" "}.factory-bootstrap-430 .row:after{clear:both}.factory-bootstrap-430 .col-lg-1,.factory-bootstrap-430 .col-lg-10,.factory-bootstrap-430 .col-lg-11,.factory-bootstrap-430 .col-lg-12,.factory-bootstrap-430 .col-lg-2,.factory-bootstrap-430 .col-lg-3,.factory-bootstrap-430 .col-lg-4,.factory-bootstrap-430 .col-lg-5,.factory-bootstrap-430 .col-lg-6,.factory-bootstrap-430 .col-lg-7,.factory-bootstrap-430 .col-lg-8,.factory-bootstrap-430 .col-lg-9,.factory-bootstrap-430 .col-md-1,.factory-bootstrap-430 .col-md-10,.factory-bootstrap-430 .col-md-11,.factory-bootstrap-430 .col-md-12,.factory-bootstrap-430 .col-md-2,.factory-bootstrap-430 .col-md-3,.factory-bootstrap-430 .col-md-4,.factory-bootstrap-430 .col-md-5,.factory-bootstrap-430 .col-md-6,.factory-bootstrap-430 .col-md-7,.factory-bootstrap-430 .col-md-8,.factory-bootstrap-430 .col-md-9,.factory-bootstrap-430 .col-sm-1,.factory-bootstrap-430 .col-sm-10,.factory-bootstrap-430 .col-sm-11,.factory-bootstrap-430 .col-sm-12,.factory-bootstrap-430 .col-sm-2,.factory-bootstrap-430 .col-sm-3,.factory-bootstrap-430 .col-sm-4,.factory-bootstrap-430 .col-sm-5,.factory-bootstrap-430 .col-sm-6,.factory-bootstrap-430 .col-sm-7,.factory-bootstrap-430 .col-sm-8,.factory-bootstrap-430 .col-sm-9,.factory-bootstrap-430 .col-xs-1,.factory-bootstrap-430 .col-xs-10,.factory-bootstrap-430 .col-xs-11,.factory-bootstrap-430 .col-xs-12,.factory-bootstrap-430 .col-xs-2,.factory-bootstrap-430 .col-xs-3,.factory-bootstrap-430 .col-xs-4,.factory-bootstrap-430 .col-xs-5,.factory-bootstrap-430 .col-xs-6,.factory-bootstrap-430 .col-xs-7,.factory-bootstrap-430 .col-xs-8,.factory-bootstrap-430 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-430 .col-xs-1,.factory-bootstrap-430 .col-xs-10,.factory-bootstrap-430 .col-xs-11,.factory-bootstrap-430 .col-xs-12,.factory-bootstrap-430 .col-xs-2,.factory-bootstrap-430 .col-xs-3,.factory-bootstrap-430 .col-xs-4,.factory-bootstrap-430 .col-xs-5,.factory-bootstrap-430 .col-xs-6,.factory-bootstrap-430 .col-xs-7,.factory-bootstrap-430 .col-xs-8,.factory-bootstrap-430 .col-xs-9{float:left}.factory-bootstrap-430 .col-xs-12{width:100%}.factory-bootstrap-430 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-430 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-430 .col-xs-9{width:75%}.factory-bootstrap-430 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-430 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-430 .col-xs-6{width:50%}.factory-bootstrap-430 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-430 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-430 .col-xs-3{width:25%}.factory-bootstrap-430 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-430 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-430 .col-xs-pull-12{right:100%}.factory-bootstrap-430 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-430 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-430 .col-xs-pull-9{right:75%}.factory-bootstrap-430 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-430 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-430 .col-xs-pull-6{right:50%}.factory-bootstrap-430 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-430 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-430 .col-xs-pull-3{right:25%}.factory-bootstrap-430 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-430 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-430 .col-xs-pull-0{right:0}.factory-bootstrap-430 .col-xs-push-12{left:100%}.factory-bootstrap-430 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-430 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-430 .col-xs-push-9{left:75%}.factory-bootstrap-430 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-430 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-430 .col-xs-push-6{left:50%}.factory-bootstrap-430 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-430 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-430 .col-xs-push-3{left:25%}.factory-bootstrap-430 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-430 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-430 .col-xs-push-0{left:0}.factory-bootstrap-430 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-430 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-430 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-430 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-430 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-430 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-430 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-430 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-430 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-430 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-430 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-430 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-430 .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-430 table{max-width:100%;background-color:transparent}.factory-bootstrap-430 th{text-align:left}.factory-bootstrap-430 .table{width:100%;margin-bottom:20px}.factory-bootstrap-430 .table>tbody>tr>td,.factory-bootstrap-430 .table>tbody>tr>th,.factory-bootstrap-430 .table>tfoot>tr>td,.factory-bootstrap-430 .table>tfoot>tr>th,.factory-bootstrap-430 .table>thead>tr>td,.factory-bootstrap-430 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-430 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-430 .table>caption+thead>tr:first-child>td,.factory-bootstrap-430 .table>caption+thead>tr:first-child>th,.factory-bootstrap-430 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-430 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-430 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-430 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-430 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-430 .table .table{background-color:#fff}.factory-bootstrap-430 .table-condensed>tbody>tr>td,.factory-bootstrap-430 .table-condensed>tbody>tr>th,.factory-bootstrap-430 .table-condensed>tfoot>tr>td,.factory-bootstrap-430 .table-condensed>tfoot>tr>th,.factory-bootstrap-430 .table-condensed>thead>tr>td,.factory-bootstrap-430 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-430 .table-bordered,.factory-bootstrap-430 .table-bordered>tbody>tr>td,.factory-bootstrap-430 .table-bordered>tbody>tr>th,.factory-bootstrap-430 .table-bordered>tfoot>tr>td,.factory-bootstrap-430 .table-bordered>tfoot>tr>th,.factory-bootstrap-430 .table-bordered>thead>tr>td,.factory-bootstrap-430 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-430 .table-bordered>thead>tr>td,.factory-bootstrap-430 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-430 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-430 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-430 .table-hover>tbody>tr:hover>td,.factory-bootstrap-430 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-430 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-430 table td[class*=col-],.factory-bootstrap-430 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-430 .table>tbody>.active>td,.factory-bootstrap-430 .table>tbody>.active>th,.factory-bootstrap-430 .table>tbody>tr>.active,.factory-bootstrap-430 .table>tfoot>.active>td,.factory-bootstrap-430 .table>tfoot>.active>th,.factory-bootstrap-430 .table>tfoot>tr>.active,.factory-bootstrap-430 .table>thead>.active>td,.factory-bootstrap-430 .table>thead>.active>th,.factory-bootstrap-430 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-430 .table-hover>tbody>.active:hover>td,.factory-bootstrap-430 .table-hover>tbody>.active:hover>th,.factory-bootstrap-430 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-430 .table>tbody>.success>td,.factory-bootstrap-430 .table>tbody>.success>th,.factory-bootstrap-430 .table>tbody>tr>.success,.factory-bootstrap-430 .table>tfoot>.success>td,.factory-bootstrap-430 .table>tfoot>.success>th,.factory-bootstrap-430 .table>tfoot>tr>.success,.factory-bootstrap-430 .table>thead>.success>td,.factory-bootstrap-430 .table>thead>.success>th,.factory-bootstrap-430 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-430 .table-hover>tbody>.success:hover>td,.factory-bootstrap-430 .table-hover>tbody>.success:hover>th,.factory-bootstrap-430 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-430 .table>tbody>.danger>td,.factory-bootstrap-430 .table>tbody>.danger>th,.factory-bootstrap-430 .table>tbody>tr>.danger,.factory-bootstrap-430 .table>tfoot>.danger>td,.factory-bootstrap-430 .table>tfoot>.danger>th,.factory-bootstrap-430 .table>tfoot>tr>.danger,.factory-bootstrap-430 .table>thead>.danger>td,.factory-bootstrap-430 .table>thead>.danger>th,.factory-bootstrap-430 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-430 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-430 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-430 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-430 .table>tbody>.warning>td,.factory-bootstrap-430 .table>tbody>.warning>th,.factory-bootstrap-430 .table>tbody>tr>.warning,.factory-bootstrap-430 .table>tfoot>.warning>td,.factory-bootstrap-430 .table>tfoot>.warning>th,.factory-bootstrap-430 .table>tfoot>tr>.warning,.factory-bootstrap-430 .table>thead>.warning>td,.factory-bootstrap-430 .table>thead>.warning>th,.factory-bootstrap-430 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-430 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-430 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-430 .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-430 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-430 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-430 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-430 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-430 input[type=checkbox],.factory-bootstrap-430 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-430 input[type=file]{display:block}.factory-bootstrap-430 select[multiple],.factory-bootstrap-430 select[size]{height:auto}.factory-bootstrap-430 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-430 input[type=checkbox]:focus,.factory-bootstrap-430 input[type=file]:focus,.factory-bootstrap-430 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-430 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-430 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-430 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-430 .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-430 .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-430 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-430 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-430 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-430 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-430 .form-control[disabled],.factory-bootstrap-430 .form-control[readonly],.factory-bootstrap-430 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-430 textarea.form-control{height:auto}.factory-bootstrap-430 .form-group{margin-bottom:15px}.factory-bootstrap-430 .checkbox,.factory-bootstrap-430 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-430 .checkbox label,.factory-bootstrap-430 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-430 .checkbox input[type=checkbox],.factory-bootstrap-430 .checkbox-inline input[type=checkbox],.factory-bootstrap-430 .radio input[type=radio],.factory-bootstrap-430 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-430 .checkbox+.checkbox,.factory-bootstrap-430 .radio+.radio{margin-top:-5px}.factory-bootstrap-430 .checkbox-inline,.factory-bootstrap-430 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-430 .checkbox-inline+.checkbox-inline,.factory-bootstrap-430 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-430 .checkbox-inline[disabled],.factory-bootstrap-430 .checkbox[disabled],.factory-bootstrap-430 .radio-inline[disabled],.factory-bootstrap-430 .radio[disabled],.factory-bootstrap-430 fieldset[disabled] .checkbox,.factory-bootstrap-430 fieldset[disabled] .checkbox-inline,.factory-bootstrap-430 fieldset[disabled] .radio,.factory-bootstrap-430 fieldset[disabled] .radio-inline,.factory-bootstrap-430 fieldset[disabled] input[type=checkbox],.factory-bootstrap-430 fieldset[disabled] input[type=radio],.factory-bootstrap-430 input[type=checkbox][disabled],.factory-bootstrap-430 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-430 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-430 textarea.input-sm{height:auto}.factory-bootstrap-430 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-430 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-430 textarea.input-lg{height:auto}.factory-bootstrap-430 .has-warning .checkbox,.factory-bootstrap-430 .has-warning .checkbox-inline,.factory-bootstrap-430 .has-warning .control-label,.factory-bootstrap-430 .has-warning .help-block,.factory-bootstrap-430 .has-warning .radio,.factory-bootstrap-430 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-430 .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-430 .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-430 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-430 .has-error .checkbox,.factory-bootstrap-430 .has-error .checkbox-inline,.factory-bootstrap-430 .has-error .control-label,.factory-bootstrap-430 .has-error .help-block,.factory-bootstrap-430 .has-error .radio,.factory-bootstrap-430 .has-error .radio-inline{color:#a94442}.factory-bootstrap-430 .controls{display:block}.factory-bootstrap-430 .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-430 .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-430 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-430 .has-success .checkbox,.factory-bootstrap-430 .has-success .checkbox-inline,.factory-bootstrap-430 .has-success .control-label,.factory-bootstrap-430 .has-success .help-block,.factory-bootstrap-430 .has-success .radio,.factory-bootstrap-430 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-430 .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-430 .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-430 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-430 .form-control-static{margin-bottom:0}.factory-bootstrap-430 .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-430 .form-horizontal .checkbox,.factory-bootstrap-430 .form-horizontal .checkbox-inline,.factory-bootstrap-430 .form-horizontal .control-label,.factory-bootstrap-430 .form-horizontal .radio,.factory-bootstrap-430 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-430 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-430 .form-horizontal .checkbox,.factory-bootstrap-430 .form-horizontal .radio{min-height:27px}.factory-bootstrap-430 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-430 .form-horizontal .form-group:after,.factory-bootstrap-430 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-430 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-430 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-430 .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-430 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-430 .btn{text-decoration:none}.factory-bootstrap-430 .btn:focus,.factory-bootstrap-430 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-430 .btn.disabled,.factory-bootstrap-430 .btn[disabled],.factory-bootstrap-430 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-430 .btn-default.active,.factory-bootstrap-430 .btn-default:active,.factory-bootstrap-430 .btn-default:focus,.factory-bootstrap-430 .btn-default:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-430 .btn-default.active,.factory-bootstrap-430 .btn-default:active,.factory-bootstrap-430 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-430 .btn-default.disabled,.factory-bootstrap-430 .btn-default.disabled.active,.factory-bootstrap-430 .btn-default.disabled:active,.factory-bootstrap-430 .btn-default.disabled:focus,.factory-bootstrap-430 .btn-default.disabled:hover,.factory-bootstrap-430 .btn-default[disabled],.factory-bootstrap-430 .btn-default[disabled].active,.factory-bootstrap-430 .btn-default[disabled]:active,.factory-bootstrap-430 .btn-default[disabled]:focus,.factory-bootstrap-430 .btn-default[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-default,.factory-bootstrap-430 fieldset[disabled] .btn-default.active,.factory-bootstrap-430 fieldset[disabled] .btn-default:active,.factory-bootstrap-430 fieldset[disabled] .btn-default:focus,.factory-bootstrap-430 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-430 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-430 .btn-primary.active,.factory-bootstrap-430 .btn-primary:active,.factory-bootstrap-430 .btn-primary:focus,.factory-bootstrap-430 .btn-primary:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-430 .btn-primary.active,.factory-bootstrap-430 .btn-primary:active,.factory-bootstrap-430 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-430 .btn-primary.disabled,.factory-bootstrap-430 .btn-primary.disabled.active,.factory-bootstrap-430 .btn-primary.disabled:active,.factory-bootstrap-430 .btn-primary.disabled:focus,.factory-bootstrap-430 .btn-primary.disabled:hover,.factory-bootstrap-430 .btn-primary[disabled],.factory-bootstrap-430 .btn-primary[disabled].active,.factory-bootstrap-430 .btn-primary[disabled]:active,.factory-bootstrap-430 .btn-primary[disabled]:focus,.factory-bootstrap-430 .btn-primary[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-primary,.factory-bootstrap-430 fieldset[disabled] .btn-primary.active,.factory-bootstrap-430 fieldset[disabled] .btn-primary:active,.factory-bootstrap-430 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-430 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-430 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-430 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-430 .btn-warning.active,.factory-bootstrap-430 .btn-warning:active,.factory-bootstrap-430 .btn-warning:focus,.factory-bootstrap-430 .btn-warning:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-430 .btn-warning.active,.factory-bootstrap-430 .btn-warning:active,.factory-bootstrap-430 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-430 .btn-warning.disabled,.factory-bootstrap-430 .btn-warning.disabled.active,.factory-bootstrap-430 .btn-warning.disabled:active,.factory-bootstrap-430 .btn-warning.disabled:focus,.factory-bootstrap-430 .btn-warning.disabled:hover,.factory-bootstrap-430 .btn-warning[disabled],.factory-bootstrap-430 .btn-warning[disabled].active,.factory-bootstrap-430 .btn-warning[disabled]:active,.factory-bootstrap-430 .btn-warning[disabled]:focus,.factory-bootstrap-430 .btn-warning[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-warning,.factory-bootstrap-430 fieldset[disabled] .btn-warning.active,.factory-bootstrap-430 fieldset[disabled] .btn-warning:active,.factory-bootstrap-430 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-430 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-430 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-430 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-430 .btn-success.active,.factory-bootstrap-430 .btn-success:active,.factory-bootstrap-430 .btn-success:focus,.factory-bootstrap-430 .btn-success:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-430 .btn-success.active,.factory-bootstrap-430 .btn-success:active,.factory-bootstrap-430 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-430 .btn-success.disabled,.factory-bootstrap-430 .btn-success.disabled.active,.factory-bootstrap-430 .btn-success.disabled:active,.factory-bootstrap-430 .btn-success.disabled:focus,.factory-bootstrap-430 .btn-success.disabled:hover,.factory-bootstrap-430 .btn-success[disabled],.factory-bootstrap-430 .btn-success[disabled].active,.factory-bootstrap-430 .btn-success[disabled]:active,.factory-bootstrap-430 .btn-success[disabled]:focus,.factory-bootstrap-430 .btn-success[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-success,.factory-bootstrap-430 fieldset[disabled] .btn-success.active,.factory-bootstrap-430 fieldset[disabled] .btn-success:active,.factory-bootstrap-430 fieldset[disabled] .btn-success:focus,.factory-bootstrap-430 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-430 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-430 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-430 .btn-info.active,.factory-bootstrap-430 .btn-info:active,.factory-bootstrap-430 .btn-info:focus,.factory-bootstrap-430 .btn-info:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-430 .btn-info.active,.factory-bootstrap-430 .btn-info:active,.factory-bootstrap-430 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-430 .btn-info.disabled,.factory-bootstrap-430 .btn-info.disabled.active,.factory-bootstrap-430 .btn-info.disabled:active,.factory-bootstrap-430 .btn-info.disabled:focus,.factory-bootstrap-430 .btn-info.disabled:hover,.factory-bootstrap-430 .btn-info[disabled],.factory-bootstrap-430 .btn-info[disabled].active,.factory-bootstrap-430 .btn-info[disabled]:active,.factory-bootstrap-430 .btn-info[disabled]:focus,.factory-bootstrap-430 .btn-info[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-info,.factory-bootstrap-430 fieldset[disabled] .btn-info.active,.factory-bootstrap-430 fieldset[disabled] .btn-info:active,.factory-bootstrap-430 fieldset[disabled] .btn-info:focus,.factory-bootstrap-430 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-430 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-430 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-430 .btn-link,.factory-bootstrap-430 .btn-link:active,.factory-bootstrap-430 .btn-link[disabled],.factory-bootstrap-430 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-430 .btn-link,.factory-bootstrap-430 .btn-link:active,.factory-bootstrap-430 .btn-link:focus,.factory-bootstrap-430 .btn-link:hover{border-color:transparent}.factory-bootstrap-430 .btn-link:focus,.factory-bootstrap-430 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-430 .btn-link[disabled]:focus,.factory-bootstrap-430 .btn-link[disabled]:hover,.factory-bootstrap-430 fieldset[disabled] .btn-link:focus,.factory-bootstrap-430 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-430 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-430 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-430 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-430 input[type=button].btn-block,.factory-bootstrap-430 input[type=reset].btn-block,.factory-bootstrap-430 input[type=submit].btn-block{width:100%}.factory-bootstrap-430 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-430 .fade.in{opacity:1}.factory-bootstrap-430 .collapse{display:none}.factory-bootstrap-430 .collapse.in{display:block}.factory-bootstrap-430 .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-430 .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-430 .glyphicon:empty{width:1em}.factory-bootstrap-430 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-430 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-430 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-430 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-430 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-430 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-430 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-430 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-430 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-430 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-430 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-430 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-430 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-430 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-430 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-430 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-430 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-430 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-430 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-430 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-430 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-430 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-430 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-430 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-430 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-430 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-430 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-430 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-430 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-430 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-430 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-430 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-430 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-430 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-430 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-430 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-430 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-430 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-430 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-430 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-430 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-430 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-430 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-430 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-430 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-430 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-430 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-430 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-430 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-430 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-430 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-430 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-430 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-430 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-430 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-430 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-430 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-430 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-430 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-430 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-430 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-430 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-430 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-430 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-430 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-430 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-430 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-430 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-430 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-430 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-430 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-430 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-430 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-430 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-430 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-430 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-430 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-430 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-430 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-430 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-430 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-430 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-430 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-430 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-430 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-430 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-430 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-430 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-430 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-430 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-430 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-430 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-430 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-430 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-430 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-430 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-430 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-430 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-430 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-430 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-430 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-430 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-430 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-430 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-430 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-430 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-430 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-430 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-430 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-430 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-430 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-430 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-430 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-430 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-430 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-430 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-430 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-430 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-430 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-430 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-430 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-430 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-430 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-430 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-430 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-430 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-430 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-430 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-430 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-430 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-430 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-430 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-430 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-430 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-430 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-430 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-430 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-430 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-430 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-430 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-430 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-430 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-430 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-430 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-430 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-430 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-430 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-430 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-430 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-430 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-430 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-430 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-430 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-430 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-430 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-430 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-430 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-430 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-430 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-430 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-430 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-430 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-430 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-430 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-430 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-430 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-430 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-430 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-430 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-430 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-430 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-430 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-430 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-430 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-430 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-430 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-430 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-430 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-430 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-430 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-430 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-430 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-430 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-430 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-430 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-430 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-430 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-430 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-430 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-430 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-430 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-430 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-430 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-430 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-430 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-430 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-430 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-430 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-430 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-430 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-430 .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-430 .dropdown{position:relative}.factory-bootstrap-430 .dropdown-toggle:focus{outline:0}.factory-bootstrap-430 .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-430 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-430 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-430 .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-430 .dropdown-menu>li>a:focus,.factory-bootstrap-430 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-430 .dropdown-menu>.active>a,.factory-bootstrap-430 .dropdown-menu>.active>a:focus,.factory-bootstrap-430 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-430 .dropdown-menu>.disabled>a,.factory-bootstrap-430 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-430 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-430 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-430 .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-430 .open>.dropdown-menu{display:block}.factory-bootstrap-430 .open>a{outline:0}.factory-bootstrap-430 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-430 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-430 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-430 .dropup .caret,.factory-bootstrap-430 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-430 .dropup .dropdown-menu,.factory-bootstrap-430 .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-430 .btn-group,.factory-bootstrap-430 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-430 .btn-group-vertical>.btn,.factory-bootstrap-430 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-430 .btn-group-vertical>.btn.active,.factory-bootstrap-430 .btn-group-vertical>.btn:active,.factory-bootstrap-430 .btn-group-vertical>.btn:focus,.factory-bootstrap-430 .btn-group-vertical>.btn:hover,.factory-bootstrap-430 .btn-group>.btn.active,.factory-bootstrap-430 .btn-group>.btn:active,.factory-bootstrap-430 .btn-group>.btn:focus,.factory-bootstrap-430 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-430 .btn-group-vertical>.btn:focus,.factory-bootstrap-430 .btn-group>.btn:focus{outline:0}.factory-bootstrap-430 .btn-group .btn+.btn,.factory-bootstrap-430 .btn-group .btn+.btn-group,.factory-bootstrap-430 .btn-group .btn-group+.btn,.factory-bootstrap-430 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-430 .btn-toolbar:after,.factory-bootstrap-430 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-430 .btn-toolbar:after{clear:both}.factory-bootstrap-430 .btn-toolbar .btn-group{float:left}.factory-bootstrap-430 .btn-toolbar>.btn+.btn,.factory-bootstrap-430 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-430 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-430 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-430 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-430 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-430 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-430 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-430 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .btn-group>.btn-group{float:left}.factory-bootstrap-430 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-430 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-430 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-430 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .btn-group .dropdown-toggle:active,.factory-bootstrap-430 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-430 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-430 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-430 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-430 .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-430 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-430 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-430 .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-430 .btn .caret{margin-left:0}.factory-bootstrap-430 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-430 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-430 .btn-group-vertical>.btn,.factory-bootstrap-430 .btn-group-vertical>.btn-group,.factory-bootstrap-430 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-430 .btn-group-vertical>.btn-group:after,.factory-bootstrap-430 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-430 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-430 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-430 .btn-group-vertical>.btn+.btn,.factory-bootstrap-430 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-430 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-430 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-430 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-430 .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-430 .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-430 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-430 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-430 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-430 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-430 .btn-group-justified>.btn,.factory-bootstrap-430 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-430 .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-430 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-430 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-430 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-430 .input-group-lg>.form-control,.factory-bootstrap-430 .input-group-lg>.input-group-addon,.factory-bootstrap-430 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-430 select.input-group-lg>.form-control,.factory-bootstrap-430 select.input-group-lg>.input-group-addon,.factory-bootstrap-430 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-430 textarea.input-group-lg>.form-control,.factory-bootstrap-430 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-430 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-430 .input-group-sm>.form-control,.factory-bootstrap-430 .input-group-sm>.input-group-addon,.factory-bootstrap-430 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-430 select.input-group-sm>.form-control,.factory-bootstrap-430 select.input-group-sm>.input-group-addon,.factory-bootstrap-430 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-430 textarea.input-group-sm>.form-control,.factory-bootstrap-430 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-430 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-430 .input-group .form-control,.factory-bootstrap-430 .input-group-addon,.factory-bootstrap-430 .input-group-btn{display:table-cell}.factory-bootstrap-430 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-430 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-430 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-430 .input-group-addon,.factory-bootstrap-430 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-430 .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-430 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-430 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-430 .input-group-addon input[type=checkbox],.factory-bootstrap-430 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-430 .input-group .form-control:first-child,.factory-bootstrap-430 .input-group-addon:first-child,.factory-bootstrap-430 .input-group-btn:first-child>.btn,.factory-bootstrap-430 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-430 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-430 .input-group-addon:first-child{border-right:0}.factory-bootstrap-430 .input-group .form-control:last-child,.factory-bootstrap-430 .input-group-addon:last-child,.factory-bootstrap-430 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-430 .input-group-btn:last-child>.btn,.factory-bootstrap-430 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .input-group-addon:last-child{border-left:0}.factory-bootstrap-430 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-430 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-430 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-430 .input-group-btn>.btn{position:relative}.factory-bootstrap-430 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-430 .input-group-btn>.btn:active,.factory-bootstrap-430 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-430 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-430 .nav:after,.factory-bootstrap-430 .nav:before{display:table;content:" "}.factory-bootstrap-430 .nav:after{clear:both}.factory-bootstrap-430 .nav>li{position:relative;display:block}.factory-bootstrap-430 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-430 .nav>li>a:focus,.factory-bootstrap-430 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-430 .nav>li.disabled>a{color:#999}.factory-bootstrap-430 .nav>li.disabled>a:focus,.factory-bootstrap-430 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-430 .nav .open>a,.factory-bootstrap-430 .nav .open>a:focus,.factory-bootstrap-430 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-430 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-430 .nav>li>a>img{max-width:none}.factory-bootstrap-430 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-430 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-430 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-430 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-430 .nav-tabs>li.active>a,.factory-bootstrap-430 .nav-tabs>li.active>a:focus,.factory-bootstrap-430 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-430 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-430 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-430 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-430 .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-430 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-430 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-430 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-430 .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-430 .nav-pills>li{float:left}.factory-bootstrap-430 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-430 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-430 .nav-pills>li.active>a,.factory-bootstrap-430 .nav-pills>li.active>a:focus,.factory-bootstrap-430 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-430 .nav-stacked>li{float:none}.factory-bootstrap-430 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-430 .nav-justified{width:100%}.factory-bootstrap-430 .nav-justified>li{float:none}.factory-bootstrap-430 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-430 .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-430 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-430 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-430 .nav-tabs-justified>.active>a,.factory-bootstrap-430 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-430 .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-430 .tab-content>.tab-pane{display:none}.factory-bootstrap-430 .tab-content>.active{display:block}.factory-bootstrap-430 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-430 .navbar:after,.factory-bootstrap-430 .navbar:before{display:table;content:" "}.factory-bootstrap-430 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-430 .navbar-header:after,.factory-bootstrap-430 .navbar-header:before{display:table;content:" "}.factory-bootstrap-430 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-430 .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-430 .navbar-collapse:after,.factory-bootstrap-430 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-430 .navbar-collapse:after{clear:both}.factory-bootstrap-430 .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-430 .container>.navbar-collapse,.factory-bootstrap-430 .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-430 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-430 .navbar-fixed-bottom,.factory-bootstrap-430 .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-430 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-430 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-430 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-430 .navbar-brand:focus,.factory-bootstrap-430 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-430 .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-430 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-430 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-430 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-430 .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-430 .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-430 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-430 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-430 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-430 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-430 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-430 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-430 .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-430 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-430 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-430 .navbar-default .navbar-brand:focus,.factory-bootstrap-430 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-430 .navbar-default .navbar-nav>li>a,.factory-bootstrap-430 .navbar-default .navbar-text{color:#777}.factory-bootstrap-430 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-430 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-430 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-430 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-430 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-430 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-430 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-430 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-430 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-430 .navbar-default .navbar-toggle:focus,.factory-bootstrap-430 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-430 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-430 .navbar-default .navbar-collapse,.factory-bootstrap-430 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-430 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-430 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-430 .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-430 .navbar-default .navbar-link{color:#777}.factory-bootstrap-430 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-430 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-430 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-430 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-430 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-430 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-430 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-430 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-430 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-430 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-430 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-430 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-430 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-430 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-430 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-430 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-430 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-430 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-430 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-430 .navbar-inverse .navbar-collapse,.factory-bootstrap-430 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-430 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-430 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-430 .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-430 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-430 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-430 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-430 .breadcrumb>li{display:inline-block}.factory-bootstrap-430 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-430 .breadcrumb>.active{color:#999}.factory-bootstrap-430 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-430 .pagination>li{display:inline}.factory-bootstrap-430 .pagination>li>a,.factory-bootstrap-430 .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-430 .pagination>li:first-child>a,.factory-bootstrap-430 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-430 .pagination>li:last-child>a,.factory-bootstrap-430 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-430 .pagination>li>a:focus,.factory-bootstrap-430 .pagination>li>a:hover,.factory-bootstrap-430 .pagination>li>span:focus,.factory-bootstrap-430 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-430 .pagination>.disabled>a,.factory-bootstrap-430 .pagination>.disabled>a:focus,.factory-bootstrap-430 .pagination>.disabled>a:hover,.factory-bootstrap-430 .pagination>.disabled>span,.factory-bootstrap-430 .pagination>.disabled>span:focus,.factory-bootstrap-430 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-430 .pagination-lg>li>a,.factory-bootstrap-430 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-430 .pagination-lg>li:first-child>a,.factory-bootstrap-430 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-430 .pagination-lg>li:last-child>a,.factory-bootstrap-430 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-430 .pagination-sm>li>a,.factory-bootstrap-430 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-430 .pagination-sm>li:first-child>a,.factory-bootstrap-430 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-430 .pagination-sm>li:last-child>a,.factory-bootstrap-430 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-430 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-430 .pager:after,.factory-bootstrap-430 .pager:before{display:table;content:" "}.factory-bootstrap-430 .pager:after{clear:both}.factory-bootstrap-430 .pager li{display:inline}.factory-bootstrap-430 .pager li>a,.factory-bootstrap-430 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-430 .pager li>a:focus,.factory-bootstrap-430 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-430 .pager .next>a,.factory-bootstrap-430 .pager .next>span{float:right}.factory-bootstrap-430 .pager .previous>a,.factory-bootstrap-430 .pager .previous>span{float:left}.factory-bootstrap-430 .pager .disabled>a,.factory-bootstrap-430 .pager .disabled>a:focus,.factory-bootstrap-430 .pager .disabled>a:hover,.factory-bootstrap-430 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-430 .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-430 .label[href]:focus,.factory-bootstrap-430 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-430 .label:empty{display:none}.factory-bootstrap-430 .btn .label{position:relative;top:-1px}.factory-bootstrap-430 .label-default{background-color:#999}.factory-bootstrap-430 .label-default[href]:focus,.factory-bootstrap-430 .label-default[href]:hover{background-color:gray}.factory-bootstrap-430 .label-primary{background-color:#428bca}.factory-bootstrap-430 .label-primary[href]:focus,.factory-bootstrap-430 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-430 .label-success{background-color:#5cb85c}.factory-bootstrap-430 .label-success[href]:focus,.factory-bootstrap-430 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-430 .label-info{background-color:#5bc0de}.factory-bootstrap-430 .label-info[href]:focus,.factory-bootstrap-430 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-430 .label-warning{background-color:#f0ad4e}.factory-bootstrap-430 .label-warning[href]:focus,.factory-bootstrap-430 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-430 .label-danger{background-color:#d9534f}.factory-bootstrap-430 .label-danger[href]:focus,.factory-bootstrap-430 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-430 .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-430 .badge:empty{display:none}.factory-bootstrap-430 .btn .badge{position:relative;top:-1px}.factory-bootstrap-430 a.badge:focus,.factory-bootstrap-430 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-430 .nav-pills>.active>a>.badge,.factory-bootstrap-430 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-430 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-430 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-430 .jumbotron .h1,.factory-bootstrap-430 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-430 .jumbotron p{line-height:1.4}.factory-bootstrap-430 .container .jumbotron{border-radius:6px}.factory-bootstrap-430 .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-430 .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-430 .thumbnail a>img,.factory-bootstrap-430 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-430 a.thumbnail.active,.factory-bootstrap-430 a.thumbnail:focus,.factory-bootstrap-430 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-430 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-430 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-430 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-430 .alert .alert-link{font-weight:700}.factory-bootstrap-430 .alert>p,.factory-bootstrap-430 .alert>ul{margin-bottom:0}.factory-bootstrap-430 .alert>p+p{margin-top:5px}.factory-bootstrap-430 .alert-dismissable{padding-right:35px}.factory-bootstrap-430 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-430 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-430 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-430 .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-430 .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-430 .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-430 .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-430 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-430 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-430 .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-430 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-430 .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-430 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-430 .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-430 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-430 .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-430 .media,.factory-bootstrap-430 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-430 .media,.factory-bootstrap-430 .media .media{margin-top:15px}.factory-bootstrap-430 .media:first-child{margin-top:0}.factory-bootstrap-430 .media-object{display:block}.factory-bootstrap-430 .media-heading{margin:0 0 5px}.factory-bootstrap-430 .media>.pull-left{margin-right:10px}.factory-bootstrap-430 .media>.pull-right{margin-left:10px}.factory-bootstrap-430 .media-list{padding-left:0;list-style:none}.factory-bootstrap-430 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-430 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-430 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-430 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-430 .list-group-item>.badge{float:right}.factory-bootstrap-430 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-430 a.list-group-item{color:#555}.factory-bootstrap-430 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-430 a.list-group-item:focus,.factory-bootstrap-430 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-430 a.list-group-item.active,.factory-bootstrap-430 a.list-group-item.active:focus,.factory-bootstrap-430 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-430 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-430 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-430 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-430 a.list-group-item.active .list-group-item-text,.factory-bootstrap-430 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-430 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-430 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-430 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-430 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-430 .panel-body{padding:15px}.factory-bootstrap-430 .panel-body:after,.factory-bootstrap-430 .panel-body:before{display:table;content:" "}.factory-bootstrap-430 .panel-body:after{clear:both}.factory-bootstrap-430 .panel>.list-group{margin-bottom:0}.factory-bootstrap-430 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-430 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-430 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-430 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-430 .panel>.table,.factory-bootstrap-430 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-430 .panel>.panel-body+.table,.factory-bootstrap-430 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-430 .panel>.table>tbody:first-child td,.factory-bootstrap-430 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-430 .panel>.table-bordered,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-430 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-430 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-430 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-430 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-430 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-430 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-430 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-430 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-430 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-430 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-430 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-430 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-430 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-430 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-430 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-430 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-430 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-430 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-430 .panel-title>a{color:inherit}.factory-bootstrap-430 .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-430 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-430 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-430 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-430 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-430 .panel-group .panel-footer{border-top:0}.factory-bootstrap-430 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-430 .panel-default{border-color:#ddd}.factory-bootstrap-430 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-430 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-430 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-430 .panel-primary{border-color:#428bca}.factory-bootstrap-430 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-430 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-430 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-430 .panel-success{border-color:#d6e9c6}.factory-bootstrap-430 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-430 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-430 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-430 .panel-warning{border-color:#faebcc}.factory-bootstrap-430 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-430 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-430 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-430 .panel-danger{border-color:#ebccd1}.factory-bootstrap-430 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-430 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-430 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-430 .panel-info{border-color:#bce8f1}.factory-bootstrap-430 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-430 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-430 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-430 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-430 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-430 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-430 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-430 .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-430 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-430 .close:focus,.factory-bootstrap-430 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-430 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-430 .modal-open{overflow:hidden}.factory-bootstrap-430 .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-430 .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-430 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-430 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-430 .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-430 .modal-backdrop,.factory-bootstrap-430-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-430 .modal-backdrop.fade,.factory-bootstrap-430-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-430 .modal-backdrop.in,.factory-bootstrap-430-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-430 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-430 .modal-header .close{margin-top:-2px}.factory-bootstrap-430 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-430 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-430 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-430 .modal-footer:after,.factory-bootstrap-430 .modal-footer:before{display:table;content:" "}.factory-bootstrap-430 .modal-footer:after{clear:both}.factory-bootstrap-430 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-430 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-430 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-430 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-430 .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-430 .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-430 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-430 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-430 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-430 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-430 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-430 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-430 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-430 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-430 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-430 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-430 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-430 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-430 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-430 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-430 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-430 .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-430 .popover.top{margin-top:-10px}.factory-bootstrap-430 .popover.right{margin-left:10px}.factory-bootstrap-430 .popover.bottom{margin-top:10px}.factory-bootstrap-430 .popover.left{margin-left:-10px}.factory-bootstrap-430 .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-430 .popover-content{padding:9px 14px}.factory-bootstrap-430 .popover .arrow,.factory-bootstrap-430 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-430 .popover .arrow{border-width:11px}.factory-bootstrap-430 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-430 .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-430 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-430 .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-430 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-430 .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-430 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-430 .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-430 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-430 .carousel{position:relative}.factory-bootstrap-430 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-430 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-430 .carousel-inner>.item>a>img,.factory-bootstrap-430 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-430 .carousel-inner>.active,.factory-bootstrap-430 .carousel-inner>.next,.factory-bootstrap-430 .carousel-inner>.prev{display:block}.factory-bootstrap-430 .carousel-inner>.active{left:0}.factory-bootstrap-430 .carousel-inner>.next,.factory-bootstrap-430 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-430 .carousel-inner>.next{left:100%}.factory-bootstrap-430 .carousel-inner>.prev{left:-100%}.factory-bootstrap-430 .carousel-inner>.next.left,.factory-bootstrap-430 .carousel-inner>.prev.right{left:0}.factory-bootstrap-430 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-430 .carousel-inner>.active.right{left:100%}.factory-bootstrap-430 .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-430 .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-430 .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-430 .carousel-control:focus,.factory-bootstrap-430 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-430 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-430 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-430 .carousel-control .icon-next,.factory-bootstrap-430 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-430 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-430 .carousel-control .icon-prev{left:50%}.factory-bootstrap-430 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-430 .carousel-control .icon-next{right:50%}.factory-bootstrap-430 .carousel-control .icon-next,.factory-bootstrap-430 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-430 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-430 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-430 .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-430 .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-430 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-430 .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-430 .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-430 .clearfix:after,.factory-bootstrap-430 .clearfix:before{display:table;content:" "}.factory-bootstrap-430 .clearfix:after{clear:both}.factory-bootstrap-430 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-430 .pull-right{float:right!important}.factory-bootstrap-430 .pull-left{float:left!important}.factory-bootstrap-430 .hide{display:none!important}.factory-bootstrap-430 .show{display:block!important}.factory-bootstrap-430 .invisible{visibility:hidden}.factory-bootstrap-430 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-430 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-430 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-430 .visible-lg,.factory-bootstrap-430 .visible-md,.factory-bootstrap-430 .visible-sm,.factory-bootstrap-430 .visible-xs,.factory-bootstrap-430 td.visible-lg,.factory-bootstrap-430 td.visible-md,.factory-bootstrap-430 td.visible-sm,.factory-bootstrap-430 td.visible-xs,.factory-bootstrap-430 th.visible-lg,.factory-bootstrap-430 th.visible-md,.factory-bootstrap-430 th.visible-sm,.factory-bootstrap-430 th.visible-xs,.factory-bootstrap-430 tr.visible-lg,.factory-bootstrap-430 tr.visible-md,.factory-bootstrap-430 tr.visible-sm,.factory-bootstrap-430 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-430 .hidden-xs{display:block!important}.factory-bootstrap-430 table.hidden-xs{display:table}.factory-bootstrap-430 tr.hidden-xs{display:table-row!important}.factory-bootstrap-430 td.hidden-xs,.factory-bootstrap-430 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-430 .hidden-sm{display:block!important}.factory-bootstrap-430 table.hidden-sm{display:table}.factory-bootstrap-430 tr.hidden-sm{display:table-row!important}.factory-bootstrap-430 td.hidden-sm,.factory-bootstrap-430 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-430 .hidden-md{display:block!important}.factory-bootstrap-430 table.hidden-md{display:table}.factory-bootstrap-430 tr.hidden-md{display:table-row!important}.factory-bootstrap-430 td.hidden-md,.factory-bootstrap-430 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-430 .hidden-lg{display:block!important}.factory-bootstrap-430 table.hidden-lg{display:table}.factory-bootstrap-430 tr.hidden-lg{display:table-row!important}.factory-bootstrap-430 td.hidden-lg,.factory-bootstrap-430 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-430 .hidden-lg.hidden-xs,.factory-bootstrap-430 td.hidden-lg.hidden-xs,.factory-bootstrap-430 th.hidden-lg.hidden-xs,.factory-bootstrap-430 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-430 .hidden-lg.hidden-sm,.factory-bootstrap-430 td.hidden-lg.hidden-sm,.factory-bootstrap-430 th.hidden-lg.hidden-sm,.factory-bootstrap-430 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-430 .hidden-lg.hidden-md,.factory-bootstrap-430 td.hidden-lg.hidden-md,.factory-bootstrap-430 th.hidden-lg.hidden-md,.factory-bootstrap-430 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-430 .hidden-lg,.factory-bootstrap-430 td.hidden-lg,.factory-bootstrap-430 th.hidden-lg,.factory-bootstrap-430 tr.hidden-lg{display:none!important}}.factory-bootstrap-430 .visible-print,.factory-bootstrap-430 td.visible-print,.factory-bootstrap-430 th.visible-print,.factory-bootstrap-430 tr.visible-print{display:none!important}@media print{.factory-bootstrap-430 .visible-print{display:block!important}.factory-bootstrap-430 table.visible-print{display:table}.factory-bootstrap-430 tr.visible-print{display:table-row!important}.factory-bootstrap-430 td.visible-print,.factory-bootstrap-430 th.visible-print{display:table-cell!important}.factory-bootstrap-430 .hidden-print,.factory-bootstrap-430 td.hidden-print,.factory-bootstrap-430 th.hidden-print,.factory-bootstrap-430 tr.hidden-print{display:none!important}}/*!
|
12 |
* Factory Default Bootstrap Theme
|
13 |
*
|
14 |
* The code is based on Bootstrap v2.1.1
|
22 |
*
|
23 |
* @package factory-bootstrap
|
24 |
* @since 1.0.0
|
25 |
+
*/.factory-bootstrap-430 .btn-danger,.factory-bootstrap-430 .btn-default,.factory-bootstrap-430 .btn-info,.factory-bootstrap-430 .btn-primary,.factory-bootstrap-430 .btn-success,.factory-bootstrap-430 .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-430 .btn-danger.active,.factory-bootstrap-430 .btn-danger:active,.factory-bootstrap-430 .btn-default.active,.factory-bootstrap-430 .btn-default:active,.factory-bootstrap-430 .btn-info.active,.factory-bootstrap-430 .btn-info:active,.factory-bootstrap-430 .btn-primary.active,.factory-bootstrap-430 .btn-primary:active,.factory-bootstrap-430 .btn-success.active,.factory-bootstrap-430 .btn-success:active,.factory-bootstrap-430 .btn-warning.active,.factory-bootstrap-430 .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-430 .btn.active,.factory-bootstrap-430 .btn:active{background-image:none}.factory-bootstrap-430 .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-430 .btn-default.active,.factory-bootstrap-430 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-430 .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-430 .btn-gold:focus,.factory-bootstrap-430 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-430 .btn-gold.active,.factory-bootstrap-430 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .btn-primary.active,.factory-bootstrap-430 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-430 .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-430 .btn-success:focus,.factory-bootstrap-430 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-430 .btn-success.active,.factory-bootstrap-430 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-430 .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-430 .btn-warning:focus,.factory-bootstrap-430 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-430 .btn-warning.active,.factory-bootstrap-430 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-430 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-430 .btn-danger.active,.factory-bootstrap-430 .btn-danger:active,.factory-bootstrap-430 .btn-danger:focus,.factory-bootstrap-430 .btn-danger:hover,.factory-bootstrap-430 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-430 .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-430 .btn-info:focus,.factory-bootstrap-430 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-430 .btn-info.active,.factory-bootstrap-430 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-430 .img-thumbnail,.factory-bootstrap-430 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-430 .dropdown-menu>li>a:focus,.factory-bootstrap-430 .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-430 .dropdown-menu>.active>a,.factory-bootstrap-430 .dropdown-menu>.active>a:focus,.factory-bootstrap-430 .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-430 .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-430 .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-430 .navbar-brand,.factory-bootstrap-430 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-430 .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-430 .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-430 .navbar-inverse .navbar-brand,.factory-bootstrap-430 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-430 .navbar-fixed-bottom,.factory-bootstrap-430 .navbar-fixed-top,.factory-bootstrap-430 .navbar-static-top{border-radius:0}.factory-bootstrap-430 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-430 .alert .actions{padding-top:10px}.factory-bootstrap-430 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-430 .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-430 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-430 .alert-normal,.factory-bootstrap-430 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-430 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-430 .alert-danger a:not(.btn),.factory-bootstrap-430 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .list-group-item.active,.factory-bootstrap-430 .list-group-item.active:focus,.factory-bootstrap-430 .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-430 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-430 .factory-hidden{display:none}.factory-bootstrap-430 .factory-ajax-loader{width:25px;height:25px;background:url(../assets/images/loader-sm-tr.gif)}.factory-control-error{background-color:rgba(0,0,0,.8);white-space:normal;z-index:10;font-weight:400;line-height:150%;border-radius:4px;color:#fff;font-size:13px;margin-top:5px;padding:4px 10px 3px;max-width:500px;display:inline-block}.factory-control-error i{margin:0 7px 0 1px}
|
libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
|
libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-430 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-430 .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-430 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-430 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-430 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-430 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-430 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-430 .factory-form-group legend+.control-group{margin-top:0}
|
libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
|
libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
|
libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
|
libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
|
libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .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-430 .btn-primary:focus,.factory-bootstrap-430 .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-430 .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-430 .btn-primary:disabled,.factory-bootstrap-430 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-430 .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-430 .pagination>.active>a,.factory-bootstrap-430 .pagination>.active>a:focus,.factory-bootstrap-430 .pagination>.active>a:hover,.factory-bootstrap-430 .pagination>.active>span,.factory-bootstrap-430 .pagination>.active>span:focus,.factory-bootstrap-430 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
|
libs/factory/bootstrap/assets/css-min/control.checkbox.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
#side-sortables .factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
#side-sortables .factory-bootstrap-430 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-430 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-430 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-430 .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-430 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-430 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .factory-buttons-way .factory-on.active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}
|
libs/factory/bootstrap/assets/css-min/control.dropdown.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-430 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-430 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .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-430 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-430 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-430 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-430 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
|
libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-430 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-430 .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-430 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-430 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-430 .factory-mtextbox-add-item{display:block;margin-top:10px}
|
libs/factory/bootstrap/assets/css-min/holder.more-link.min.css
CHANGED
@@ -8,4 +8,4 @@
|
|
8 |
*/
|
9 |
|
10 |
|
11 |
-
.factory-bootstrap-
|
8 |
*/
|
9 |
|
10 |
|
11 |
+
.factory-bootstrap-430 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-430 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-430 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-430 .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-430 .factory-tab .factory-more-link-hide:hover{color:#999}
|
libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js
CHANGED
@@ -7,4 +7,4 @@
|
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
-
+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=factory-dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}},a.fn.
|
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.factoryBootstrap430_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.factoryBootstrap430_dropdown.Constructor=f,a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(jQuery);
|
libs/factory/bootstrap/assets/js-min/control.checkbox.min.js
CHANGED
@@ -7,4 +7,4 @@
|
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
-
!function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.attr("checked","checked"),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.removeAttr("checked"),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&(console.log(l[m]),a(m).val(l[m]))}}}},this.executeEvents(this.$result)};a.fn.
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
+
!function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.attr("checked","checked"),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.removeAttr("checked"),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&(console.log(l[m]),a(m).val(l[m]))}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap430_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.factoryBootstrap430_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-430 .factory-checkbox.factory-buttons-way").factoryBootstrap430_checkboxControl()})}(jQuery);
|
libs/factory/bootstrap/assets/js-min/control.dropdown.min.js
CHANGED
@@ -7,4 +7,4 @@
|
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
-
!function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name")||this.$element.attr("name"),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){void 0!==window.factory_dropdown_control_events_data&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.val(),f=window.factory_dropdown_control_events_data[d];if(f&&f[e]){var g;void 0===window.__factory_dropdown_control_detach_elements&&(window.__factory_dropdown_control_detach_elements={}),g=window.__factory_dropdown_control_detach_elements;for(var h in f[e])if(f[e].hasOwnProperty(h)){var i,j=f[e][h];switch(a.isArray(j)||(i=c.hashCode(d+j)),h){case"hide":"string"==typeof j&&a(j).hide(0);break;case"show":"string"==typeof j&&a(j).fadeIn(200);break;case"detach":"string"==typeof j&&a(j).each(function(b){g[i]||(g[i]={}),g[i][b]||(g[i][b]={}),g[i][b].recovery_contanier=a(this).parent(),g[i][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(g[i]){for(var k in g[i])g[i].hasOwnProperty(k)&&g[i][k].recovery_contanier&&g[i][k].element&&g[i][k].recovery_contanier.append(g[i][k].element);delete g[i]}break;case"removeClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).removeClass(j[l]);break;case"addClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).addClass(j[l])}}}},"buttons"===this.way)this.$result=this.$element.find(".factory-result"),this.$hints=this.$element.find(".factory-hints"),this.$buttons=this.$element.find(".btn"),c.executeEvents(this.$result),this.$buttons.click(function(){var b=a(this).data("value");return c.$buttons.removeClass("active"),a(this).addClass("active"),c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+b).fadeIn(),c.$result.val(b),c.$result.trigger("change"),!1});else if("ddslick"===this.way){c.executeEvents(c.$element.find(".factory-result"));var d=window["factory_"+this.name+"_data"],e=this.$element.find(".factory-ddslick"),f=this.$element.data("width")||300,g=this.$element.data("align")||"right";a(d).each(function(){return this.imageHoverSrc?void(a("<img/>")[0].src=this.imageHoverSrc):!0}),e.ddslick({data:d,width:f,imagePosition:g,selectText:"- select -",onSelected:function(a){a.selectedData.imageHoverSrc&&c.$element.find(".dd-selected-image").attr("src",a.selectedData.imageHoverSrc);var b=c.$element.find(".factory-result").val(a.selectedData.value);b.change()}})}else{c.executeEvents(this.$element),this.$hints=this.$element.next(),this.$hints.hasClass("factory-hints")&&(this.$element.change(function(){return c.updateHints(),!1}),this.updateHints=function(){var a=c.$element.val();c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+a).show()},c.updateHints()),this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(a){console&&console.log&&console.log(a.responseText),c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length)for(var d in a){var e=a[d];c.addListItem(e)}else this.$element.append("<option>"+b.emptyList+"</li>");this.$element.trigger("factory-loaded")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<option />").attr("value",b.value).text(b.title).appendTo(this.$element),e=c.getAjaxData();e.selected&&e.selected==b.value&&d.attr("selected","selected")},this.showError=function(b){this.clearList();var d=a("<div class='factory-control-error'></div>").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),e=c.getAjaxData();this.$element.append("<option>"+e.emptyList+"</li>"),this.$element.after(d),this.$element.addClass("factory-has-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var h=this.$element.data("ajax");h&&this.loadData()}};a.fn.
|
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.factoryBootstrap430_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.factoryBootstrap430_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-430 .factory-dropdown").factoryBootstrap430_dropdownControl()})}(jQuery);
|
libs/factory/bootstrap/assets/js-min/control.list.min.js
CHANGED
@@ -7,4 +7,4 @@
|
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
-
!function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name"),"checklist"===this.way){this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(){c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length){this.$element.removeClass("factory-empty");for(var d in a){var e=a[d];c.addListItem(e)}}else this.$element.addClass("factory-empty"),this.$element.append("<li>"+b.emptyList+"</li>")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<li>"),e=a("<label>").attr("for","factory-checklist-"+c.name+"-"+b.value).appendTo(d),f=a("<span>").appendTo(e),g=a("<input />").attr("type","checkbox").attr("name",c.name+"[]").val(b.value).attr("id","factory-checklist-"+c.name+"-"+b.value).appendTo(f),h=(a("<span>"+b.title+"</span>").appendTo(e),c.getAjaxData());h.selected.length&&a.inArray(b.value,h.selected)>=0&&g.attr("checked","checked"),this.$element.append(d)},this.showError=function(b){this.$element.html("").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),this.$element.addClass("factory-list-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var d=this.$element.data("ajax");d&&this.loadData()}};a.fn.
|
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.factoryBootstrap430_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.factoryBootstrap430_listControl.Constructor=b,a(function(){a(".factory-bootstrap-430 .factory-list").factoryBootstrap430_listControl()})}(jQuery);
|
libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js
CHANGED
@@ -7,4 +7,4 @@
|
|
7 |
* Support: http://webcraftic.com/contact-us/
|
8 |
*/
|
9 |
|
10 |
-
!function(a){"use strict";var b=function(b){this.$element=a(b);var c=a(".factory-mtextbox-item",this.$element).eq(0).clone(!0);a(".factory-mtextbox-add-item",this.$element).on("click",function(){var b=a(this).closest(".factory-multiple-textbox-group").find(".factory-mtextbox-items"),d=c.clone(!0),e=a('<button class="btn btn-default btn-small factory-mtextbox-remove-item"><i class="fa fa-times" aria-hidden="true"></i></button>');return b.append(d.append(e)),d.find('input[type="text"]').val("").focus(),!1}),a(document).on("click",".factory-mtextbox-remove-item",function(){return a(this).closest(".factory-mtextbox-item").remove(),!1})};a.fn.
|
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.factoryBootstrap430_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-430 .factory-multiple-textbox-group").factoryBootstrap430_MultipleTextboxControl()})}(jQuery);
|
libs/factory/bootstrap/boot.php
CHANGED
@@ -19,27 +19,27 @@ if( !is_admin() ) {
|
|
19 |
return;
|
20 |
}
|
21 |
|
22 |
-
if( defined('
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
-
define('
|
27 |
-
define('
|
28 |
|
29 |
if( !defined('FACTORY_FLAT_ADMIN') ) {
|
30 |
define('FACTORY_FLAT_ADMIN', true);
|
31 |
}
|
32 |
|
33 |
-
define('
|
34 |
-
define('
|
35 |
|
36 |
-
require_once(
|
37 |
|
38 |
/**
|
39 |
-
* @param
|
40 |
*/
|
41 |
-
add_action('
|
42 |
-
$manager = new
|
43 |
$plugin->setBootstap($manager);
|
44 |
});
|
45 |
|
19 |
return;
|
20 |
}
|
21 |
|
22 |
+
if( defined('FACTORY_BOOTSTRAP_430_LOADED') ) {
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
+
define('FACTORY_BOOTSTRAP_430_VERSION', '4.3.0');
|
27 |
+
define('FACTORY_BOOTSTRAP_430_LOADED', true);
|
28 |
|
29 |
if( !defined('FACTORY_FLAT_ADMIN') ) {
|
30 |
define('FACTORY_FLAT_ADMIN', true);
|
31 |
}
|
32 |
|
33 |
+
define('FACTORY_BOOTSTRAP_430_DIR', dirname(__FILE__));
|
34 |
+
define('FACTORY_BOOTSTRAP_430_URL', plugins_url(null, __FILE__));
|
35 |
|
36 |
+
require_once(FACTORY_BOOTSTRAP_430_DIR . '/includes/functions.php');
|
37 |
|
38 |
/**
|
39 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
40 |
*/
|
41 |
+
add_action('wbcr_factory_bootstrap_430_plugin_created', function ($plugin) {
|
42 |
+
$manager = new Wbcr_FactoryBootstrap430_Manager($plugin);
|
43 |
$plugin->setBootstap($manager);
|
44 |
});
|
45 |
|
libs/factory/bootstrap/includes/functions.php
CHANGED
@@ -20,13 +20,13 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
20 |
*
|
21 |
* @since 3.2.0
|
22 |
*/
|
23 |
-
class
|
24 |
|
25 |
/**
|
26 |
* A plugin for which the manager was created.
|
27 |
*
|
28 |
* @since 3.2.0
|
29 |
-
* @var
|
30 |
*/
|
31 |
public $plugin;
|
32 |
|
@@ -51,7 +51,7 @@ class Wbcr_FactoryBootstrap429_Manager {
|
|
51 |
*
|
52 |
* @since 1.0.0
|
53 |
*/
|
54 |
-
public function __construct(
|
55 |
$this->plugin = $plugin;
|
56 |
|
57 |
add_action( 'admin_enqueue_scripts', [ $this, 'loadAssets' ] );
|
@@ -111,8 +111,8 @@ class Wbcr_FactoryBootstrap429_Manager {
|
|
111 |
*/
|
112 |
public function loadAssets( $hook ) {
|
113 |
|
114 |
-
do_action( '
|
115 |
-
do_action( '
|
116 |
|
117 |
$dependencies = [];
|
118 |
if ( ! empty( $this->scripts ) ) {
|
@@ -156,8 +156,8 @@ class Wbcr_FactoryBootstrap429_Manager {
|
|
156 |
$cache_enable = apply_filters( 'wbcr/factory/bootstrap/cache_enable', true );
|
157 |
|
158 |
$cache_id = md5( implode( ',', $this->scripts ) . $type . $this->plugin->getPluginVersion() );
|
159 |
-
$cache_dir_path =
|
160 |
-
$cache_dir_url =
|
161 |
|
162 |
$cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
|
163 |
$cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
|
@@ -184,7 +184,7 @@ class Wbcr_FactoryBootstrap429_Manager {
|
|
184 |
foreach ( $scripts as $script_to_load ) {
|
185 |
$script_to_load = sanitize_text_field( $script_to_load );
|
186 |
if ( $cache_enable && $cache_dir_exists ) {
|
187 |
-
$fname =
|
188 |
if ( file_exists( $fname ) ) {
|
189 |
$f = @fopen( $fname, 'r' );
|
190 |
$concat_files[] = @fread( $f, filesize( $fname ) );
|
@@ -192,9 +192,9 @@ class Wbcr_FactoryBootstrap429_Manager {
|
|
192 |
}
|
193 |
} else {
|
194 |
if ( $type == 'js' ) {
|
195 |
-
wp_enqueue_script( md5( $script_to_load ),
|
196 |
} else {
|
197 |
-
wp_enqueue_style( md5( $script_to_load ),
|
198 |
}
|
199 |
$is_first = false;
|
200 |
}
|
20 |
*
|
21 |
* @since 3.2.0
|
22 |
*/
|
23 |
+
class Wbcr_FactoryBootstrap430_Manager {
|
24 |
|
25 |
/**
|
26 |
* A plugin for which the manager was created.
|
27 |
*
|
28 |
* @since 3.2.0
|
29 |
+
* @var Wbcr_Factory429_Plugin
|
30 |
*/
|
31 |
public $plugin;
|
32 |
|
51 |
*
|
52 |
* @since 1.0.0
|
53 |
*/
|
54 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
55 |
$this->plugin = $plugin;
|
56 |
|
57 |
add_action( 'admin_enqueue_scripts', [ $this, 'loadAssets' ] );
|
111 |
*/
|
112 |
public function loadAssets( $hook ) {
|
113 |
|
114 |
+
do_action( 'wbcr_factory_429_bootstrap_enqueue_scripts', $hook );
|
115 |
+
do_action( 'wbcr_factory_429_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook );
|
116 |
|
117 |
$dependencies = [];
|
118 |
if ( ! empty( $this->scripts ) ) {
|
156 |
$cache_enable = apply_filters( 'wbcr/factory/bootstrap/cache_enable', true );
|
157 |
|
158 |
$cache_id = md5( implode( ',', $this->scripts ) . $type . $this->plugin->getPluginVersion() );
|
159 |
+
$cache_dir_path = FACTORY_BOOTSTRAP_430_DIR . '/assets/cache/';
|
160 |
+
$cache_dir_url = FACTORY_BOOTSTRAP_430_URL . '/assets/cache/';
|
161 |
|
162 |
$cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
|
163 |
$cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
|
184 |
foreach ( $scripts as $script_to_load ) {
|
185 |
$script_to_load = sanitize_text_field( $script_to_load );
|
186 |
if ( $cache_enable && $cache_dir_exists ) {
|
187 |
+
$fname = FACTORY_BOOTSTRAP_430_DIR . "/assets/$type-min/$script_to_load.min." . $type;
|
188 |
if ( file_exists( $fname ) ) {
|
189 |
$f = @fopen( $fname, 'r' );
|
190 |
$concat_files[] = @fread( $f, filesize( $fname ) );
|
192 |
}
|
193 |
} else {
|
194 |
if ( $type == 'js' ) {
|
195 |
+
wp_enqueue_script( md5( $script_to_load ), FACTORY_BOOTSTRAP_430_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_430_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion() );
|
198 |
}
|
199 |
$is_first = false;
|
200 |
}
|
libs/factory/clearfy/assets/css/clearfy-base.css
CHANGED
@@ -5,18 +5,18 @@
|
|
5 |
* @copyright Webcraftic 06.10.2018
|
6 |
* @sicne 2.0.5
|
7 |
*/
|
8 |
-
#WBCR .wbcr-factory-pages-
|
9 |
padding: 30px 80px;
|
10 |
}
|
11 |
-
#WBCR .wbcr-factory-pages-
|
12 |
margin: 0 0 20px;
|
13 |
}
|
14 |
-
#WBCR .wbcr-factory-pages-
|
15 |
border: 2px dashed #8bc34a;
|
16 |
background: #fff;
|
17 |
padding: 20px;
|
18 |
}
|
19 |
-
#WBCR .wbcr-factory-pages-
|
20 |
display: inline-block;
|
21 |
cursor: pointer;
|
22 |
line-height: 16px;
|
@@ -35,16 +35,16 @@
|
|
35 |
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
36 |
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
37 |
}
|
38 |
-
#WBCR .wbcr-factory-pages-
|
39 |
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
40 |
-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
41 |
-webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
42 |
}
|
43 |
-
#WBCR .wbcr-factory-pages-
|
44 |
outline: none;
|
45 |
border: 0;
|
46 |
}
|
47 |
-
#WBCR .wbcr-factory-pages-
|
48 |
display: inline-block;
|
49 |
cursor: pointer;
|
50 |
line-height: 16px;
|
@@ -63,22 +63,22 @@
|
|
63 |
-moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
|
64 |
-webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
|
65 |
}
|
66 |
-
#WBCR .wbcr-factory-pages-
|
67 |
box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
68 |
-moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
69 |
-webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
70 |
}
|
71 |
-
#WBCR .wbcr-factory-pages-
|
72 |
outline: none;
|
73 |
border: 0;
|
74 |
}
|
75 |
-
#WBCR .wbcr-factory-pages-
|
76 |
background: #fff;
|
77 |
color: #353535;
|
78 |
font-weight: 600;
|
79 |
border: 2px dashed #8bc34a;
|
80 |
}
|
81 |
-
#WBCR .wbcr-factory-pages-
|
82 |
margin: 0 0 20px;
|
83 |
padding: 10px 0;
|
84 |
text-align: center;
|
@@ -89,16 +89,16 @@
|
|
89 |
vertical-align: middle;
|
90 |
text-transform: uppercase;
|
91 |
}
|
92 |
-
#WBCR .wbcr-factory-pages-
|
93 |
position: relative;
|
94 |
margin-bottom: 20px;
|
95 |
}
|
96 |
-
#WBCR .wbcr-factory-pages-
|
97 |
font-size: 15px;
|
98 |
padding: 7px;
|
99 |
padding-left: 20px;
|
100 |
}
|
101 |
-
#WBCR .wbcr-factory-pages-
|
102 |
content: " ";
|
103 |
display: inline-block;
|
104 |
width: 0.4em;
|
@@ -112,7 +112,7 @@
|
|
112 |
-o-transform: rotate(45deg);
|
113 |
transform: rotate(45deg);
|
114 |
}
|
115 |
-
#WBCR .wbcr-factory-pages-
|
116 |
display: block;
|
117 |
cursor: pointer;
|
118 |
line-height: 16px;
|
@@ -131,44 +131,44 @@
|
|
131 |
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
132 |
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
133 |
}
|
134 |
-
#WBCR .wbcr-factory-pages-
|
135 |
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
136 |
-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
137 |
-webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
138 |
}
|
139 |
-
#WBCR .wbcr-factory-pages-
|
140 |
outline: none;
|
141 |
border: 0;
|
142 |
}
|
143 |
@media screen and (max-width: 1550px) {
|
144 |
-
#WBCR .wbcr-factory-pages-
|
145 |
padding: 10px 80px;
|
146 |
}
|
147 |
-
#WBCR .wbcr-factory-pages-
|
148 |
padding: 10px;
|
149 |
}
|
150 |
-
#WBCR .wbcr-factory-pages-
|
151 |
margin: 0 0 20px;
|
152 |
padding: 10px 0;
|
153 |
font-size: 13px;
|
154 |
font-weight: 600;
|
155 |
}
|
156 |
-
#WBCR .wbcr-factory-pages-
|
157 |
margin-bottom: 20px;
|
158 |
}
|
159 |
-
#WBCR .wbcr-factory-pages-
|
160 |
font-size: 13px;
|
161 |
padding: 2px;
|
162 |
padding-left: 10px;
|
163 |
}
|
164 |
-
#WBCR .wbcr-factory-pages-
|
165 |
width: 0.4em;
|
166 |
height: 0.7em;
|
167 |
border-width: 0 0.2em 0.2em 0;
|
168 |
left: 0;
|
169 |
margin-right: 10px;
|
170 |
}
|
171 |
-
#WBCR .wbcr-factory-pages-
|
172 |
font-weight: 700;
|
173 |
line-height: 16px;
|
174 |
font-size: 12px;
|
5 |
* @copyright Webcraftic 06.10.2018
|
6 |
* @sicne 2.0.5
|
7 |
*/
|
8 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion {
|
9 |
padding: 30px 80px;
|
10 |
}
|
11 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion h3 {
|
12 |
margin: 0 0 20px;
|
13 |
}
|
14 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-inner-contanier {
|
15 |
border: 2px dashed #8bc34a;
|
16 |
background: #fff;
|
17 |
padding: 20px;
|
18 |
}
|
19 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-activate-premium {
|
20 |
display: inline-block;
|
21 |
cursor: pointer;
|
22 |
line-height: 16px;
|
35 |
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
36 |
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
37 |
}
|
38 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-activate-premium:active {
|
39 |
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
40 |
-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
41 |
-webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
42 |
}
|
43 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-activate-premium:focus {
|
44 |
outline: none;
|
45 |
border: 0;
|
46 |
}
|
47 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-purchase-premium {
|
48 |
display: inline-block;
|
49 |
cursor: pointer;
|
50 |
line-height: 16px;
|
63 |
-moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
|
64 |
-webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
|
65 |
}
|
66 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-purchase-premium:active {
|
67 |
box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
68 |
-moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
69 |
-webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
|
70 |
}
|
71 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-suggetion .wbcr-factory-purchase-premium:focus {
|
72 |
outline: none;
|
73 |
border: 0;
|
74 |
}
|
75 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion {
|
76 |
background: #fff;
|
77 |
color: #353535;
|
78 |
font-weight: 600;
|
79 |
border: 2px dashed #8bc34a;
|
80 |
}
|
81 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion h3 {
|
82 |
margin: 0 0 20px;
|
83 |
padding: 10px 0;
|
84 |
text-align: center;
|
89 |
vertical-align: middle;
|
90 |
text-transform: uppercase;
|
91 |
}
|
92 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul {
|
93 |
position: relative;
|
94 |
margin-bottom: 20px;
|
95 |
}
|
96 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul li {
|
97 |
font-size: 15px;
|
98 |
padding: 7px;
|
99 |
padding-left: 20px;
|
100 |
}
|
101 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul li:before {
|
102 |
content: " ";
|
103 |
display: inline-block;
|
104 |
width: 0.4em;
|
112 |
-o-transform: rotate(45deg);
|
113 |
transform: rotate(45deg);
|
114 |
}
|
115 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion .wbcr-factory-purchase-premium {
|
116 |
display: block;
|
117 |
cursor: pointer;
|
118 |
line-height: 16px;
|
131 |
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
132 |
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
|
133 |
}
|
134 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion .wbcr-factory-purchase-premium:active {
|
135 |
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
136 |
-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
137 |
-webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
|
138 |
}
|
139 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion .wbcr-factory-purchase-premium:focus {
|
140 |
outline: none;
|
141 |
border: 0;
|
142 |
}
|
143 |
@media screen and (max-width: 1550px) {
|
144 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-clearfy-221-multisite-pro-suggetion {
|
145 |
padding: 10px 80px;
|
146 |
}
|
147 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion {
|
148 |
padding: 10px;
|
149 |
}
|
150 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion h3 {
|
151 |
margin: 0 0 20px;
|
152 |
padding: 10px 0;
|
153 |
font-size: 13px;
|
154 |
font-weight: 600;
|
155 |
}
|
156 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul {
|
157 |
margin-bottom: 20px;
|
158 |
}
|
159 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul li {
|
160 |
font-size: 13px;
|
161 |
padding: 2px;
|
162 |
padding-left: 10px;
|
163 |
}
|
164 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion ul li:before {
|
165 |
width: 0.4em;
|
166 |
height: 0.7em;
|
167 |
border-width: 0 0.2em 0.2em 0;
|
168 |
left: 0;
|
169 |
margin-right: 10px;
|
170 |
}
|
171 |
+
#WBCR .wbcr-factory-pages-429-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-221-pro-suggettion .wbcr-factory-purchase-premium {
|
172 |
font-weight: 700;
|
173 |
line-height: 16px;
|
174 |
font-size: 12px;
|
libs/factory/clearfy/assets/css/libs/autocomplete.css
CHANGED
@@ -5,39 +5,39 @@
|
|
5 |
*
|
6 |
* @since 2.2.0
|
7 |
*/
|
8 |
-
#wbcr-factory-clearfy-
|
9 |
width: 100%;
|
10 |
box-sizing: border-box;
|
11 |
border-color: #d6d4d4;
|
12 |
}
|
13 |
-
#wbcr-factory-clearfy-
|
14 |
padding: 10px;
|
15 |
}
|
16 |
-
#wbcr-factory-clearfy-
|
17 |
display: block !important;
|
18 |
}
|
19 |
-
.wbcr-factory-clearfy-
|
20 |
border: 1px solid #999;
|
21 |
background: #FFF;
|
22 |
overflow: auto;
|
23 |
}
|
24 |
-
.wbcr-factory-clearfy-
|
25 |
padding: 2px 5px;
|
26 |
white-space: nowrap;
|
27 |
overflow: hidden;
|
28 |
cursor: pointer;
|
29 |
}
|
30 |
-
.wbcr-factory-clearfy-
|
31 |
background: #F0F0F0;
|
32 |
}
|
33 |
-
.wbcr-factory-clearfy-
|
34 |
font-weight: normal;
|
35 |
color: #3399FF;
|
36 |
}
|
37 |
-
.wbcr-factory-clearfy-
|
38 |
padding: 2px 5px;
|
39 |
}
|
40 |
-
.wbcr-factory-clearfy-
|
41 |
display: block;
|
42 |
border-bottom: 1px solid #000;
|
43 |
}
|
5 |
*
|
6 |
* @since 2.2.0
|
7 |
*/
|
8 |
+
#wbcr-factory-clearfy-221__search_options_form #wbcr-factory-clearfy-221__autocomplete {
|
9 |
width: 100%;
|
10 |
box-sizing: border-box;
|
11 |
border-color: #d6d4d4;
|
12 |
}
|
13 |
+
#wbcr-factory-clearfy-221__search_options_form.wbcr-factory-clearfy-221__autocomplete-wrap {
|
14 |
padding: 10px;
|
15 |
}
|
16 |
+
#wbcr-factory-clearfy-221__search_options_form .wbcr-factory-clearfy-221__autocomplete-label {
|
17 |
display: block !important;
|
18 |
}
|
19 |
+
.wbcr-factory-clearfy-221__autocomplete-suggestions {
|
20 |
border: 1px solid #999;
|
21 |
background: #FFF;
|
22 |
overflow: auto;
|
23 |
}
|
24 |
+
.wbcr-factory-clearfy-221__autocomplete-suggestion {
|
25 |
padding: 2px 5px;
|
26 |
white-space: nowrap;
|
27 |
overflow: hidden;
|
28 |
cursor: pointer;
|
29 |
}
|
30 |
+
.wbcr-factory-clearfy-221__autocomplete-selected {
|
31 |
background: #F0F0F0;
|
32 |
}
|
33 |
+
.wbcr-factory-clearfy-221__autocomplete-suggestions strong {
|
34 |
font-weight: normal;
|
35 |
color: #3399FF;
|
36 |
}
|
37 |
+
.wbcr-factory-clearfy-221__autocomplete-group {
|
38 |
padding: 2px 5px;
|
39 |
}
|
40 |
+
.wbcr-factory-clearfy-221__autocomplete-group strong {
|
41 |
display: block;
|
42 |
border-bottom: 1px solid #000;
|
43 |
}
|
libs/factory/clearfy/assets/js/globals.js
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
* Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
|
3 |
* и самого Clearfy.
|
4 |
*
|
5 |
-
* $.
|
6 |
-
* $.
|
7 |
*
|
8 |
* Copyright 2018, Webcraftic, http://webcraftic.com
|
9 |
*
|
@@ -13,11 +13,11 @@
|
|
13 |
(function($) {
|
14 |
'use strict';
|
15 |
|
16 |
-
if( !$.
|
17 |
-
$.
|
18 |
}
|
19 |
|
20 |
-
$.
|
21 |
/**
|
22 |
* Создает и показывает уведомление внутри интерфейса Clearfy
|
23 |
*
|
@@ -63,12 +63,12 @@
|
|
63 |
/**
|
64 |
* Хук выполняет проивольную функцию, после того как уведомление отображено
|
65 |
* Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
|
66 |
-
* Пример регистрации хука $.
|
67 |
* function(noticeId) {});
|
68 |
* @param {string} noticeId - id уведомления
|
69 |
*/
|
70 |
-
$.
|
71 |
-
$.
|
72 |
});
|
73 |
|
74 |
return noticeId;
|
@@ -93,13 +93,13 @@
|
|
93 |
/**
|
94 |
* Хук выполняет проивольную функцию, после того как уведомление скрыто
|
95 |
* Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
|
96 |
-
* Пример регистрации хука $.
|
97 |
* function(noticeId)
|
98 |
* {});
|
99 |
* @param {string} noticeId - id уведомления
|
100 |
*/
|
101 |
-
$.
|
102 |
-
$.
|
103 |
});
|
104 |
},
|
105 |
|
@@ -116,7 +116,7 @@
|
|
116 |
|
117 |
};
|
118 |
|
119 |
-
$.
|
120 |
|
121 |
/**
|
122 |
* A set of registered filters.
|
@@ -183,20 +183,20 @@
|
|
183 |
}
|
184 |
};
|
185 |
|
186 |
-
$.
|
187 |
|
188 |
/**
|
189 |
* Applies filters to a given input value.
|
190 |
*/
|
191 |
run: function(filterName, args) {
|
192 |
-
$.
|
193 |
},
|
194 |
|
195 |
/**
|
196 |
* Registers a new filter.
|
197 |
*/
|
198 |
add: function(filterName, callback, priority) {
|
199 |
-
$.
|
200 |
}
|
201 |
};
|
202 |
|
2 |
* Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
|
3 |
* и самого Clearfy.
|
4 |
*
|
5 |
+
* $.wbcr_factory_clearfy_221.app - методы для работы с приложением. Скрыть, показать уведомления.
|
6 |
+
* $.wbcr_factory_clearfy_221.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
|
7 |
*
|
8 |
* Copyright 2018, Webcraftic, http://webcraftic.com
|
9 |
*
|
13 |
(function($) {
|
14 |
'use strict';
|
15 |
|
16 |
+
if( !$.wbcr_factory_clearfy_221 ) {
|
17 |
+
$.wbcr_factory_clearfy_221 = {};
|
18 |
}
|
19 |
|
20 |
+
$.wbcr_factory_clearfy_221.app = $.wbcr_factory_clearfy_221.app || {
|
21 |
/**
|
22 |
* Создает и показывает уведомление внутри интерфейса Clearfy
|
23 |
*
|
63 |
/**
|
64 |
* Хук выполняет проивольную функцию, после того как уведомление отображено
|
65 |
* Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
|
66 |
+
* Пример регистрации хука $.wbcr_factory_clearfy_221.hooks.add('wbcr/factory_clearfy_221/updated',
|
67 |
* function(noticeId) {});
|
68 |
* @param {string} noticeId - id уведомления
|
69 |
*/
|
70 |
+
$.wbcr_factory_clearfy_221.hooks.run('wbcr/factory_clearfy_221/showed_notice', [noticeId]);
|
71 |
+
$.wbcr_factory_clearfy_221.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
|
72 |
});
|
73 |
|
74 |
return noticeId;
|
93 |
/**
|
94 |
* Хук выполняет проивольную функцию, после того как уведомление скрыто
|
95 |
* Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
|
96 |
+
* Пример регистрации хука $.wbcr_factory_clearfy_221.hooks.add('wbcr/factory_clearfy_221/updated',
|
97 |
* function(noticeId)
|
98 |
* {});
|
99 |
* @param {string} noticeId - id уведомления
|
100 |
*/
|
101 |
+
$.wbcr_factory_clearfy_221.hooks.run('wbcr/factory_clearfy_221/hidded_notice', [noticeId]);
|
102 |
+
$.wbcr_factory_clearfy_221.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
|
103 |
});
|
104 |
},
|
105 |
|
116 |
|
117 |
};
|
118 |
|
119 |
+
$.wbcr_factory_clearfy_221.filters = $.wbcr_factory_clearfy_221.filters || {
|
120 |
|
121 |
/**
|
122 |
* A set of registered filters.
|
183 |
}
|
184 |
};
|
185 |
|
186 |
+
$.wbcr_factory_clearfy_221.hooks = $.wbcr_factory_clearfy_221.hooks || {
|
187 |
|
188 |
/**
|
189 |
* Applies filters to a given input value.
|
190 |
*/
|
191 |
run: function(filterName, args) {
|
192 |
+
$.wbcr_factory_clearfy_221.filters.run(filterName, args);
|
193 |
},
|
194 |
|
195 |
/**
|
196 |
* Registers a new filter.
|
197 |
*/
|
198 |
add: function(filterName, callback, priority) {
|
199 |
+
$.wbcr_factory_clearfy_221.filters.add(filterName, callback, priority);
|
200 |
}
|
201 |
};
|
202 |
|
libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js
CHANGED
@@ -5,4 +5,4 @@
|
|
5 |
* Ajax Autocomplete for jQuery is freely distributable under the terms of an MIT-style license.
|
6 |
* For details, see the web site: https://github.com/devbridge/jQuery-Autocomplete
|
7 |
*/
|
8 |
-
!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports&&"function"==typeof require?require("jquery"):jQuery)}(function(a){"use strict";function b(c,d){var e=this;e.element=c,e.el=a(c),e.suggestions=[],e.badQueries=[],e.selectedIndex=-1,e.currentValue=e.element.value,e.timeoutId=null,e.cachedResponse={},e.onChangeTimeout=null,e.onChange=null,e.isLocal=!1,e.suggestionsContainer=null,e.noSuggestionsContainer=null,e.options=a.extend(!0,{},b.defaults,d),e.classes={selected:"wbcr-factory-clearfy-220__autocomplete-selected",suggestion:"wbcr-factory-clearfy-220__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,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/<(\/?strong)>/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-clearfy-220__autocomplete-group">'+b+"</div>"}var g=function(){return{escapeRegExChars:function(a){return a.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")},createNode:function(a){var b=document.createElement("div");return b.className=a,b.style.position="absolute",b.style.display="none",b}}}(),h={ESC:27,TAB:9,RETURN:13,LEFT:37,UP:38,RIGHT:39,DOWN:40},i=a.noop;b.utils=g,a.Autocomplete=b,b.defaults={ajaxSettings:{},autoSelectFirst:!1,appendTo:"body",serviceUrl:null,lookup:null,onSelect:null,width:"auto",minChars:1,maxHeight:300,deferRequestBy:0,params:{},formatResult:e,formatGroup:f,delimiter:null,zIndex:9999,type:"GET",noCache:!1,onSearchStart:i,onSearchComplete:i,onSearchError:i,preserveInput:!1,containerClass:"wbcr-factory-clearfy-220__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
|
5 |
* Ajax Autocomplete for jQuery is freely distributable under the terms of an MIT-style license.
|
6 |
* For details, see the web site: https://github.com/devbridge/jQuery-Autocomplete
|
7 |
*/
|
8 |
+
!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports&&"function"==typeof require?require("jquery"):jQuery)}(function(a){"use strict";function b(c,d){var e=this;e.element=c,e.el=a(c),e.suggestions=[],e.badQueries=[],e.selectedIndex=-1,e.currentValue=e.element.value,e.timeoutId=null,e.cachedResponse={},e.onChangeTimeout=null,e.onChange=null,e.isLocal=!1,e.suggestionsContainer=null,e.noSuggestionsContainer=null,e.options=a.extend(!0,{},b.defaults,d),e.classes={selected:"wbcr-factory-clearfy-221__autocomplete-selected",suggestion:"wbcr-factory-clearfy-221__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,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/<(\/?strong)>/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-clearfy-221__autocomplete-group">'+b+"</div>"}var g=function(){return{escapeRegExChars:function(a){return a.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")},createNode:function(a){var b=document.createElement("div");return b.className=a,b.style.position="absolute",b.style.display="none",b}}}(),h={ESC:27,TAB:9,RETURN:13,LEFT:37,UP:38,RIGHT:39,DOWN:40},i=a.noop;b.utils=g,a.Autocomplete=b,b.defaults={ajaxSettings:{},autoSelectFirst:!1,appendTo:"body",serviceUrl:null,lookup:null,onSelect:null,width:"auto",minChars:1,maxHeight:300,deferRequestBy:0,params:{},formatResult:e,formatGroup:f,delimiter:null,zIndex:9999,type:"GET",noCache:!1,onSearchStart:i,onSearchComplete:i,onSearchError:i,preserveInput:!1,containerClass:"wbcr-factory-clearfy-221__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
|
libs/factory/clearfy/assets/js/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 |
-
$.
|
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 = $.
|
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 = $.
|
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 = $.
|
84 |
|
85 |
allNotices.push(noticeId);
|
86 |
}
|
20 |
licenseAction = $(this).data('action');
|
21 |
|
22 |
for( i = 0; i < allNotices.length; i++ ) {
|
23 |
+
$.wbcr_factory_clearfy_221.app.hideNotice(allNotices[i]);
|
24 |
}
|
25 |
|
26 |
$('.wcl-control-btn').hide();
|
53 |
|
54 |
if( response.data ) {
|
55 |
console.log(response.data.error_message);
|
56 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
|
57 |
allNotices.push(noticeId);
|
58 |
} else {
|
59 |
console.log(response);
|
63 |
}
|
64 |
|
65 |
if( response.data && response.data.message ) {
|
66 |
+
noticeId = $.wbcr_factory_clearfy_221.app.showNotice(response.data.message, 'success');
|
67 |
allNotices.push(noticeId);
|
68 |
|
69 |
// todo: доработать генерацию формы, вместо перезагрузки страницы
|
80 |
console.log(xhr.responseText);
|
81 |
console.log(thrownError);
|
82 |
|
83 |
+
var noticeId = $.wbcr_factory_clearfy_221.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
|
84 |
|
85 |
allNotices.push(noticeId);
|
86 |
}
|
libs/factory/clearfy/assets/js/search-options.js
CHANGED
@@ -28,10 +28,10 @@
|
|
28 |
throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
|
29 |
}
|
30 |
|
31 |
-
$('#wbcr-factory-clearfy-
|
32 |
lookup: wfactory_clearfy_search_options,
|
33 |
onSelect: function(suggestion) {
|
34 |
-
$('#wbcr-factory-clearfy-
|
35 |
window.location.href = suggestion.data.page_url;
|
36 |
}
|
37 |
});
|
28 |
throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
|
29 |
}
|
30 |
|
31 |
+
$('#wbcr-factory-clearfy-221__autocomplete').wfactory_clearfy_autocomplete({
|
32 |
lookup: wfactory_clearfy_search_options,
|
33 |
onSelect: function(suggestion) {
|
34 |
+
$('#wbcr-factory-clearfy-221__autocomplete').prop("disabled", true);
|
35 |
window.location.href = suggestion.data.page_url;
|
36 |
}
|
37 |
});
|
libs/factory/clearfy/boot.php
CHANGED
@@ -14,22 +14,22 @@ if( !defined('ABSPATH') ) {
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
if( defined('
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
-
define('
|
22 |
|
23 |
-
define('
|
24 |
|
25 |
-
define('
|
26 |
-
define('
|
27 |
|
28 |
-
load_plugin_textdomain('
|
29 |
|
30 |
-
require(
|
31 |
-
require(
|
32 |
-
require(
|
33 |
|
34 |
// module provides function only for the admin area
|
35 |
if( is_admin() ) {
|
@@ -38,10 +38,10 @@ if( is_admin() ) {
|
|
38 |
* на все страницы админпанели.
|
39 |
*/
|
40 |
add_action('admin_enqueue_scripts', function () {
|
41 |
-
wp_enqueue_script('wbcr-factory-clearfy-
|
42 |
|
43 |
-
require_once
|
44 |
-
$all_options = \WBCR\
|
45 |
|
46 |
if( empty($all_options) ) {
|
47 |
return;
|
@@ -72,9 +72,9 @@ if( is_admin() ) {
|
|
72 |
wp_localize_script('jquery', 'wfactory_clearfy_search_options', $formated_options);
|
73 |
});
|
74 |
|
75 |
-
if( defined('
|
76 |
-
require(
|
77 |
-
require(
|
78 |
-
require(
|
79 |
}
|
80 |
}
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( defined('FACTORY_CLEARFY_221_LOADED') ) {
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
+
define('FACTORY_CLEARFY_221_LOADED', true);
|
22 |
|
23 |
+
define('FACTORY_CLEARFY_221', '2.2.1');
|
24 |
|
25 |
+
define('FACTORY_CLEARFY_221_DIR', dirname(__FILE__));
|
26 |
+
define('FACTORY_CLEARFY_221_URL', plugins_url(null, __FILE__));
|
27 |
|
28 |
+
load_plugin_textdomain('wbcr_factory_clearfy_221', false, dirname(plugin_basename(__FILE__)) . '/langs');
|
29 |
|
30 |
+
require(FACTORY_CLEARFY_221_DIR . '/includes/ajax-handlers.php');
|
31 |
+
require(FACTORY_CLEARFY_221_DIR . '/includes/class-helpers.php');
|
32 |
+
require(FACTORY_CLEARFY_221_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 () {
|
41 |
+
wp_enqueue_script('wbcr-factory-clearfy-221-global', FACTORY_CLEARFY_221_URL . '/assets/js/globals.js', ['jquery'], FACTORY_CLEARFY_221);
|
42 |
|
43 |
+
require_once FACTORY_CLEARFY_221_DIR . '/includes/class-search-options.php';
|
44 |
+
$all_options = \WBCR\Factory_Clearfy_221\Search_Options::get_all_options();
|
45 |
|
46 |
if( empty($all_options) ) {
|
47 |
return;
|
72 |
wp_localize_script('jquery', 'wfactory_clearfy_search_options', $formated_options);
|
73 |
});
|
74 |
|
75 |
+
if( defined('FACTORY_PAGES_429_LOADED') ) {
|
76 |
+
require(FACTORY_CLEARFY_221_DIR . '/pages/class-pages.php');
|
77 |
+
require(FACTORY_CLEARFY_221_DIR . '/pages/class-page-more-features.php');
|
78 |
+
require(FACTORY_CLEARFY_221_DIR . '/pages/class-page-license.php');
|
79 |
}
|
80 |
}
|
libs/factory/clearfy/includes/ajax-handlers.php
CHANGED
@@ -17,10 +17,10 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
17 |
*
|
18 |
* @since 2.0.7
|
19 |
*
|
20 |
-
* @param
|
21 |
*
|
22 |
*/
|
23 |
-
function
|
24 |
|
25 |
$plugin_name = $plugin_instance->request->post( 'plugin_name', null, true );
|
26 |
|
@@ -34,7 +34,7 @@ function wbcr_factory_clearfy_220_check_license( $plugin_instance ) {
|
|
34 |
check_admin_referer( "clearfy_activate_license_for_{$plugin_name}" );
|
35 |
|
36 |
if ( empty( $action ) || ! in_array( $action, [ 'activate', 'deactivate', 'sync', 'unsubscribe' ] ) ) {
|
37 |
-
wp_send_json_error( [ 'error_message' => __( 'Licensing action not passed or this action is prohibited!', '
|
38 |
die();
|
39 |
}
|
40 |
|
@@ -45,23 +45,23 @@ function wbcr_factory_clearfy_220_check_license( $plugin_instance ) {
|
|
45 |
switch ( $action ) {
|
46 |
case 'activate':
|
47 |
if ( empty( $license_key ) || strlen( $license_key ) > 32 ) {
|
48 |
-
wp_send_json_error( [ 'error_message' => __( 'License key is empty or license key too long (license key is 32 characters long)', '
|
49 |
} else {
|
50 |
$plugin_instance->premium->activate( $license_key );
|
51 |
-
$success_message = __( 'Your license has been successfully activated', '
|
52 |
}
|
53 |
break;
|
54 |
case 'deactivate':
|
55 |
$plugin_instance->premium->deactivate();
|
56 |
-
$success_message = __( 'The license is deactivated', '
|
57 |
break;
|
58 |
case 'sync':
|
59 |
$plugin_instance->premium->sync();
|
60 |
-
$success_message = __( 'The license has been updated', '
|
61 |
break;
|
62 |
case 'unsubscribe':
|
63 |
$plugin_instance->premium->cancel_paid_subscription();
|
64 |
-
$success_message = __( 'Subscription success cancelled', '
|
65 |
break;
|
66 |
}
|
67 |
} catch( Exception $e ) {
|
17 |
*
|
18 |
* @since 2.0.7
|
19 |
*
|
20 |
+
* @param Wbcr_Factory429_Plugin $plugin_instance
|
21 |
*
|
22 |
*/
|
23 |
+
function wbcr_factory_clearfy_221_check_license( $plugin_instance ) {
|
24 |
|
25 |
$plugin_name = $plugin_instance->request->post( 'plugin_name', null, true );
|
26 |
|
34 |
check_admin_referer( "clearfy_activate_license_for_{$plugin_name}" );
|
35 |
|
36 |
if ( empty( $action ) || ! in_array( $action, [ 'activate', 'deactivate', 'sync', 'unsubscribe' ] ) ) {
|
37 |
+
wp_send_json_error( [ 'error_message' => __( 'Licensing action not passed or this action is prohibited!', 'wbcr_factory_clearfy_221' ) ] );
|
38 |
die();
|
39 |
}
|
40 |
|
45 |
switch ( $action ) {
|
46 |
case 'activate':
|
47 |
if ( empty( $license_key ) || strlen( $license_key ) > 32 ) {
|
48 |
+
wp_send_json_error( [ 'error_message' => __( 'License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_clearfy_221' ) ] );
|
49 |
} else {
|
50 |
$plugin_instance->premium->activate( $license_key );
|
51 |
+
$success_message = __( 'Your license has been successfully activated', 'wbcr_factory_clearfy_221' );
|
52 |
}
|
53 |
break;
|
54 |
case 'deactivate':
|
55 |
$plugin_instance->premium->deactivate();
|
56 |
+
$success_message = __( 'The license is deactivated', 'wbcr_factory_clearfy_221' );
|
57 |
break;
|
58 |
case 'sync':
|
59 |
$plugin_instance->premium->sync();
|
60 |
+
$success_message = __( 'The license has been updated', 'wbcr_factory_clearfy_221' );
|
61 |
break;
|
62 |
case 'unsubscribe':
|
63 |
$plugin_instance->premium->cancel_paid_subscription();
|
64 |
+
$success_message = __( 'Subscription success cancelled', 'wbcr_factory_clearfy_221' );
|
65 |
break;
|
66 |
}
|
67 |
} catch( Exception $e ) {
|
libs/factory/clearfy/includes/class-configurate.php
CHANGED
@@ -13,12 +13,12 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
* @copyright (c) 2018, Webcraftic Ltd
|
14 |
*
|
15 |
*/
|
16 |
-
abstract class
|
17 |
|
18 |
/**
|
19 |
-
* @param
|
20 |
*/
|
21 |
-
public function __construct(
|
22 |
$this->plugin = $plugin;
|
23 |
$this->registerActionsAndFilters();
|
24 |
}
|
13 |
* @copyright (c) 2018, Webcraftic Ltd
|
14 |
*
|
15 |
*/
|
16 |
+
abstract class Wbcr_FactoryClearfy221_Configurate {
|
17 |
|
18 |
/**
|
19 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
20 |
*/
|
21 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
22 |
$this->plugin = $plugin;
|
23 |
$this->registerActionsAndFilters();
|
24 |
}
|
libs/factory/clearfy/includes/class-helpers.php
CHANGED
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
14 |
* @copyright (c) 2018, Webcraftic Ltd
|
15 |
*
|
16 |
*/
|
17 |
-
class
|
18 |
|
19 |
/**
|
20 |
* Recursive sanitation for an array
|
14 |
* @copyright (c) 2018, Webcraftic Ltd
|
15 |
*
|
16 |
*/
|
17 |
+
class WbcrFactoryClearfy221_Helpers {
|
18 |
|
19 |
/**
|
20 |
* Recursive sanitation for an array
|
libs/factory/clearfy/includes/class-search-options.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
/**
|
6 |
* Class Search options
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_Clearfy_221;
|
4 |
|
5 |
/**
|
6 |
* Class Search options
|
libs/factory/clearfy/langs/wbcr_factory_clearfy_221-ru_RU.mo
ADDED
Binary file
|
libs/factory/clearfy/langs/wbcr_factory_clearfy_221-ru_RU.po
ADDED
@@ -0,0 +1,307 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: clearfy\n"
|
4 |
+
"POT-Creation-Date: 2018-10-16 22:37+0300\n"
|
5 |
+
"PO-Revision-Date: 2018-10-16 22:41+0300\n"
|
6 |
+
"Last-Translator: alex.kovalevv@gmail.com <alex.kovalevv@gmail.com>\n"
|
7 |
+
"Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
|
8 |
+
"Language: ru_RU\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 2.1.1\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
15 |
+
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
|
18 |
+
"X-Poedit-SearchPath-0: .\n"
|
19 |
+
|
20 |
+
#: includes/check-clearfy-compatibility.php:265
|
21 |
+
msgid "Clearfy warning"
|
22 |
+
msgstr "Clearfy предупреждение"
|
23 |
+
|
24 |
+
#: includes/check-clearfy-compatibility.php:266
|
25 |
+
#, php-format
|
26 |
+
msgid "The %s component"
|
27 |
+
msgstr "Работа компонента %s"
|
28 |
+
|
29 |
+
#: includes/check-clearfy-compatibility.php:268
|
30 |
+
msgid "warning"
|
31 |
+
msgstr "предупреждение"
|
32 |
+
|
33 |
+
#: includes/check-clearfy-compatibility.php:269
|
34 |
+
#, php-format
|
35 |
+
msgid "The %s plugin"
|
36 |
+
msgstr "Работа плагина %s"
|
37 |
+
|
38 |
+
#: includes/check-clearfy-compatibility.php:272
|
39 |
+
msgid "has stopped."
|
40 |
+
msgstr "была остановлена."
|
41 |
+
|
42 |
+
#: includes/check-clearfy-compatibility.php:273
|
43 |
+
msgid "Possible reasons:"
|
44 |
+
msgstr "Возможные причины:"
|
45 |
+
|
46 |
+
#: includes/check-clearfy-compatibility.php:279
|
47 |
+
#, php-format
|
48 |
+
msgid "You need to update the PHP version to %s or higher!"
|
49 |
+
msgstr "Вам нужно обновить версию PHP до %s или выше!"
|
50 |
+
|
51 |
+
#: includes/check-clearfy-compatibility.php:284
|
52 |
+
#, php-format
|
53 |
+
msgid "You need to update WordPress to %s or higher!"
|
54 |
+
msgstr "Вам нужно обновить WordPress до %s или выше!"
|
55 |
+
|
56 |
+
#: includes/check-clearfy-compatibility.php:289
|
57 |
+
#, php-format
|
58 |
+
msgid "You need to update the Clearfy plugin version to %s or higher!"
|
59 |
+
msgstr "Вам нужно обновить версию плагина Clearfy до %s или выше!"
|
60 |
+
|
61 |
+
#: includes/check-clearfy-compatibility.php:294
|
62 |
+
msgid "This plugin is already activated, you are trying to activate it again."
|
63 |
+
msgstr "Этот плагин уже активирован, вы пытаетесь активировать его снова."
|
64 |
+
|
65 |
+
#: includes/check-clearfy-compatibility.php:299
|
66 |
+
#, php-format
|
67 |
+
msgid ""
|
68 |
+
"Clearfy has the features of the %s plugin. Please, deactivate %s to avoid "
|
69 |
+
"conflicts of plugins!"
|
70 |
+
msgstr ""
|
71 |
+
"Плагин Clearfy уже включает в себя функции плагина %s. Пожалуйста, "
|
72 |
+
"деактивируйте плагин %s, чтобы не создавать конфликтов!"
|
73 |
+
|
74 |
+
#: pages/class.pages.php:212
|
75 |
+
msgid "Upgrade to Clearfy Business"
|
76 |
+
msgstr "Перейти на Clearfy Бизнес"
|
77 |
+
|
78 |
+
#: pages/class.pages.php:213
|
79 |
+
msgid "Oops... Sorry for the inconvenience caused!"
|
80 |
+
msgstr "Упс... Мы приносим свои извинения за неудобства!"
|
81 |
+
|
82 |
+
#: pages/class.pages.php:214
|
83 |
+
msgid ""
|
84 |
+
"Complete multisite support is available in Clearfy Business and Clearfy "
|
85 |
+
"Business Revolution packages only!"
|
86 |
+
msgstr ""
|
87 |
+
"Полная поддержка мультисайтов доступна только в пакете Clearfy Бизнес и "
|
88 |
+
"Clearfy Бизнес Революция!"
|
89 |
+
|
90 |
+
#: pages/class.pages.php:215
|
91 |
+
msgid ""
|
92 |
+
"You can activate the plugin on each website and use it with zero "
|
93 |
+
"limitations. But you can’t save the plugin’s settings under the Super "
|
94 |
+
"Administrator role!"
|
95 |
+
msgstr ""
|
96 |
+
"Вы можете активировать плагин отдельно для каждого сайта и использовать его "
|
97 |
+
"без ограничений, но в режиме суперадминистратора, вы не можете сохранять "
|
98 |
+
"настройки плагина!"
|
99 |
+
|
100 |
+
#: pages/class.pages.php:217
|
101 |
+
msgid "Activate license "
|
102 |
+
msgstr "Активировать лицензию "
|
103 |
+
|
104 |
+
#: pages/class.pages.php:218
|
105 |
+
#, php-format
|
106 |
+
msgid "Upgrade to Clearfy Business for $%d"
|
107 |
+
msgstr "Обновить до Clearfy Бизнес за $%d"
|
108 |
+
|
109 |
+
#: pages/class.pages.php:273
|
110 |
+
msgid "MORE IN CLEARFY <span>BUSINESS</span>"
|
111 |
+
msgstr "ЛУЧШЕЕ В CLEARFY <span>БИЗНЕС</span>"
|
112 |
+
|
113 |
+
#: pages/class.pages.php:275
|
114 |
+
msgid "4 premium components now;"
|
115 |
+
msgstr "4 премиум компонента сейчас;"
|
116 |
+
|
117 |
+
#: pages/class.pages.php:276
|
118 |
+
msgid "40 new premium components within a year for the single price;"
|
119 |
+
msgstr "40 новых премиум компонентов в год по одной цене;"
|
120 |
+
|
121 |
+
#: pages/class.pages.php:277
|
122 |
+
msgid "Multisite support;"
|
123 |
+
msgstr "Поддержка мультисайтов;"
|
124 |
+
|
125 |
+
#: pages/class.pages.php:278
|
126 |
+
msgid "Advanced settings;"
|
127 |
+
msgstr "Дополнительные настройки;"
|
128 |
+
|
129 |
+
#: pages/class.pages.php:279
|
130 |
+
msgid "No ads;"
|
131 |
+
msgstr "Нет рекламы;"
|
132 |
+
|
133 |
+
#: pages/class.pages.php:280
|
134 |
+
msgid "Perfect support."
|
135 |
+
msgstr "Лучшая поддержка."
|
136 |
+
|
137 |
+
#: pages/class.pages.php:283
|
138 |
+
#, php-format
|
139 |
+
msgid "Upgrade for $%s"
|
140 |
+
msgstr "Обновиться за $%s"
|
141 |
+
|
142 |
+
#: pages/class.pages.php:299
|
143 |
+
msgid ""
|
144 |
+
"A neutral setting that can not harm your site, but you must be sure that you "
|
145 |
+
"need to use it."
|
146 |
+
msgstr ""
|
147 |
+
"Нейтральная настройка, которая не может нанести вред вашему сайту, но вы "
|
148 |
+
"должны быть уверены, что вам нужно ее использовать."
|
149 |
+
|
150 |
+
#: pages/class.pages.php:305
|
151 |
+
msgid ""
|
152 |
+
"When set this option, you must be careful. Plugins and themes may depend on "
|
153 |
+
"this function. You must be sure that you can disable this feature for the "
|
154 |
+
"site."
|
155 |
+
msgstr ""
|
156 |
+
"При включении этой настройки, вы должны быть осторожны. Некоторые плагины и "
|
157 |
+
"темы могут зависеть от этой функции. Вы должны быть уверены, что эту функцию "
|
158 |
+
"можно отключить для сайта."
|
159 |
+
|
160 |
+
#: pages/class.pages.php:311
|
161 |
+
msgid "Absolutely safe setting, We recommend to use."
|
162 |
+
msgstr "Абсолютно безопасная настройка, рекомендуем использовать."
|
163 |
+
|
164 |
+
#: pages/class.pages.php:316
|
165 |
+
msgid "Hover to the icon to get help for the feature you selected."
|
166 |
+
msgstr ""
|
167 |
+
"Наведите указатель мыши на значок, чтобы получить справку по выбранной "
|
168 |
+
"функции."
|
169 |
+
|
170 |
+
#: pages/class.pages.php:334
|
171 |
+
msgid "Do you want the plugin to improved and update?"
|
172 |
+
msgstr "Вы хотите, чтобы плагин улучшался и обновлялся?"
|
173 |
+
|
174 |
+
#: pages/class.pages.php:337
|
175 |
+
msgid ""
|
176 |
+
"Help the author, leave a review on wordpress.org. Thanks to feedback, I will "
|
177 |
+
"know that the plugin is really useful to you and is needed."
|
178 |
+
msgstr ""
|
179 |
+
"Помогите автору, оставьте отзыв на wordpress.org. Благодаря отзывам, я буду "
|
180 |
+
"знать, что плагин действительно полезен для вас и необходим."
|
181 |
+
|
182 |
+
#: pages/class.pages.php:339
|
183 |
+
msgid "And also write your ideas on how to extend or improve the plugin."
|
184 |
+
msgstr "А также напишите свои идеи о том, как расширить или улучшить плагин."
|
185 |
+
|
186 |
+
#: pages/class.pages.php:344
|
187 |
+
msgid "Go rate us and push ideas"
|
188 |
+
msgstr "Оставить отзыв или поделиться идеей"
|
189 |
+
|
190 |
+
#: pages/class.pages.php:356
|
191 |
+
msgid "Donation for plugin development"
|
192 |
+
msgstr "Пожертвования на развитие плагина"
|
193 |
+
|
194 |
+
#: pages/more-features.php:31
|
195 |
+
msgid "More features (<b>free</b>)"
|
196 |
+
msgstr "Дополнительно"
|
197 |
+
|
198 |
+
#: pages/more-features.php:40
|
199 |
+
msgid "install the ultimate version of the plugin for free!"
|
200 |
+
msgstr "установите полную версию плагина бесплатно!"
|
201 |
+
|
202 |
+
#: pages/more-features.php:51
|
203 |
+
msgid "Code cleaning"
|
204 |
+
msgstr "Очищает код"
|
205 |
+
|
206 |
+
#: pages/more-features.php:53
|
207 |
+
msgid "Clears the source code of the page from unused code."
|
208 |
+
msgstr "Очищает исходный код страницы от неиспользуемого кода."
|
209 |
+
|
210 |
+
#: pages/more-features.php:60
|
211 |
+
msgid "Improve SEO"
|
212 |
+
msgstr "Улучшает SEO"
|
213 |
+
|
214 |
+
#: pages/more-features.php:62
|
215 |
+
msgid ""
|
216 |
+
"Removes duplicate pages, closes external links, changes the headers of the "
|
217 |
+
"server."
|
218 |
+
msgstr ""
|
219 |
+
"Удаляет дубликаты страниц, закрывает внешние ссылки, изменяет заголовки "
|
220 |
+
"сервера."
|
221 |
+
|
222 |
+
#: pages/more-features.php:69
|
223 |
+
msgid "Site protection"
|
224 |
+
msgstr "Защита сайта"
|
225 |
+
|
226 |
+
#: pages/more-features.php:71
|
227 |
+
msgid "Enables and disables features that improve the protection of your site."
|
228 |
+
msgstr "Включает и отключает функции, которые улучшают защиту вашего сайта."
|
229 |
+
|
230 |
+
#: pages/more-features.php:78
|
231 |
+
msgid "Disable comments"
|
232 |
+
msgstr "Отключает комментарии"
|
233 |
+
|
234 |
+
#: pages/more-features.php:80
|
235 |
+
msgid "Disables comments on the entire site or on specific pages."
|
236 |
+
msgstr "Отключает комментарии на всем сайте или у определенных страниц."
|
237 |
+
|
238 |
+
#: pages/more-features.php:87
|
239 |
+
msgid "Manage updates"
|
240 |
+
msgstr "Менеджер обновлений"
|
241 |
+
|
242 |
+
#: pages/more-features.php:89
|
243 |
+
msgid ""
|
244 |
+
"Enables or disables automatically updates for plugins, themes and core. It "
|
245 |
+
"is also possible\n"
|
246 |
+
"\t\t\t\t\t\t\tto disable all updates."
|
247 |
+
msgstr ""
|
248 |
+
"Включает или отключает автоматические обновление плагинов, тем и ядра. Также "
|
249 |
+
"возможно\n"
|
250 |
+
"отключение всех обновлений."
|
251 |
+
|
252 |
+
#: pages/more-features.php:97
|
253 |
+
msgid "Manage widgets"
|
254 |
+
msgstr "Управление виджетами"
|
255 |
+
|
256 |
+
#: pages/more-features.php:99
|
257 |
+
msgid "Allows you to remove unused widgets."
|
258 |
+
msgstr "Позволяет удалить неиспользуемые виджеты."
|
259 |
+
|
260 |
+
#: pages/more-features.php:106
|
261 |
+
msgid "Speed Optimization"
|
262 |
+
msgstr "Оптимизация производительности"
|
263 |
+
|
264 |
+
#: pages/more-features.php:108
|
265 |
+
msgid ""
|
266 |
+
"Increases performance by disabling unused functions and reducing the number "
|
267 |
+
"of requests."
|
268 |
+
msgstr ""
|
269 |
+
"Повышает производительность, отключая неиспользуемые функции и уменьшая "
|
270 |
+
"количество запросов."
|
271 |
+
|
272 |
+
#: pages/more-features.php:115
|
273 |
+
msgid "Site privacy"
|
274 |
+
msgstr "Конфиденциальность сайта"
|
275 |
+
|
276 |
+
#: pages/more-features.php:117
|
277 |
+
msgid ""
|
278 |
+
"Allows you to hide the version of the site and plugins. Allows you to hide "
|
279 |
+
"your\n"
|
280 |
+
"\t\t\t\t\t\t\tWordPress."
|
281 |
+
msgstr ""
|
282 |
+
"Позволяет скрыть версию сайта и плагинов. Позволяет скрыть ваш\n"
|
283 |
+
"WordPress."
|
284 |
+
|
285 |
+
#: pages/more-features.php:125
|
286 |
+
msgid "Easy setup"
|
287 |
+
msgstr "Простая настройка"
|
288 |
+
|
289 |
+
#: pages/more-features.php:127
|
290 |
+
msgid ""
|
291 |
+
"In quick mode, you can easily configure the plugin according to your needs."
|
292 |
+
msgstr ""
|
293 |
+
"В быстром режиме вы можете легко настроить плагин в соответствии с вашими "
|
294 |
+
"потребностями."
|
295 |
+
|
296 |
+
#: pages/more-features.php:142
|
297 |
+
msgid "Get the ultimate plugin 100% FREE"
|
298 |
+
msgstr "Получить полную версию бесплатно на 100%."
|
299 |
+
|
300 |
+
#~ msgid "component"
|
301 |
+
#~ msgstr "компонент"
|
302 |
+
|
303 |
+
#~ msgid "plugin"
|
304 |
+
#~ msgstr "плагин"
|
305 |
+
|
306 |
+
#~ msgid "Site ptotection"
|
307 |
+
#~ msgstr "Защищает ваш сайт"
|
libs/factory/clearfy/pages/class-page-license.php
CHANGED
@@ -11,7 +11,7 @@ if( !defined('ABSPATH') ) {
|
|
11 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
12 |
* @since 2.0.7
|
13 |
*/
|
14 |
-
class
|
15 |
|
16 |
/**
|
17 |
* {@inheritdoc}
|
@@ -80,7 +80,7 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
80 |
|
81 |
/**
|
82 |
* @since 2.0.7
|
83 |
-
* @var \WBCR\
|
84 |
*/
|
85 |
protected $premium;
|
86 |
|
@@ -98,7 +98,7 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
98 |
|
99 |
/**
|
100 |
* @since 2.0.7
|
101 |
-
* @var \WBCR\
|
102 |
*/
|
103 |
protected $premium_license;
|
104 |
|
@@ -107,9 +107,9 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
107 |
|
108 |
/**
|
109 |
* {@inheritdoc}
|
110 |
-
* @param
|
111 |
*/
|
112 |
-
public function __construct(
|
113 |
{
|
114 |
$this->plugin = $plugin;
|
115 |
|
@@ -136,8 +136,8 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
136 |
{
|
137 |
parent::assets($scripts, $styles);
|
138 |
|
139 |
-
$this->styles->add(
|
140 |
-
$this->scripts->add(
|
141 |
}
|
142 |
|
143 |
/**
|
@@ -147,7 +147,7 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
147 |
*/
|
148 |
public function ajax_handler()
|
149 |
{
|
150 |
-
|
151 |
}
|
152 |
|
153 |
/**
|
@@ -157,7 +157,7 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
157 |
{
|
158 |
?>
|
159 |
<div id="wcl-license-wrapper"
|
160 |
-
data-loader="<?php echo
|
161 |
data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
|
162 |
data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
|
163 |
<?php $this->show_license_form(); ?>
|
@@ -263,11 +263,11 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
263 |
if( $this->is_premium ):
|
264 |
?>
|
265 |
<p style="margin-top: 10px;">
|
266 |
-
<?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', '
|
267 |
</p>
|
268 |
<?php else: ?>
|
269 |
<p style="margin-top: 10px;">
|
270 |
-
<?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', '
|
271 |
</p>
|
272 |
<?php endif;
|
273 |
}
|
@@ -279,16 +279,16 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
279 |
{
|
280 |
?>
|
281 |
<div id="license-manager"
|
282 |
-
class="factory-bootstrap-
|
283 |
<div>
|
284 |
-
<h3><?php printf(__('Activate %s', '
|
285 |
<?php echo $this->get_plan_description() ?>
|
286 |
</div>
|
287 |
<br>
|
288 |
<?php if( is_wp_error($notice) ) : ?>
|
289 |
<div class="license-message <?= $this->get_license_type() ?>-license-message">
|
290 |
<div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
|
291 |
-
<h4 class="alert-heading"><?php _e($notice->get_error_message(), '
|
292 |
</div>
|
293 |
</div>
|
294 |
<?php endif; ?>
|
@@ -298,20 +298,20 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
298 |
<a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
|
299 |
class="purchase-premium" target="_blank" rel="noopener">
|
300 |
<span class="btn btn-gold btn-inner-wrap">
|
301 |
-
<?php _e('Upgrade to Premium', '
|
302 |
</span>
|
303 |
</a>
|
304 |
-
<p><?php printf(__('Your current license for %1$s:', '
|
305 |
<?php endif; ?>
|
306 |
<div class="license-details-block <?= $this->get_license_type() ?>-details-block">
|
307 |
<?php if( $this->is_premium ): ?>
|
308 |
<a data-action="deactivate" href="#"
|
309 |
class="btn btn-default btn-small license-delete-button wcl-control-btn">
|
310 |
-
<?php _e('Delete Key', '
|
311 |
</a>
|
312 |
<a data-action="sync" href="#"
|
313 |
class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
|
314 |
-
<?php _e('Synchronization', '
|
315 |
</a>
|
316 |
<?php endif; ?>
|
317 |
<h3>
|
@@ -330,19 +330,19 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
330 |
<?php endif; ?>
|
331 |
<div class="license-key-description">
|
332 |
<?php if( !$this->is_premium ): ?>
|
333 |
-
<p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', '
|
334 |
<?php else: ?>
|
335 |
-
<p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', '
|
336 |
<?php endif; ?>
|
337 |
<?php if( $this->is_premium && $this->premium_has_subscription ): ?>
|
338 |
<p class="activate-trial-hint">
|
339 |
-
<?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', '
|
340 |
</p>
|
341 |
<?php endif; ?>
|
342 |
|
343 |
<?php if( $this->get_license_type() == 'trial' ): ?>
|
344 |
<p class="activate-error-hint">
|
345 |
-
<?php printf(__('Your license has expired, please extend the license to get updates and support.', '
|
346 |
</p>
|
347 |
<?php endif; ?>
|
348 |
</div>
|
@@ -350,19 +350,19 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
350 |
<tr>
|
351 |
<!--<td class="license-param license-param-domain">
|
352 |
<span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
|
353 |
-
<span class="license-value-name"><?php _e('domain', '
|
354 |
</td>-->
|
355 |
<td class="license-param license-param-days">
|
356 |
<span class="license-value"><?= $this->get_plan() ?></span>
|
357 |
-
<span class="license-value-name"><?php _e('plan', '
|
358 |
</td>
|
359 |
<?php if( $this->is_premium ) : ?>
|
360 |
<td class="license-param license-param-sites">
|
361 |
<span class="license-value">
|
362 |
<?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
|
363 |
-
<?php _e('of', '
|
364 |
<?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
|
365 |
-
<span class="license-value-name"><?php _e('active sites', '
|
366 |
</td>
|
367 |
<?php endif; ?>
|
368 |
<td class="license-param license-param-version">
|
@@ -372,8 +372,8 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
372 |
<?php if( $this->is_premium ): ?>
|
373 |
<td class="license-param license-param-days">
|
374 |
<?php if( $this->get_license_type() == 'trial' ): ?>
|
375 |
-
<span class="license-value"><?php _e('EXPIRED!', '
|
376 |
-
<span class="license-value-name"><?php _e('please update the key', '
|
377 |
<?php else: ?>
|
378 |
<span class="license-value">
|
379 |
<?php
|
@@ -383,9 +383,9 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
383 |
echo $this->get_expiration_days();
|
384 |
}
|
385 |
?>
|
386 |
-
<small> <?php _e('day(s)', '
|
387 |
</span>
|
388 |
-
<span class="license-value-name"><?php _e('remained', '
|
389 |
<?php endif; ?>
|
390 |
</td>
|
391 |
<?php endif; ?>
|
@@ -396,14 +396,14 @@ class Wbcr_FactoryClearfy220_LicensePage extends Wbcr_FactoryClearfy220_PageBase
|
|
396 |
<div class="license-input">
|
397 |
<form action="" method="post">
|
398 |
<?php if($this->is_premium): ?>
|
399 |
-
<p><?php _e('Have a key to activate the premium version? Paste it here:', '
|
400 |
<?php else: ?>
|
401 |
-
<p><?php _e('Have a key to activate the plugin? Paste it here:', '
|
402 |
<p>
|
403 |
<?php endif; ?>
|
404 |
<button data-action="activate" class="btn btn-default wcl-control-btn" type="button"
|
405 |
id="license-submit">
|
406 |
-
<?php _e('Submit Key', '
|
407 |
</button>
|
408 |
<div class="license-key-wrap">
|
409 |
<input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
|
11 |
* @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
|
12 |
* @since 2.0.7
|
13 |
*/
|
14 |
+
class Wbcr_FactoryClearfy221_LicensePage extends Wbcr_FactoryClearfy221_PageBase {
|
15 |
|
16 |
/**
|
17 |
* {@inheritdoc}
|
80 |
|
81 |
/**
|
82 |
* @since 2.0.7
|
83 |
+
* @var \WBCR\Factory_429\Premium\Provider
|
84 |
*/
|
85 |
protected $premium;
|
86 |
|
98 |
|
99 |
/**
|
100 |
* @since 2.0.7
|
101 |
+
* @var \WBCR\Factory_429\Premium\Interfaces\License
|
102 |
*/
|
103 |
protected $premium_license;
|
104 |
|
107 |
|
108 |
/**
|
109 |
* {@inheritdoc}
|
110 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
111 |
*/
|
112 |
+
public function __construct(Wbcr_Factory429_Plugin $plugin)
|
113 |
{
|
114 |
$this->plugin = $plugin;
|
115 |
|
136 |
{
|
137 |
parent::assets($scripts, $styles);
|
138 |
|
139 |
+
$this->styles->add(FACTORY_CLEARFY_221_URL . '/assets/css/license-manager.css');
|
140 |
+
$this->scripts->add(FACTORY_CLEARFY_221_URL . '/assets/js/license-manager.js');
|
141 |
}
|
142 |
|
143 |
/**
|
147 |
*/
|
148 |
public function ajax_handler()
|
149 |
{
|
150 |
+
wbcr_factory_clearfy_221_check_license($this->plugin);
|
151 |
}
|
152 |
|
153 |
/**
|
157 |
{
|
158 |
?>
|
159 |
<div id="wcl-license-wrapper"
|
160 |
+
data-loader="<?php echo FACTORY_CLEARFY_221_URL . '/assets/img/loader.gif'; ?>"
|
161 |
data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
|
162 |
data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
|
163 |
<?php $this->show_license_form(); ?>
|
263 |
if( $this->is_premium ):
|
264 |
?>
|
265 |
<p style="margin-top: 10px;">
|
266 |
+
<?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_clearfy_221'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
|
267 |
</p>
|
268 |
<?php else: ?>
|
269 |
<p style="margin-top: 10px;">
|
270 |
+
<?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_clearfy_221'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
|
271 |
</p>
|
272 |
<?php endif;
|
273 |
}
|
279 |
{
|
280 |
?>
|
281 |
<div id="license-manager"
|
282 |
+
class="factory-bootstrap-430 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
|
283 |
<div>
|
284 |
+
<h3><?php printf(__('Activate %s', 'wbcr_factory_clearfy_221'), $this->plan_name) ?></h3>
|
285 |
<?php echo $this->get_plan_description() ?>
|
286 |
</div>
|
287 |
<br>
|
288 |
<?php if( is_wp_error($notice) ) : ?>
|
289 |
<div class="license-message <?= $this->get_license_type() ?>-license-message">
|
290 |
<div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
|
291 |
+
<h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_clearfy_221') ?></h4>
|
292 |
</div>
|
293 |
</div>
|
294 |
<?php endif; ?>
|
298 |
<a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
|
299 |
class="purchase-premium" target="_blank" rel="noopener">
|
300 |
<span class="btn btn-gold btn-inner-wrap">
|
301 |
+
<?php _e('Upgrade to Premium', 'wbcr_factory_clearfy_221') ?>
|
302 |
</span>
|
303 |
</a>
|
304 |
+
<p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_clearfy_221'), $this->plugin->getPluginTitle()) ?></p>
|
305 |
<?php endif; ?>
|
306 |
<div class="license-details-block <?= $this->get_license_type() ?>-details-block">
|
307 |
<?php if( $this->is_premium ): ?>
|
308 |
<a data-action="deactivate" href="#"
|
309 |
class="btn btn-default btn-small license-delete-button wcl-control-btn">
|
310 |
+
<?php _e('Delete Key', 'wbcr_factory_clearfy_221') ?>
|
311 |
</a>
|
312 |
<a data-action="sync" href="#"
|
313 |
class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
|
314 |
+
<?php _e('Synchronization', 'wbcr_factory_clearfy_221') ?>
|
315 |
</a>
|
316 |
<?php endif; ?>
|
317 |
<h3>
|
330 |
<?php endif; ?>
|
331 |
<div class="license-key-description">
|
332 |
<?php if( !$this->is_premium ): ?>
|
333 |
+
<p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_clearfy_221') ?></p>
|
334 |
<?php else: ?>
|
335 |
+
<p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_clearfy_221') ?></p>
|
336 |
<?php endif; ?>
|
337 |
<?php if( $this->is_premium && $this->premium_has_subscription ): ?>
|
338 |
<p class="activate-trial-hint">
|
339 |
+
<?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_clearfy_221') ?>
|
340 |
</p>
|
341 |
<?php endif; ?>
|
342 |
|
343 |
<?php if( $this->get_license_type() == 'trial' ): ?>
|
344 |
<p class="activate-error-hint">
|
345 |
+
<?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_clearfy_221'), '') ?>
|
346 |
</p>
|
347 |
<?php endif; ?>
|
348 |
</div>
|
350 |
<tr>
|
351 |
<!--<td class="license-param license-param-domain">
|
352 |
<span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
|
353 |
+
<span class="license-value-name"><?php _e('domain', 'wbcr_factory_clearfy_221') ?></span>
|
354 |
</td>-->
|
355 |
<td class="license-param license-param-days">
|
356 |
<span class="license-value"><?= $this->get_plan() ?></span>
|
357 |
+
<span class="license-value-name"><?php _e('plan', 'wbcr_factory_clearfy_221') ?></span>
|
358 |
</td>
|
359 |
<?php if( $this->is_premium ) : ?>
|
360 |
<td class="license-param license-param-sites">
|
361 |
<span class="license-value">
|
362 |
<?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
|
363 |
+
<?php _e('of', 'wbcr_factory_clearfy_221') ?>
|
364 |
<?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
|
365 |
+
<span class="license-value-name"><?php _e('active sites', 'wbcr_factory_clearfy_221') ?></span>
|
366 |
</td>
|
367 |
<?php endif; ?>
|
368 |
<td class="license-param license-param-version">
|
372 |
<?php if( $this->is_premium ): ?>
|
373 |
<td class="license-param license-param-days">
|
374 |
<?php if( $this->get_license_type() == 'trial' ): ?>
|
375 |
+
<span class="license-value"><?php _e('EXPIRED!', 'wbcr_factory_clearfy_221') ?></span>
|
376 |
+
<span class="license-value-name"><?php _e('please update the key', 'wbcr_factory_clearfy_221') ?></span>
|
377 |
<?php else: ?>
|
378 |
<span class="license-value">
|
379 |
<?php
|
383 |
echo $this->get_expiration_days();
|
384 |
}
|
385 |
?>
|
386 |
+
<small> <?php _e('day(s)', 'wbcr_factory_clearfy_221') ?></small>
|
387 |
</span>
|
388 |
+
<span class="license-value-name"><?php _e('remained', 'wbcr_factory_clearfy_221') ?></span>
|
389 |
<?php endif; ?>
|
390 |
</td>
|
391 |
<?php endif; ?>
|
396 |
<div class="license-input">
|
397 |
<form action="" method="post">
|
398 |
<?php if($this->is_premium): ?>
|
399 |
+
<p><?php _e('Have a key to activate the premium version? Paste it here:', 'wbcr_factory_clearfy_221') ?><p>
|
400 |
<?php else: ?>
|
401 |
+
<p><?php _e('Have a key to activate the plugin? Paste it here:', 'wbcr_factory_clearfy_221') ?>
|
402 |
<p>
|
403 |
<?php endif; ?>
|
404 |
<button data-action="activate" class="btn btn-default wcl-control-btn" type="button"
|
405 |
id="license-submit">
|
406 |
+
<?php _e('Submit Key', 'wbcr_factory_clearfy_221') ?>
|
407 |
</button>
|
408 |
<div class="license-key-wrap">
|
409 |
<input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
|
libs/factory/clearfy/pages/class-page-more-features.php
CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
15 |
}
|
16 |
|
17 |
|
18 |
-
class
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
@@ -60,8 +60,8 @@ class Wbcr_FactoryClearfy220_MoreFeaturesPage extends Wbcr_FactoryPages428_Impre
|
|
60 |
*/
|
61 |
public $internal = true;
|
62 |
|
63 |
-
public function __construct(
|
64 |
-
$this->menu_title = __( 'More features (<b>free</b>)', '
|
65 |
|
66 |
parent::__construct( $plugin );
|
67 |
|
@@ -74,7 +74,7 @@ class Wbcr_FactoryClearfy220_MoreFeaturesPage extends Wbcr_FactoryPages428_Impre
|
|
74 |
* @return string
|
75 |
*/
|
76 |
public function getPageTitle() {
|
77 |
-
return __( 'More features', '
|
78 |
}
|
79 |
|
80 |
/**
|
@@ -88,66 +88,66 @@ class Wbcr_FactoryClearfy220_MoreFeaturesPage extends Wbcr_FactoryPages428_Impre
|
|
88 |
<div class="col-sm-4">
|
89 |
<div class="wbcr-factory-feature-box">
|
90 |
<span class="dashicons dashicons-yes"></span>
|
91 |
-
<h3><?php _e( 'Code cleaning', '
|
92 |
-
<p><?php _e( 'Clears the source code of the page from unused code.', '
|
93 |
</div>
|
94 |
</div>
|
95 |
<div class="col-sm-4">
|
96 |
<div class="wbcr-factory-feature-box">
|
97 |
<span class="dashicons dashicons-chart-bar"></span>
|
98 |
-
<h3><?php _e( 'Improve SEO', '
|
99 |
-
<p><?php _e( 'Removes duplicate pages, closes external links, changes the headers of the server.', '
|
100 |
</div>
|
101 |
</div>
|
102 |
<div class="col-sm-4">
|
103 |
<div class="wbcr-factory-feature-box">
|
104 |
<span class="dashicons dashicons-shield-alt"></span>
|
105 |
-
<h3><?php _e( 'Site protection', '
|
106 |
-
<p><?php _e( 'Enables and disables features that improve the protection of your site.', '
|
107 |
</div>
|
108 |
</div>
|
109 |
<div class="col-sm-4">
|
110 |
<div class="wbcr-factory-feature-box">
|
111 |
<span class="dashicons dashicons-welcome-comments"></span>
|
112 |
-
<h3><?php _e( 'Disable comments', '
|
113 |
-
<p><?php _e( 'Disables comments on the entire site or on specific pages.', '
|
114 |
</div>
|
115 |
</div>
|
116 |
<div class="col-sm-4">
|
117 |
<div class="wbcr-factory-feature-box">
|
118 |
<span class="dashicons dashicons-update"></span>
|
119 |
-
<h3><?php _e( 'Manage updates', '
|
120 |
<p><?php _e( 'Enables or disables automatically updates for plugins, themes and core. It is also possible
|
121 |
-
to disable all updates.', '
|
122 |
</div>
|
123 |
</div>
|
124 |
<div class="col-sm-4">
|
125 |
<div class="wbcr-factory-feature-box">
|
126 |
<span class="dashicons dashicons-admin-plugins"></span>
|
127 |
-
<h3><?php _e( 'Manage widgets', '
|
128 |
-
<p><?php _e( 'Allows you to remove unused widgets.', '
|
129 |
</div>
|
130 |
</div>
|
131 |
<div class="col-sm-4">
|
132 |
<div class="wbcr-factory-feature-box">
|
133 |
<span class="dashicons dashicons-dashboard"></span>
|
134 |
-
<h3><?php _e( 'Speed Optimization', '
|
135 |
-
<p><?php _e( 'Increases performance by disabling unused functions and reducing the number of requests.', '
|
136 |
</div>
|
137 |
</div>
|
138 |
<div class="col-sm-4">
|
139 |
<div class="wbcr-factory-feature-box">
|
140 |
<span class="dashicons dashicons-visibility"></span>
|
141 |
-
<h3><?php _e( 'Site privacy', '
|
142 |
<p><?php _e( 'Allows you to hide the version of the site and plugins. Allows you to hide your
|
143 |
-
WordPress.', '
|
144 |
</div>
|
145 |
</div>
|
146 |
<div class="col-sm-4">
|
147 |
<div class="wbcr-factory-feature-box">
|
148 |
<span class="dashicons dashicons-admin-settings"></span>
|
149 |
-
<h3><?php _e( 'Easy setup', '
|
150 |
-
<p><?php _e( 'In quick mode, you can easily configure the plugin according to your needs.', '
|
151 |
</div>
|
152 |
</div>
|
153 |
</div>
|
@@ -161,7 +161,7 @@ class Wbcr_FactoryClearfy220_MoreFeaturesPage extends Wbcr_FactoryPages428_Impre
|
|
161 |
$url .= '?utm_source=wordpress.org&utm_campaign=' . $this->plugin->getPluginName();
|
162 |
?>
|
163 |
<a href="<?= $url ?>" class="wbcr-factory-premium-button" target="_blank">
|
164 |
-
<?php _e( 'Get the ultimate plugin 100% FREE', '
|
165 |
</a>
|
166 |
</div>
|
167 |
<?php
|
15 |
}
|
16 |
|
17 |
|
18 |
+
class Wbcr_FactoryClearfy221_MoreFeaturesPage extends Wbcr_FactoryPages429_ImpressiveThemplate {
|
19 |
|
20 |
/**
|
21 |
* {@inheritDoc}
|
60 |
*/
|
61 |
public $internal = true;
|
62 |
|
63 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
64 |
+
$this->menu_title = __( 'More features (<b>free</b>)', 'wbcr_factory_clearfy_221' );
|
65 |
|
66 |
parent::__construct( $plugin );
|
67 |
|
74 |
* @return string
|
75 |
*/
|
76 |
public function getPageTitle() {
|
77 |
+
return __( 'More features', 'wbcr_factory_clearfy_221' );
|
78 |
}
|
79 |
|
80 |
/**
|
88 |
<div class="col-sm-4">
|
89 |
<div class="wbcr-factory-feature-box">
|
90 |
<span class="dashicons dashicons-yes"></span>
|
91 |
+
<h3><?php _e( 'Code cleaning', 'wbcr_factory_clearfy_221' ) ?></h3>
|
92 |
+
<p><?php _e( 'Clears the source code of the page from unused code.', 'wbcr_factory_clearfy_221' ) ?></p>
|
93 |
</div>
|
94 |
</div>
|
95 |
<div class="col-sm-4">
|
96 |
<div class="wbcr-factory-feature-box">
|
97 |
<span class="dashicons dashicons-chart-bar"></span>
|
98 |
+
<h3><?php _e( 'Improve SEO', 'wbcr_factory_clearfy_221' ) ?></h3>
|
99 |
+
<p><?php _e( 'Removes duplicate pages, closes external links, changes the headers of the server.', 'wbcr_factory_clearfy_221' ) ?></p>
|
100 |
</div>
|
101 |
</div>
|
102 |
<div class="col-sm-4">
|
103 |
<div class="wbcr-factory-feature-box">
|
104 |
<span class="dashicons dashicons-shield-alt"></span>
|
105 |
+
<h3><?php _e( 'Site protection', 'wbcr_factory_clearfy_221' ) ?></h3>
|
106 |
+
<p><?php _e( 'Enables and disables features that improve the protection of your site.', 'wbcr_factory_clearfy_221' ) ?></p>
|
107 |
</div>
|
108 |
</div>
|
109 |
<div class="col-sm-4">
|
110 |
<div class="wbcr-factory-feature-box">
|
111 |
<span class="dashicons dashicons-welcome-comments"></span>
|
112 |
+
<h3><?php _e( 'Disable comments', 'wbcr_factory_clearfy_221' ) ?></h3>
|
113 |
+
<p><?php _e( 'Disables comments on the entire site or on specific pages.', 'wbcr_factory_clearfy_221' ) ?></p>
|
114 |
</div>
|
115 |
</div>
|
116 |
<div class="col-sm-4">
|
117 |
<div class="wbcr-factory-feature-box">
|
118 |
<span class="dashicons dashicons-update"></span>
|
119 |
+
<h3><?php _e( 'Manage updates', 'wbcr_factory_clearfy_221' ) ?></h3>
|
120 |
<p><?php _e( 'Enables or disables automatically updates for plugins, themes and core. It is also possible
|
121 |
+
to disable all updates.', 'wbcr_factory_clearfy_221' ) ?></p>
|
122 |
</div>
|
123 |
</div>
|
124 |
<div class="col-sm-4">
|
125 |
<div class="wbcr-factory-feature-box">
|
126 |
<span class="dashicons dashicons-admin-plugins"></span>
|
127 |
+
<h3><?php _e( 'Manage widgets', 'wbcr_factory_clearfy_221' ) ?></h3>
|
128 |
+
<p><?php _e( 'Allows you to remove unused widgets.', 'wbcr_factory_clearfy_221' ) ?></p>
|
129 |
</div>
|
130 |
</div>
|
131 |
<div class="col-sm-4">
|
132 |
<div class="wbcr-factory-feature-box">
|
133 |
<span class="dashicons dashicons-dashboard"></span>
|
134 |
+
<h3><?php _e( 'Speed Optimization', 'wbcr_factory_clearfy_221' ) ?></h3>
|
135 |
+
<p><?php _e( 'Increases performance by disabling unused functions and reducing the number of requests.', 'wbcr_factory_clearfy_221' ) ?></p>
|
136 |
</div>
|
137 |
</div>
|
138 |
<div class="col-sm-4">
|
139 |
<div class="wbcr-factory-feature-box">
|
140 |
<span class="dashicons dashicons-visibility"></span>
|
141 |
+
<h3><?php _e( 'Site privacy', 'wbcr_factory_clearfy_221' ) ?></h3>
|
142 |
<p><?php _e( 'Allows you to hide the version of the site and plugins. Allows you to hide your
|
143 |
+
WordPress.', 'wbcr_factory_clearfy_221' ) ?></p>
|
144 |
</div>
|
145 |
</div>
|
146 |
<div class="col-sm-4">
|
147 |
<div class="wbcr-factory-feature-box">
|
148 |
<span class="dashicons dashicons-admin-settings"></span>
|
149 |
+
<h3><?php _e( 'Easy setup', 'wbcr_factory_clearfy_221' ) ?></h3>
|
150 |
+
<p><?php _e( 'In quick mode, you can easily configure the plugin according to your needs.', 'wbcr_factory_clearfy_221' ) ?></p>
|
151 |
</div>
|
152 |
</div>
|
153 |
</div>
|
161 |
$url .= '?utm_source=wordpress.org&utm_campaign=' . $this->plugin->getPluginName();
|
162 |
?>
|
163 |
<a href="<?= $url ?>" class="wbcr-factory-premium-button" target="_blank">
|
164 |
+
<?php _e( 'Get the ultimate plugin 100% FREE', 'wbcr_factory_clearfy_221' ) ?>
|
165 |
</a>
|
166 |
</div>
|
167 |
<?php
|
libs/factory/clearfy/pages/class-pages.php
CHANGED
@@ -14,7 +14,7 @@ if( !defined('ABSPATH') ) {
|
|
14 |
}
|
15 |
|
16 |
/**
|
17 |
-
* Class
|
18 |
*
|
19 |
* @method string getInfoWidget() - get widget content information
|
20 |
* @method string getRatingWidget(array $args = []) - get widget content rating
|
@@ -22,7 +22,7 @@ if( !defined('ABSPATH') ) {
|
|
22 |
* @method string getBusinessSuggetionWidget()
|
23 |
* @method string getSupportWidget
|
24 |
*/
|
25 |
-
class
|
26 |
|
27 |
/**
|
28 |
* {@inheritDoc}
|
@@ -57,9 +57,9 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
57 |
public $show_search_options_form = true;
|
58 |
|
59 |
/**
|
60 |
-
* @param
|
61 |
*/
|
62 |
-
public function __construct(
|
63 |
{
|
64 |
parent::__construct($plugin);
|
65 |
|
@@ -95,18 +95,18 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
95 |
/**
|
96 |
* Requests assets (js and css) for the page.
|
97 |
*
|
98 |
-
* @param
|
99 |
-
* @param
|
100 |
*
|
101 |
* @return void
|
102 |
-
* @see
|
103 |
*
|
104 |
*/
|
105 |
public function assets($scripts, $styles)
|
106 |
{
|
107 |
parent::assets($scripts, $styles);
|
108 |
|
109 |
-
$this->styles->add(
|
110 |
|
111 |
// todo: вынести все общие скрипты и стили фреймворка, продумать совместимость с другими плагинами
|
112 |
if( defined('WCL_PLUGIN_URL') ) {
|
@@ -115,10 +115,10 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
115 |
|
116 |
// Script for search form on plugin options
|
117 |
if( $this->show_search_options_form && "options" === $this->type ) {
|
118 |
-
$this->styles->add(
|
119 |
|
120 |
-
$this->scripts->add(
|
121 |
-
$this->scripts->add(
|
122 |
}
|
123 |
|
124 |
/**
|
@@ -131,7 +131,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
131 |
}
|
132 |
|
133 |
/**
|
134 |
-
* @return
|
135 |
*/
|
136 |
public function request()
|
137 |
{
|
@@ -227,7 +227,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
227 |
/**
|
228 |
* @since 4.0.9 - является устаревшим
|
229 |
*/
|
230 |
-
$widgets =
|
231 |
$widgets,
|
232 |
$position,
|
233 |
$this->plugin,
|
@@ -256,24 +256,24 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
256 |
$purchase_url = $this->plugin->get_support()->get_pricing_url(true, 'right_sidebar_ads');
|
257 |
|
258 |
$default_features = [
|
259 |
-
'4_premium' => __('4 premium components now;', '
|
260 |
-
'40_premium' => __('40 new premium components within a year for the single price;', '
|
261 |
-
'multisite_support' => __('Multisite support;', '
|
262 |
-
'advance_settings' => __('Advanced settings;', '
|
263 |
-
'no_ads' => __('No ads;', '
|
264 |
-
'perfect_support' => __('Perfect support.', '
|
265 |
];
|
266 |
|
267 |
/**
|
268 |
* @since 2.0.8 - added
|
269 |
*/
|
270 |
-
$suggetion_title = __('MORE IN CLEARFY <span>BUSINESS</span>', '
|
271 |
$suggetion_title = apply_filters('wbcr/clearfy/pages/suggetion_title', $suggetion_title, $plugin_name, $this->id);
|
272 |
|
273 |
/**
|
274 |
* @since 2.0.8 - deprecated
|
275 |
*/
|
276 |
-
$suggetion_features =
|
277 |
$default_features,
|
278 |
$this->plugin->getPluginName(),
|
279 |
$this->id
|
@@ -289,7 +289,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
289 |
$suggetion_features = $default_features;
|
290 |
}
|
291 |
?>
|
292 |
-
<div class="wbcr-factory-sidebar-widget wbcr-factory-clearfy-
|
293 |
<h3><?php echo $suggetion_title; ?></h3>
|
294 |
<ul>
|
295 |
<?php if( !empty($suggetion_features) ): ?>
|
@@ -300,7 +300,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
300 |
</ul>
|
301 |
<a href="<?php echo $purchase_url ?>" class="wbcr-factory-purchase-premium" target="_blank"
|
302 |
rel="noopener">
|
303 |
-
<?php printf(__('Upgrade for $%s', '
|
304 |
</a>
|
305 |
</div>
|
306 |
<?php
|
@@ -322,25 +322,25 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
322 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
323 |
alt=""/>
|
324 |
</span>
|
325 |
-
- <?php _e('A neutral setting that can not harm your site, but you must be sure that you need to use it.', '
|
326 |
</li>
|
327 |
<li>
|
328 |
<span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-grey">
|
329 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
330 |
alt=""/>
|
331 |
</span>
|
332 |
-
- <?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.', '
|
333 |
</li>
|
334 |
<li>
|
335 |
<span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-green">
|
336 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
337 |
alt=""/>
|
338 |
</span>
|
339 |
-
- <?php _e('Absolutely safe setting, We recommend to use.', '
|
340 |
</li>
|
341 |
</ul>
|
342 |
----------<br>
|
343 |
-
<p><?php _e('Hover to the icon to get help for the feature you selected.', '
|
344 |
</div>
|
345 |
<?php
|
346 |
}
|
@@ -362,19 +362,19 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
362 |
$page_url = $args[0];
|
363 |
}
|
364 |
|
365 |
-
$page_url = apply_filters('
|
366 |
|
367 |
?>
|
368 |
<div class="wbcr-factory-sidebar-widget">
|
369 |
<p>
|
370 |
-
<strong><?php _e('Do you want the plugin to improved and update?', '
|
371 |
</p>
|
372 |
-
<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.', '
|
373 |
-
<p><?php _e('And also write your ideas on how to extend or improve the plugin.', '
|
374 |
<p>
|
375 |
<i class="wbcr-factory-icon-5stars"></i>
|
376 |
<a href="<?= $page_url ?>" title="Go rate us" target="_blank">
|
377 |
-
<strong><?php _e('Go rate us and push ideas', '
|
378 |
</a>
|
379 |
</p>
|
380 |
</div>
|
@@ -392,7 +392,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
392 |
?>
|
393 |
<div class="wbcr-factory-sidebar-widget">
|
394 |
<p>
|
395 |
-
<strong><?php _e('Donation for plugin development', '
|
396 |
</p>
|
397 |
<?php if( get_locale() !== 'ru_RU' ): ?>
|
398 |
<form id="wbcr-factory-paypal-donation-form" action="https://www.paypal.com/cgi-bin/webscr"
|
@@ -400,7 +400,7 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
400 |
<input type="hidden" name="cmd" value="_s-xclick">
|
401 |
<input type="hidden" name="hosted_button_id" value="VDX7JNTQPNPFW">
|
402 |
<div class="wbcr-factory-donation-price">5$</div>
|
403 |
-
<input type="image" src="<?=
|
404 |
border="0" name="submit" alt="PayPal – The safer, easier way to pay online!">
|
405 |
</form>
|
406 |
<?php else: ?>
|
@@ -452,13 +452,13 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
452 |
*/
|
453 |
public function register_options_to_search()
|
454 |
{
|
455 |
-
require_once
|
456 |
|
457 |
$options = $this->getPageOptions();
|
458 |
$page_url = $this->getBaseUrl();
|
459 |
$page_id = $this->getResultId();
|
460 |
|
461 |
-
\WBCR\
|
462 |
}
|
463 |
|
464 |
/**
|
@@ -472,11 +472,11 @@ class Wbcr_FactoryClearfy220_PageBase extends Wbcr_FactoryPages428_ImpressiveThe
|
|
472 |
return;
|
473 |
}
|
474 |
?>
|
475 |
-
<div id="wbcr-factory-clearfy-
|
476 |
-
<label for="autocomplete" class="wbcr-factory-clearfy-
|
477 |
-
<?php _e('Can\'t find the settings you need? Use the search by the plugin options:', '
|
478 |
</label>
|
479 |
-
<input type="text" name="country" id="wbcr-factory-clearfy-
|
480 |
|
481 |
</div>
|
482 |
<?php
|
14 |
}
|
15 |
|
16 |
/**
|
17 |
+
* Class Wbcr_FactoryPages429_ImpressiveThemplate
|
18 |
*
|
19 |
* @method string getInfoWidget() - get widget content information
|
20 |
* @method string getRatingWidget(array $args = []) - get widget content rating
|
22 |
* @method string getBusinessSuggetionWidget()
|
23 |
* @method string getSupportWidget
|
24 |
*/
|
25 |
+
class Wbcr_FactoryClearfy221_PageBase extends Wbcr_FactoryPages429_ImpressiveThemplate {
|
26 |
|
27 |
/**
|
28 |
* {@inheritDoc}
|
57 |
public $show_search_options_form = true;
|
58 |
|
59 |
/**
|
60 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
61 |
*/
|
62 |
+
public function __construct(Wbcr_Factory429_Plugin $plugin)
|
63 |
{
|
64 |
parent::__construct($plugin);
|
65 |
|
95 |
/**
|
96 |
* Requests assets (js and css) for the page.
|
97 |
*
|
98 |
+
* @param Wbcr_Factory429_ScriptList $scripts
|
99 |
+
* @param Wbcr_Factory429_StyleList $styles
|
100 |
*
|
101 |
* @return void
|
102 |
+
* @see Wbcr_FactoryPages429_AdminPage
|
103 |
*
|
104 |
*/
|
105 |
public function assets($scripts, $styles)
|
106 |
{
|
107 |
parent::assets($scripts, $styles);
|
108 |
|
109 |
+
$this->styles->add(FACTORY_CLEARFY_221_URL . '/assets/css/clearfy-base.css');
|
110 |
|
111 |
// todo: вынести все общие скрипты и стили фреймворка, продумать совместимость с другими плагинами
|
112 |
if( defined('WCL_PLUGIN_URL') ) {
|
115 |
|
116 |
// Script for search form on plugin options
|
117 |
if( $this->show_search_options_form && "options" === $this->type ) {
|
118 |
+
$this->styles->add(FACTORY_CLEARFY_221_URL . '/assets/css/libs/autocomplete.css');
|
119 |
|
120 |
+
$this->scripts->add(FACTORY_CLEARFY_221_URL . '/assets/js/libs/jquery.autocomplete.min.js');
|
121 |
+
$this->scripts->add(FACTORY_CLEARFY_221_URL . '/assets/js/search-options.js');
|
122 |
}
|
123 |
|
124 |
/**
|
131 |
}
|
132 |
|
133 |
/**
|
134 |
+
* @return Wbcr_Factory429_Request
|
135 |
*/
|
136 |
public function request()
|
137 |
{
|
227 |
/**
|
228 |
* @since 4.0.9 - является устаревшим
|
229 |
*/
|
230 |
+
$widgets = wbcr_factory_429_apply_filters_deprecated('wbcr_factory_pages_429_imppage_get_widgets', [
|
231 |
$widgets,
|
232 |
$position,
|
233 |
$this->plugin,
|
256 |
$purchase_url = $this->plugin->get_support()->get_pricing_url(true, 'right_sidebar_ads');
|
257 |
|
258 |
$default_features = [
|
259 |
+
'4_premium' => __('4 premium components now;', 'wbcr_factory_clearfy_221'),
|
260 |
+
'40_premium' => __('40 new premium components within a year for the single price;', 'wbcr_factory_clearfy_221'),
|
261 |
+
'multisite_support' => __('Multisite support;', 'wbcr_factory_clearfy_221'),
|
262 |
+
'advance_settings' => __('Advanced settings;', 'wbcr_factory_clearfy_221'),
|
263 |
+
'no_ads' => __('No ads;', 'wbcr_factory_clearfy_221'),
|
264 |
+
'perfect_support' => __('Perfect support.', 'wbcr_factory_clearfy_221')
|
265 |
];
|
266 |
|
267 |
/**
|
268 |
* @since 2.0.8 - added
|
269 |
*/
|
270 |
+
$suggetion_title = __('MORE IN CLEARFY <span>BUSINESS</span>', 'wbcr_factory_clearfy_221');
|
271 |
$suggetion_title = apply_filters('wbcr/clearfy/pages/suggetion_title', $suggetion_title, $plugin_name, $this->id);
|
272 |
|
273 |
/**
|
274 |
* @since 2.0.8 - deprecated
|
275 |
*/
|
276 |
+
$suggetion_features = wbcr_factory_429_apply_filters_deprecated('wbcr/clearfy/page_bussines_suggetion_features', [
|
277 |
$default_features,
|
278 |
$this->plugin->getPluginName(),
|
279 |
$this->id
|
289 |
$suggetion_features = $default_features;
|
290 |
}
|
291 |
?>
|
292 |
+
<div class="wbcr-factory-sidebar-widget wbcr-factory-clearfy-221-pro-suggettion">
|
293 |
<h3><?php echo $suggetion_title; ?></h3>
|
294 |
<ul>
|
295 |
<?php if( !empty($suggetion_features) ): ?>
|
300 |
</ul>
|
301 |
<a href="<?php echo $purchase_url ?>" class="wbcr-factory-purchase-premium" target="_blank"
|
302 |
rel="noopener">
|
303 |
+
<?php printf(__('Upgrade for $%s', 'wbcr_factory_clearfy_221'), $upgrade_price) ?>
|
304 |
</a>
|
305 |
</div>
|
306 |
<?php
|
322 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
323 |
alt=""/>
|
324 |
</span>
|
325 |
+
- <?php _e('A neutral setting that can not harm your site, but you must be sure that you need to use it.', 'wbcr_factory_clearfy_221'); ?>
|
326 |
</li>
|
327 |
<li>
|
328 |
<span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-grey">
|
329 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
330 |
alt=""/>
|
331 |
</span>
|
332 |
+
- <?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_clearfy_221'); ?>
|
333 |
</li>
|
334 |
<li>
|
335 |
<span class="wbcr-factory-hint-icon-simple wbcr-factory-simple-green">
|
336 |
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAQAAABKmM6bAAAAUUlEQVQIHU3BsQ1AQABA0X/komIrnQHYwyhqQ1hBo9KZRKL9CBfeAwy2ri42JA4mPQ9rJ6OVt0BisFM3Po7qbEliru7m/FkY+TN64ZVxEzh4ndrMN7+Z+jXCAAAAAElFTkSuQmCC"
|
337 |
alt=""/>
|
338 |
</span>
|
339 |
+
- <?php _e('Absolutely safe setting, We recommend to use.', 'wbcr_factory_clearfy_221'); ?>
|
340 |
</li>
|
341 |
</ul>
|
342 |
----------<br>
|
343 |
+
<p><?php _e('Hover to the icon to get help for the feature you selected.', 'wbcr_factory_clearfy_221'); ?></p>
|
344 |
</div>
|
345 |
<?php
|
346 |
}
|
362 |
$page_url = $args[0];
|
363 |
}
|
364 |
|
365 |
+
$page_url = apply_filters('wbcr_factory_pages_429_imppage_rating_widget_url', $page_url, $this->plugin->getPluginName(), $this->getResultId());
|
366 |
|
367 |
?>
|
368 |
<div class="wbcr-factory-sidebar-widget">
|
369 |
<p>
|
370 |
+
<strong><?php _e('Do you want the plugin to improved and update?', 'wbcr_factory_clearfy_221'); ?></strong>
|
371 |
</p>
|
372 |
+
<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_clearfy_221'); ?></p>
|
373 |
+
<p><?php _e('And also write your ideas on how to extend or improve the plugin.', 'wbcr_factory_clearfy_221'); ?></p>
|
374 |
<p>
|
375 |
<i class="wbcr-factory-icon-5stars"></i>
|
376 |
<a href="<?= $page_url ?>" title="Go rate us" target="_blank">
|
377 |
+
<strong><?php _e('Go rate us and push ideas', 'wbcr_factory_clearfy_221'); ?></strong>
|
378 |
</a>
|
379 |
</p>
|
380 |
</div>
|
392 |
?>
|
393 |
<div class="wbcr-factory-sidebar-widget">
|
394 |
<p>
|
395 |
+
<strong><?php _e('Donation for plugin development', 'wbcr_factory_clearfy_221'); ?></strong>
|
396 |
</p>
|
397 |
<?php if( get_locale() !== 'ru_RU' ): ?>
|
398 |
<form id="wbcr-factory-paypal-donation-form" action="https://www.paypal.com/cgi-bin/webscr"
|
400 |
<input type="hidden" name="cmd" value="_s-xclick">
|
401 |
<input type="hidden" name="hosted_button_id" value="VDX7JNTQPNPFW">
|
402 |
<div class="wbcr-factory-donation-price">5$</div>
|
403 |
+
<input type="image" src="<?= FACTORY_PAGES_429_URL ?>/templates/assets/img/paypal-donate.png"
|
404 |
border="0" name="submit" alt="PayPal – The safer, easier way to pay online!">
|
405 |
</form>
|
406 |
<?php else: ?>
|
452 |
*/
|
453 |
public function register_options_to_search()
|
454 |
{
|
455 |
+
require_once FACTORY_CLEARFY_221_DIR . '/includes/class-search-options.php';
|
456 |
|
457 |
$options = $this->getPageOptions();
|
458 |
$page_url = $this->getBaseUrl();
|
459 |
$page_id = $this->getResultId();
|
460 |
|
461 |
+
\WBCR\Factory_Clearfy_221\Search_Options::register_options($options, $page_url, $page_id);
|
462 |
}
|
463 |
|
464 |
/**
|
472 |
return;
|
473 |
}
|
474 |
?>
|
475 |
+
<div id="wbcr-factory-clearfy-221__search_options_form" class="wbcr-factory-clearfy-221__autocomplete-wrap">
|
476 |
+
<label for="autocomplete" class="wbcr-factory-clearfy-221__autocomplete-label">
|
477 |
+
<?php _e('Can\'t find the settings you need? Use the search by the plugin options:', 'wbcr_factory_clearfy_221'); ?>
|
478 |
</label>
|
479 |
+
<input type="text" name="country" id="wbcr-factory-clearfy-221__autocomplete"/>
|
480 |
|
481 |
</div>
|
482 |
<?php
|
libs/factory/core/boot.php
CHANGED
@@ -14,49 +14,49 @@ if( !defined('ABSPATH') ) {
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
if( defined('
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
-
define('
|
22 |
|
23 |
-
define('
|
24 |
|
25 |
-
define('
|
26 |
-
define('
|
27 |
|
28 |
-
load_plugin_textdomain('
|
29 |
|
30 |
#comp merge
|
31 |
-
require_once(
|
32 |
|
33 |
-
require_once(
|
34 |
-
require_once(
|
35 |
|
36 |
-
require_once(
|
37 |
-
require_once(
|
38 |
-
require_once(
|
39 |
-
require_once(
|
40 |
-
require_once(
|
41 |
|
42 |
// ASSETS
|
43 |
-
require_once(
|
44 |
-
require_once(
|
45 |
-
require_once(
|
46 |
|
47 |
// PREMIUM
|
48 |
-
require_once(
|
49 |
-
require_once(
|
50 |
-
require_once(
|
51 |
|
52 |
// UPDATES
|
53 |
-
require_once(
|
54 |
-
require_once(
|
55 |
-
require_once(
|
56 |
-
require_once(
|
57 |
|
58 |
-
require_once(
|
59 |
|
60 |
-
require_once(
|
61 |
-
require_once(
|
62 |
#endcomp
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( defined('FACTORY_429_LOADED') ) {
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
+
define('FACTORY_429_LOADED', true);
|
22 |
|
23 |
+
define('FACTORY_429_VERSION', '4.2.9');
|
24 |
|
25 |
+
define('FACTORY_429_DIR', dirname(__FILE__));
|
26 |
+
define('FACTORY_429_URL', plugins_url(null, __FILE__));
|
27 |
|
28 |
+
load_plugin_textdomain('wbcr_factory_429', false, dirname(plugin_basename(__FILE__)) . '/langs');
|
29 |
|
30 |
#comp merge
|
31 |
+
require_once(FACTORY_429_DIR . '/includes/functions.php');
|
32 |
|
33 |
+
require_once(FACTORY_429_DIR . '/includes/entities/class-factory-paths.php');
|
34 |
+
require_once(FACTORY_429_DIR . '/includes/entities/class-factory-support.php');
|
35 |
|
36 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-requests.php');
|
37 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-options.php');
|
38 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-plugin-base.php');
|
39 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-migrations.php');
|
40 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-notices.php');
|
41 |
|
42 |
// ASSETS
|
43 |
+
require_once(FACTORY_429_DIR . '/includes/assets-managment/class-factory-assets-list.php');
|
44 |
+
require_once(FACTORY_429_DIR . '/includes/assets-managment/class-factory-script-list.php');
|
45 |
+
require_once(FACTORY_429_DIR . '/includes/assets-managment/class-factory-style-list.php');
|
46 |
|
47 |
// PREMIUM
|
48 |
+
require_once(FACTORY_429_DIR . '/includes/premium/class-factory-license-interface.php');
|
49 |
+
require_once(FACTORY_429_DIR . '/includes/premium/class-factory-provider-abstract.php');
|
50 |
+
require_once(FACTORY_429_DIR . '/includes/premium/class-factory-manager.php');
|
51 |
|
52 |
// UPDATES
|
53 |
+
require_once(FACTORY_429_DIR . '/includes/updates/repositories/class-factory-repository-abstract.php');
|
54 |
+
require_once(FACTORY_429_DIR . '/includes/updates/repositories/class-factory-wordpress.php');
|
55 |
+
require_once(FACTORY_429_DIR . '/includes/updates/class-factory-upgrader.php');
|
56 |
+
require_once(FACTORY_429_DIR . '/includes/updates/class-factory-premium-upgrader.php');
|
57 |
|
58 |
+
require_once(FACTORY_429_DIR . '/includes/class-factory-plugin-abstract.php');
|
59 |
|
60 |
+
require_once(FACTORY_429_DIR . '/includes/activation/class-factory-activator.php');
|
61 |
+
require_once(FACTORY_429_DIR . '/includes/activation/class-factory-update.php');
|
62 |
#endcomp
|
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
|
23 |
|
24 |
/**
|
25 |
* Curent plugin.
|
26 |
*
|
27 |
-
* @var
|
28 |
*/
|
29 |
public $plugin;
|
30 |
|
31 |
-
public function __construct(
|
32 |
$this->plugin = $plugin;
|
33 |
}
|
34 |
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
+
abstract class Wbcr_Factory429_Activator {
|
23 |
|
24 |
/**
|
25 |
* Curent plugin.
|
26 |
*
|
27 |
+
* @var Wbcr_Factory429_Plugin
|
28 |
*/
|
29 |
public $plugin;
|
30 |
|
31 |
+
public function __construct( Wbcr_Factory429_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
|
24 |
|
25 |
/**
|
26 |
* Current plugin
|
27 |
*
|
28 |
-
* @var
|
29 |
*/
|
30 |
var $plugin;
|
31 |
|
32 |
-
public function __construct(
|
33 |
$this->plugin = $plugin;
|
34 |
}
|
35 |
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
+
abstract class Wbcr_Factory429_Update {
|
24 |
|
25 |
/**
|
26 |
* Current plugin
|
27 |
*
|
28 |
+
* @var Wbcr_Factory429_Plugin
|
29 |
*/
|
30 |
var $plugin;
|
31 |
|
32 |
+
public function __construct( Wbcr_Factory429_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
|
23 |
|
24 |
protected $all = [];
|
25 |
public $header_place = [];
|
@@ -29,15 +29,15 @@ class Wbcr_Factory428_AssetsList {
|
|
29 |
protected $default_place;
|
30 |
|
31 |
/**
|
32 |
-
* @var
|
33 |
*/
|
34 |
protected $plugin;
|
35 |
|
36 |
/**
|
37 |
-
* @param
|
38 |
* @param bool $defaultIsFooter
|
39 |
*/
|
40 |
-
public function __construct(
|
41 |
$this->plugin = $plugin;
|
42 |
|
43 |
if ( $defaultIsFooter ) {
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
+
class Wbcr_Factory429_AssetsList {
|
23 |
|
24 |
protected $all = [];
|
25 |
public $header_place = [];
|
29 |
protected $default_place;
|
30 |
|
31 |
/**
|
32 |
+
* @var Wbcr_Factory429_Plugin
|
33 |
*/
|
34 |
protected $plugin;
|
35 |
|
36 |
/**
|
37 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
38 |
* @param bool $defaultIsFooter
|
39 |
*/
|
40 |
+
public function __construct( Wbcr_Factory429_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
|
24 |
|
25 |
public $localize_data = [];
|
26 |
public $use_ajax = false;
|
@@ -149,7 +149,7 @@ class Wbcr_Factory428_ScriptList extends Wbcr_Factory428_AssetsList {
|
|
149 |
* @param string $varname
|
150 |
* @param string $data
|
151 |
*
|
152 |
-
* @return
|
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_Factory429_ScriptList extends Wbcr_Factory429_AssetsList {
|
24 |
|
25 |
public $localize_data = [];
|
26 |
public $use_ajax = false;
|
149 |
* @param string $varname
|
150 |
* @param string $data
|
151 |
*
|
152 |
+
* @return Wbcr_Factory429_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
|
24 |
|
25 |
/**
|
26 |
* Adds new items to the collection (default place).
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
+
class Wbcr_Factory429_StyleList extends Wbcr_Factory429_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.', '
|
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!', '
|
86 |
}
|
87 |
|
88 |
if ( ! $this->isWpCompatibility() ) {
|
89 |
$has_one = true;
|
90 |
-
$notice_text .= '- ' . sprintf( __( 'You need to update WordPress to %s or higher!', '
|
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_clearfy_221' ), $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_429' ), $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_429' ), $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\
|
4 |
|
5 |
use Exception;
|
6 |
-
use
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
@@ -35,11 +35,11 @@ class Migrations {
|
|
35 |
/**
|
36 |
* Migrations constructor.
|
37 |
*
|
38 |
-
* @param
|
39 |
*
|
40 |
* @throws Exception
|
41 |
*/
|
42 |
-
public function __construct(
|
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', '
|
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', '
|
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:", "
|
166 |
|
167 |
-
$notice_text .= __( "Old plugin version (debug):", "
|
168 |
-
$notice_text .= __( "Current plugin version:", "
|
169 |
-
$notice_text .= __( "Need migration:", "
|
170 |
-
$notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "
|
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', '
|
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.', '
|
509 |
}
|
510 |
|
511 |
$tokens = token_get_all( $phpCode );
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429;
|
4 |
|
5 |
use Exception;
|
6 |
+
use Wbcr_Factory429_Plugin;
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
35 |
/**
|
36 |
* Migrations constructor.
|
37 |
*
|
38 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
39 |
*
|
40 |
* @throws Exception
|
41 |
*/
|
42 |
+
public function __construct( Wbcr_Factory429_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_429' ) . "</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_429' ) . '</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_429" ) . ' ' . date( "Y-m-d H:i:s", $this->get_plugin_activated_time() ) . "<br>";
|
166 |
|
167 |
+
$notice_text .= __( "Old plugin version (debug):", "wbcr_factory_429" ) . ' ' . $this->get_old_plugin_version() . "<br>";
|
168 |
+
$notice_text .= __( "Current plugin version:", "wbcr_factory_429" ) . ' ' . $this->get_current_plugin_version() . "<br>";
|
169 |
+
$notice_text .= __( "Need migration:", "wbcr_factory_429" ) . ' ' . ( $this->need_migration() ? "true" : "false" ) . "<br><br>";
|
170 |
+
$notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "wbcr_factory_429" ) . "</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_429' ) . '</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_429' ) );
|
509 |
}
|
510 |
|
511 |
$tokens = token_get_all( $phpCode );
|
libs/factory/core/includes/class-factory-notices.php
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
-
use
|
6 |
|
7 |
// Exit if accessed directly
|
8 |
-
if
|
9 |
exit;
|
10 |
}
|
11 |
|
@@ -27,7 +27,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
27 |
class Notices {
|
28 |
|
29 |
/**
|
30 |
-
* @var
|
31 |
*/
|
32 |
protected $plugin;
|
33 |
/**
|
@@ -58,22 +58,23 @@ class Notices {
|
|
58 |
/**
|
59 |
* Инициализируем уведомлений сразу после загрузки модуля уведомлений
|
60 |
*
|
61 |
-
* @param
|
62 |
*/
|
63 |
-
public function __construct(
|
|
|
64 |
//default notices
|
65 |
//---
|
66 |
|
67 |
-
$this->plugin
|
68 |
-
$this->dissmised_notices = $this->plugin->getPopulateOption(
|
69 |
|
70 |
-
add_action(
|
71 |
|
72 |
-
if
|
73 |
-
add_action(
|
74 |
$this,
|
75 |
'dismiss_notice'
|
76 |
-
]
|
77 |
}
|
78 |
}
|
79 |
|
@@ -82,51 +83,37 @@ class Notices {
|
|
82 |
* Уведомления собираются через фильтр wbcr_factory_admin_notices, если в массиве уведомлений,
|
83 |
* хотя бы одно, соответствует условиям в параметре $notice['where'], то метод печает вспомогательные скрипты и уведомления.
|
84 |
*/
|
85 |
-
public function currentScreenAction()
|
|
|
86 |
/**
|
87 |
-
* @since 2.1.2 -
|
88 |
*/
|
89 |
-
$this->notices =
|
90 |
-
$this->notices,
|
91 |
-
$this->plugin->getPluginName(),
|
92 |
-
], '2.1.2', 'wbcr/factory/admin_notices' );
|
93 |
|
94 |
-
|
95 |
-
* @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_428
|
96 |
-
*/
|
97 |
-
$this->notices = apply_filters( 'wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName() );
|
98 |
-
|
99 |
-
if ( count( $this->notices ) == 0 ) {
|
100 |
return;
|
101 |
}
|
102 |
|
103 |
$screen = get_current_screen();
|
104 |
|
105 |
$has_notices = false;
|
106 |
-
foreach
|
107 |
-
if
|
108 |
continue;
|
109 |
}
|
110 |
|
111 |
-
$where = !
|
112 |
|
113 |
-
if
|
114 |
$has_notices = true;
|
115 |
break;
|
116 |
};
|
117 |
}
|
118 |
|
119 |
-
if
|
120 |
-
add_action(
|
121 |
|
122 |
-
|
123 |
-
if ( current_user_can( 'manage_network' ) ) {
|
124 |
-
add_action( 'network_admin_notices', [ $this, 'show_notices' ] );
|
125 |
-
add_action( 'admin_notices', [ $this, 'show_notices' ] );
|
126 |
-
}
|
127 |
-
} else {
|
128 |
-
add_action( 'admin_notices', [ $this, 'show_notices' ] );
|
129 |
-
}
|
130 |
}
|
131 |
}
|
132 |
|
@@ -135,27 +122,41 @@ class Notices {
|
|
135 |
* Уведомления показываются только на определенных страницах через параметр $notice['where'],
|
136 |
* если уведомление ранее было скрыто или не соотвествует правилам $notice['where'], оно не будет показано!
|
137 |
*/
|
138 |
-
public function show_notices()
|
139 |
-
|
|
|
140 |
return;
|
141 |
}
|
142 |
|
143 |
-
if
|
144 |
return;
|
145 |
}
|
146 |
|
147 |
$screen = get_current_screen();
|
148 |
|
149 |
-
foreach
|
150 |
|
151 |
-
if
|
152 |
continue;
|
153 |
}
|
154 |
|
155 |
-
$where = !
|
156 |
-
|
157 |
-
if
|
158 |
-
$this->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
};
|
160 |
}
|
161 |
}
|
@@ -163,7 +164,7 @@ class Notices {
|
|
163 |
/**
|
164 |
* Показывает уведомление, по переданным параметрам
|
165 |
*
|
166 |
-
* @param array $data
|
167 |
* $data['id'] - Индентификатор уведомления
|
168 |
* $data['type'] - Тип уведомления (error, warning, success)
|
169 |
* $notice['where'] - На каких страницах показывать уведомление ('plugins', 'dashboard', 'edit')
|
@@ -173,36 +174,37 @@ class Notices {
|
|
173 |
* Пример time() + 3600 (1ч), уведомление будет скрыто на 1 час.
|
174 |
* $data['classes'] - Произвольный классы для контейнера уведомления.
|
175 |
*/
|
176 |
-
public function show_notice(
|
177 |
-
|
178 |
-
|
179 |
-
'
|
180 |
-
'
|
181 |
-
'
|
|
|
182 |
'dismiss_expires' => 0,
|
183 |
-
'classes'
|
184 |
-
]
|
185 |
|
186 |
-
if
|
187 |
return;
|
188 |
}
|
189 |
|
190 |
-
$plugin_name = str_replace(
|
191 |
|
192 |
-
$classes = array_merge(
|
193 |
'notice',
|
194 |
'notice-' . $settings['type'],
|
195 |
$plugin_name . '-factory-notice'
|
196 |
-
], $settings['classes']
|
197 |
|
198 |
-
if
|
199 |
$classes[] = 'is-dismissible';
|
200 |
$classes[] = $plugin_name . '-factory-notice-dismiss';
|
201 |
}
|
202 |
?>
|
203 |
-
|
204 |
<?= $data['text'] ?>
|
205 |
-
|
206 |
<?php
|
207 |
}
|
208 |
|
@@ -210,37 +212,38 @@ class Notices {
|
|
210 |
* Когда пользователь нажимает кнопку закрыть уведомление,
|
211 |
* отправляется ajax запрос с вызовом текущего метода
|
212 |
*/
|
213 |
-
public function dismiss_notice()
|
214 |
-
|
215 |
-
|
|
|
216 |
}
|
217 |
|
218 |
-
check_admin_referer(
|
219 |
|
220 |
// Имя уведомления (идентификатор)
|
221 |
-
$name = $this->plugin->request->post(
|
222 |
|
223 |
// Время в Unix timestamp, по истечению, которого уведомление снова будет показано
|
224 |
// Если передан 0, то уведомление будет скрыто навсегда
|
225 |
-
$expires = $this->plugin->request->post(
|
226 |
|
227 |
-
if
|
228 |
-
wp_send_json_error(
|
229 |
}
|
230 |
|
231 |
-
$notices = $this->plugin->getPopulateOption(
|
232 |
|
233 |
-
if
|
234 |
-
foreach
|
235 |
-
if
|
236 |
-
unset(
|
237 |
}
|
238 |
}
|
239 |
}
|
240 |
|
241 |
-
$notices[
|
242 |
|
243 |
-
$this->plugin->updatePopulateOption(
|
244 |
|
245 |
wp_send_json_success();
|
246 |
}
|
@@ -250,11 +253,12 @@ class Notices {
|
|
250 |
* Печает в подвале страницы код, для взаимодействия с сервером через ajax,
|
251 |
* код используется при нажатии на кнопку закрыть уведомление. *
|
252 |
*/
|
253 |
-
public function print_js_code()
|
254 |
-
|
|
|
255 |
|
256 |
?>
|
257 |
-
|
258 |
jQuery(function($) {
|
259 |
|
260 |
$(document).on('click', '.<?php echo $plugin_name; ?>-factory-notice-dismiss .notice-dismiss', function() {
|
@@ -267,7 +271,7 @@ class Notices {
|
|
267 |
});
|
268 |
|
269 |
});
|
270 |
-
|
271 |
<?php
|
272 |
}
|
273 |
|
@@ -275,13 +279,14 @@ class Notices {
|
|
275 |
/**
|
276 |
* Проверяет скрыто уведоление или нет
|
277 |
*
|
278 |
-
* @param string $notice_id
|
279 |
*
|
280 |
* @return bool
|
281 |
*/
|
282 |
-
protected function is_dissmissed(
|
283 |
-
|
284 |
-
|
|
|
285 |
|
286 |
return $expires === 0 || $expires > time();
|
287 |
}
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429;
|
4 |
|
5 |
+
use Wbcr_Factory429_Plugin;
|
6 |
|
7 |
// Exit if accessed directly
|
8 |
+
if( !defined('ABSPATH') ) {
|
9 |
exit;
|
10 |
}
|
11 |
|
27 |
class Notices {
|
28 |
|
29 |
/**
|
30 |
+
* @var Wbcr_Factory429_Plugin
|
31 |
*/
|
32 |
protected $plugin;
|
33 |
/**
|
58 |
/**
|
59 |
* Инициализируем уведомлений сразу после загрузки модуля уведомлений
|
60 |
*
|
61 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
62 |
*/
|
63 |
+
public function __construct($plugin)
|
64 |
+
{
|
65 |
//default notices
|
66 |
//---
|
67 |
|
68 |
+
$this->plugin = $plugin;
|
69 |
+
$this->dissmised_notices = $this->plugin->getPopulateOption('factory_dismissed_notices', []);
|
70 |
|
71 |
+
add_action('current_screen', [$this, 'currentScreenAction']);
|
72 |
|
73 |
+
if( defined('DOING_AJAX') && DOING_AJAX ) {
|
74 |
+
add_action('wp_ajax_' . $this->plugin->getPluginName() . '_dismiss_notice', [
|
75 |
$this,
|
76 |
'dismiss_notice'
|
77 |
+
]);
|
78 |
}
|
79 |
}
|
80 |
|
83 |
* Уведомления собираются через фильтр wbcr_factory_admin_notices, если в массиве уведомлений,
|
84 |
* хотя бы одно, соответствует условиям в параметре $notice['where'], то метод печает вспомогательные скрипты и уведомления.
|
85 |
*/
|
86 |
+
public function currentScreenAction()
|
87 |
+
{
|
88 |
/**
|
89 |
+
* @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_429
|
90 |
*/
|
91 |
+
$this->notices = apply_filters('wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName());
|
|
|
|
|
|
|
92 |
|
93 |
+
if( count($this->notices) == 0 ) {
|
|
|
|
|
|
|
|
|
|
|
94 |
return;
|
95 |
}
|
96 |
|
97 |
$screen = get_current_screen();
|
98 |
|
99 |
$has_notices = false;
|
100 |
+
foreach((array)$this->notices as $notice) {
|
101 |
+
if( !isset($notice['id']) ) {
|
102 |
continue;
|
103 |
}
|
104 |
|
105 |
+
$where = !isset($notice['where']) || empty($notice['where']) ? $this->default_where : $notice['where'];
|
106 |
|
107 |
+
if( in_array($screen->base, $where) && !$this->is_dissmissed($notice['id']) ) {
|
108 |
$has_notices = true;
|
109 |
break;
|
110 |
};
|
111 |
}
|
112 |
|
113 |
+
if( $has_notices ) {
|
114 |
+
add_action('admin_footer', [$this, 'print_js_code']);
|
115 |
|
116 |
+
$this->show_notices();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
}
|
118 |
}
|
119 |
|
122 |
* Уведомления показываются только на определенных страницах через параметр $notice['where'],
|
123 |
* если уведомление ранее было скрыто или не соотвествует правилам $notice['where'], оно не будет показано!
|
124 |
*/
|
125 |
+
public function show_notices()
|
126 |
+
{
|
127 |
+
if( count($this->notices) == 0 ) {
|
128 |
return;
|
129 |
}
|
130 |
|
131 |
+
if( !current_user_can('activate_plugins') || !current_user_can('edit_plugins') || !current_user_can('install_plugins') ) {
|
132 |
return;
|
133 |
}
|
134 |
|
135 |
$screen = get_current_screen();
|
136 |
|
137 |
+
foreach($this->notices as $notice) {
|
138 |
|
139 |
+
if( !isset($notice['id']) ) {
|
140 |
continue;
|
141 |
}
|
142 |
|
143 |
+
$where = !isset($notice['where']) || empty($notice['where']) ? $this->default_where : $notice['where'];
|
144 |
+
|
145 |
+
if( in_array($screen->base, $where) && !$this->is_dissmissed($notice['id']) ) {
|
146 |
+
if( $this->plugin->isNetworkActive() ) {
|
147 |
+
if( current_user_can('manage_network') ) {
|
148 |
+
add_action('network_admin_notices', function () use ($notice) {
|
149 |
+
$this->show_notice($notice);
|
150 |
+
});
|
151 |
+
add_action('admin_notices', function () use ($notice) {
|
152 |
+
$this->show_notice($notice);
|
153 |
+
});
|
154 |
+
}
|
155 |
+
} else {
|
156 |
+
add_action('admin_notices', function () use ($notice) {
|
157 |
+
$this->show_notice($notice);
|
158 |
+
});
|
159 |
+
}
|
160 |
};
|
161 |
}
|
162 |
}
|
164 |
/**
|
165 |
* Показывает уведомление, по переданным параметрам
|
166 |
*
|
167 |
+
* @param array $data - Параметры уведомления
|
168 |
* $data['id'] - Индентификатор уведомления
|
169 |
* $data['type'] - Тип уведомления (error, warning, success)
|
170 |
* $notice['where'] - На каких страницах показывать уведомление ('plugins', 'dashboard', 'edit')
|
174 |
* Пример time() + 3600 (1ч), уведомление будет скрыто на 1 час.
|
175 |
* $data['classes'] - Произвольный классы для контейнера уведомления.
|
176 |
*/
|
177 |
+
public function show_notice($data)
|
178 |
+
{
|
179 |
+
$settings = wp_parse_args($data, [
|
180 |
+
'id' => null,
|
181 |
+
'text' => null,
|
182 |
+
'type' => 'error',
|
183 |
+
'dismissible' => false,
|
184 |
'dismiss_expires' => 0,
|
185 |
+
'classes' => []
|
186 |
+
]);
|
187 |
|
188 |
+
if( empty($settings['id']) || empty($settings['text']) ) {
|
189 |
return;
|
190 |
}
|
191 |
|
192 |
+
$plugin_name = str_replace('_', '-', $this->plugin->getPluginName());
|
193 |
|
194 |
+
$classes = array_merge([
|
195 |
'notice',
|
196 |
'notice-' . $settings['type'],
|
197 |
$plugin_name . '-factory-notice'
|
198 |
+
], $settings['classes']);
|
199 |
|
200 |
+
if( $settings['dismissible'] ) {
|
201 |
$classes[] = 'is-dismissible';
|
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 |
}
|
210 |
|
212 |
* Когда пользователь нажимает кнопку закрыть уведомление,
|
213 |
* отправляется ajax запрос с вызовом текущего метода
|
214 |
*/
|
215 |
+
public function dismiss_notice()
|
216 |
+
{
|
217 |
+
if( !current_user_can('activate_plugins') || !current_user_can('edit_plugins') || !current_user_can('install_plugins') ) {
|
218 |
+
wp_die(-1, 403);
|
219 |
}
|
220 |
|
221 |
+
check_admin_referer($this->plugin->getPluginName() . '_factory_dismiss_notice', 'nonce');
|
222 |
|
223 |
// Имя уведомления (идентификатор)
|
224 |
+
$name = $this->plugin->request->post('name', null, true);
|
225 |
|
226 |
// Время в Unix timestamp, по истечению, которого уведомление снова будет показано
|
227 |
// Если передан 0, то уведомление будет скрыто навсегда
|
228 |
+
$expires = $this->plugin->request->post('expires', 0, 'intval');
|
229 |
|
230 |
+
if( empty($name) ) {
|
231 |
+
wp_send_json_error(['error_message' => 'You must pass the notification "Name"! Action was rejected.']);
|
232 |
}
|
233 |
|
234 |
+
$notices = $this->plugin->getPopulateOption("factory_dismissed_notices", []);
|
235 |
|
236 |
+
if( !empty($notices) ) {
|
237 |
+
foreach((array)$notices as $notice_id => $notice_expires) {
|
238 |
+
if( $notice_expires !== 0 && $notice_expires < time() ) {
|
239 |
+
unset($notices[$notice_id]);
|
240 |
}
|
241 |
}
|
242 |
}
|
243 |
|
244 |
+
$notices[$name] = $expires;
|
245 |
|
246 |
+
$this->plugin->updatePopulateOption('factory_dismissed_notices', $notices);
|
247 |
|
248 |
wp_send_json_success();
|
249 |
}
|
253 |
* Печает в подвале страницы код, для взаимодействия с сервером через ajax,
|
254 |
* код используется при нажатии на кнопку закрыть уведомление. *
|
255 |
*/
|
256 |
+
public function print_js_code()
|
257 |
+
{
|
258 |
+
$plugin_name = str_replace('_', '-', $this->plugin->getPluginName());
|
259 |
|
260 |
?>
|
261 |
+
<script type="text/javascript">
|
262 |
jQuery(function($) {
|
263 |
|
264 |
$(document).on('click', '.<?php echo $plugin_name; ?>-factory-notice-dismiss .notice-dismiss', function() {
|
271 |
});
|
272 |
|
273 |
});
|
274 |
+
</script>
|
275 |
<?php
|
276 |
}
|
277 |
|
279 |
/**
|
280 |
* Проверяет скрыто уведоление или нет
|
281 |
*
|
282 |
+
* @param string $notice_id - имя уведомления
|
283 |
*
|
284 |
* @return bool
|
285 |
*/
|
286 |
+
protected function is_dissmissed($notice_id)
|
287 |
+
{
|
288 |
+
if( !empty($this->dissmised_notices) && isset($this->dissmised_notices['wbcr_factory_notice_' . $notice_id]) ) {
|
289 |
+
$expires = (int)$this->dissmised_notices['wbcr_factory_notice_' . $notice_id];
|
290 |
|
291 |
return $expires === 0 || $expires > time();
|
292 |
}
|
libs/factory/core/includes/class-factory-options.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
use Exception;
|
@@ -10,7 +10,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
10 |
}
|
11 |
|
12 |
/**
|
13 |
-
* Трейт используется для расширения базового класса плагина
|
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_429;
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
use Exception;
|
10 |
}
|
11 |
|
12 |
/**
|
13 |
+
* Трейт используется для расширения базового класса плагина Wbcr_Factory429_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
|
28 |
|
29 |
/**
|
30 |
-
* Instance class
|
31 |
*
|
32 |
* @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
|
33 |
-
* @var
|
34 |
*/
|
35 |
public $request;
|
36 |
|
37 |
/**
|
38 |
* @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
|
39 |
-
* @var \WBCR\
|
40 |
*/
|
41 |
public $premium;
|
42 |
|
43 |
/**
|
44 |
* The Bootstrap Manager class
|
45 |
*
|
46 |
-
* @var
|
47 |
*/
|
48 |
public $bootstrap;
|
49 |
|
50 |
/**
|
51 |
* The Bootstrap Manager class
|
52 |
*
|
53 |
-
* @var
|
54 |
*/
|
55 |
public $forms;
|
56 |
|
57 |
/**
|
58 |
-
* Простой массив со списком зарегистрированных классов унаследованных от
|
59 |
* Классы активации используются для упаковки набора функций, которые нужно выполнить во время
|
60 |
* активации плагина.
|
61 |
*
|
62 |
-
* @var array[]
|
63 |
*/
|
64 |
protected $activator_class = [];
|
65 |
|
@@ -86,7 +86,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
86 |
*
|
87 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
88 |
* @since 4.1.9
|
89 |
-
* @var WBCR\
|
90 |
*/
|
91 |
private $adverts;
|
92 |
|
@@ -106,8 +106,8 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
106 |
|
107 |
parent::__construct($plugin_path, $data);
|
108 |
|
109 |
-
$this->request = new
|
110 |
-
//$this->route = new
|
111 |
|
112 |
// INIT PLUGIN FRAMEWORK MODULES
|
113 |
// Framework modules should always be loaded first,
|
@@ -139,9 +139,9 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
139 |
* Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
|
140 |
* скриптов, стилей) фреймворка.
|
141 |
*
|
142 |
-
* @param
|
143 |
*/
|
144 |
-
public function setBootstap(
|
145 |
{
|
146 |
$this->bootstrap = $bootstrap;
|
147 |
}
|
@@ -149,9 +149,9 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
149 |
/**
|
150 |
* Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
|
151 |
*
|
152 |
-
* @param
|
153 |
*/
|
154 |
-
public function setForms(
|
155 |
{
|
156 |
$this->forms = $forms;
|
157 |
}
|
@@ -183,8 +183,8 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
183 |
*/
|
184 |
public function set_license_provider($name, $class_name)
|
185 |
{
|
186 |
-
if( !isset(WBCR\
|
187 |
-
WBCR\
|
188 |
}
|
189 |
}
|
190 |
|
@@ -202,8 +202,8 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
202 |
*/
|
203 |
public function set_update_repository($name, $class_name)
|
204 |
{
|
205 |
-
if( !isset(WBCR\
|
206 |
-
WBCR\
|
207 |
}
|
208 |
}
|
209 |
|
@@ -213,7 +213,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
213 |
* Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
|
214 |
* рекламных объявлений.
|
215 |
*
|
216 |
-
* @return \WBCR\
|
217 |
* @since 1.1
|
218 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
219 |
*/
|
@@ -249,18 +249,18 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
249 |
|
250 |
public function newScriptList()
|
251 |
{
|
252 |
-
return new
|
253 |
}
|
254 |
|
255 |
public function newStyleList()
|
256 |
{
|
257 |
-
return new
|
258 |
}
|
259 |
|
260 |
/**
|
261 |
* Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
|
262 |
* фреймворка pages. Разработчик создает собственный класс, унаследованный от
|
263 |
-
*
|
264 |
* Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
|
265 |
* pages.
|
266 |
*
|
@@ -270,7 +270,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
270 |
* @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
|
271 |
*
|
272 |
* @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
|
273 |
-
* Регистрируемый класс должен быть унаследован от класса
|
274 |
* @param string $file_path Абсолютный путь к файлу с классом страницы.
|
275 |
*
|
276 |
* @throws Exception
|
@@ -292,11 +292,11 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
292 |
throw new Exception('A class with this name {' . $class_name . '} does not exist.');
|
293 |
}
|
294 |
|
295 |
-
if( !class_exists('
|
296 |
-
throw new Exception('The
|
297 |
}
|
298 |
|
299 |
-
|
300 |
}
|
301 |
|
302 |
/**
|
@@ -346,16 +346,16 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
346 |
/**
|
347 |
* @since 4.1.1 - change hook name
|
348 |
*/
|
349 |
-
if( apply_filters("wbcr/
|
350 |
return;
|
351 |
}
|
352 |
|
353 |
/**
|
354 |
-
*
|
355 |
*
|
356 |
* @since 4.1.1 - deprecated
|
357 |
*/
|
358 |
-
|
359 |
$this
|
360 |
], '4.1.1', "wbcr/factory/plugin_activation");
|
361 |
|
@@ -364,7 +364,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
364 |
*
|
365 |
* @since 4.1.2 - deprecated
|
366 |
*/
|
367 |
-
|
368 |
$this
|
369 |
], '4.1.2', "wbcr/factory/before_plugin_activation");
|
370 |
|
@@ -380,16 +380,16 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
380 |
*
|
381 |
* @since 4.1.2 - deprecated
|
382 |
*/
|
383 |
-
|
384 |
$this
|
385 |
], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
|
386 |
|
387 |
/**
|
388 |
-
*
|
389 |
*
|
390 |
* @since 4.1.1 - deprecated
|
391 |
*/
|
392 |
-
|
393 |
$this
|
394 |
], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
|
395 |
|
@@ -430,16 +430,16 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
430 |
/**
|
431 |
* @since 4.1.1 - change hook name
|
432 |
*/
|
433 |
-
if( apply_filters("wbcr/
|
434 |
return;
|
435 |
}
|
436 |
|
437 |
/**
|
438 |
-
*
|
439 |
*
|
440 |
* @since 4.1.1 - deprecated
|
441 |
*/
|
442 |
-
|
443 |
$this
|
444 |
], '4.1.1', "wbcr/factory/plugin_deactivation");
|
445 |
|
@@ -448,7 +448,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
448 |
*
|
449 |
* @since 4.1.2 - deprecated
|
450 |
*/
|
451 |
-
|
452 |
$this
|
453 |
], '4.1.2', "wbcr/factory/before_plugin_deactivation");
|
454 |
|
@@ -460,11 +460,11 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
460 |
do_action('wbcr/factory/plugin_deactivation', $this);
|
461 |
|
462 |
/**
|
463 |
-
*
|
464 |
*
|
465 |
* @since 4.1.1 - deprecated
|
466 |
*/
|
467 |
-
|
468 |
$this
|
469 |
], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
|
470 |
|
@@ -473,7 +473,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
473 |
*
|
474 |
* @since 4.1.2 - deprecated
|
475 |
*/
|
476 |
-
|
477 |
$this
|
478 |
], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
|
479 |
|
@@ -511,8 +511,8 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
511 |
*/
|
512 |
public function getPluginPageUrl($page_id, $args = [])
|
513 |
{
|
514 |
-
if( !class_exists('
|
515 |
-
throw new Exception('The
|
516 |
}
|
517 |
|
518 |
if( !is_admin() ) {
|
@@ -521,7 +521,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
521 |
return null;
|
522 |
}
|
523 |
|
524 |
-
return
|
525 |
}
|
526 |
|
527 |
/**
|
@@ -622,12 +622,12 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
622 |
/**
|
623 |
* @since 4.1.1 - deprecated
|
624 |
*/
|
625 |
-
|
626 |
|
627 |
/**
|
628 |
* @since 4.1.1 - add
|
629 |
*/
|
630 |
-
do_action('wbcr/
|
631 |
}
|
632 |
|
633 |
|
@@ -654,7 +654,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
654 |
});
|
655 |
|
656 |
if( is_admin() ) {
|
657 |
-
add_filter('
|
658 |
|
659 |
register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
|
660 |
register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
|
@@ -670,7 +670,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
670 |
*/
|
671 |
protected function init_plugin_migrations()
|
672 |
{
|
673 |
-
new WBCR\
|
674 |
}
|
675 |
|
676 |
/**
|
@@ -681,7 +681,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
681 |
*/
|
682 |
protected function init_plugin_notices()
|
683 |
{
|
684 |
-
new Wbcr\
|
685 |
}
|
686 |
|
687 |
/**
|
@@ -697,7 +697,7 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
697 |
protected function init_plugin_updates()
|
698 |
{
|
699 |
if( $this->has_updates ) {
|
700 |
-
new WBCR\
|
701 |
}
|
702 |
}
|
703 |
|
@@ -720,11 +720,11 @@ abstract class Wbcr_Factory428_Plugin extends Wbcr_Factory428_Base {
|
|
720 |
}
|
721 |
|
722 |
// Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
|
723 |
-
$this->premium = WBCR\
|
724 |
|
725 |
// Подключаем премиум апгрейдер
|
726 |
if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
|
727 |
-
new WBCR\
|
728 |
}
|
729 |
}
|
730 |
}
|
24 |
* @package factory-core
|
25 |
*
|
26 |
*/
|
27 |
+
abstract class Wbcr_Factory429_Plugin extends Wbcr_Factory429_Base {
|
28 |
|
29 |
/**
|
30 |
+
* Instance class Wbcr_Factory429_Request, required manages http requests
|
31 |
*
|
32 |
* @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
|
33 |
+
* @var Wbcr_Factory429_Request
|
34 |
*/
|
35 |
public $request;
|
36 |
|
37 |
/**
|
38 |
* @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
|
39 |
+
* @var \WBCR\Factory_429\Premium\Provider
|
40 |
*/
|
41 |
public $premium;
|
42 |
|
43 |
/**
|
44 |
* The Bootstrap Manager class
|
45 |
*
|
46 |
+
* @var Wbcr_FactoryBootstrap430_Manager
|
47 |
*/
|
48 |
public $bootstrap;
|
49 |
|
50 |
/**
|
51 |
* The Bootstrap Manager class
|
52 |
*
|
53 |
+
* @var Wbcr_FactoryForms427_Manager
|
54 |
*/
|
55 |
public $forms;
|
56 |
|
57 |
/**
|
58 |
+
* Простой массив со списком зарегистрированных классов унаследованных от Wbcr_Factory429_Activator.
|
59 |
* Классы активации используются для упаковки набора функций, которые нужно выполнить во время
|
60 |
* активации плагина.
|
61 |
*
|
62 |
+
* @var array[] Wbcr_Factory429_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_109\Base
|
90 |
*/
|
91 |
private $adverts;
|
92 |
|
106 |
|
107 |
parent::__construct($plugin_path, $data);
|
108 |
|
109 |
+
$this->request = new Wbcr_Factory429_Request();
|
110 |
+
//$this->route = new Wbcr_Factory429_Route();
|
111 |
|
112 |
// INIT PLUGIN FRAMEWORK MODULES
|
113 |
// Framework modules should always be loaded first,
|
139 |
* Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
|
140 |
* скриптов, стилей) фреймворка.
|
141 |
*
|
142 |
+
* @param Wbcr_FactoryBootstrap430_Manager $bootstrap
|
143 |
*/
|
144 |
+
public function setBootstap(Wbcr_FactoryBootstrap430_Manager $bootstrap)
|
145 |
{
|
146 |
$this->bootstrap = $bootstrap;
|
147 |
}
|
149 |
/**
|
150 |
* Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
|
151 |
*
|
152 |
+
* @param Wbcr_FactoryForms427_Manager $forms
|
153 |
*/
|
154 |
+
public function setForms(Wbcr_FactoryForms427_Manager $forms)
|
155 |
{
|
156 |
$this->forms = $forms;
|
157 |
}
|
183 |
*/
|
184 |
public function set_license_provider($name, $class_name)
|
185 |
{
|
186 |
+
if( !isset(WBCR\Factory_429\Premium\Manager::$providers[$name]) ) {
|
187 |
+
WBCR\Factory_429\Premium\Manager::$providers[$name] = $class_name;
|
188 |
}
|
189 |
}
|
190 |
|
202 |
*/
|
203 |
public function set_update_repository($name, $class_name)
|
204 |
{
|
205 |
+
if( !isset(WBCR\Factory_429\Updates\Upgrader::$repositories[$name]) ) {
|
206 |
+
WBCR\Factory_429\Updates\Upgrader::$repositories[$name] = $class_name;
|
207 |
}
|
208 |
}
|
209 |
|
213 |
* Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
|
214 |
* рекламных объявлений.
|
215 |
*
|
216 |
+
* @return \WBCR\Factory_Adverts_109\Base
|
217 |
* @since 1.1
|
218 |
* @author Alexander Kovalev <alex.kovalevv@gmail.com>
|
219 |
*/
|
249 |
|
250 |
public function newScriptList()
|
251 |
{
|
252 |
+
return new Wbcr_Factory429_ScriptList($this);
|
253 |
}
|
254 |
|
255 |
public function newStyleList()
|
256 |
{
|
257 |
+
return new Wbcr_Factory429_StyleList($this);
|
258 |
}
|
259 |
|
260 |
/**
|
261 |
* Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
|
262 |
* фреймворка pages. Разработчик создает собственный класс, унаследованный от
|
263 |
+
* Wbcr_FactoryPages429_AdminPage, а затем регистрирует его через этот метод.
|
264 |
* Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
|
265 |
* pages.
|
266 |
*
|
270 |
* @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
|
271 |
*
|
272 |
* @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
|
273 |
+
* Регистрируемый класс должен быть унаследован от класса Wbcr_FactoryPages429_AdminPage.
|
274 |
* @param string $file_path Абсолютный путь к файлу с классом страницы.
|
275 |
*
|
276 |
* @throws Exception
|
292 |
throw new Exception('A class with this name {' . $class_name . '} does not exist.');
|
293 |
}
|
294 |
|
295 |
+
if( !class_exists('Wbcr_FactoryPages429') ) {
|
296 |
+
throw new Exception('The factory_pages_429 module is not included.');
|
297 |
}
|
298 |
|
299 |
+
Wbcr_FactoryPages429::register($this, $class_name);
|
300 |
}
|
301 |
|
302 |
/**
|
346 |
/**
|
347 |
* @since 4.1.1 - change hook name
|
348 |
*/
|
349 |
+
if( apply_filters("wbcr/factory_429/cancel_plugin_activation_{$this->plugin_name}", false) ) {
|
350 |
return;
|
351 |
}
|
352 |
|
353 |
/**
|
354 |
+
* wbcr_factory_429_plugin_activation
|
355 |
*
|
356 |
* @since 4.1.1 - deprecated
|
357 |
*/
|
358 |
+
wbcr_factory_429_do_action_deprecated('wbcr_factory_429_plugin_activation', [
|
359 |
$this
|
360 |
], '4.1.1', "wbcr/factory/plugin_activation");
|
361 |
|
364 |
*
|
365 |
* @since 4.1.2 - deprecated
|
366 |
*/
|
367 |
+
wbcr_factory_429_do_action_deprecated('wbcr/factory/plugin_activation', [
|
368 |
$this
|
369 |
], '4.1.2', "wbcr/factory/before_plugin_activation");
|
370 |
|
380 |
*
|
381 |
* @since 4.1.2 - deprecated
|
382 |
*/
|
383 |
+
wbcr_factory_429_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_activation", [
|
384 |
$this
|
385 |
], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
|
386 |
|
387 |
/**
|
388 |
+
* wbcr_factory_429_plugin_activation_' . $this->plugin_name
|
389 |
*
|
390 |
* @since 4.1.1 - deprecated
|
391 |
*/
|
392 |
+
wbcr_factory_429_do_action_deprecated('wbcr_factory_429_plugin_activation_' . $this->plugin_name, [
|
393 |
$this
|
394 |
], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
|
395 |
|
430 |
/**
|
431 |
* @since 4.1.1 - change hook name
|
432 |
*/
|
433 |
+
if( apply_filters("wbcr/factory_429/cancel_plugin_deactivation_{$this->plugin_name}", false) ) {
|
434 |
return;
|
435 |
}
|
436 |
|
437 |
/**
|
438 |
+
* wbcr_factory_429_plugin_deactivation
|
439 |
*
|
440 |
* @since 4.1.1 - deprecated
|
441 |
*/
|
442 |
+
wbcr_factory_429_do_action_deprecated('wbcr_factory_429_plugin_deactivation', [
|
443 |
$this
|
444 |
], '4.1.1', "wbcr/factory/plugin_deactivation");
|
445 |
|
448 |
*
|
449 |
* @since 4.1.2 - deprecated
|
450 |
*/
|
451 |
+
wbcr_factory_429_do_action_deprecated('wbcr/factory/plugin_deactivation', [
|
452 |
$this
|
453 |
], '4.1.2', "wbcr/factory/before_plugin_deactivation");
|
454 |
|
460 |
do_action('wbcr/factory/plugin_deactivation', $this);
|
461 |
|
462 |
/**
|
463 |
+
* wbcr_factory_429_plugin_deactivation_ . $this->plugin_name
|
464 |
*
|
465 |
* @since 4.1.1 - deprecated
|
466 |
*/
|
467 |
+
wbcr_factory_429_do_action_deprecated('wbcr_factory_429_plugin_deactivation_' . $this->plugin_name, [
|
468 |
$this
|
469 |
], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
|
470 |
|
473 |
*
|
474 |
* @since 4.1.2 - deprecated
|
475 |
*/
|
476 |
+
wbcr_factory_429_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_deactivation", [
|
477 |
$this
|
478 |
], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
|
479 |
|
511 |
*/
|
512 |
public function getPluginPageUrl($page_id, $args = [])
|
513 |
{
|
514 |
+
if( !class_exists('Wbcr_FactoryPages429') ) {
|
515 |
+
throw new Exception('The factory_pages_429 module is not included.');
|
516 |
}
|
517 |
|
518 |
if( !is_admin() ) {
|
521 |
return null;
|
522 |
}
|
523 |
|
524 |
+
return Wbcr_FactoryPages429::getPageUrl($this, $page_id, $args);
|
525 |
}
|
526 |
|
527 |
/**
|
622 |
/**
|
623 |
* @since 4.1.1 - deprecated
|
624 |
*/
|
625 |
+
wbcr_factory_429_do_action_deprecated('wbcr_factory_429_core_modules_loaded-' . $this->plugin_name, [], '4.1.1', "wbcr/factory_429/modules_loaded-" . $this->plugin_name);
|
626 |
|
627 |
/**
|
628 |
* @since 4.1.1 - add
|
629 |
*/
|
630 |
+
do_action('wbcr/factory_429/modules_loaded-' . $this->plugin_name);
|
631 |
}
|
632 |
|
633 |
|
654 |
});
|
655 |
|
656 |
if( is_admin() ) {
|
657 |
+
add_filter('wbcr_factory_429_core_admin_allow_multisite', '__return_true');
|
658 |
|
659 |
register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
|
660 |
register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
|
670 |
*/
|
671 |
protected function init_plugin_migrations()
|
672 |
{
|
673 |
+
new WBCR\Factory_429\Migrations($this);
|
674 |
}
|
675 |
|
676 |
/**
|
681 |
*/
|
682 |
protected function init_plugin_notices()
|
683 |
{
|
684 |
+
new Wbcr\Factory_429\Notices($this);
|
685 |
}
|
686 |
|
687 |
/**
|
697 |
protected function init_plugin_updates()
|
698 |
{
|
699 |
if( $this->has_updates ) {
|
700 |
+
new WBCR\Factory_429\Updates\Upgrader($this);
|
701 |
}
|
702 |
}
|
703 |
|
720 |
}
|
721 |
|
722 |
// Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
|
723 |
+
$this->premium = WBCR\Factory_429\Premium\Manager::instance($this, $this->license_settings);
|
724 |
|
725 |
// Подключаем премиум апгрейдер
|
726 |
if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
|
727 |
+
new WBCR\Factory_429\Updates\Premium_Upgrader($this);
|
728 |
}
|
729 |
}
|
730 |
}
|
libs/factory/core/includes/class-factory-plugin-base.php
CHANGED
@@ -5,7 +5,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
5 |
}
|
6 |
|
7 |
/**
|
8 |
-
* Базовый класс для создания нового плагина. Полную реализацию класса смотрите в
|
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
|
21 |
|
22 |
-
use WBCR\
|
23 |
|
24 |
/**
|
25 |
* Обязательное свойство. Префикс, используется для создания пространство имен.
|
@@ -81,7 +81,7 @@ class Wbcr_Factory428_Base {
|
|
81 |
* https://robin-image-optimizer.webcraftic.com/premium-features.
|
82 |
*
|
83 |
* Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
|
84 |
-
* экземпляр класса \WBCR\
|
85 |
* Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
|
86 |
* можете изменить все ссылки в одном месте.
|
87 |
*
|
@@ -127,7 +127,7 @@ class Wbcr_Factory428_Base {
|
|
127 |
* к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
|
128 |
* взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
|
129 |
* индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
|
130 |
-
* WBCR\
|
131 |
*
|
132 |
* На текущий момент существует только реализация для freemius провайдера.
|
133 |
*
|
@@ -177,9 +177,9 @@ class Wbcr_Factory428_Base {
|
|
177 |
* }
|
178 |
*/
|
179 |
protected $load_factory_modules = [
|
180 |
-
[ 'libs/factory/bootstrap', '
|
181 |
-
[ 'libs/factory/forms', '
|
182 |
-
[ 'libs/factory/pages', '
|
183 |
];
|
184 |
|
185 |
/**
|
@@ -209,20 +209,20 @@ class Wbcr_Factory428_Base {
|
|
209 |
|
210 |
|
211 |
/**
|
212 |
-
* Экземпляр класса \WBCR\
|
213 |
* о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
|
214 |
* ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
|
215 |
*
|
216 |
-
* @var \WBCR\
|
217 |
*/
|
218 |
protected $support;
|
219 |
|
220 |
/**
|
221 |
-
* Экземпляр класса \WBCR\
|
222 |
* путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
|
223 |
* или его входного файла.
|
224 |
*
|
225 |
-
* @var \WBCR\
|
226 |
*/
|
227 |
protected $paths;
|
228 |
|
@@ -270,8 +270,8 @@ class Wbcr_Factory428_Base {
|
|
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\
|
274 |
-
$this->paths = new \WBCR\
|
275 |
|
276 |
// used only in the module 'updates'
|
277 |
$this->plugin_slug = ! empty( $this->plugin_name ) ? $this->plugin_name : basename( $plugin_file );
|
@@ -391,7 +391,7 @@ class Wbcr_Factory428_Base {
|
|
391 |
* Проверяет, включен ли премиум для этого плагина или нет.
|
392 |
*
|
393 |
* @return bool Возвращает true, если премиум пакет включен для этого плагина.
|
394 |
-
* См.
|
395 |
*/
|
396 |
public function has_premium() {
|
397 |
return $this->has_premium;
|
@@ -400,7 +400,7 @@ class Wbcr_Factory428_Base {
|
|
400 |
/**
|
401 |
* Позволяет получить заголовок плагина.
|
402 |
*
|
403 |
-
* @return string Возвращает заголовок плагина. См.
|
404 |
*/
|
405 |
public function getPluginTitle() {
|
406 |
return $this->plugin_title;
|
@@ -409,7 +409,7 @@ class Wbcr_Factory428_Base {
|
|
409 |
/**
|
410 |
* Позволяет получить префикс плагина.
|
411 |
*
|
412 |
-
* @return string Возвращает префикс плагина.См.
|
413 |
*/
|
414 |
public function getPrefix() {
|
415 |
return $this->prefix;
|
@@ -418,7 +418,7 @@ class Wbcr_Factory428_Base {
|
|
418 |
/**
|
419 |
* Позволяет получить имя плагина.
|
420 |
*
|
421 |
-
* @return string Возвращает имя плагина. См.
|
422 |
*/
|
423 |
public function getPluginName() {
|
424 |
return $this->plugin_name;
|
@@ -427,7 +427,7 @@ class Wbcr_Factory428_Base {
|
|
427 |
/**
|
428 |
* Позволяет получить версию плагина.
|
429 |
*
|
430 |
-
* @return string Возвращает версию плагина. См.
|
431 |
*/
|
432 |
public function getPluginVersion() {
|
433 |
return $this->plugin_version;
|
@@ -449,7 +449,7 @@ class Wbcr_Factory428_Base {
|
|
449 |
* какие-то данные не описанные в интерфейсе этого плагина.
|
450 |
*
|
451 |
* @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
|
452 |
-
*
|
453 |
*
|
454 |
* @return null
|
455 |
*/
|
@@ -462,18 +462,18 @@ class Wbcr_Factory428_Base {
|
|
462 |
}
|
463 |
|
464 |
/**
|
465 |
-
* Предоставляет доступ к экземпляру класса \WBCR\
|
466 |
*
|
467 |
-
* @return \WBCR\
|
468 |
*/
|
469 |
public function get_support() {
|
470 |
return $this->support;
|
471 |
}
|
472 |
|
473 |
/**
|
474 |
-
* Предоставляет доступ к экземпляру класса \WBCR\
|
475 |
*
|
476 |
-
* @return \WBCR\
|
477 |
*/
|
478 |
public function get_paths() {
|
479 |
return $this->paths;
|
@@ -482,7 +482,7 @@ class Wbcr_Factory428_Base {
|
|
482 |
/**
|
483 |
* Позволяет получить сырые данные плагина в виде объекта StdClass.
|
484 |
*
|
485 |
-
* @return object Возвращает объект с сырыми данными плагина. См.
|
486 |
*/
|
487 |
public function getPluginInfo() {
|
488 |
return (object) $this->plugin_data;
|
5 |
}
|
6 |
|
7 |
/**
|
8 |
+
* Базовый класс для создания нового плагина. Полную реализацию класса смотрите в Wbcr_Factory429_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_Factory429_Base {
|
21 |
|
22 |
+
use WBCR\Factory_429\Options;
|
23 |
|
24 |
/**
|
25 |
* Обязательное свойство. Префикс, используется для создания пространство имен.
|
81 |
* https://robin-image-optimizer.webcraftic.com/premium-features.
|
82 |
*
|
83 |
* Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
|
84 |
+
* экземпляр класса \WBCR\Factory_429\Entities\Support, для получения информации о сайте плагина.
|
85 |
* Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
|
86 |
* можете изменить все ссылки в одном месте.
|
87 |
*
|
127 |
* к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
|
128 |
* взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
|
129 |
* индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
|
130 |
+
* WBCR\Factory_429\Premium\Provider > WBCR\Factory_Freemius_117\Premium\Provider
|
131 |
*
|
132 |
* На текущий момент существует только реализация для freemius провайдера.
|
133 |
*
|
177 |
* }
|
178 |
*/
|
179 |
protected $load_factory_modules = [
|
180 |
+
[ 'libs/factory/bootstrap', 'factory_bootstrap_430', 'admin' ],
|
181 |
+
[ 'libs/factory/forms', 'factory_forms_427', 'admin' ],
|
182 |
+
[ 'libs/factory/pages', 'factory_pages_429', 'admin' ],
|
183 |
];
|
184 |
|
185 |
/**
|
209 |
|
210 |
|
211 |
/**
|
212 |
+
* Экземпляр класса \WBCR\Factory_429\Entities\Support используется для получения информации
|
213 |
* о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
|
214 |
* ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
|
215 |
*
|
216 |
+
* @var \WBCR\Factory_429\Entities\Support
|
217 |
*/
|
218 |
protected $support;
|
219 |
|
220 |
/**
|
221 |
+
* Экземпляр класса \WBCR\Factory_429\Entities\Paths используется для получения информации о
|
222 |
* путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
|
223 |
* или его входного файла.
|
224 |
*
|
225 |
+
* @var \WBCR\Factory_429\Entities\Paths
|
226 |
*/
|
227 |
protected $paths;
|
228 |
|
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_429\Entities\Support( $this->support_details );
|
274 |
+
$this->paths = new \WBCR\Factory_429\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 );
|
391 |
* Проверяет, включен ли премиум для этого плагина или нет.
|
392 |
*
|
393 |
* @return bool Возвращает true, если премиум пакет включен для этого плагина.
|
394 |
+
* См. Wbcr_Factory429_Base::has_premium
|
395 |
*/
|
396 |
public function has_premium() {
|
397 |
return $this->has_premium;
|
400 |
/**
|
401 |
* Позволяет получить заголовок плагина.
|
402 |
*
|
403 |
+
* @return string Возвращает заголовок плагина. См. Wbcr_Factory429_Base::plugin_title
|
404 |
*/
|
405 |
public function getPluginTitle() {
|
406 |
return $this->plugin_title;
|
409 |
/**
|
410 |
* Позволяет получить префикс плагина.
|
411 |
*
|
412 |
+
* @return string Возвращает префикс плагина.См. Wbcr_Factory429_Base::prefix
|
413 |
*/
|
414 |
public function getPrefix() {
|
415 |
return $this->prefix;
|
418 |
/**
|
419 |
* Позволяет получить имя плагина.
|
420 |
*
|
421 |
+
* @return string Возвращает имя плагина. См. Wbcr_Factory429_Base::plugin_name
|
422 |
*/
|
423 |
public function getPluginName() {
|
424 |
return $this->plugin_name;
|
427 |
/**
|
428 |
* Позволяет получить версию плагина.
|
429 |
*
|
430 |
+
* @return string Возвращает версию плагина. См. Wbcr_Factory429_Base::plugin_version
|
431 |
*/
|
432 |
public function getPluginVersion() {
|
433 |
return $this->plugin_version;
|
449 |
* какие-то данные не описанные в интерфейсе этого плагина.
|
450 |
*
|
451 |
* @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
|
452 |
+
* Wbcr_Factory429_Base::plugin_data
|
453 |
*
|
454 |
* @return null
|
455 |
*/
|
462 |
}
|
463 |
|
464 |
/**
|
465 |
+
* Предоставляет доступ к экземпляру класса \WBCR\Factory_429\Entities\Support.
|
466 |
*
|
467 |
+
* @return \WBCR\Factory_429\Entities\Support
|
468 |
*/
|
469 |
public function get_support() {
|
470 |
return $this->support;
|
471 |
}
|
472 |
|
473 |
/**
|
474 |
+
* Предоставляет доступ к экземпляру класса \WBCR\Factory_429\Entities\Paths.
|
475 |
*
|
476 |
+
* @return \WBCR\Factory_429\Entities\Paths
|
477 |
*/
|
478 |
public function get_paths() {
|
479 |
return $this->paths;
|
482 |
/**
|
483 |
* Позволяет получить сырые данные плагина в виде объекта StdClass.
|
484 |
*
|
485 |
+
* @return object Возвращает объект с сырыми данными плагина. См. Wbcr_Factory429_Base::plugin_data
|
486 |
*/
|
487 |
public function getPluginInfo() {
|
488 |
return (object) $this->plugin_data;
|
libs/factory/core/includes/class-factory-requests.php
CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
11 |
* @package factory-core
|
12 |
*/
|
13 |
|
14 |
-
class
|
15 |
|
16 |
/**
|
17 |
* @param null $param
|
11 |
* @package factory-core
|
12 |
*/
|
13 |
|
14 |
+
class Wbcr_Factory429_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( '
|
16 |
-
class
|
17 |
|
18 |
/**
|
19 |
* Factory framework version
|
@@ -242,7 +242,7 @@ if ( ! class_exists( 'Wbcr_Factory428_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.', '
|
246 |
$notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
|
247 |
|
248 |
$has_one = false;
|
@@ -273,21 +273,21 @@ if ( ! class_exists( 'Wbcr_Factory428_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!', '
|
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!', '
|
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.', '
|
291 |
}
|
292 |
}
|
293 |
}
|
12 |
* @since 4.0.9
|
13 |
*/
|
14 |
// @formatter:off
|
15 |
+
if ( ! class_exists( 'Wbcr_Factory429_Requirements' ) ) {
|
16 |
+
class Wbcr_Factory429_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_clearfy_221' ), $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_429' ), $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_429' ), $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_429' ), $this->plugin_title );
|
291 |
}
|
292 |
}
|
293 |
}
|
libs/factory/core/includes/entities/class-factory-paths.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
exit;
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\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\
|
4 |
|
5 |
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
exit;
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\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
|
57 |
*
|
58 |
*/
|
59 |
-
function
|
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 |
-
|
67 |
|
68 |
return apply_filters_ref_array( $tag, $args );
|
69 |
}
|
@@ -89,7 +89,7 @@ function wbcr_factory_428_apply_filters_deprecated( $tag, $args, $version, $repl
|
|
89 |
* @see _deprecated_hook()
|
90 |
*
|
91 |
*/
|
92 |
-
function
|
93 |
if ( function_exists( 'do_action_deprecated' ) ) {
|
94 |
do_action_deprecated( $tag, $args, $version, $replacement, $message );
|
95 |
|
@@ -98,14 +98,14 @@ function wbcr_factory_428_do_action_deprecated( $tag, $args, $version, $replacem
|
|
98 |
if ( ! has_action( $tag ) ) {
|
99 |
return;
|
100 |
}
|
101 |
-
|
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 '
|
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_428_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
|
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_429_deprecated_hook()
|
57 |
*
|
58 |
*/
|
59 |
+
function wbcr_factory_429_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_429_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_429_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_429_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_429_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_429_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\
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
if ( ! defined( 'ABSPATH' ) ) {
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\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\
|
4 |
|
5 |
use Exception;
|
6 |
-
use
|
7 |
|
8 |
// Exit if accessed directly
|
9 |
if ( ! defined( 'ABSPATH' ) ) {
|
@@ -24,7 +24,7 @@ class Manager {
|
|
24 |
public static $providers;
|
25 |
|
26 |
/**
|
27 |
-
* @var
|
28 |
*/
|
29 |
protected $plugin;
|
30 |
|
@@ -36,24 +36,24 @@ class Manager {
|
|
36 |
/**
|
37 |
* Manager constructor.
|
38 |
*
|
39 |
-
* @param
|
40 |
* @param array $settings
|
41 |
*
|
42 |
* @throws Exception
|
43 |
*/
|
44 |
-
public function __construct(
|
45 |
$this->plugin = $plugin;
|
46 |
$this->settings = $settings;
|
47 |
}
|
48 |
|
49 |
/**
|
50 |
-
* @param
|
51 |
* @param array $settings
|
52 |
*
|
53 |
-
* @return \WBCR\
|
54 |
* @throws Exception
|
55 |
*/
|
56 |
-
public static function instance(
|
57 |
$premium_manager = new Manager( $plugin, $settings );
|
58 |
|
59 |
return $premium_manager->instance_provider();
|
@@ -62,7 +62,7 @@ class Manager {
|
|
62 |
/**
|
63 |
* @param $provider_name
|
64 |
*
|
65 |
-
* @return \WBCR\
|
66 |
* @throws Exception
|
67 |
*/
|
68 |
public function 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\
|
74 |
}
|
75 |
|
76 |
return new self::$providers[ $provider_name ]( $this->plugin, $this->settings );
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Premium;
|
4 |
|
5 |
use Exception;
|
6 |
+
use Wbcr_Factory429_Plugin;
|
7 |
|
8 |
// Exit if accessed directly
|
9 |
if ( ! defined( 'ABSPATH' ) ) {
|
24 |
public static $providers;
|
25 |
|
26 |
/**
|
27 |
+
* @var Wbcr_Factory429_Plugin
|
28 |
*/
|
29 |
protected $plugin;
|
30 |
|
36 |
/**
|
37 |
* Manager constructor.
|
38 |
*
|
39 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
40 |
* @param array $settings
|
41 |
*
|
42 |
* @throws Exception
|
43 |
*/
|
44 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin, array $settings ) {
|
45 |
$this->plugin = $plugin;
|
46 |
$this->settings = $settings;
|
47 |
}
|
48 |
|
49 |
/**
|
50 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
51 |
* @param array $settings
|
52 |
*
|
53 |
+
* @return \WBCR\Factory_Freemius_117\Premium\Provider
|
54 |
* @throws Exception
|
55 |
*/
|
56 |
+
public static function instance( Wbcr_Factory429_Plugin $plugin, array $settings ) {
|
57 |
$premium_manager = new Manager( $plugin, $settings );
|
58 |
|
59 |
return $premium_manager->instance_provider();
|
62 |
/**
|
63 |
* @param $provider_name
|
64 |
*
|
65 |
+
* @return \WBCR\Factory_Freemius_117\Premium\Provider
|
66 |
* @throws Exception
|
67 |
*/
|
68 |
public function 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_429\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\
|
4 |
|
5 |
use Exception;
|
6 |
-
use
|
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
|
25 |
*/
|
26 |
protected $plugin;
|
27 |
|
@@ -38,10 +38,10 @@ abstract class Provider {
|
|
38 |
/**
|
39 |
* Provider constructor.
|
40 |
*
|
41 |
-
* @param
|
42 |
* @param array $settings
|
43 |
*/
|
44 |
-
public function __construct(
|
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\
|
248 |
*/
|
249 |
abstract public function get_license();
|
250 |
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Premium;
|
4 |
|
5 |
use Exception;
|
6 |
+
use Wbcr_Factory429_Plugin;
|
7 |
|
8 |
// Exit if accessed directly
|
9 |
if( !defined('ABSPATH') ) {
|
21 |
abstract class Provider {
|
22 |
|
23 |
/**
|
24 |
+
* @var Wbcr_Factory429_Plugin
|
25 |
*/
|
26 |
protected $plugin;
|
27 |
|
38 |
/**
|
39 |
* Provider constructor.
|
40 |
*
|
41 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
42 |
* @param array $settings
|
43 |
*/
|
44 |
+
public function __construct(Wbcr_Factory429_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_429\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\
|
4 |
|
5 |
use Exception;
|
6 |
use Plugin_Installer_Skin;
|
7 |
use Plugin_Upgrader;
|
8 |
-
use
|
9 |
-
use
|
10 |
use WP_Filesystem_Base;
|
11 |
use WP_Upgrader;
|
12 |
use WP_Upgrader_Skin;
|
@@ -37,13 +37,13 @@ class Premium_Upgrader extends Upgrader {
|
|
37 |
* @param $args
|
38 |
* @param bool $is_premium
|
39 |
*
|
40 |
-
* @param
|
41 |
*
|
42 |
* @throws Exception
|
43 |
* @since 4.1.1
|
44 |
*
|
45 |
*/
|
46 |
-
public function __construct(
|
47 |
{
|
48 |
parent::__construct($plugin);
|
49 |
|
@@ -234,9 +234,9 @@ class Premium_Upgrader extends Upgrader {
|
|
234 |
/**
|
235 |
* Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
|
236 |
*
|
237 |
-
* @param
|
238 |
*
|
239 |
-
* @param
|
240 |
*
|
241 |
* @return void
|
242 |
* @since 4.1.1
|
@@ -791,12 +791,12 @@ class Premium_Upgrader extends Upgrader {
|
|
791 |
$cancel_license_url = $this->get_action_url('cancel_license');
|
792 |
|
793 |
$texts = [
|
794 |
-
'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', '
|
795 |
-
'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.', '
|
796 |
'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
|
797 |
-
<a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', '
|
798 |
'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
|
799 |
-
<a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', '
|
800 |
];
|
801 |
|
802 |
if( isset($texts[$type]) ) {
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Updates;
|
4 |
|
5 |
use Exception;
|
6 |
use Plugin_Installer_Skin;
|
7 |
use Plugin_Upgrader;
|
8 |
+
use Wbcr_Factory429_Plugin;
|
9 |
+
use Wbcr_FactoryPages429_ImpressiveThemplate;
|
10 |
use WP_Filesystem_Base;
|
11 |
use WP_Upgrader;
|
12 |
use WP_Upgrader_Skin;
|
37 |
* @param $args
|
38 |
* @param bool $is_premium
|
39 |
*
|
40 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
41 |
*
|
42 |
* @throws Exception
|
43 |
* @since 4.1.1
|
44 |
*
|
45 |
*/
|
46 |
+
public function __construct(Wbcr_Factory429_Plugin $plugin)
|
47 |
{
|
48 |
parent::__construct($plugin);
|
49 |
|
234 |
/**
|
235 |
* Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
|
236 |
*
|
237 |
+
* @param Wbcr_FactoryPages429_ImpressiveThemplate $obj
|
238 |
*
|
239 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
240 |
*
|
241 |
* @return void
|
242 |
* @since 4.1.1
|
791 |
$cancel_license_url = $this->get_action_url('cancel_license');
|
792 |
|
793 |
$texts = [
|
794 |
+
'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', 'wbcr_factory_429'),
|
795 |
+
'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_429'),
|
796 |
'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
|
797 |
+
<a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_429'), $upgrade_url, $cancel_license_url),
|
798 |
'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
|
799 |
+
<a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_429'), $activate_plugin_url, $cancel_license_url)
|
800 |
];
|
801 |
|
802 |
if( isset($texts[$type]) ) {
|
libs/factory/core/includes/updates/class-factory-upgrader.php
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
use Exception;
|
6 |
use stdClass;
|
7 |
-
use
|
8 |
|
9 |
// Exit if accessed directly
|
10 |
if ( ! defined( 'ABSPATH' ) ) {
|
@@ -28,8 +28,8 @@ class Upgrader {
|
|
28 |
* @since 4.1.7
|
29 |
* @var array хранит имя репозитория и его имя класса
|
30 |
* [
|
31 |
-
* 'wordpress' => 'WBCR\
|
32 |
-
* 'freemius' => '\WBCR\
|
33 |
* ]
|
34 |
*/
|
35 |
public static $repositories = [];
|
@@ -42,7 +42,7 @@ class Upgrader {
|
|
42 |
protected $type = 'default';
|
43 |
|
44 |
/**
|
45 |
-
* @var
|
46 |
*/
|
47 |
protected $plugin;
|
48 |
|
@@ -90,13 +90,13 @@ class Upgrader {
|
|
90 |
*
|
91 |
* @since 4.1.1
|
92 |
*
|
93 |
-
* @param
|
94 |
* @param $args
|
95 |
* @param bool $is_premium
|
96 |
*
|
97 |
* @throws Exception
|
98 |
*/
|
99 |
-
public function __construct(
|
100 |
|
101 |
$this->plugin = $plugin;
|
102 |
|
@@ -106,7 +106,7 @@ class Upgrader {
|
|
106 |
$this->is_debug = defined( 'FACTORY_UPDATES_DEBUG' ) && FACTORY_UPDATES_DEBUG;
|
107 |
|
108 |
# Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
|
109 |
-
self::$repositories['wordpress'] = '\WBCR\
|
110 |
|
111 |
$settings = $this->get_settings();
|
112 |
|
@@ -287,7 +287,7 @@ class Upgrader {
|
|
287 |
|
288 |
if ( isset( self::$repositories[ $repository_name ] ) && class_exists( self::$repositories[ $repository_name ] ) ) {
|
289 |
if ( self::$repositories[ $repository_name ] instanceof Repository ) {
|
290 |
-
throw new Exception( "Repository {$repository_name} must extend the class WBCR\
|
291 |
}
|
292 |
|
293 |
return new self::$repositories[ $repository_name ]( $this->plugin );
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Updates;
|
4 |
|
5 |
use Exception;
|
6 |
use stdClass;
|
7 |
+
use Wbcr_Factory429_Plugin;
|
8 |
|
9 |
// Exit if accessed directly
|
10 |
if ( ! defined( 'ABSPATH' ) ) {
|
28 |
* @since 4.1.7
|
29 |
* @var array хранит имя репозитория и его имя класса
|
30 |
* [
|
31 |
+
* 'wordpress' => 'WBCR\Factory_Freemius_117\Updates\Freemius_Repository',
|
32 |
+
* 'freemius' => '\WBCR\Factory_429\Updates\Wordpress_Repository'
|
33 |
* ]
|
34 |
*/
|
35 |
public static $repositories = [];
|
42 |
protected $type = 'default';
|
43 |
|
44 |
/**
|
45 |
+
* @var Wbcr_Factory429_Plugin
|
46 |
*/
|
47 |
protected $plugin;
|
48 |
|
90 |
*
|
91 |
* @since 4.1.1
|
92 |
*
|
93 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
94 |
* @param $args
|
95 |
* @param bool $is_premium
|
96 |
*
|
97 |
* @throws Exception
|
98 |
*/
|
99 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
100 |
|
101 |
$this->plugin = $plugin;
|
102 |
|
106 |
$this->is_debug = defined( 'FACTORY_UPDATES_DEBUG' ) && FACTORY_UPDATES_DEBUG;
|
107 |
|
108 |
# Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
|
109 |
+
self::$repositories['wordpress'] = '\WBCR\Factory_429\Updates\Wordpress_Repository';
|
110 |
|
111 |
$settings = $this->get_settings();
|
112 |
|
287 |
|
288 |
if ( isset( self::$repositories[ $repository_name ] ) && class_exists( self::$repositories[ $repository_name ] ) ) {
|
289 |
if ( self::$repositories[ $repository_name ] instanceof Repository ) {
|
290 |
+
throw new Exception( "Repository {$repository_name} must extend the class WBCR\Factory_429\Updates\Repository interface!" );
|
291 |
}
|
292 |
|
293 |
return new self::$repositories[ $repository_name ]( $this->plugin );
|
libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace WBCR\
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
-
use
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
@@ -23,17 +23,17 @@ abstract class Repository {
|
|
23 |
protected $initialized = false;
|
24 |
|
25 |
/**
|
26 |
-
* @var
|
27 |
*/
|
28 |
protected $plugin;
|
29 |
|
30 |
/**
|
31 |
* Repository constructor.
|
32 |
*
|
33 |
-
* @param
|
34 |
* @param bool $is_premium
|
35 |
*/
|
36 |
-
abstract public function __construct(
|
37 |
|
38 |
/**
|
39 |
* @return void
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Updates;
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
+
use Wbcr_Factory429_Plugin;
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
23 |
protected $initialized = false;
|
24 |
|
25 |
/**
|
26 |
+
* @var Wbcr_Factory429_Plugin
|
27 |
*/
|
28 |
protected $plugin;
|
29 |
|
30 |
/**
|
31 |
* Repository constructor.
|
32 |
*
|
33 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
34 |
* @param bool $is_premium
|
35 |
*/
|
36 |
+
abstract public function __construct( Wbcr_Factory429_Plugin $plugin );
|
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\
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
-
use
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
@@ -20,10 +20,10 @@ class Wordpress_Repository extends Repository {
|
|
20 |
/**
|
21 |
* Wordpress constructor.
|
22 |
*
|
23 |
-
* @param
|
24 |
* @param bool $is_premium
|
25 |
*/
|
26 |
-
public function __construct(
|
27 |
$this->plugin = $plugin;
|
28 |
}
|
29 |
|
1 |
<?php
|
2 |
|
3 |
+
namespace WBCR\Factory_429\Updates;
|
4 |
|
5 |
// Exit if accessed directly
|
6 |
+
use Wbcr_Factory429_Plugin;
|
7 |
|
8 |
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
exit;
|
20 |
/**
|
21 |
* Wordpress constructor.
|
22 |
*
|
23 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
24 |
* @param bool $is_premium
|
25 |
*/
|
26 |
+
public function __construct( Wbcr_Factory429_Plugin $plugin ) {
|
27 |
$this->plugin = $plugin;
|
28 |
}
|
29 |
|
libs/factory/core/langs/wbcr_factory_429-ru_RU.mo
ADDED
Binary file
|
libs/factory/core/langs/wbcr_factory_429-ru_RU.po
ADDED
@@ -0,0 +1,128 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: factory_forms\n"
|
4 |
+
"POT-Creation-Date: 2018-10-16 22:44+0300\n"
|
5 |
+
"PO-Revision-Date: 2018-10-16 22:45+0300\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: Alex Kovalev <alex.kovalevv@gmail.com>\n"
|
8 |
+
"Language: ru_RU\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 2.1.1\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
15 |
+
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
16 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
17 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c\n"
|
18 |
+
"X-Poedit-SearchPath-0: .\n"
|
19 |
+
|
20 |
+
#: includes/check-compatibility.php:80
|
21 |
+
msgid "warning"
|
22 |
+
msgstr "предупреждение"
|
23 |
+
|
24 |
+
#: includes/check-compatibility.php:82
|
25 |
+
#, php-format
|
26 |
+
msgid "The %s plugin has stopped."
|
27 |
+
msgstr "Работа плагина %s была остановлена."
|
28 |
+
|
29 |
+
#: includes/check-compatibility.php:83
|
30 |
+
msgid "Possible reasons:"
|
31 |
+
msgstr "Возможные причины:"
|
32 |
+
|
33 |
+
#: includes/check-compatibility.php:89
|
34 |
+
#, php-format
|
35 |
+
msgid "You need to update the PHP version to %s or higher!"
|
36 |
+
msgstr "Вам нужно обновить версию PHP до %s или выше!"
|
37 |
+
|
38 |
+
#: includes/check-compatibility.php:94
|
39 |
+
#, php-format
|
40 |
+
msgid "You need to update WordPress to %s or higher!"
|
41 |
+
msgstr "Вам нужно обновить WordPress до %s или выше!"
|
42 |
+
|
43 |
+
#: includes/functions.php:132
|
44 |
+
#, php-format
|
45 |
+
msgid ""
|
46 |
+
"%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead."
|
47 |
+
msgstr ""
|
48 |
+
"%1$s является <strong>устаревшим,</strong> начиная с версии %2$s в "
|
49 |
+
"Wordpress! Используйте %3$s."
|
50 |
+
|
51 |
+
#: includes/functions.php:134
|
52 |
+
#, php-format
|
53 |
+
msgid ""
|
54 |
+
"%1$s is <strong>deprecated</strong> since version %2$s with no alternative "
|
55 |
+
"available."
|
56 |
+
msgstr ""
|
57 |
+
"%1$s был вызван с параметром, который является <strong>устаревшими</strong> "
|
58 |
+
"начиная с версии %2$s , в настоящее время доступных альтернатив нет."
|
59 |
+
|
60 |
+
#: includes/plugin.class.php:202 includes/plugin.class.php:237
|
61 |
+
msgid ""
|
62 |
+
"You are trying to call this earlier than the plugin menu will be registered."
|
63 |
+
msgstr ""
|
64 |
+
"Вы пытаетесь вызвать это раньше, чем будет зарегистрировано меню плагина."
|
65 |
+
|
66 |
+
#: includes/plugin.class.php:220
|
67 |
+
msgid ""
|
68 |
+
"You are trying to get a link to a page that does not have multisite mode. "
|
69 |
+
"Clicking this link will lead the user to a non-existent page."
|
70 |
+
msgstr ""
|
71 |
+
"Вы пытаетесь получить ссылку на страницу, которая не имеет "
|
72 |
+
"многопользовательского режима. Щелчок по этой ссылке приведет пользователя "
|
73 |
+
"к несуществующей странице."
|
74 |
+
|
75 |
+
#: includes/plugin.class.php:222
|
76 |
+
msgid ""
|
77 |
+
"Trying to get a link to an unregistered page. You are trying to call this "
|
78 |
+
"earlier than the plugin menu will be registered."
|
79 |
+
msgstr ""
|
80 |
+
"Попытка получить ссылку на незарегистрированную страницу. Вы пытаетесь "
|
81 |
+
"вызвать это раньше, чем будет зарегистрировано меню плагина."
|
82 |
+
|
83 |
+
#~ msgid "On"
|
84 |
+
#~ msgstr "Вкл"
|
85 |
+
|
86 |
+
#~ msgid "Off"
|
87 |
+
#~ msgstr "Выкл"
|
88 |
+
|
89 |
+
#~ msgid "(use default website font)"
|
90 |
+
#~ msgstr "(шрифт сайта по умолчанию)"
|
91 |
+
|
92 |
+
#~ msgid "Sans Serif:"
|
93 |
+
#~ msgstr "Группа Sans Serif:"
|
94 |
+
|
95 |
+
#~ msgid "Serif:"
|
96 |
+
#~ msgstr "Группа Serif:"
|
97 |
+
|
98 |
+
#~ msgid "Monospaced:"
|
99 |
+
#~ msgstr "Группа Monospaced:"
|
100 |
+
|
101 |
+
#~ msgid "vertical"
|
102 |
+
#~ msgstr "вертикальный"
|
103 |
+
|
104 |
+
#~ msgid "horizontal"
|
105 |
+
#~ msgstr "горизонтальный"
|
106 |
+
|
107 |
+
#~ msgid "hide extra options"
|
108 |
+
#~ msgstr "скрыть дополнительные настроки"
|
109 |
+
|
110 |
+
#~ msgid "Select a side and move the slider to set up:"
|
111 |
+
#~ msgstr "Выберите сторону и переместите ползунок:"
|
112 |
+
|
113 |
+
#~ msgid "Change color"
|
114 |
+
#~ msgstr "Выбрать цвет"
|
115 |
+
|
116 |
+
#~ msgid "re-color"
|
117 |
+
#~ msgstr "Перекрасить"
|
118 |
+
|
119 |
+
#~ msgid "Select color:"
|
120 |
+
#~ msgstr "Выберите цвет:"
|
121 |
+
|
122 |
+
#~ msgid "Changing the color may takes a minute or more. Please be patient."
|
123 |
+
#~ msgstr ""
|
124 |
+
#~ "В некоторых случаях изменение цвета может занять около минуты. "
|
125 |
+
#~ "Пожалуйста, будьте терпеливы."
|
126 |
+
|
127 |
+
#~ msgid "Upload Pattern"
|
128 |
+
#~ msgstr "Добавить шаблон"
|
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('
|
26 |
return;
|
27 |
}
|
28 |
|
29 |
-
define('
|
30 |
|
31 |
-
define('
|
32 |
|
33 |
// absolute path and URL to the files and resources of the module.
|
34 |
-
define('
|
35 |
-
define('
|
36 |
|
37 |
#comp merge
|
38 |
-
require_once(
|
39 |
-
require_once(
|
40 |
-
require_once(
|
41 |
|
42 |
-
require_once(
|
43 |
#endcomp
|
44 |
|
45 |
-
load_plugin_textdomain('
|
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 '
|
53 |
*
|
54 |
*/
|
55 |
-
if( !function_exists('
|
56 |
|
57 |
/**
|
58 |
-
* @param
|
59 |
*
|
60 |
* @throws Exception
|
61 |
*/
|
62 |
-
function
|
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(
|
70 |
-
require_once(
|
71 |
-
require_once(
|
72 |
-
require_once(
|
73 |
-
require_once(
|
74 |
-
require_once(
|
75 |
-
require_once(
|
76 |
-
require_once(
|
77 |
|
78 |
// registration of controls
|
79 |
$plugin->forms->registerControls([
|
80 |
[
|
81 |
'type' => 'checkbox',
|
82 |
-
'class' => '
|
83 |
-
'include' =>
|
84 |
],
|
85 |
[
|
86 |
'type' => 'list',
|
87 |
-
'class' => '
|
88 |
-
'include' =>
|
89 |
],
|
90 |
[
|
91 |
'type' => 'dropdown',
|
92 |
-
'class' => '
|
93 |
-
'include' =>
|
94 |
],
|
95 |
[
|
96 |
'type' => 'dropdown-and-colors',
|
97 |
-
'class' => '
|
98 |
-
'include' =>
|
99 |
],
|
100 |
[
|
101 |
'type' => 'hidden',
|
102 |
-
'class' => '
|
103 |
-
'include' =>
|
104 |
],
|
105 |
[
|
106 |
'type' => 'hidden',
|
107 |
-
'class' => '
|
108 |
-
'include' =>
|
109 |
],
|
110 |
[
|
111 |
'type' => 'radio',
|
112 |
-
'class' => '
|
113 |
-
'include' =>
|
114 |
],
|
115 |
[
|
116 |
'type' => 'radio-colors',
|
117 |
-
'class' => '
|
118 |
-
'include' =>
|
119 |
],
|
120 |
[
|
121 |
'type' => 'textarea',
|
122 |
-
'class' => '
|
123 |
-
'include' =>
|
124 |
],
|
125 |
[
|
126 |
'type' => 'textbox',
|
127 |
-
'class' => '
|
128 |
-
'include' =>
|
129 |
],
|
130 |
[
|
131 |
'type' => 'multiple-textbox',
|
132 |
-
'class' => '
|
133 |
-
'include' =>
|
134 |
],
|
135 |
[
|
136 |
'type' => 'datetimepicker-range',
|
137 |
-
'class' => '
|
138 |
-
'include' =>
|
139 |
],
|
140 |
[
|
141 |
'type' => 'url',
|
142 |
-
'class' => '
|
143 |
-
'include' =>
|
144 |
],
|
145 |
[
|
146 |
'type' => 'wp-editor',
|
147 |
-
'class' => '
|
148 |
-
'include' =>
|
149 |
],
|
150 |
[
|
151 |
'type' => 'color',
|
152 |
-
'class' => '
|
153 |
-
'include' =>
|
154 |
],
|
155 |
[
|
156 |
'type' => 'color-and-opacity',
|
157 |
-
'class' => '
|
158 |
-
'include' =>
|
159 |
],
|
160 |
[
|
161 |
'type' => 'gradient',
|
162 |
-
'class' => '
|
163 |
-
'include' =>
|
164 |
],
|
165 |
[
|
166 |
'type' => 'font',
|
167 |
-
'class' => '
|
168 |
-
'include' =>
|
169 |
],
|
170 |
[
|
171 |
'type' => 'google-font',
|
172 |
-
'class' => '
|
173 |
-
'include' =>
|
174 |
],
|
175 |
[
|
176 |
'type' => 'pattern',
|
177 |
-
'class' => '
|
178 |
-
'include' =>
|
179 |
],
|
180 |
[
|
181 |
'type' => 'integer',
|
182 |
-
'class' => '
|
183 |
-
'include' =>
|
184 |
],
|
185 |
[
|
186 |
'type' => 'control-group',
|
187 |
-
'class' => '
|
188 |
-
'include' =>
|
189 |
],
|
190 |
[
|
191 |
'type' => 'paddings-editor',
|
192 |
-
'class' => '
|
193 |
-
'include' =>
|
194 |
],
|
195 |
]);
|
196 |
|
@@ -198,53 +198,53 @@ if( !function_exists('wbcr_factory_forms_426_register_default_controls') ) {
|
|
198 |
$plugin->forms->registerHolders([
|
199 |
[
|
200 |
'type' => 'tab',
|
201 |
-
'class' => '
|
202 |
-
'include' =>
|
203 |
],
|
204 |
[
|
205 |
'type' => 'tab-item',
|
206 |
-
'class' => '
|
207 |
-
'include' =>
|
208 |
],
|
209 |
[
|
210 |
'type' => 'accordion',
|
211 |
-
'class' => '
|
212 |
-
'include' =>
|
213 |
],
|
214 |
[
|
215 |
'type' => 'accordion-item',
|
216 |
-
'class' => '
|
217 |
-
'include' =>
|
218 |
],
|
219 |
[
|
220 |
'type' => 'control-group',
|
221 |
-
'class' => '
|
222 |
-
'include' =>
|
223 |
],
|
224 |
[
|
225 |
'type' => 'control-group-item',
|
226 |
-
'class' => '
|
227 |
-
'include' =>
|
228 |
],
|
229 |
[
|
230 |
'type' => 'form-group',
|
231 |
-
'class' => '
|
232 |
-
'include' =>
|
233 |
],
|
234 |
[
|
235 |
'type' => 'more-link',
|
236 |
-
'class' => '
|
237 |
-
'include' =>
|
238 |
],
|
239 |
[
|
240 |
'type' => 'div',
|
241 |
-
'class' => '
|
242 |
-
'include' =>
|
243 |
],
|
244 |
[
|
245 |
'type' => 'columns',
|
246 |
-
'class' => '
|
247 |
-
'include' =>
|
248 |
]
|
249 |
]);
|
250 |
|
@@ -252,23 +252,23 @@ if( !function_exists('wbcr_factory_forms_426_register_default_controls') ) {
|
|
252 |
$plugin->forms->registerCustomElements([
|
253 |
[
|
254 |
'type' => 'html',
|
255 |
-
'class' => '
|
256 |
-
'include' =>
|
257 |
],
|
258 |
[
|
259 |
'type' => 'separator',
|
260 |
-
'class' => '
|
261 |
-
'include' =>
|
262 |
],
|
263 |
]);
|
264 |
|
265 |
// registration of form layouts
|
266 |
$plugin->forms->registerFormLayout([
|
267 |
'name' => 'bootstrap-3',
|
268 |
-
'class' => '
|
269 |
-
'include' =>
|
270 |
]);
|
271 |
}
|
272 |
|
273 |
-
add_action('
|
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_427_LOADED') ) {
|
26 |
return;
|
27 |
}
|
28 |
|
29 |
+
define('FACTORY_FORMS_427_LOADED', true);
|
30 |
|
31 |
+
define('FACTORY_FORMS_427_VERSION', '4.2.7');
|
32 |
|
33 |
// absolute path and URL to the files and resources of the module.
|
34 |
+
define('FACTORY_FORMS_427_DIR', dirname(__FILE__));
|
35 |
+
define('FACTORY_FORMS_427_URL', plugins_url(null, __FILE__));
|
36 |
|
37 |
#comp merge
|
38 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/providers/value-provider.interface.php');
|
39 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/providers/meta-value-provider.class.php');
|
40 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/providers/options-value-provider.class.php');
|
41 |
|
42 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/form.class.php');
|
43 |
#endcomp
|
44 |
|
45 |
+
load_plugin_textdomain('wbcr_factory_forms_427', 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_427_register_controls' hook
|
53 |
*
|
54 |
*/
|
55 |
+
if( !function_exists('wbcr_factory_forms_427_register_default_controls') ) {
|
56 |
|
57 |
/**
|
58 |
+
* @param Wbcr_Factory429_Plugin $plugin
|
59 |
*
|
60 |
* @throws Exception
|
61 |
*/
|
62 |
+
function wbcr_factory_forms_427_register_default_controls(Wbcr_Factory429_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_427_DIR . '/includes/html-builder.class.php');
|
70 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/form-element.class.php');
|
71 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/control.class.php');
|
72 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/complex-control.class.php');
|
73 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/holder.class.php');
|
74 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/control-holder.class.php');
|
75 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/custom-element.class.php');
|
76 |
+
require_once(FACTORY_FORMS_427_DIR . '/includes/form-layout.class.php');
|
77 |
|
78 |
// registration of controls
|
79 |
$plugin->forms->registerControls([
|
80 |
[
|
81 |
'type' => 'checkbox',
|
82 |
+
'class' => 'Wbcr_FactoryForms427_CheckboxControl',
|
83 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/checkbox.php'
|
84 |
],
|
85 |
[
|
86 |
'type' => 'list',
|
87 |
+
'class' => 'Wbcr_FactoryForms427_ListControl',
|
88 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/list.php'
|
89 |
],
|
90 |
[
|
91 |
'type' => 'dropdown',
|
92 |
+
'class' => 'Wbcr_FactoryForms427_DropdownControl',
|
93 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/dropdown.php'
|
94 |
],
|
95 |
[
|
96 |
'type' => 'dropdown-and-colors',
|
97 |
+
'class' => 'Wbcr_FactoryForms427_DropdownAndColorsControl',
|
98 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/dropdown-and-colors.php'
|
99 |
],
|
100 |
[
|
101 |
'type' => 'hidden',
|
102 |
+
'class' => 'Wbcr_FactoryForms427_HiddenControl',
|
103 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/hidden.php'
|
104 |
],
|
105 |
[
|
106 |
'type' => 'hidden',
|
107 |
+
'class' => 'Wbcr_FactoryForms427_HiddenControl',
|
108 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/hidden.php'
|
109 |
],
|
110 |
[
|
111 |
'type' => 'radio',
|
112 |
+
'class' => 'Wbcr_FactoryForms427_RadioControl',
|
113 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/radio.php'
|
114 |
],
|
115 |
[
|
116 |
'type' => 'radio-colors',
|
117 |
+
'class' => 'Wbcr_FactoryForms427_RadioColorsControl',
|
118 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/radio-colors.php'
|
119 |
],
|
120 |
[
|
121 |
'type' => 'textarea',
|
122 |
+
'class' => 'Wbcr_FactoryForms427_TextareaControl',
|
123 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/textarea.php'
|
124 |
],
|
125 |
[
|
126 |
'type' => 'textbox',
|
127 |
+
'class' => 'Wbcr_FactoryForms427_TextboxControl',
|
128 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/textbox.php'
|
129 |
],
|
130 |
[
|
131 |
'type' => 'multiple-textbox',
|
132 |
+
'class' => 'Wbcr_FactoryForms427_MultipleTextboxControl',
|
133 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/multiple-textbox.php'
|
134 |
],
|
135 |
[
|
136 |
'type' => 'datetimepicker-range',
|
137 |
+
'class' => 'Wbcr_FactoryForms427_DatepickerRangeControl',
|
138 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/datepicker-range.php'
|
139 |
],
|
140 |
[
|
141 |
'type' => 'url',
|
142 |
+
'class' => 'Wbcr_FactoryForms427_UrlControl',
|
143 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/url.php'
|
144 |
],
|
145 |
[
|
146 |
'type' => 'wp-editor',
|
147 |
+
'class' => 'Wbcr_FactoryForms427_WpEditorControl',
|
148 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/wp-editor.php'
|
149 |
],
|
150 |
[
|
151 |
'type' => 'color',
|
152 |
+
'class' => 'Wbcr_FactoryForms427_ColorControl',
|
153 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/color.php'
|
154 |
],
|
155 |
[
|
156 |
'type' => 'color-and-opacity',
|
157 |
+
'class' => 'Wbcr_FactoryForms427_ColorAndOpacityControl',
|
158 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/color-and-opacity.php'
|
159 |
],
|
160 |
[
|
161 |
'type' => 'gradient',
|
162 |
+
'class' => 'Wbcr_FactoryForms427_GradientControl',
|
163 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/gradient.php'
|
164 |
],
|
165 |
[
|
166 |
'type' => 'font',
|
167 |
+
'class' => 'Wbcr_FactoryForms427_FontControl',
|
168 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/font.php'
|
169 |
],
|
170 |
[
|
171 |
'type' => 'google-font',
|
172 |
+
'class' => 'Wbcr_FactoryForms427_GoogleFontControl',
|
173 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/google-font.php'
|
174 |
],
|
175 |
[
|
176 |
'type' => 'pattern',
|
177 |
+
'class' => 'Wbcr_FactoryForms427_PatternControl',
|
178 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/pattern.php'
|
179 |
],
|
180 |
[
|
181 |
'type' => 'integer',
|
182 |
+
'class' => 'Wbcr_FactoryForms427_IntegerControl',
|
183 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/integer.php'
|
184 |
],
|
185 |
[
|
186 |
'type' => 'control-group',
|
187 |
+
'class' => 'Wbcr_FactoryForms427_ControlGroupHolder',
|
188 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/control-group.php'
|
189 |
],
|
190 |
[
|
191 |
'type' => 'paddings-editor',
|
192 |
+
'class' => 'Wbcr_FactoryForms427_PaddingsEditorControl',
|
193 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/paddings-editor.php'
|
194 |
],
|
195 |
]);
|
196 |
|
198 |
$plugin->forms->registerHolders([
|
199 |
[
|
200 |
'type' => 'tab',
|
201 |
+
'class' => 'Wbcr_FactoryForms427_TabHolder',
|
202 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/tab.php'
|
203 |
],
|
204 |
[
|
205 |
'type' => 'tab-item',
|
206 |
+
'class' => 'Wbcr_FactoryForms427_TabItemHolder',
|
207 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/tab-item.php'
|
208 |
],
|
209 |
[
|
210 |
'type' => 'accordion',
|
211 |
+
'class' => 'Wbcr_FactoryForms427_AccordionHolder',
|
212 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/accordion.php'
|
213 |
],
|
214 |
[
|
215 |
'type' => 'accordion-item',
|
216 |
+
'class' => 'Wbcr_FactoryForms427_AccordionItemHolder',
|
217 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/accordion-item.php'
|
218 |
],
|
219 |
[
|
220 |
'type' => 'control-group',
|
221 |
+
'class' => 'Wbcr_FactoryForms427_ControlGroupHolder',
|
222 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/control-group.php'
|
223 |
],
|
224 |
[
|
225 |
'type' => 'control-group-item',
|
226 |
+
'class' => 'Wbcr_FactoryForms427_ControlGroupItem',
|
227 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/control-group-item.php'
|
228 |
],
|
229 |
[
|
230 |
'type' => 'form-group',
|
231 |
+
'class' => 'Wbcr_FactoryForms427_FormGroupHolder',
|
232 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/form-group.php'
|
233 |
],
|
234 |
[
|
235 |
'type' => 'more-link',
|
236 |
+
'class' => 'Wbcr_FactoryForms427_MoreLinkHolder',
|
237 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/more-link.php'
|
238 |
],
|
239 |
[
|
240 |
'type' => 'div',
|
241 |
+
'class' => 'Wbcr_FactoryForms427_DivHolder',
|
242 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/div.php'
|
243 |
],
|
244 |
[
|
245 |
'type' => 'columns',
|
246 |
+
'class' => 'Wbcr_FactoryForms427_ColumnsHolder',
|
247 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/holders/columns.php'
|
248 |
]
|
249 |
]);
|
250 |
|
252 |
$plugin->forms->registerCustomElements([
|
253 |
[
|
254 |
'type' => 'html',
|
255 |
+
'class' => 'Wbcr_FactoryForms427_Html',
|
256 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/customs/html.php',
|
257 |
],
|
258 |
[
|
259 |
'type' => 'separator',
|
260 |
+
'class' => 'Wbcr_FactoryForms427_Separator',
|
261 |
+
'include' => FACTORY_FORMS_427_DIR . '/controls/customs/separator.php',
|
262 |
],
|
263 |
]);
|
264 |
|
265 |
// registration of form layouts
|
266 |
$plugin->forms->registerFormLayout([
|
267 |
'name' => 'bootstrap-3',
|
268 |
+
'class' => 'Wbcr_FactoryForms427_Bootstrap3FormLayout',
|
269 |
+
'include' => FACTORY_FORMS_427_DIR . '/layouts/bootstrap-3/bootstrap-3.php'
|
270 |
]);
|
271 |
}
|
272 |
|
273 |
+
add_action('wbcr_factory_forms_427_register_controls', 'wbcr_factory_forms_427_register_default_controls');
|
274 |
}
|
libs/factory/forms/controls/checkbox.php
CHANGED
@@ -20,9 +20,9 @@
|
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
-
if( !class_exists('
|
24 |
|
25 |
-
class
|
26 |
|
27 |
public $type = 'checkbox';
|
28 |
|
@@ -130,10 +130,10 @@
|
|
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', '
|
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', '
|
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 |
} ?>" />
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
+
if( !class_exists('Wbcr_FactoryForms427_CheckboxControl') ) {
|
24 |
|
25 |
+
class Wbcr_FactoryForms427_CheckboxControl extends Wbcr_FactoryForms427_Control {
|
26 |
|
27 |
public $type = 'checkbox';
|
28 |
|
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_427') ?></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_427') ?></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 |
} ?>" />
|
libs/factory/forms/controls/color-and-opacity.php
CHANGED
@@ -20,10 +20,10 @@
|
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
-
if( !class_exists('
|
24 |
}
|
25 |
|
26 |
-
class
|
27 |
|
28 |
public $type = 'color-and-opacity';
|
29 |
|
@@ -57,8 +57,8 @@
|
|
57 |
'way' => 'slider'
|
58 |
));
|
59 |
|
60 |
-
$this->color = new
|
61 |
-
$this->opacity = new
|
62 |
|
63 |
$this->innerControls = array($this->color, $this->opacity);
|
64 |
}
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
+
if( !class_exists('Wbcr_FactoryForms427_ColorAndOpacityControl') ) {
|
24 |
}
|
25 |
|
26 |
+
class Wbcr_FactoryForms427_ColorAndOpacityControl extends Wbcr_FactoryForms427_ComplexControl {
|
27 |
|
28 |
public $type = 'color-and-opacity';
|
29 |
|
57 |
'way' => 'slider'
|
58 |
));
|
59 |
|
60 |
+
$this->color = new Wbcr_FactoryForms427_ColorControl($options['color'], $form, $provider);
|
61 |
+
$this->opacity = new Wbcr_FactoryForms427_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('
|
24 |
|
25 |
-
class
|
26 |
|
27 |
public $type = 'color';
|
28 |
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
+
if( !class_exists('Wbcr_FactoryForms427_ColorControl') ) {
|
24 |
|
25 |
+
class Wbcr_FactoryForms427_ColorControl extends Wbcr_FactoryForms427_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('
|
18 |
|
19 |
-
class
|
20 |
|
21 |
public $type = 'html';
|
22 |
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_Html') ) {
|
18 |
|
19 |
+
class Wbcr_FactoryForms427_Html extends Wbcr_FactoryForms427_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('
|
18 |
-
class
|
19 |
|
20 |
public $type = 'separator';
|
21 |
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_Separator') ) {
|
18 |
+
class Wbcr_FactoryForms427_Separator extends Wbcr_FactoryForms427_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('
|
33 |
|
34 |
-
class
|
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
|
69 |
-
$this->range_2 = new
|
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_FactoryForms427_DatepickerRangeControl') ) {
|
33 |
|
34 |
+
class Wbcr_FactoryForms427_DatepickerRangeControl extends Wbcr_FactoryForms427_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_FactoryForms427_TextboxControl($options['range_1'], $form, $provider);
|
69 |
+
$this->range_2 = new Wbcr_FactoryForms427_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
|
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
|
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('
|
41 |
|
42 |
-
class
|
43 |
|
44 |
public $type = 'dropdown-and-colors';
|
45 |
|
@@ -69,8 +69,8 @@
|
|
69 |
'name' => $this->options['name'] . '__colors',
|
70 |
));
|
71 |
|
72 |
-
$this->dropdown = new
|
73 |
-
$this->colors = new
|
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 FactoryForms427_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 FactoryForms427_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_FactoryForms427_DropdownAndColorsControl') ) {
|
41 |
|
42 |
+
class Wbcr_FactoryForms427_DropdownAndColorsControl extends Wbcr_FactoryForms427_ComplexControl {
|
43 |
|
44 |
public $type = 'dropdown-and-colors';
|
45 |
|
69 |
'name' => $this->options['name'] . '__colors',
|
70 |
));
|
71 |
|
72 |
+
$this->dropdown = new Wbcr_FactoryForms427_DropdownControl($options['dropdown'], $form, $provider);
|
73 |
+
$this->colors = new Wbcr_FactoryForms427_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( '
|
25 |
|
26 |
-
class
|
27 |
|
28 |
public $type = 'dropdown';
|
29 |
|
@@ -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.', '
|
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 -', '
|
272 |
|
273 |
?>
|
274 |
<select <?php $this->attrs() ?>>
|
@@ -349,7 +349,7 @@
|
|
349 |
}
|
350 |
|
351 |
$value = isset( $item['value'] ) ? $item['value'] : '';
|
352 |
-
$title = isset( $item['title'] ) ? $item['title'] : __( '- empty -', '
|
353 |
|
354 |
$data = isset( $item['data'] ) ? $item['data'] : null;
|
355 |
} else {
|
21 |
exit;
|
22 |
}
|
23 |
|
24 |
+
if ( ! class_exists( 'Wbcr_FactoryForms427_DropdownControl' ) ) {
|
25 |
|
26 |
+
class Wbcr_FactoryForms427_DropdownControl extends Wbcr_FactoryForms427_Control {
|
27 |
|
28 |
public $type = 'dropdown';
|
29 |
|
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_427' ) ) ?>'
|
127 |
};
|
128 |
</script>
|
129 |
<?php
|
268 |
}
|
269 |
|
270 |
$is_empty = $this->isAjax() || empty( $items );
|
271 |
+
$empty_list = $this->getOption( 'empty', __( '- empty -', 'wbcr_factory_forms_427' ) );
|
272 |
|
273 |
?>
|
274 |
<select <?php $this->attrs() ?>>
|
349 |
}
|
350 |
|
351 |
$value = isset( $item['value'] ) ? $item['value'] : '';
|
352 |
+
$title = isset( $item['title'] ) ? $item['title'] : __( '- empty -', 'wbcr_factory_forms_427' );
|
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('
|
24 |
|
25 |
-
class
|
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
|
58 |
-
$this->family = new
|
59 |
-
$this->color = new
|
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('
|
70 |
-
$fonts = apply_filters('
|
71 |
|
72 |
return $fonts;
|
73 |
}
|
@@ -77,10 +77,10 @@
|
|
77 |
|
78 |
$fonts = array(
|
79 |
|
80 |
-
array('inherit', __('(use default website font)', '
|
81 |
array(
|
82 |
'group',
|
83 |
-
__('Sans Serif:', '
|
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:', '
|
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:', '
|
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_FactoryForms427_FontControl') ) {
|
24 |
|
25 |
+
class Wbcr_FactoryForms427_FontControl extends Wbcr_FactoryForms427_ComplexControl {
|
26 |
|
27 |
public $type = 'font';
|
28 |
|
54 |
'pickerTarget' => '.factory-control-' . $this->options['name'] . ' .factory-picker-target'
|
55 |
);
|
56 |
|
57 |
+
$this->size = new Wbcr_FactoryForms427_IntegerControl($option_font_size, $form, $provider);
|
58 |
+
$this->family = new Wbcr_FactoryForms427_DropdownControl($option_font_family, $form, $provider);
|
59 |
+
$this->color = new Wbcr_FactoryForms427_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_427_fonts', $fonts);
|
70 |
+
$fonts = apply_filters('wbcr_factory_forms_427_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_427')),
|
81 |
array(
|
82 |
'group',
|
83 |
+
__('Sans Serif:', 'wbcr_factory_forms_427'),
|
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_427'),
|
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_427'),
|
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
|
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
|
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)', '
|
53 |
);
|
54 |
|
55 |
$fontsCommon = array(
|
56 |
'group',
|
57 |
-
__('Standard:', '
|
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:', '
|
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.', '
|
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.', '
|
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.', '
|
137 |
|
138 |
return $body;
|
139 |
}
|
15 |
* @package core
|
16 |
* @since 1.0.0
|
17 |
*/
|
18 |
+
class Wbcr_FactoryForms427_GoogleFontControl extends Wbcr_FactoryForms427_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_FactoryForms427_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_427'))
|
53 |
);
|
54 |
|
55 |
$fontsCommon = array(
|
56 |
'group',
|
57 |
+
__('Standard:', 'wbcr_factory_forms_427'),
|
58 |
array(
|
59 |
|
60 |
array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
|
65 |
)
|
66 |
);
|
67 |
|
68 |
+
$fontsGoogleFonts = array('group', __('Google Fonts:', 'wbcr_factory_forms_427'), 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_427');
|
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_427');
|
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_427');
|
137 |
|
138 |
return $body;
|
139 |
}
|
libs/factory/forms/controls/gradient.php
CHANGED
@@ -25,8 +25,8 @@
|
|
25 |
exit;
|
26 |
}
|
27 |
|
28 |
-
if( !class_exists('
|
29 |
-
class
|
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', '
|
70 |
-
factory.res.resHorizontal = '<?php _e( 'horizontal', '
|
71 |
</script>
|
72 |
<div <?php $this->attrs() ?>>
|
73 |
<div class="factory-gradient-picker">
|
25 |
exit;
|
26 |
}
|
27 |
|
28 |
+
if( !class_exists('Wbcr_FactoryForms427_GradientControl') ) {
|
29 |
+
class Wbcr_FactoryForms427_GradientControl extends Wbcr_FactoryForms427_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_427' ) ?>';
|
70 |
+
factory.res.resHorizontal = '<?php _e( 'horizontal', 'wbcr_factory_forms_427' ) ?>';
|
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('
|
24 |
|
25 |
-
class
|
26 |
|
27 |
public $type = 'hidden';
|
28 |
|
20 |
exit;
|
21 |
}
|
22 |
|
23 |
+
if( !class_exists('Wbcr_FactoryForms427_HiddenControl') ) {
|
24 |
|
25 |
+
class Wbcr_FactoryForms427_HiddenControl extends Wbcr_FactoryForms427_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('
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
-
class
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_AccordionItemHolder') ) {
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
+
class Wbcr_FactoryForms427_AccordionItemHolder extends Wbcr_FactoryForms427_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('
|
17 |
/**
|
18 |
* Tab Control Holder
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
-
class
|
23 |
|
24 |
/**
|
25 |
* A holder type.
|
13 |
if( !defined('ABSPATH') ) {
|
14 |
exit;
|
15 |
}
|
16 |
+
if( !class_exists('Wbcr_FactoryForms427_AccordionHolder') ) {
|
17 |
/**
|
18 |
* Tab Control Holder
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
+
class Wbcr_FactoryForms427_AccordionHolder extends Wbcr_FactoryForms427_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('
|
18 |
/**
|
19 |
* Columns Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
-
class
|
24 |
|
25 |
/**
|
26 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_ColumnsHolder') ) {
|
18 |
/**
|
19 |
* Columns Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
+
class Wbcr_FactoryForms427_ColumnsHolder extends Wbcr_FactoryForms427_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('
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
-
class
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_ControlGroupItem') ) {
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
+
class Wbcr_FactoryForms427_ControlGroupItem extends Wbcr_FactoryForms427_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('
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
-
class
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
@@ -61,7 +61,7 @@
|
|
61 |
continue;
|
62 |
}
|
63 |
|
64 |
-
$builder = new
|
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_FactoryForms427_ControlGroupHolder') ) {
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
+
class Wbcr_FactoryForms427_ControlGroupHolder extends Wbcr_FactoryForms427_ControlHolder {
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
61 |
continue;
|
62 |
}
|
63 |
|
64 |
+
$builder = new Wbcr_FactoryForms427_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('
|
18 |
/**
|
19 |
* Div Control Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
-
class
|
24 |
|
25 |
/**
|
26 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_DivHolder') ) {
|
18 |
/**
|
19 |
* Div Control Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
+
class Wbcr_FactoryForms427_DivHolder extends Wbcr_FactoryForms427_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('
|
18 |
/**
|
19 |
* Group Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
-
class
|
24 |
|
25 |
/**
|
26 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_FormGroupHolder') ) {
|
18 |
/**
|
19 |
* Group Holder
|
20 |
*
|
21 |
* @since 1.0.0
|
22 |
*/
|
23 |
+
class Wbcr_FactoryForms427_FormGroupHolder extends Wbcr_FactoryForms427_Holder {
|
24 |
|
25 |
/**
|
26 |
* A holder type.
|
libs/factory/forms/controls/holders/more-link.php
CHANGED
@@ -14,14 +14,14 @@
|
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
-
if( !class_exists('
|
18 |
|
19 |
/**
|
20 |
* Collapsed Group Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
-
class
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_MoreLinkHolder') ) {
|
18 |
|
19 |
/**
|
20 |
* Collapsed Group Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
+
class Wbcr_FactoryForms427_MoreLinkHolder extends Wbcr_FactoryForms427_Holder {
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
libs/factory/forms/controls/holders/tab-item.php
CHANGED
@@ -13,13 +13,13 @@
|
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
-
if( !class_exists('
|
17 |
/**
|
18 |
* Tab Item Control Holder
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
-
class
|
23 |
|
24 |
/**
|
25 |
* A holder type.
|
13 |
exit;
|
14 |
}
|
15 |
|
16 |
+
if( !class_exists('Wbcr_FactoryForms427_TabItemHolder') ) {
|
17 |
/**
|
18 |
* Tab Item Control Holder
|
19 |
*
|
20 |
* @since 1.0.0
|
21 |
*/
|
22 |
+
class Wbcr_FactoryForms427_TabItemHolder extends Wbcr_FactoryForms427_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('
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
-
class
|
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
|
48 |
*/
|
49 |
public function __construct($options, $form)
|
50 |
{
|
@@ -88,7 +88,7 @@
|
|
88 |
$tab_icon = $element->options['icon'];
|
89 |
}
|
90 |
|
91 |
-
$builder = new
|
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_FactoryForms427_TabHolder') ) {
|
18 |
|
19 |
/**
|
20 |
* Tab Control Holder
|
21 |
*
|
22 |
* @since 1.0.0
|
23 |
*/
|
24 |
+
class Wbcr_FactoryForms427_TabHolder extends Wbcr_FactoryForms427_Holder {
|
25 |
|
26 |
/**
|
27 |
* A holder type.
|
44 |
*
|
45 |
* @since 1.0.0
|
46 |
* @param mixed[] $options A holder options.
|
47 |
+
* @param FactoryForms427_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_FactoryForms427_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('
|
36 |
|
37 |
-
class
|
38 |
|
39 |
public $type = 'integer';
|
40 |
|
32 |
exit;
|
33 |
}
|
34 |
|
35 |
+
if( !class_exists('Wbcr_FactoryForms427_IntegerControl') ) {
|
36 |
|
37 |
+
class Wbcr_FactoryForms427_IntegerControl extends Wbcr_FactoryForms427_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('
|
25 |
|
26 |
-
class
|
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.', '
|
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.', '
|
140 |
|
141 |
if( $is_empty ) {
|
142 |
$this->addCssClass('factory-empty');
|
21 |
exit;
|
22 |
}
|
23 |
|
24 |
+
if( !class_exists('Wbcr_FactoryForms427_ListControl') ) {
|
25 |
|
26 |
+
class Wbcr_FactoryForms427_ListControl extends Wbcr_FactoryForms427_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_427') ) ?>'
|
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_427'));
|
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('
|
19 |
|
20 |
-
class
|
21 |
|
22 |
public $type = 'multiple-textbox';
|
23 |
|
@@ -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', '
|
90 |
</button>
|
91 |
</div>
|
92 |
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
+
if( !class_exists('Wbcr_FactoryForms427_MultipleTextboxControl') ) {
|
19 |
|
20 |
+
class Wbcr_FactoryForms427_MultipleTextboxControl extends Wbcr_FactoryForms427_Control {
|
21 |
|
22 |
public $type = 'multiple-textbox';
|
23 |
|
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_427') ?>
|
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('
|
18 |
|
19 |
-
class
|
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:', '
|
71 |
</label>
|
72 |
|
73 |
<div class="factory-slider">
|
14 |
exit;
|
15 |
}
|
16 |
|
17 |
+
if( !class_exists('Wbcr_FactoryForms427_PaddingsEditorControl') ) {
|
18 |
|
19 |
+
class Wbcr_FactoryForms427_PaddingsEditorControl extends Wbcr_FactoryForms427_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_427') ?>
|
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('
|
19 |
|
20 |
-
class
|
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('
|
56 |
-
$this->patterns = apply_filters('
|
57 |
|
58 |
$this->custom_patterns = $this->getOption('patterns', array());
|
59 |
|
60 |
-
$this->color = new
|
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', '
|
106 |
<i class="fa fa-flask"></i>
|
107 |
-
<span><?php _e('re-color', '
|
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:', '
|
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.', '
|
118 |
</div>
|
119 |
</div>
|
120 |
<div class="factory-picker-target"></
|
15 |
exit;
|
16 |
}
|
17 |
|
18 |
+
if( !class_exists('Wbcr_FactoryForms427_PatternControl') ) {
|
19 |
|
20 |
+
class Wbcr_FactoryForms427_PatternControl extends Wbcr_FactoryForms427_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_427_patterns', array());
|
56 |
+
$this->patterns = apply_filters('wbcr_factory_forms_427_patterns-' . $name, $this->patterns);
|
57 |
|
58 |
$this->custom_patterns = $this->getOption('patterns', array());
|
59 |
|
60 |
+
$this->color = new Wbcr_FactoryForms427_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_427') ?>">
|
106 |
<i class="fa fa-flask"></i>
|
107 |
+
<span><?php _e('re-color', 'wbcr_factory_forms_427') ?></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_427') ?></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_427') ?></i>
|
118 |
</div>
|
119 |
</div>
|
120 |
<div class="factory-picker-target"></
|