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

Version Description

(15.09.2021) = * Fixed: Minor bugs. * Improved: Compatibility with Wordpress 5.8

Download this release

Release Info

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

Code changes from version 1.9.3 to 1.9.6

Files changed (310) hide show
  1. admin/activation.php +2 -2
  2. admin/ajax/configurate.php +1 -1
  3. admin/ajax/import-settings.php +2 -2
  4. admin/assets/css/general.css +3 -3
  5. admin/assets/js/general.js +17 -17
  6. admin/assets/js/license-manager.js +4 -4
  7. admin/boot.php +7 -7
  8. admin/includes/compatibility.php +4 -4
  9. admin/pages/class-page.php +12 -10
  10. admin/pages/class-pages-advanced.php +1 -1
  11. admin/pages/class-pages-clearfy-settings.php +1 -1
  12. admin/pages/class-pages-components-license.php +5 -5
  13. admin/pages/class-pages-components.php +1 -1
  14. admin/pages/class-pages-defence-titan.php +3 -3
  15. admin/pages/class-pages-defence.php +2 -2
  16. admin/pages/class-pages-hide-login-page.php +3 -3
  17. admin/pages/class-pages-image-optimization.php +3 -3
  18. admin/pages/class-pages-license.php +3 -3
  19. admin/pages/class-pages-performance-cache.php +3 -3
  20. admin/pages/class-pages-performance-google.php +1 -1
  21. admin/pages/class-pages-quick-start.php +3 -3
  22. admin/pages/class-pages-seo-double-pages.php +1 -1
  23. admin/pages/class-pages-seo.php +1 -1
  24. admin/pages/class-pages-widgets.php +1 -1
  25. admin/pages/setup/class-pages-setup.php +4 -4
  26. admin/pages/setup/steps/class-step-congratulation.php +2 -2
  27. admin/pages/setup/steps/class-step-default.php +5 -5
  28. admin/pages/setup/steps/class-step-google-page-speed-after.php +2 -2
  29. admin/pages/setup/steps/class-step-google-page-speed-before.php +2 -2
  30. admin/pages/setup/steps/class-step-optimize-images.php +4 -4
  31. admin/pages/setup/steps/class-step-plugins.php +2 -2
  32. admin/pages/setup/steps/class-step-setting-seo-optimize.php +1 -1
  33. admin/pages/setup/steps/class-step-setting-speed-optimize.php +1 -1
  34. clearfy.php +11 -13
  35. components/assets-manager/admin/activation.php +2 -2
  36. components/assets-manager/admin/ajax/save-settings.php +1 -1
  37. components/assets-manager/admin/boot.php +2 -2
  38. components/assets-manager/admin/pages/class-pages-more-features.php +1 -1
  39. components/assets-manager/admin/pages/class-pages-settings.php +4 -4
  40. components/assets-manager/gonzales.php +7 -7
  41. components/assets-manager/includes/class-plugin.php +3 -3
  42. components/assets-manager/includes/classes/class-assets-manager-global.php +2 -2
  43. components/assets-manager/includes/classes/class-views.php +4 -4
  44. components/assets-manager/migrations/010100.php +1 -1
  45. components/assets-manager/migrations/010108.php +1 -1
  46. components/assets-manager/migrations/020005.php +1 -1
  47. components/assets-manager/mu-plugins/assets-manager.php +1 -1
  48. components/comments-plus/admin/boot.php +1 -1
  49. components/comments-plus/admin/pages/class-page-comments.php +3 -3
  50. components/comments-plus/admin/pages/class-page-delete-comments.php +6 -6
  51. components/comments-plus/admin/pages/class-page-more-features.php +1 -1
  52. components/comments-plus/comments-plus.php +7 -7
  53. components/comments-plus/includes/class-plugin.php +3 -3
  54. components/comments-plus/includes/classes/class-configurate-comments.php +3 -3
  55. components/cyrlitera/admin/activation.php +2 -2
  56. components/cyrlitera/admin/boot.php +1 -1
  57. components/cyrlitera/admin/pages/class-page-cyrlitera.php +4 -4
  58. components/cyrlitera/admin/pages/class-page-more-features.php +1 -1
  59. components/cyrlitera/cyrlitera.php +7 -7
  60. components/cyrlitera/includes/class-plugin.php +3 -3
  61. components/cyrlitera/includes/classes/class-configurate-cyrlitera.php +2 -2
  62. components/cyrlitera/migrations/010004.php +1 -1
  63. components/disable-admin-notices/admin/boot.php +1 -1
  64. components/disable-admin-notices/admin/class-page-basic.php +4 -4
  65. components/disable-admin-notices/admin/options.php +2 -2
  66. components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php +3 -3
  67. components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php +3 -3
  68. components/disable-admin-notices/admin/pages/class-pages-license.php +3 -3
  69. components/disable-admin-notices/admin/pages/class-pages-notices.php +3 -3
  70. components/disable-admin-notices/admin/pages/class-pages-settings.php +6 -6
  71. components/disable-admin-notices/disable-admin-notices.php +9 -9
  72. components/disable-admin-notices/includes/class-plugin.php +4 -4
  73. components/disable-admin-notices/includes/classes/class-configurate-notices.php +1 -1
  74. components/disable-admin-notices/migrations/010007.php +1 -1
  75. components/ga-cache/admin/activation.php +2 -2
  76. components/ga-cache/admin/boot.php +2 -2
  77. components/ga-cache/admin/options.php +11 -1
  78. components/ga-cache/admin/pages/class-pages-general-settings.php +3 -3
  79. components/ga-cache/admin/pages/class-pages-more-features.php +1 -1
  80. components/ga-cache/clearfy.php +1 -1
  81. components/ga-cache/includes/class-plugin.php +3 -3
  82. components/ga-cache/includes/classes/class-configurate-ga.php +1 -1
  83. components/ga-cache/includes/classes/class-facebook-sdk.php +2 -2
  84. components/ga-cache/includes/classes/class-scheduler.php +20 -3
  85. components/ga-cache/includes/classes/class-yandex-metrika-cache.php +162 -0
  86. components/ga-cache/migrations/030002.php +1 -1
  87. components/ga-cache/simple_google_analytics.php +7 -7
  88. components/html-minify/admin/pages/class-pages-settings.php +3 -3
  89. components/html-minify/html-minify.php +7 -7
  90. components/html-minify/includes/class-plugin.php +3 -3
  91. components/minify-and-combine/admin/pages/class-pages-settings.php +7 -7
  92. components/minify-and-combine/includes/class-plugin.php +3 -3
  93. components/minify-and-combine/includes/classes/class-cache.php +1 -1
  94. components/minify-and-combine/minify-and-combine.php +7 -7
  95. components/updates-manager/admin/activation.php +2 -2
  96. components/updates-manager/admin/assets/js/ajax-components.js +4 -4
  97. components/updates-manager/admin/boot.php +1 -1
  98. components/updates-manager/admin/includes/class-abstract-filters.php +1 -1
  99. components/updates-manager/admin/pages/class-page-advanced.php +5 -5
  100. components/updates-manager/admin/pages/class-page-more-features.php +1 -1
  101. components/updates-manager/admin/pages/class-page-plugins.php +5 -5
  102. components/updates-manager/admin/pages/class-page-themes.php +4 -4
  103. components/updates-manager/admin/pages/class-page-updates.php +5 -5
  104. components/updates-manager/includes/class-plugin.php +3 -3
  105. components/updates-manager/includes/classes/class-configurate-updates.php +1 -1
  106. components/updates-manager/migrations/010008.php +1 -1
  107. components/updates-manager/webcraftic-updates-manager.php +7 -7
  108. includes/boot.php +12 -12
  109. includes/class.plugin.php +9 -6
  110. includes/classes/3rd-party/boot.php +1 -1
  111. includes/classes/3rd-party/class-form-entity.php +3 -3
  112. includes/classes/class.configurate-advanced.php +1 -1
  113. includes/classes/class.configurate-google-performance.php +1 -1
  114. includes/classes/class.configurate-performance.php +1 -1
  115. includes/classes/class.configurate-privacy.php +1 -1
  116. includes/classes/class.configurate-security.php +1 -1
  117. includes/classes/class.configurate-seo.php +1 -1
  118. includes/helpers.php +4 -4
  119. libs/factory/adverts/boot.php +12 -12
  120. libs/factory/adverts/includes/class-base.php +6 -6
  121. libs/factory/adverts/includes/class-dashboard-widget.php +4 -4
  122. libs/factory/adverts/includes/class-rest-request.php +4 -4
  123. libs/factory/adverts/langs/{wbcr_factory_adverts_126-ru_RU.mo → wbcr_factory_adverts_127-ru_RU.mo} +0 -0
  124. libs/factory/adverts/langs/{wbcr_factory_adverts_126-ru_RU.po → wbcr_factory_adverts_127-ru_RU.po} +0 -0
  125. libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css +1 -1
  126. libs/factory/bootstrap/assets/css-min/bootstrap.blue.min.css +1 -1
  127. libs/factory/bootstrap/assets/css-min/bootstrap.coffee.min.css +1 -1
  128. libs/factory/bootstrap/assets/css-min/bootstrap.core.min.css +2 -2
  129. libs/factory/bootstrap/assets/css-min/bootstrap.ectoplasm.min.css +1 -1
  130. libs/factory/bootstrap/assets/css-min/bootstrap.form-group.min.css +1 -1
  131. libs/factory/bootstrap/assets/css-min/bootstrap.light.min.css +1 -1
  132. libs/factory/bootstrap/assets/css-min/bootstrap.midnight.min.css +1 -1
  133. libs/factory/bootstrap/assets/css-min/bootstrap.ocean.min.css +1 -1
  134. libs/factory/bootstrap/assets/css-min/bootstrap.separator.min.css +1 -1
  135. libs/factory/bootstrap/assets/css-min/bootstrap.sunrise.min.css +1 -1
  136. libs/factory/bootstrap/assets/css-min/control.checkbox.min.css +1 -1
  137. libs/factory/bootstrap/assets/css-min/control.color.min.css +11 -0
  138. libs/factory/bootstrap/assets/css-min/control.dropdown.min.css +1 -1
  139. libs/factory/bootstrap/assets/css-min/control.multiple-textbox.min.css +1 -1
  140. libs/factory/bootstrap/assets/css-min/holder.more-link.min.css +1 -1
  141. libs/factory/bootstrap/assets/js-min/bootstrap.dropdown.min.js +1 -1
  142. libs/factory/bootstrap/assets/js-min/control.checkbox.min.js +1 -1
  143. libs/factory/bootstrap/assets/js-min/control.color.min.js +10 -0
  144. libs/factory/bootstrap/assets/js-min/control.dropdown.min.js +1 -1
  145. libs/factory/bootstrap/assets/js-min/control.list.min.js +1 -1
  146. libs/factory/bootstrap/assets/js-min/control.multiple-textbox.min.js +1 -1
  147. libs/factory/bootstrap/assets/js-min/holder.more-link.min.js +1 -1
  148. libs/factory/bootstrap/assets/js-min/plugin.color.min.js +10 -0
  149. libs/factory/bootstrap/assets/js-min/plugin.iris.min.js +13 -0
  150. libs/factory/bootstrap/boot.php +9 -9
  151. libs/factory/bootstrap/includes/functions.php +10 -10
  152. libs/factory/clearfy/assets/css/clearfy-base.css.map +0 -1
  153. libs/factory/clearfy/assets/css/components.css.map +0 -1
  154. libs/factory/clearfy/assets/css/libs/autocomplete.css +0 -57
  155. libs/factory/clearfy/assets/css/libs/autocomplete.css.map +0 -1
  156. libs/factory/clearfy/assets/css/page-setup.css +0 -454
  157. libs/factory/clearfy/assets/css/page-setup.css.map +0 -1
  158. libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js +0 -8
  159. libs/factory/clearfy/boot.php +0 -89
  160. libs/factory/clearfy/pages/class-page-more-features.php +0 -170
  161. libs/factory/core/ajax/install-addons.php +10 -10
  162. libs/factory/core/assets/js/core-components.js +14 -14
  163. libs/factory/core/assets/js/core-general.js +6 -6
  164. libs/factory/core/boot.php +33 -33
  165. libs/factory/core/includes/activation/class-factory-activator.php +3 -3
  166. libs/factory/core/includes/activation/class-factory-update.php +3 -3
  167. libs/factory/core/includes/assets-managment/class-factory-assets-list.php +4 -4
  168. libs/factory/core/includes/assets-managment/class-factory-script-list.php +2 -2
  169. libs/factory/core/includes/assets-managment/class-factory-style-list.php +1 -1
  170. libs/factory/core/includes/class-check-compatibility.php +3 -3
  171. libs/factory/core/includes/class-factory-migrations.php +13 -13
  172. libs/factory/core/includes/class-factory-notices.php +5 -5
  173. libs/factory/core/includes/class-factory-options.php +2 -2
  174. libs/factory/core/includes/class-factory-plugin-abstract.php +71 -71
  175. libs/factory/core/includes/class-factory-plugin-base.php +113 -96
  176. libs/factory/core/includes/class-factory-requests.php +1 -1
  177. libs/factory/core/includes/class-factory-requirements.php +6 -6
  178. libs/factory/core/includes/components/class-delete-component-button.php +1 -1
  179. libs/factory/core/includes/components/class-install-component-button.php +11 -11
  180. libs/factory/core/includes/entities/class-factory-paths.php +1 -1
  181. libs/factory/core/includes/entities/class-factory-support.php +1 -1
  182. libs/factory/core/includes/functions.php +7 -7
  183. libs/factory/core/includes/premium/class-factory-license-interface.php +1 -1
  184. libs/factory/core/includes/premium/class-factory-manager.php +10 -10
  185. libs/factory/core/includes/premium/class-factory-provider-abstract.php +6 -6
  186. libs/factory/core/includes/updates/class-factory-premium-upgrader.php +11 -11
  187. libs/factory/core/includes/updates/class-factory-upgrader.php +10 -10
  188. libs/factory/core/includes/updates/repositories/class-factory-github.php +4 -4
  189. libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php +5 -5
  190. libs/factory/core/includes/updates/repositories/class-factory-wordpress.php +4 -4
  191. libs/factory/core/langs/{wbcr_factory_448-ru_RU.mo → wbcr_factory_449-ru_RU.mo} +0 -0
  192. libs/factory/core/langs/{wbcr_factory_448-ru_RU.po → wbcr_factory_449-ru_RU.po} +0 -0
  193. libs/factory/forms/boot.php +95 -95
  194. libs/factory/forms/controls/checkbox.php +4 -4
  195. libs/factory/forms/controls/color-and-opacity.php +4 -4
  196. libs/factory/forms/controls/color.php +2 -2
  197. libs/factory/forms/controls/customs/html.php +2 -2
  198. libs/factory/forms/controls/customs/separator.php +2 -2
  199. libs/factory/forms/controls/datepicker-range.php +4 -4
  200. libs/factory/forms/controls/dropdown-and-colors.php +6 -6
  201. libs/factory/forms/controls/dropdown.php +5 -5
  202. libs/factory/forms/controls/font.php +11 -11
  203. libs/factory/forms/controls/google-font.php +8 -8
  204. libs/factory/forms/controls/gradient.php +4 -4
  205. libs/factory/forms/controls/hidden.php +2 -2
  206. libs/factory/forms/controls/holders/accordion-item.php +2 -2
  207. libs/factory/forms/controls/holders/accordion.php +2 -2
  208. libs/factory/forms/controls/holders/columns.php +2 -2
  209. libs/factory/forms/controls/holders/control-group-item.php +2 -2
  210. libs/factory/forms/controls/holders/control-group.php +3 -3
  211. libs/factory/forms/controls/holders/div.php +2 -2
  212. libs/factory/forms/controls/holders/form-group.php +2 -2
  213. libs/factory/forms/controls/holders/more-link.php +2 -2
  214. libs/factory/forms/controls/holders/tab-item.php +2 -2
  215. libs/factory/forms/controls/holders/tab.php +4 -4
  216. libs/factory/forms/controls/integer.php +2 -2
  217. libs/factory/forms/controls/list.php +4 -4
  218. libs/factory/forms/controls/multiple-textbox.php +3 -3
  219. libs/factory/forms/controls/paddings-editor.php +3 -3
  220. libs/factory/forms/controls/pattern.php +9 -9
  221. libs/factory/forms/controls/radio-colors.php +2 -2
  222. libs/factory/forms/controls/radio.php +2 -2
  223. libs/factory/forms/controls/textarea.php +2 -2
  224. libs/factory/forms/controls/textbox.php +2 -2
  225. libs/factory/forms/controls/url.php +3 -3
  226. libs/factory/forms/controls/wp-editor.php +6 -4
  227. libs/factory/forms/includes/complex-control.class.php +4 -4
  228. libs/factory/forms/includes/control-holder.class.php +5 -5
  229. libs/factory/forms/includes/control.class.php +5 -5
  230. libs/factory/forms/includes/custom-element.class.php +2 -2
  231. libs/factory/forms/includes/form-element.class.php +7 -7
  232. libs/factory/forms/includes/form-layout.class.php +5 -5
  233. libs/factory/forms/includes/form.class.php +39 -39
  234. libs/factory/forms/includes/holder.class.php +6 -6
  235. libs/factory/forms/includes/html-builder.class.php +2 -2
  236. libs/factory/forms/includes/providers/meta-value-provider.class.php +2 -2
  237. libs/factory/forms/includes/providers/options-value-provider.class.php +3 -3
  238. libs/factory/forms/includes/providers/value-provider.interface.php +2 -2
  239. libs/factory/forms/langs/{wbcr_factory_forms_445-ru_RU.mo → wbcr_factory_forms_446-ru_RU.mo} +0 -0
  240. libs/factory/forms/langs/{wbcr_factory_forms_445-ru_RU.po → wbcr_factory_forms_446-ru_RU.po} +0 -0
  241. libs/factory/forms/layouts/bootstrap-3/bootstrap-3.php +7 -7
  242. libs/factory/freemius/boot.php +18 -18
  243. libs/factory/freemius/includes/class-freemius-api.php +7 -7
  244. libs/factory/freemius/includes/entities/class-freemius-entity.php +1 -1
  245. libs/factory/freemius/includes/entities/class-freemius-license.php +2 -2
  246. libs/factory/freemius/includes/entities/class-freemius-plugin.php +1 -1
  247. libs/factory/freemius/includes/entities/class-freemius-scope.php +1 -1
  248. libs/factory/freemius/includes/entities/class-freemius-site.php +1 -1
  249. libs/factory/freemius/includes/entities/class-freemius-user.php +1 -1
  250. libs/factory/freemius/includes/licensing/class-freemius-provider.php +21 -21
  251. libs/factory/freemius/includes/updates/class-freemius-repository.php +8 -8
  252. libs/factory/logger/assets/js/logger.js +5 -5
  253. libs/factory/logger/boot.php +18 -17
  254. libs/factory/logger/includes/class-log-export.php +1 -1
  255. libs/factory/logger/includes/class-logger.php +6 -5
  256. libs/factory/logger/langs/{wbcr_factory_logger_113-ru_RU.mo → wbcr_factory_logger_114-ru_RU.mo} +0 -0
  257. libs/factory/logger/langs/{wbcr_factory_logger_113-ru_RU.po → wbcr_factory_logger_114-ru_RU.po} +0 -0
  258. libs/factory/logger/pages/class-logger-admin-page.php +20 -20
  259. libs/factory/logger/pages/class-logger-impressive-lite.php +145 -0
  260. libs/factory/logger/pages/class-logger-impressive-page.php +61 -54
  261. libs/factory/pages/boot.php +12 -13
  262. libs/factory/pages/includes/admin-page.class.php +6 -6
  263. libs/factory/pages/includes/page.class.php +7 -7
  264. libs/factory/pages/langs/{wbcr_factory_pages_447-fr_FR.mo → wbcr_factory_pages_448-fr_FR.mo} +0 -0
  265. libs/factory/pages/langs/{wbcr_factory_pages_447-fr_FR.po → wbcr_factory_pages_448-fr_FR.po} +0 -0
  266. libs/factory/pages/langs/{wbcr_factory_pages_447-ru_RU.mo → wbcr_factory_pages_448-ru_RU.mo} +0 -0
  267. libs/factory/pages/langs/{wbcr_factory_pages_447-ru_RU.po → wbcr_factory_pages_448-ru_RU.po} +0 -0
  268. libs/factory/pages/pages.php +11 -11
  269. libs/factory/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css +0 -552
  270. libs/factory/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css.map +0 -1
  271. libs/factory/pages/templates/impressive/assets/css/impressive.page.template.css +0 -555
  272. libs/factory/pages/templates/impressive/assets/css/impressive.page.template.css.map +0 -1
  273. libs/factory/pages/templates/impressive/impressive-page.class.php +0 -908
  274. libs/factory/{clearfy → templates}/assets/css/clearfy-base.css +25 -25
  275. libs/factory/templates/assets/css/clearfy-base.css.map +1 -0
  276. libs/factory/{clearfy → templates}/assets/css/clearfy-base.less +6 -6
  277. libs/factory/{clearfy → templates}/assets/css/components.css +24 -24
  278. libs/factory/templates/assets/css/components.css.map +1 -0
  279. libs/factory/{clearfy → templates}/assets/css/components.less +3 -3
  280. libs/factory/templates/assets/css/libs/autocomplete.css +49 -0
  281. libs/factory/templates/assets/css/libs/autocomplete.css.map +1 -0
  282. libs/factory/{clearfy → templates}/assets/css/libs/autocomplete.less +2 -2
  283. libs/factory/{clearfy → templates}/assets/css/license-manager.css +0 -0
  284. libs/factory/templates/assets/css/page-setup.css +454 -0
  285. libs/factory/templates/assets/css/page-setup.css.map +1 -0
  286. libs/factory/{clearfy → templates}/assets/css/page-setup.less +70 -70
  287. libs/factory/{clearfy → templates}/assets/img/loader.gif +0 -0
  288. libs/factory/{clearfy → templates}/assets/js/clearfy-globals.js +26 -26
  289. libs/factory/{clearfy → templates}/assets/js/clearfy-license-manager.js +4 -4
  290. libs/factory/{clearfy → templates}/assets/js/clearfy-search-options.js +2 -2
  291. libs/factory/{clearfy → templates}/assets/js/clearfy-widgets.js +4 -4
  292. libs/factory/templates/assets/js/libs/jquery.autocomplete.min.js +8 -0
  293. libs/factory/templates/boot.php +92 -0
  294. libs/factory/{clearfy → templates}/includes/ajax-handlers.php +13 -13
  295. libs/factory/{clearfy → templates}/includes/class-configurate.php +32 -20
  296. libs/factory/{clearfy → templates}/includes/class-helpers.php +13 -11
  297. libs/factory/{clearfy → templates}/includes/class-search-options.php +1 -1
  298. libs/factory/{clearfy → templates}/includes/index.php +0 -0
  299. libs/factory/{clearfy → templates}/index.php +0 -0
  300. libs/factory/{clearfy/langs/wbcr_factory_clearfy_240-ru_RU.mo → templates/langs/wbcr_factory_clearfy_000-ru_RU.mo} +0 -0
  301. libs/factory/{clearfy/langs/wbcr_factory_clearfy_240-ru_RU.po → templates/langs/wbcr_factory_clearfy_000-ru_RU.po} +0 -0
  302. libs/factory/{clearfy → templates}/pages/class-page-license.php +35 -33
  303. libs/factory/templates/pages/class-page-more-features.php +176 -0
  304. libs/factory/{clearfy → templates}/pages/class-page-setup.php +18 -18
  305. libs/factory/{clearfy → templates}/pages/class-pages-components.php +19 -19
  306. libs/factory/{clearfy → templates}/pages/index.php +0 -0
  307. libs/factory/{clearfy → templates}/pages/setup-parts/class-step-custom.php +7 -7
  308. libs/factory/{clearfy → templates}/pages/setup-parts/class-step-form.php +12 -12
  309. libs/factory/{clearfy → templates}/pages/setup-parts/class-step.php +5 -5
  310. libs/factory/templates/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css +269 -0
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 Factory448_Activator
8
  * @version 1.0
9
  */
10
 
@@ -13,7 +13,7 @@ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
- class WCL_Activation extends Wbcr_Factory448_Activator {
17
 
18
  /**
19
  * Runs activation actions.
4
  *
5
  * @author Webcraftic <wordpress.webraftic@gmail.com>
6
  * @copyright (c) 09.09.2017, Webcraftic
7
+ * @see Factory449_Activator
8
  * @version 1.0
9
  */
10
 
13
  exit;
14
  }
15
 
16
+ class WCL_Activation extends Wbcr_Factory449_Activator {
17
 
18
  /**
19
  * Runs activation actions.
admin/ajax/configurate.php CHANGED
@@ -57,7 +57,7 @@ function wbcr_clearfy_configurate_plugin()
57
  }
58
 
59
  if( !$flush_redirect ) {
60
- WbcrFactoryClearfy240_Helpers::flushPageCache();
61
  }
62
 
63
  do_action('wbcr_clearfy_configurated_quick_mode', $mode_name);
57
  }
58
 
59
  if( !$flush_redirect ) {
60
+ WBCR\Factory_Templates_101\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 = WbcrFactoryClearfy240_Helpers::recursiveSanitizeArray($option_value, 'wp_kses_post');
66
  $option_value = maybe_serialize($option_value);
67
  } else {
68
  $option_value = wp_kses_post($option_value);
@@ -140,7 +140,7 @@
140
  //$send_data['update_notice'] = $package_plugin->getUpdateNotice();
141
 
142
  // Сбрасываем кеш для кеширующих плагинов
143
- WbcrFactoryClearfy240_Helpers::flushPageCache();
144
 
145
  do_action('wbcr_clearfy_imported_settings');
146
 
62
  }
63
 
64
  if( is_array($option_value) || is_object($option_value) ) {
65
+ $option_value = WBCR\Factory_Templates_101\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
+ WBCR\Factory_Templates_101\Helpers::flushPageCache();
144
 
145
  do_action('wbcr_clearfy_imported_settings');
146
 
admin/assets/css/general.css CHANGED
@@ -33,10 +33,10 @@
33
  //float: right;
34
  }*/
35
  }
36
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header {
37
  height: 80px !important;
38
  }
39
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo span {
40
  display: inline-block !important;
41
  }
42
  #WBCR .row {
@@ -675,7 +675,7 @@
675
  #WBCR .wclearfy-quick-start-docs__column-inner-wrap ul li a:hover {
676
  color: #979696;
677
  }
678
- #WBCR .wbcr-factory-page-quick_start #wbcr-factory-clearfy-240__autocomplete {
679
  width: 100%;
680
  padding: 15px;
681
  border-radius: 4px;
33
  //float: right;
34
  }*/
35
  }
36
+ #WBCR .wbcr-factory-pages-448-impressive-page-template .wbcr-factory-page-header {
37
  height: 80px !important;
38
  }
39
+ #WBCR .wbcr-factory-pages-448-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo span {
40
  display: inline-block !important;
41
  }
42
  #WBCR .row {
675
  #WBCR .wclearfy-quick-start-docs__column-inner-wrap ul li a:hover {
676
  color: #979696;
677
  }
678
+ #WBCR .wbcr-factory-page-quick_start #wbcr-factory-templates-101__autocomplete {
679
  width: 100%;
680
  padding: 15px;
681
  border-radius: 4px;
admin/assets/js/general.js CHANGED
@@ -13,7 +13,7 @@
13
  this.qickStartAssistent();
14
  this.importOptions();
15
 
16
- /*$.wfactory_448.hooks.add('core/components/pre_activate', function(button) {
17
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
18
  if( !$('#WBCR').length ) {
19
  return false;
@@ -27,13 +27,13 @@
27
  }
28
  });*/
29
 
30
- /*$.wfactory_448.hooks.add('core/components/updated', function(button, data, response) {
31
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
32
- if( !($('#WBCR').length && $.wbcr_factory_clearfy_240) ) {
33
  return false;
34
  }
35
  if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
36
- $.wbcr_factory_clearfy_240.app.showNotice(response.data.need_rewrite_rules, 'warning');
37
  }
38
  });*/
39
  },
@@ -107,13 +107,13 @@
107
  * Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
108
  * результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
109
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
110
- * $.wbcr_factory_clearfy_240.hooks.add('wbcr/factory_clearfy_240/updated',
111
  * function(noticeId) {});
112
  * @param {string} modeName - имя режима конфигурации
113
  * @param {object} data
114
  */
115
 
116
- $.wbcr_factory_clearfy_240.hooks.run('clearfy/quick_start/configurated_error', [
117
  modeName,
118
  data
119
  ]);
@@ -130,12 +130,12 @@
130
  * Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
131
  * конфигурации Реализация системы фильтров и хуков в файле
132
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
133
- * $.wbcr_factory_clearfy_240.hooks.add('wbcr/factory_clearfy_240/updated', function(noticeId)
134
  * {});
135
  * @param {string} modeName - имя режима конфигурации
136
  * @param {object} data
137
  */
138
- $.wbcr_factory_clearfy_240.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
139
 
140
  if( modeName !== 'reset' ) {
141
  switcher.addClass('wbcr-clearfy-active');
@@ -203,12 +203,12 @@
203
  $this = $(this);
204
 
205
  if( !settings ) {
206
- $.wbcr_factory_clearfy_240.app.showNotice('Import options is empty!', 'danger');
207
  return false;
208
  }
209
 
210
  if( void 0 === wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
211
- $.wbcr_factory_clearfy_240.app.showNotice('Unknown Javascript error, most likely the wbcr_clearfy_ajax variable does not exist!', 'danger');
212
  return false;
213
  }
214
 
@@ -223,7 +223,7 @@
223
 
224
  if( response.data.update_notice ) {
225
  if( !$('.wbcr-clr-update-package').length ) {
226
- $.wbcr_factory_clearfy_240.app.showNotice(response.data.update_notice);
227
  }
228
  } else {
229
  if( $('.wbcr-clr-update-package').length ) {
@@ -260,15 +260,15 @@
260
  console.log(data);
261
 
262
  if( data ) {
263
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice(data.error_message, 'danger');
264
  } else {
265
  if( void 0 !== wbcr_clearfy_ajax ) {
266
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
267
  }
268
  }
269
 
270
  setTimeout(function() {
271
- $.wbcr_factory_clearfy_240.app.hideNotice(noticeId);
272
  }, 5000);
273
  return;
274
  }
@@ -277,10 +277,10 @@
277
 
278
  if( !request_data.flush_redirect ) {
279
  if( void 0 !== wbcr_clearfy_ajax ) {
280
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
281
 
282
  setTimeout(function() {
283
- $.wbcr_factory_clearfy_240.app.hideNotice(noticeId);
284
  }, 5000);
285
  }
286
  return;
@@ -295,7 +295,7 @@
295
  console.log(xhr.responseText);
296
  console.log(thrownError);
297
 
298
- var noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
299
  }
300
  });
301
  }
13
  this.qickStartAssistent();
14
  this.importOptions();
15
 
16
+ /*$.wfactory_449.hooks.add('core/components/pre_activate', function(button) {
17
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
18
  if( !$('#WBCR').length ) {
19
  return false;
27
  }
28
  });*/
29
 
30
+ /*$.wfactory_449.hooks.add('core/components/updated', function(button, data, response) {
31
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
32
+ if( !($('#WBCR').length && $.wbcr_factory_templates_101) ) {
33
  return false;
34
  }
35
  if( response.data.need_rewrite_rules && !$('.wbcr-clr-need-rewrite-rules-message').length ) {
36
+ $.wbcr_factory_templates_101.app.showNotice(response.data.need_rewrite_rules, 'warning');
37
  }
38
  });*/
39
  },
107
  * Хук выполняет проивольную функцию, после того как получен ajax ответ о том, что в
108
  * результате конфигурации произошла ошибка Реализация системы фильтров и хуков в файле
109
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
110
+ * $.wbcr_factory_templates_101.hooks.add('wbcr/factory_templates_101/updated',
111
  * function(noticeId) {});
112
  * @param {string} modeName - имя режима конфигурации
113
  * @param {object} data
114
  */
115
 
116
+ $.wbcr_factory_templates_101.hooks.run('clearfy/quick_start/configurated_error', [
117
  modeName,
118
  data
119
  ]);
130
  * Хук выполняет проивольную функцию, после того как получен ajax ответ об успешном выполнении
131
  * конфигурации Реализация системы фильтров и хуков в файле
132
  * libs/clearfy/admin/assests/js/global.js Пример регистрации хука
133
+ * $.wbcr_factory_templates_101.hooks.add('wbcr/factory_templates_101/updated', function(noticeId)
134
  * {});
135
  * @param {string} modeName - имя режима конфигурации
136
  * @param {object} data
137
  */
138
+ $.wbcr_factory_templates_101.hooks.run('clearfy/quick_start/configurated', [modeName, data]);
139
 
140
  if( modeName !== 'reset' ) {
141
  switcher.addClass('wbcr-clearfy-active');
203
  $this = $(this);
204
 
205
  if( !settings ) {
206
+ $.wbcr_factory_templates_101.app.showNotice('Import options is empty!', 'danger');
207
  return false;
208
  }
209
 
210
  if( void 0 === wbcr_clearfy_ajax || !wbcr_clearfy_ajax.import_options_nonce ) {
211
+ $.wbcr_factory_templates_101.app.showNotice('Unknown Javascript error, most likely the wbcr_clearfy_ajax variable does not exist!', 'danger');
212
  return false;
213
  }
214
 
223
 
224
  if( response.data.update_notice ) {
225
  if( !$('.wbcr-clr-update-package').length ) {
226
+ $.wbcr_factory_templates_101.app.showNotice(response.data.update_notice);
227
  }
228
  } else {
229
  if( $('.wbcr-clr-update-package').length ) {
260
  console.log(data);
261
 
262
  if( data ) {
263
+ noticeId = $.wbcr_factory_templates_101.app.showNotice(data.error_message, 'danger');
264
  } else {
265
  if( void 0 !== wbcr_clearfy_ajax ) {
266
+ noticeId = $.wbcr_factory_templates_101.app.showNotice(wbcr_clearfy_ajax.i18n.unknown_error, 'danger');
267
  }
268
  }
269
 
270
  setTimeout(function() {
271
+ $.wbcr_factory_templates_101.app.hideNotice(noticeId);
272
  }, 5000);
273
  return;
274
  }
277
 
278
  if( !request_data.flush_redirect ) {
279
  if( void 0 !== wbcr_clearfy_ajax ) {
280
+ noticeId = $.wbcr_factory_templates_101.app.showNotice(wbcr_clearfy_ajax.i18n.success_update_settings, 'success');
281
 
282
  setTimeout(function() {
283
+ $.wbcr_factory_templates_101.app.hideNotice(noticeId);
284
  }, 5000);
285
  }
286
  return;
295
  console.log(xhr.responseText);
296
  console.log(thrownError);
297
 
298
+ var noticeId = $.wbcr_factory_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
299
  }
300
  });
301
  }
admin/assets/js/license-manager.js CHANGED
@@ -20,7 +20,7 @@ jQuery(function($) {
20
  // Глобальные уведомления не трогаем
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
- $.wbcr_factory_clearfy_240.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
@@ -55,7 +55,7 @@ jQuery(function($) {
55
 
56
  if( response.data ) {
57
  console.log(response.data.error_message);
58
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
59
  allNotices.push(noticeId);
60
  } else {
61
  console.log(response);
@@ -65,7 +65,7 @@ jQuery(function($) {
65
  }
66
 
67
  if( response.data && response.data.message ) {
68
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice(response.data.message, 'success');
69
  allNotices.push(noticeId);
70
 
71
  // todo: доработать генерацию формы, вместо перезагрузки страницы
@@ -82,7 +82,7 @@ jQuery(function($) {
82
  console.log(xhr.responseText);
83
  console.log(thrownError);
84
 
85
- var noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
86
 
87
  allNotices.push(noticeId);
88
  }
20
  // Глобальные уведомления не трогаем
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
+ $.wbcr_factory_templates_101.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_templates_101.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_templates_101.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_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
86
 
87
  allNotices.push(noticeId);
88
  }
admin/boot.php CHANGED
@@ -21,7 +21,7 @@ if( !defined('ABSPATH') ) {
21
  * Уведомление будет показано на всех страницах Clearfy и его компонентах.
22
  *
23
  * @param WCL_Plugin $plugin
24
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
25
  */
26
 
27
  add_action('wbcr/factory/pages/impressive/print_all_notices', function ($plugin, $obj) {
@@ -50,7 +50,7 @@ add_action('admin_init', function () {
50
  if( WCL_Helper::is_need_show_setup_page() ) {
51
  try {
52
  $redirect_url = '';
53
- if( class_exists('Wbcr_FactoryPages447') ) {
54
  $redirect_url = WCL_Plugin::app()->getPluginPageUrl('setup', ['wclearfy_setup_page_viewed' => 1]);
55
  }
56
  if( $redirect_url ) {
@@ -84,8 +84,8 @@ add_action('wbcr/factory/pages/impressive/header', function ($plugin_name) {
84
 
85
  /**
86
  * @param $form
87
- * @param Wbcr_Factory448_Plugin $plugin
88
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
89
  */
90
  function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
91
  {
@@ -127,7 +127,7 @@ add_action('wbcr/factory/pages/impressive/plugin_title', 'wbcr_clearfy_branding'
127
  wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
128
  wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
129
  'jquery',
130
- 'wbcr-factory-clearfy-240-global'
131
  ], WCL_Plugin::app()->getPluginVersion());
132
  });*/
133
 
@@ -147,7 +147,7 @@ add_filter('flush_rewrite_rules_hard', 'wbcr_clearfy_flush_rewrite_rules');
147
  * Обновить постоынные ссылки, после выполнения быстрых настроек
148
  *
149
  * @param WHM_Plugin $plugin
150
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
151
  */
152
  function wbcr_clearfy_after_form_save($plugin, $obj)
153
  {
@@ -170,7 +170,7 @@ add_action('wbcr/factory/pages/impressive/after_form_save', 'wbcr_clearfy_after_
170
  *
171
  * @param array $widgets
172
  * @param string $position
173
- * @param Wbcr_Factory448_Plugin $plugin
174
  */
175
 
176
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
21
  * Уведомление будет показано на всех страницах Clearfy и его компонентах.
22
  *
23
  * @param WCL_Plugin $plugin
24
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
25
  */
26
 
27
  add_action('wbcr/factory/pages/impressive/print_all_notices', function ($plugin, $obj) {
50
  if( WCL_Helper::is_need_show_setup_page() ) {
51
  try {
52
  $redirect_url = '';
53
+ if( class_exists('Wbcr_FactoryPages448') ) {
54
  $redirect_url = WCL_Plugin::app()->getPluginPageUrl('setup', ['wclearfy_setup_page_viewed' => 1]);
55
  }
56
  if( $redirect_url ) {
84
 
85
  /**
86
  * @param $form
87
+ * @param Wbcr_Factory449_Plugin $plugin
88
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
89
  */
90
  function wbcr_clearfy_multisite_before_save($form, $plugin, $obj)
91
  {
127
  wp_enqueue_style('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/css/install-addons.css', [], WCL_Plugin::app()->getPluginVersion());
128
  wp_enqueue_script('wbcr-clearfy-install-components', WCL_PLUGIN_URL . '/admin/assets/js/install-addons.js', [
129
  'jquery',
130
+ 'wbcr-factory-templates-101-global'
131
  ], WCL_Plugin::app()->getPluginVersion());
132
  });*/
133
 
147
  * Обновить постоынные ссылки, после выполнения быстрых настроек
148
  *
149
  * @param WHM_Plugin $plugin
150
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
151
  */
152
  function wbcr_clearfy_after_form_save($plugin, $obj)
153
  {
170
  *
171
  * @param array $widgets
172
  * @param string $position
173
+ * @param Wbcr_Factory449_Plugin $plugin
174
  */
175
 
176
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
admin/includes/compatibility.php CHANGED
@@ -22,8 +22,8 @@ add_action( 'plugins_loaded', function () {
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
- * @param Wbcr_Factory448_Plugin $plugin
26
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
@@ -52,8 +52,8 @@ add_action( 'plugins_loaded', function () {
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
- * @param Wbcr_Factory448_Plugin $plugin
56
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
22
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
23
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
24
  *
25
+ * @param Wbcr_Factory449_Plugin $plugin
26
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
27
  *
28
  * @return bool
29
  */
52
  * Это необходимо, чтоб напомнить пользователю обновить конфигурацию компонентов плагина,
53
  * иначе вновь активированные компоненты не будет зайдествованы в работе плагина.
54
  *
55
+ * @param Wbcr_Factory449_Plugin $plugin
56
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
57
  *
58
  * @return bool
59
  */
admin/pages/class-page.php CHANGED
@@ -7,14 +7,14 @@
7
  * @version 1.0
8
  */
9
 
10
- class WCL_Page extends Wbcr_FactoryClearfy240_PageBase {
11
 
12
  /**
13
  * Requests assets (js and css) for the page.
14
  *
15
  * @return void
16
  * @since 1.0.0
17
- * @see FactoryPages447_AdminPage
18
  *
19
  */
20
  public function assets($scripts, $styles)
@@ -27,11 +27,13 @@ class WCL_Page extends Wbcr_FactoryClearfy240_PageBase {
27
  * Подгружаем стили для вижета оптимизации изображений, если не установли плагин оптимизации изображений
28
  */
29
  if( !defined('WIO_PLUGIN_ACTIVE') ) {
30
- $styles->add(WCL_PLUGIN_URL . '/admin/assets/css/base-statistic.css');
31
  }
32
 
 
33
  $this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/general.js', [], 'wclearfy-general');
34
 
 
35
  $params = array(
36
  //'ajaxurl' => admin_url('admin-ajax.php'),
37
  'flush_cache_url' => $this->getActionUrl('flush-cache-and-rules', array('_wpnonce' => wp_create_nonce('wbcr_factory_' . $this->getResultId() . '_flush_action'))),
@@ -56,15 +58,15 @@ class WCL_Page extends Wbcr_FactoryClearfy240_PageBase {
56
  $license_page_url = $this->getBaseUrl('clearfy_license');
57
  $upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
58
 
59
- $html = '<div class="wbcr-factory-clearfy-240-multisite-suggetion">';
60
  $html .= '<div class="wbcr-factory-inner-contanier">';
61
- $html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_240') . '</h3>';
62
- $html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_clearfy_240') . '</p>';
63
- $html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_clearfy_240') . '</p>';
64
- $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_240') . '</p>';
65
  $html .= '<p style="margin-top:20px">';
66
- $html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', 'wbcr_factory_clearfy_240') . '</a> ';
67
- $html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_clearfy_240') . '</a>';
68
  $html .= '</p>';
69
  $html .= '</div>';
70
  $html .= '</div>';
7
  * @version 1.0
8
  */
9
 
10
+ class WCL_Page extends WBCR\Factory_Templates_101\Pages\PageBase {
11
 
12
  /**
13
  * Requests assets (js and css) for the page.
14
  *
15
  * @return void
16
  * @since 1.0.0
17
+ * @see FactoryPages448_AdminPage
18
  *
19
  */
20
  public function assets($scripts, $styles)
27
  * Подгружаем стили для вижета оптимизации изображений, если не установли плагин оптимизации изображений
28
  */
29
  if( !defined('WIO_PLUGIN_ACTIVE') ) {
30
+ $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/base-statistic.css');
31
  }
32
 
33
+ $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/general.css');
34
  $this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/general.js', [], 'wclearfy-general');
35
 
36
+
37
  $params = array(
38
  //'ajaxurl' => admin_url('admin-ajax.php'),
39
  'flush_cache_url' => $this->getActionUrl('flush-cache-and-rules', array('_wpnonce' => wp_create_nonce('wbcr_factory_' . $this->getResultId() . '_flush_action'))),
58
  $license_page_url = $this->getBaseUrl('clearfy_license');
59
  $upgrade_url = $this->plugin->get_support()->get_pricing_url(true, 'multisite_save_settings');
60
 
61
+ $html = '<div class="wbcr-factory-templates-101-multisite-suggetion">';
62
  $html .= '<div class="wbcr-factory-inner-contanier">';
63
+ $html .= '<h3>' . __('Upgrade to Clearfy Business', 'wbcr_factory_templates_101') . '</h3>';
64
+ $html .= '<p>' . __('Oops... Sorry for the inconvenience caused!', 'wbcr_factory_templates_101') . '</p>';
65
+ $html .= '<p>' . __('Complete multisite support is available in Clearfy Business and Clearfy Business Revolution packages only!', 'wbcr_factory_templates_101') . '</p>';
66
+ $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_templates_101') . '</p>';
67
  $html .= '<p style="margin-top:20px">';
68
+ $html .= '<a href="' . $license_page_url . '" class="wbcr-factory-activate-premium" rel="noopener">' . __('Activate license ', 'wbcr_factory_templates_101') . '</a> ';
69
+ $html .= '<a href="' . $upgrade_url . '" class="wbcr-factory-purchase-premium" target="_blank" rel="noopener">' . __('Upgrade to Clearfy Business', 'wbcr_factory_templates_101') . '</a>';
70
  $html .= '</p>';
71
  $html .= '</div>';
72
  $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 FactoryPages447_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages448_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 FactoryPages447_AdminPage
23
  *
24
  * @var string
25
  */
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages448_AdminPage
23
  *
24
  * @var string
25
  */
admin/pages/class-pages-components-license.php CHANGED
@@ -55,12 +55,12 @@ class WCL_ComponentsLicensePage extends WCL_Page {
55
  /**
56
  * WCL_LicensePage constructor.
57
  *
58
- * @param \Wbcr_Factory448_Plugin $plugin
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
  */
63
- public function __construct(Wbcr_Factory448_Plugin $plugin)
64
  {
65
  $this->menu_title = __('License', 'robin-image-optimizer');
66
  $this->page_menu_short_description = __('Product activation', 'robin-image-optimizer');
@@ -74,7 +74,7 @@ class WCL_ComponentsLicensePage extends WCL_Page {
74
  *
75
  * @return void
76
  * @since 1.0.0
77
- * @see FactoryPages447_AdminPage
78
  *
79
  */
80
  /*public function assets($scripts, $styles)
@@ -84,8 +84,8 @@ class WCL_ComponentsLicensePage extends WCL_Page {
84
  $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
85
 
86
  /**
87
- * @param Wbcr_Factory448_StyleList $styles
88
- * @param Wbcr_Factory448_ScriptList $scripts
89
  *
90
  * @since 1.4.0
91
  *
55
  /**
56
  * WCL_LicensePage constructor.
57
  *
58
+ * @param \Wbcr_Factory449_Plugin $plugin
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
  */
63
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
64
  {
65
  $this->menu_title = __('License', 'robin-image-optimizer');
66
  $this->page_menu_short_description = __('Product activation', 'robin-image-optimizer');
74
  *
75
  * @return void
76
  * @since 1.0.0
77
+ * @see FactoryPages448_AdminPage
78
  *
79
  */
80
  /*public function assets($scripts, $styles)
84
  $this->styles->add(WCL_PLUGIN_URL . '/admin/assets/css/components.css');
85
 
86
  /**
87
+ * @param Wbcr_Factory449_StyleList $styles
88
+ * @param Wbcr_Factory449_ScriptList $scripts
89
  *
90
  * @since 1.4.0
91
  *
admin/pages/class-pages-components.php CHANGED
@@ -13,7 +13,7 @@ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
- class WCL_ComponentsPage extends \WBCR\FactoryClearfy240\Pages\Components {
17
 
18
  public function get_components()
19
  {
13
  exit;
14
  }
15
 
16
+ class WCL_ComponentsPage extends \WBCR\Factory_Templates_101\Pages\Components {
17
 
18
  public function get_components()
19
  {
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 FactoryPages447_AdminPage
23
  *
24
  * @var string
25
  */
@@ -83,7 +83,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
83
  ?>
84
  <script>
85
  jQuery(document).ready(function($) {
86
- $.wfactory_448.hooks.add('core/components/updated', function(button, component_name) {
87
  if( component_name.plugin_action === 'install' ) {
88
  button.removeClass('wbcr-factory-purchase-premium');
89
  button.addClass('wbcr-factory-activate-premium');
@@ -96,7 +96,7 @@ class WCL_TitanSecurityPage extends WCL_Page {
96
  });
97
  });
98
  </script>
99
- <div class="wbcr-factory-clearfy-240-multisite-suggetion">
100
  <div class="wbcr-factory-inner-contanier">
101
  <h3>
102
  <a href="https://wordpress.org/plugins/anti-spam" target="_blank"><?php _e('Install Firewall and Malware scanner (Titan sucurity) component', 'clearfy') ?></a>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages448_AdminPage
23
  *
24
  * @var string
25
  */
83
  ?>
84
  <script>
85
  jQuery(document).ready(function($) {
86
+ $.wfactory_449.hooks.add('core/components/updated', function(button, component_name) {
87
  if( component_name.plugin_action === 'install' ) {
88
  button.removeClass('wbcr-factory-purchase-premium');
89
  button.addClass('wbcr-factory-activate-premium');
96
  });
97
  });
98
  </script>
99
+ <div class="wbcr-factory-templates-101-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 FactoryPages447_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
@@ -132,7 +132,7 @@ class WCL_DefencePage extends WCL_Page {
132
  //'cssClass' => 'postbox'
133
  );
134
 
135
- return wbcr_factory_448_apply_filters_deprecated( 'wbcr_clr_defence_form_options', array(
136
  $form_options,
137
  $this
138
  ), '1.3.1', 'wbcr_clearfy_defence_form_options' );
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages448_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
132
  //'cssClass' => 'postbox'
133
  );
134
 
135
+ return wbcr_factory_449_apply_filters_deprecated( 'wbcr_clr_defence_form_options', array(
136
  $form_options,
137
  $this
138
  ), '1.3.1', 'wbcr_clearfy_defence_form_options' );
admin/pages/class-pages-hide-login-page.php CHANGED
@@ -17,7 +17,7 @@ class WCL_HideLoginPage extends WCL_Page {
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
- * @see FactoryPages447_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
@@ -78,7 +78,7 @@ class WCL_HideLoginPage extends WCL_Page {
78
  ?>
79
  <script>
80
  jQuery(document).ready(function($) {
81
- $.wfactory_448.hooks.add('core/components/updated', function(button, component_name) {
82
  if( component_name.plugin_action === 'install' ) {
83
  button.removeClass('wbcr-factory-purchase-premium');
84
  button.addClass('wbcr-factory-activate-premium');
@@ -91,7 +91,7 @@ class WCL_HideLoginPage extends WCL_Page {
91
  });
92
  });
93
  </script>
94
- <div class="wbcr-factory-clearfy-240-multisite-suggetion">
95
  <div class="wbcr-factory-inner-contanier">
96
  <h3><?php _e('Install Hide login page component', 'clearfy') ?></h3>
97
 
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages448_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
78
  ?>
79
  <script>
80
  jQuery(document).ready(function($) {
81
+ $.wfactory_449.hooks.add('core/components/updated', function(button, component_name) {
82
  if( component_name.plugin_action === 'install' ) {
83
  button.removeClass('wbcr-factory-purchase-premium');
84
  button.addClass('wbcr-factory-activate-premium');
91
  });
92
  });
93
  </script>
94
+ <div class="wbcr-factory-templates-101-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 FactoryPages447_AdminPage
23
  *
24
  * @var string
25
  */
@@ -79,7 +79,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
79
  ?>
80
  <script>
81
  jQuery(document).ready(function($) {
82
- $.wfactory_448.hooks.add('core/components/updated', function(button, component_name) {
83
  if( component_name.plugin_action === 'install' ) {
84
  button.removeClass('wbcr-factory-purchase-premium');
85
  button.addClass('wbcr-factory-activate-premium');
@@ -92,7 +92,7 @@ class WCL_ImageOptimizationPage extends WCL_Page {
92
  });
93
  });
94
  </script>
95
- <div class="wbcr-factory-clearfy-240-multisite-suggetion">
96
  <div class="wbcr-factory-inner-contanier">
97
  <h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
98
  <p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
19
  * Mainly used to navigate between pages.
20
  *
21
  * @since 1.0.0
22
+ * @see FactoryPages448_AdminPage
23
  *
24
  * @var string
25
  */
79
  ?>
80
  <script>
81
  jQuery(document).ready(function($) {
82
+ $.wfactory_449.hooks.add('core/components/updated', function(button, component_name) {
83
  if( component_name.plugin_action === 'install' ) {
84
  button.removeClass('wbcr-factory-purchase-premium');
85
  button.addClass('wbcr-factory-activate-premium');
92
  });
93
  });
94
  </script>
95
+ <div class="wbcr-factory-templates-101-multisite-suggetion">
96
  <div class="wbcr-factory-inner-contanier">
97
  <h3><?php _e( 'Install Robin Image Optimizer component', 'clearfy' ) ?></h3>
98
  <p><?php _e( 'To start optimizing images, you need to install the additional component Robin image optimizer!', 'clearfy' ) ?></p>
admin/pages/class-pages-license.php CHANGED
@@ -13,7 +13,7 @@
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
- class WCL_LicensePage extends Wbcr_FactoryClearfy240_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
- * @param \Wbcr_Factory448_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Clearfy Business', 'robin-image-optimizer' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WCL_LicensePage extends WBCR\Factory_Templates_101\Pages\License {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory449_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory449_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-cache.php CHANGED
@@ -279,7 +279,7 @@ Yandex
279
  ?>
280
  <script>
281
  jQuery(document).ready(function($) {
282
- $.wfactory_448.hooks.add('core/components/updated', function(button, data) {
283
  console.log(data);
284
 
285
  if( data.plugin_action === 'install' ) {
@@ -289,14 +289,14 @@ Yandex
289
 
290
  });
291
 
292
- $.wfactory_448.hooks.add('core/components/activated', function(button, data) {
293
  button.remove();
294
  window.location.href = '<?php echo $this->getBaseUrl('clearfy_cache'); ?>';
295
 
296
  });
297
  });
298
  </script>
299
- <div class="wbcr-factory-clearfy-240-multisite-suggetion">
300
  <div class="wbcr-factory-inner-contanier">
301
  <h3><?php _e('Install Page Cache component', 'clearfy') ?></h3>
302
  <p><?php _e('To start page caching, you need to install the additional component Cache!', 'clearfy') ?></p>
279
  ?>
280
  <script>
281
  jQuery(document).ready(function($) {
282
+ $.wfactory_449.hooks.add('core/components/updated', function(button, data) {
283
  console.log(data);
284
 
285
  if( data.plugin_action === 'install' ) {
289
 
290
  });
291
 
292
+ $.wfactory_449.hooks.add('core/components/activated', function(button, data) {
293
  button.remove();
294
  window.location.href = '<?php echo $this->getBaseUrl('clearfy_cache'); ?>';
295
 
296
  });
297
  });
298
  </script>
299
+ <div class="wbcr-factory-templates-101-multisite-suggetion">
300
  <div class="wbcr-factory-inner-contanier">
301
  <h3><?php _e('Install Page Cache component', 'clearfy') ?></h3>
302
  <p><?php _e('To start page caching, you need to install the additional component Cache!', 'clearfy') ?></p>
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 FactoryPages447_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages448_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/class-pages-quick-start.php CHANGED
@@ -17,7 +17,7 @@ class WCL_QuickStartPage extends WCL_Page {
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
- * @see FactoryPages447_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
@@ -89,7 +89,7 @@ class WCL_QuickStartPage extends WCL_Page {
89
  *
90
  * @return void
91
  * @since 1.0.0
92
- * @see FactoryPages447_AdminPage
93
  *
94
  */
95
  public function assets($scripts, $styles)
@@ -103,7 +103,7 @@ class WCL_QuickStartPage extends WCL_Page {
103
  $styles->add(WCL_PLUGIN_URL . '/admin/assets/css/base-statistic.css');
104
  }
105
 
106
- $this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/general.js');
107
 
108
  $params = array(
109
  //'ajaxurl' => admin_url('admin-ajax.php'),
17
  * The id of the page in the admin menu.
18
  *
19
  * Mainly used to navigate between pages.
20
+ * @see FactoryPages448_AdminPage
21
  *
22
  * @since 1.0.0
23
  * @var string
89
  *
90
  * @return void
91
  * @since 1.0.0
92
+ * @see FactoryPages448_AdminPage
93
  *
94
  */
95
  public function assets($scripts, $styles)
103
  $styles->add(WCL_PLUGIN_URL . '/admin/assets/css/base-statistic.css');
104
  }
105
 
106
+ //$this->scripts->add(WCL_PLUGIN_URL . '/admin/assets/js/general.js');
107
 
108
  $params = array(
109
  //'ajaxurl' => admin_url('admin-ajax.php'),
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 FactoryPages447_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages448_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 FactoryPages447_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages448_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 FactoryPages447_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
16
  * The id of the page in the admin menu.
17
  *
18
  * Mainly used to navigate between pages.
19
+ * @see FactoryPages448_AdminPage
20
  *
21
  * @since 1.0.0
22
  * @var string
admin/pages/setup/class-pages-setup.php CHANGED
@@ -11,12 +11,12 @@ if( !defined('ABSPATH') ) {
11
  exit;
12
  }
13
 
14
- class WCL_Setup extends WBCR\FactoryClearfy240\Pages\Setup {
15
 
16
  /**
17
- * @param \Wbcr_Factory448_Plugin $plugin
18
  */
19
- public function __construct(\Wbcr_Factory448_Plugin $plugin)
20
  {
21
  parent::__construct($plugin);
22
 
@@ -53,7 +53,7 @@ class WCL_Setup extends WBCR\FactoryClearfy240\Pages\Setup {
53
  *
54
  * @return void
55
  * @since 1.0.0
56
- * @see FactoryPages447_AdminPage
57
  *
58
  */
59
  public function assets($scripts, $styles)
11
  exit;
12
  }
13
 
14
+ class WCL_Setup extends WBCR\Factory_Templates_101\Pages\Setup {
15
 
16
  /**
17
+ * @param \Wbcr_Factory449_Plugin $plugin
18
  */
19
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
20
  {
21
  parent::__construct($plugin);
22
 
53
  *
54
  * @return void
55
  * @since 1.0.0
56
+ * @see FactoryPages448_AdminPage
57
  *
58
  */
59
  public function assets($scripts, $styles)
admin/pages/setup/steps/class-step-congratulation.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Congratulation extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step6';
14
  protected $id = 'step7';
@@ -24,7 +24,7 @@ class Step_Congratulation extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
24
  {
25
  $pricing_page_url = $this->plugin->get_support()->get_pricing_url(true, 'setup_wizard');
26
  ?>
27
- <div class="w-factory-clearfy-240-setup__inner-wrap">
28
  <h3><?php echo __("Congratulations, the plugin configuration is complete!", "clearfy"); ?></h3>
29
  <p style="text-align: left;">
30
  <?php _e('You have successfully completed the basic plugin setup! You can go to the general plugin settings to enable other options that we did not offer you.', 'clearfy'); ?>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Congratulation extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step6';
14
  protected $id = 'step7';
24
  {
25
  $pricing_page_url = $this->plugin->get_support()->get_pricing_url(true, 'setup_wizard');
26
  ?>
27
+ <div class="w-factory-templates-101-setup__inner-wrap">
28
  <h3><?php echo __("Congratulations, the plugin configuration is complete!", "clearfy"); ?></h3>
29
  <p style="text-align: left;">
30
  <?php _e('You have successfully completed the basic plugin setup! You can go to the general plugin settings to enable other options that we did not offer you.', 'clearfy'); ?>
admin/pages/setup/steps/class-step-default.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Default extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $id = 'step0';
14
  protected $next_id = 'step1';
@@ -21,10 +21,10 @@ class Step_Default extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
21
  public function html()
22
  {
23
  ?>
24
- <div class="w-factory-clearfy-240-setup__inner-wrap">
25
- <div class="w-factory-clearfy-240-setup-step__new_onboarding-wrapper">
26
- <p class="w-factory-clearfy-240-setup-step__new_onboarding-welcome">Welcome to</p>
27
- <h1 class="w-factory-clearfy-240-logo">
28
  <img src="<?php echo WCL_PLUGIN_URL ?>/admin/assets/img/clearfylogo-768x300.png" alt="Clearfy">
29
  </h1>
30
  <p><?php _e('Optimize your site even faster using the setup wizard!', 'clearfy') ?></p>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Default extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $id = 'step0';
14
  protected $next_id = 'step1';
21
  public function html()
22
  {
23
  ?>
24
+ <div class="w-factory-templates-101-setup__inner-wrap">
25
+ <div class="w-factory-templates-101-setup-step__new_onboarding-wrapper">
26
+ <p class="w-factory-templates-101-setup-step__new_onboarding-welcome">Welcome to</p>
27
+ <h1 class="w-factory-templates-101-logo">
28
  <img src="<?php echo WCL_PLUGIN_URL ?>/admin/assets/img/clearfylogo-768x300.png" alt="Clearfy">
29
  </h1>
30
  <p><?php _e('Optimize your site even faster using the setup wizard!', 'clearfy') ?></p>
admin/pages/setup/steps/class-step-google-page-speed-after.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Google_Page_Speed_After extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step5';
14
  protected $id = 'step6';
@@ -28,7 +28,7 @@ class Step_Google_Page_Speed_After extends \WBCR\FactoryClearfy240\Pages\Step_Cu
28
  wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>", true);
29
  });
30
  </script>
31
- <div class="w-factory-clearfy-240-setup__inner-wrap">
32
  <h3>Google Page Speed</h3>
33
  <p style="text-align: left;">
34
  We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Google_Page_Speed_After extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step5';
14
  protected $id = 'step6';
28
  wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>", true);
29
  });
30
  </script>
31
+ <div class="w-factory-templates-101-setup__inner-wrap">
32
  <h3>Google Page Speed</h3>
33
  <p style="text-align: left;">
34
  We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
admin/pages/setup/steps/class-step-google-page-speed-before.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Google_Page_Speed_Before extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step0';
14
  protected $id = 'step1';
@@ -27,7 +27,7 @@ class Step_Google_Page_Speed_Before extends \WBCR\FactoryClearfy240\Pages\Step_C
27
  wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>");
28
  });
29
  </script>
30
- <div class="w-factory-clearfy-240-setup__inner-wrap">
31
  <h3><?php _e('Google Page Speed', 'clearfy') ?></h3>
32
  <p style="text-align: left;">
33
  <?php _e('We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Google_Page_Speed_Before extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step0';
14
  protected $id = 'step1';
27
  wclearfy_fetch_google_pagespeed_audit("<?php echo wp_create_nonce('fetch_google_page_speed_audit') ?>");
28
  });
29
  </script>
30
+ <div class="w-factory-templates-101-setup__inner-wrap">
31
  <h3><?php _e('Google Page Speed', 'clearfy') ?></h3>
32
  <p style="text-align: left;">
33
  <?php _e('We analyzed your site on the Google Page Speed service. You can see the test results below. Our plugin
admin/pages/setup/steps/class-step-optimize-images.php CHANGED
@@ -8,13 +8,13 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Optimize_Images extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step4';
14
  protected $id = 'step5';
15
  protected $next_id = 'step6';
16
 
17
- public function __construct(\WBCR\FactoryClearfy240\Pages\Setup $page)
18
  {
19
  parent::__construct($page);
20
  }
@@ -58,7 +58,7 @@ class Step_Optimize_Images extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
58
  ];
59
  ?>
60
 
61
- <div class="w-factory-clearfy-240-setup__inner-wrap">
62
  <h3><?php _e("Optimize images", "clearfy") ?></h3>
63
  <p style="text-align: left;">
64
  <?php _e("We found unoptimized images in your media library. You can run background image optimization with the Robin image optimizer component of the Clearfy plugin. Background optimization is a long process, your images will be optimized after some time, so you won't be able to immediately see the improvement in Google Page Speed, but when the images are fully optimized you will see a score increase in Google Page Speed.", "clearfy"); ?>
@@ -165,7 +165,7 @@ class Step_Optimize_Images extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
165
  $install_robin_plugin_btn->add_class('wclearfy-setup__install-component-button');
166
 
167
  ?>
168
- <div class="w-factory-clearfy-240-setup__inner-wrap">
169
  <h3><?php _e("Optimize images", "clearfy") ?></h3>
170
  <p style="text-align: left;">
171
  <?php _e("Robin Image optimizer plugin isn't installed or activated, you need to install or activate it to optimize your images.", "clearfy"); ?>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Optimize_Images extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step4';
14
  protected $id = 'step5';
15
  protected $next_id = 'step6';
16
 
17
+ public function __construct(\WBCR\Factory_Templates_101\Pages\Setup $page)
18
  {
19
  parent::__construct($page);
20
  }
58
  ];
59
  ?>
60
 
61
+ <div class="w-factory-templates-101-setup__inner-wrap">
62
  <h3><?php _e("Optimize images", "clearfy") ?></h3>
63
  <p style="text-align: left;">
64
  <?php _e("We found unoptimized images in your media library. You can run background image optimization with the Robin image optimizer component of the Clearfy plugin. Background optimization is a long process, your images will be optimized after some time, so you won't be able to immediately see the improvement in Google Page Speed, but when the images are fully optimized you will see a score increase in Google Page Speed.", "clearfy"); ?>
165
  $install_robin_plugin_btn->add_class('wclearfy-setup__install-component-button');
166
 
167
  ?>
168
+ <div class="w-factory-templates-101-setup__inner-wrap">
169
  <h3><?php _e("Optimize images", "clearfy") ?></h3>
170
  <p style="text-align: left;">
171
  <?php _e("Robin Image optimizer plugin isn't installed or activated, you need to install or activate it to optimize your images.", "clearfy"); ?>
admin/pages/setup/steps/class-step-plugins.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Plugins extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step1';
14
  protected $id = 'step2';
@@ -26,7 +26,7 @@ class Step_Plugins extends \WBCR\FactoryClearfy240\Pages\Step_Custom {
26
  $install_assets_manager_component_btn = $this->plugin->get_install_component_button('internal', 'assets_manager');
27
  $install_minify_and_combine_component_btn = $this->plugin->get_install_component_button('internal', 'minify_and_combine');
28
  ?>
29
- <div class="w-factory-clearfy-240-setup__inner-wrap">
30
  <h3><?php _e('Installing plugins', 'clearfy') ?></h3>
31
  <p style="text-align: left;"><?php _e('We analyzed your site and decided that in order to get the maximum result in
32
  optimizing your site, you will need to install additional plugins.', 'clearfy') ?></p>
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Plugins extends \WBCR\Factory_Templates_101\Pages\Step_Custom {
12
 
13
  protected $prev_id = 'step1';
14
  protected $id = 'step2';
26
  $install_assets_manager_component_btn = $this->plugin->get_install_component_button('internal', 'assets_manager');
27
  $install_minify_and_combine_component_btn = $this->plugin->get_install_component_button('internal', 'minify_and_combine');
28
  ?>
29
+ <div class="w-factory-templates-101-setup__inner-wrap">
30
  <h3><?php _e('Installing plugins', 'clearfy') ?></h3>
31
  <p style="text-align: left;"><?php _e('We analyzed your site and decided that in order to get the maximum result in
32
  optimizing your site, you will need to install additional plugins.', 'clearfy') ?></p>
admin/pages/setup/steps/class-step-setting-seo-optimize.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Setting_Seo extends \WBCR\FactoryClearfy240\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step3';
14
  protected $id = 'step4';
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Setting_Seo extends \WBCR\Factory_Templates_101\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step3';
14
  protected $id = 'step4';
admin/pages/setup/steps/class-step-setting-speed-optimize.php CHANGED
@@ -8,7 +8,7 @@ namespace WBCR\Clearfy\Pages;
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
- class Step_Setting_Speed_Optimize extends \WBCR\FactoryClearfy240\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step2';
14
  protected $id = 'step3';
8
  * @copyright (c) 23.07.2020, Webcraftic
9
  * @version 1.0
10
  */
11
+ class Step_Setting_Speed_Optimize extends \WBCR\Factory_Templates_101\Pages\Step_Form {
12
 
13
  protected $prev_id = 'step2';
14
  protected $id = 'step3';
clearfy.php CHANGED
@@ -4,11 +4,11 @@
4
  * Plugin URI: https://clearfy.pro
5
  * Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
6
  * Author: Creative Motion <info@cm-wp.com>
7
- * Version: 1.9.3
8
  * Text Domain: clearfy
9
  * Domain Path: /languages/
10
  * Author URI: https://cm-wp.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -89,13 +89,13 @@ $plugin_info = array(
89
  ),
90
  // FRAMEWORK MODULES
91
  'load_factory_modules' => array(
92
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
93
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
94
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
95
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
96
- array('libs/factory/freemius', 'factory_freemius_136', 'all'),
97
- array('libs/factory/adverts', 'factory_adverts_126', 'admin'),
98
- array('libs/factory/logger', 'factory_logger_113', 'all'),
99
 
100
  ),
101
  'load_plugin_components' => array(
@@ -136,7 +136,7 @@ $plugin_info = array(
136
 
137
 
138
 
139
- $clearfy_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($plugin_info, array(
140
  'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
141
  'required_php_version' => '7.0',
142
  'required_wp_version' => '5.2.0',
@@ -167,7 +167,7 @@ define('WBCR_CLEARFY_PLUGIN_ACTIVE', true);
167
 
168
  // Plugin version
169
  define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
170
- define('WCL_FRAMEWORK_VER', 'FACTORY_448_VERSION');
171
 
172
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
173
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
@@ -181,8 +181,6 @@ define('WCL_PLUGIN_URL', plugins_url(null, __FILE__));
181
  * -----------------------------------------------------------------------------
182
  */
183
  try {
184
- require_once(WCL_PLUGIN_DIR . '/includes/helpers.php');
185
-
186
  // creating a plugin via the factory
187
  require_once(WCL_PLUGIN_DIR . '/libs/factory/core/boot.php');
188
  require_once(WCL_PLUGIN_DIR . '/includes/class.plugin.php');
4
  * Plugin URI: https://clearfy.pro
5
  * Description: Disables unused Wordpress features, improves performance and increases SEO rankings, using Clearfy, which makes WordPress very easy.
6
  * Author: Creative Motion <info@cm-wp.com>
7
+ * Version: 1.9.6
8
  * Text Domain: clearfy
9
  * Domain Path: /languages/
10
  * Author URI: https://cm-wp.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  // Exit if accessed directly
89
  ),
90
  // FRAMEWORK MODULES
91
  'load_factory_modules' => array(
92
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
93
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
94
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
95
+ array('libs/factory/templates', 'factory_templates_101', 'all'),
96
+ array('libs/factory/freemius', 'factory_freemius_137', 'all'),
97
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin'),
98
+ array('libs/factory/logger', 'factory_logger_114', 'all'),
99
 
100
  ),
101
  'load_plugin_components' => array(
136
 
137
 
138
 
139
+ $clearfy_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($plugin_info, array(
140
  'plugin_already_activate' => defined('WCL_PLUGIN_ACTIVE'),
141
  'required_php_version' => '7.0',
142
  'required_wp_version' => '5.2.0',
167
 
168
  // Plugin version
169
  define('WCL_PLUGIN_VERSION', $clearfy_compatibility->get_plugin_version());
170
+ define('WCL_FRAMEWORK_VER', 'FACTORY_449_VERSION');
171
 
172
  define('WCL_PLUGIN_DIR', dirname(__FILE__));
173
  define('WCL_PLUGIN_BASE', plugin_basename(__FILE__));
181
  * -----------------------------------------------------------------------------
182
  */
183
  try {
 
 
184
  // creating a plugin via the factory
185
  require_once(WCL_PLUGIN_DIR . '/libs/factory/core/boot.php');
186
  require_once(WCL_PLUGIN_DIR . '/includes/class.plugin.php');
components/assets-manager/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
- * @see Wbcr_Factory448_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGNZ_Activation extends Wbcr_Factory448_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
+ * @see Wbcr_Factory449_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGNZ_Activation extends Wbcr_Factory449_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/assets-manager/admin/ajax/save-settings.php CHANGED
@@ -96,7 +96,7 @@ function wam_save_settings_action()
96
  wbcr_gnz_deploy_mu_plugin();
97
 
98
  // Flush cache for all cache plugins
99
- WbcrFactoryClearfy240_Helpers::flushPageCache();
100
  }
101
 
102
  wp_send_json_success([
96
  wbcr_gnz_deploy_mu_plugin();
97
 
98
  // Flush cache for all cache plugins
99
+ WBCR\Factory_Templates_101\Helpers::flushPageCache();
100
  }
101
 
102
  wp_send_json_success([
components/assets-manager/admin/boot.php CHANGED
@@ -147,7 +147,7 @@ if( defined('LOADING_ASSETS_MANAGER_AS_ADDON') ) {
147
  *
148
  * @param array $widgets
149
  * @param string $position
150
- * @param Wbcr_Factory448_Plugin $plugin
151
  */
152
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
153
  if( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
@@ -207,5 +207,5 @@ if( defined('LOADING_ASSETS_MANAGER_AS_ADDON') ) {
207
  return $page_url;
208
  }
209
 
210
- add_filter('wbcr_factory_pages_447_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2);
211
  }
147
  *
148
  * @param array $widgets
149
  * @param string $position
150
+ * @param Wbcr_Factory449_Plugin $plugin
151
  */
152
  add_filter('wbcr/factory/pages/impressive/widgets', function ($widgets, $position, $plugin) {
153
  if( $plugin->getPluginName() == WGZ_Plugin::app()->getPluginName() ) {
207
  return $page_url;
208
  }
209
 
210
+ add_filter('wbcr_factory_pages_448_imppage_rating_widget_url', 'wbcr_gnz_rating_widget_url', 10, 2);
211
  }
components/assets-manager/admin/pages/class-pages-more-features.php CHANGED
@@ -17,6 +17,6 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  *
18
  * @copyright (c) 2018 Webraftic Ltd
19
  */
20
- class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy240_MoreFeaturesPage {
21
 
22
  }
17
  *
18
  * @copyright (c) 2018 Webraftic Ltd
19
  */
20
+ class WGZ_MoreFeaturesPage extends Wbcr_FactoryClearfy000_MoreFeaturesPage {
21
 
22
  }
components/assets-manager/admin/pages/class-pages-settings.php CHANGED
@@ -16,7 +16,7 @@ if( !defined('ABSPATH') ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
@@ -24,7 +24,7 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy240_PageBase {
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
- * @see FactoryPages447_AdminPage
28
  *
29
  * @var string
30
  */
@@ -48,9 +48,9 @@ class WGZ_AssetsManagerPage extends Wbcr_FactoryClearfy240_PageBase {
48
  public $available_for_multisite = true;
49
 
50
  /**
51
- * @param Wbcr_Factory448_Plugin $plugin
52
  */
53
- public function __construct(Wbcr_Factory448_Plugin $plugin)
54
  {
55
  $this->menu_title = __('Assets manager', 'gonzales');
56
 
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WGZ_AssetsManagerPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
+ * @see FactoryPages448_AdminPage
28
  *
29
  * @var string
30
  */
48
  public $available_for_multisite = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory449_Plugin $plugin
52
  */
53
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
54
  {
55
  $this->menu_title = __('Assets manager', 'gonzales');
56
 
components/assets-manager/gonzales.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: gonzales
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -68,15 +68,15 @@ $wgnz_plugin_info = array(
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
72
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
73
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
74
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
75
- array('libs/factory/adverts', 'factory_adverts_126', 'admin')
76
  )
77
  );
78
 
79
- $wgnz_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($wgnz_plugin_info, array(
80
  'plugin_already_activate' => defined('WGZ_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
8
  * Text Domain: gonzales
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  // Exit if accessed directly
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin')
76
  )
77
  );
78
 
79
+ $wgnz_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($wgnz_plugin_info, array(
80
  'plugin_already_activate' => defined('WGZ_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
components/assets-manager/includes/class-plugin.php CHANGED
@@ -11,11 +11,11 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  * @version 1.0
13
  */
14
- class WGZ_Plugin extends Wbcr_Factory448_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
- * @var Wbcr_Factory448_Plugin
19
  */
20
  private static $app;
21
 
@@ -53,7 +53,7 @@ class WGZ_Plugin extends Wbcr_Factory448_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory448_Plugin|\WGZ_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  * @version 1.0
13
  */
14
+ class WGZ_Plugin extends Wbcr_Factory449_Plugin {
15
 
16
  /**
17
  * @see self::app()
18
+ * @var Wbcr_Factory449_Plugin
19
  */
20
  private static $app;
21
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory449_Plugin|\WGZ_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
components/assets-manager/includes/classes/class-assets-manager-global.php CHANGED
@@ -25,9 +25,9 @@ class WGZ_Assets_Manager_Public {
25
  private $deregistered = [];
26
 
27
  /**
28
- * @param Wbcr_Factory448_Plugin $plugin
29
  */
30
- public function __construct(Wbcr_Factory448_Plugin $plugin)
31
  {
32
  $this->plugin = $plugin;
33
 
25
  private $deregistered = [];
26
 
27
  /**
28
+ * @param Wbcr_Factory449_Plugin $plugin
29
  */
30
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
31
  {
32
  $this->plugin = $plugin;
33
 
components/assets-manager/includes/classes/class-views.php CHANGED
@@ -63,11 +63,11 @@ class WGZ_Views {
63
  *
64
  * @param string $template The template name.
65
  * @param mixed $data Some data to pass to the template.
66
- * @param Wbcr_FactoryClearfy240_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_FactoryClearfy240_PageBase $page = null ) {
71
  $template = str_replace( '_', '-', $template );
72
  $path = $this->plugin_dir . '/views/' . $template . '.php';
73
 
@@ -92,9 +92,9 @@ class WGZ_Views {
92
  *
93
  * @param string $template The template name.
94
  * @param mixed $data Some data to pass to the template.
95
- * @param Wbcr_FactoryClearfy240_PageBase $page
96
  */
97
- public function print_template( $template, $data = [], Wbcr_FactoryClearfy240_PageBase $page = null ) {
98
  echo $this->get_template( $template, $data, $page );
99
  }
100
  }
63
  *
64
  * @param string $template The template name.
65
  * @param mixed $data Some data to pass to the template.
66
+ * @param WBCR\Factory_Templates_101\Pages\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\Factory_Templates_101\Pages\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\Factory_Templates_101\Pages\PageBase $page
96
  */
97
+ public function print_template( $template, $data = [], WBCR\Factory_Templates_101\Pages\PageBase $page = null ) {
98
  echo $this->get_template( $template, $data, $page );
99
  }
100
  }
components/assets-manager/migrations/010100.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate010100 extends Wbcr_Factory448_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate010100 extends Wbcr_Factory449_Update {
8
 
9
  public function install()
10
  {
components/assets-manager/migrations/010108.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate010108 extends Wbcr_Factory448_Update {
8
 
9
  /**
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate010108 extends Wbcr_Factory449_Update {
8
 
9
  /**
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
components/assets-manager/migrations/020005.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGZUpdate020005 extends Wbcr_Factory448_Update {
8
 
9
  public function install() {
10
  $settings = get_option( $this->plugin->getPrefix() . 'assets_states', [] );
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGZUpdate020005 extends Wbcr_Factory449_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.1.2
6
- * Framework Version: FACTORY_448_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.1.2
6
+ * Framework Version: FACTORY_449_VERSION
7
  */
8
 
9
  // todo: проверить, как работает кеширование
components/comments-plus/admin/boot.php CHANGED
@@ -101,7 +101,7 @@ if ( ! defined( 'LOADING_COMMENTS_PLUS_AS_ADDON' ) ) {
101
  return $page_url;
102
  }
103
 
104
- add_filter( 'wbcr_factory_pages_447_imppage_rating_widget_url', 'wbcr_cmp_rating_widget_url', 10, 2 );
105
 
106
  /**
107
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
101
  return $page_url;
102
  }
103
 
104
+ add_filter( 'wbcr_factory_pages_448_imppage_rating_widget_url', 'wbcr_cmp_rating_widget_url', 10, 2 );
105
 
106
  /**
107
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/comments-plus/admin/pages/class-page-comments.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WbcrCmp_CommentsPage extends Wbcr_FactoryClearfy240_PageBase {
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
- * @param \Wbcr_Factory448_Plugin $plugin
56
  */
57
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
58
  $this->menu_title = __( 'Disable comments', 'comments-plus' );
59
  $this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
60
 
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_CommentsPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory449_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
58
  $this->menu_title = __( 'Disable comments', 'comments-plus' );
59
  $this->page_menu_short_description = __( 'Manage site comments', 'comments-plus' );
60
 
components/comments-plus/admin/pages/class-page-delete-comments.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy240_PageBase {
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
- * @param \Wbcr_Factory448_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
72
  $this->menu_title = __( 'Comments cleaner', 'comments-plus' );
73
 
74
  parent::__construct( $plugin );
@@ -78,10 +78,10 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy240_PageBase {
78
  * {@inheritDoc}
79
  *
80
  * @param $notices
81
- * @param Wbcr_Factory448_Plugin $plugin
82
  *
83
  * @return array
84
- * @see libs\factory\pages\themplates\FactoryPages447_ImpressiveThemplate
85
  */
86
  public function getActionNotices( $notices ) {
87
 
@@ -200,7 +200,7 @@ class WbcrCmp_DeleteCommentsPage extends Wbcr_FactoryClearfy240_PageBase {
200
  /**
201
  * Prints the content of the page
202
  *
203
- * @see libs\factory\pages\themplates\FactoryPages447_ImpressiveThemplate
204
  */
205
  public function showPageContent() {
206
  $stats = $this->getStats();
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WbcrCmp_DeleteCommentsPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory449_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
72
  $this->menu_title = __( 'Comments cleaner', 'comments-plus' );
73
 
74
  parent::__construct( $plugin );
78
  * {@inheritDoc}
79
  *
80
  * @param $notices
81
+ * @param Wbcr_Factory449_Plugin $plugin
82
  *
83
  * @return array
84
+ * @see libs\factory\pages\themplates\FactoryPages448_ImpressiveThemplate
85
  */
86
  public function getActionNotices( $notices ) {
87
 
200
  /**
201
  * Prints the content of the page
202
  *
203
+ * @see libs\factory\pages\themplates\FactoryPages448_ImpressiveThemplate
204
  */
205
  public function showPageContent() {
206
  $stats = $this->getStats();
components/comments-plus/admin/pages/class-page-more-features.php CHANGED
@@ -19,6 +19,6 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @copyright (c) 2018 Webraftic Ltd
21
  */
22
- class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy240_MoreFeaturesPage {
23
 
24
  }
19
  *
20
  * @copyright (c) 2018 Webraftic Ltd
21
  */
22
+ class WbcrCmp_MoreFeaturesPage extends Wbcr_FactoryClearfy000_MoreFeaturesPage {
23
 
24
  }
components/comments-plus/comments-plus.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: comments-plus
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -68,15 +68,15 @@ $wcm_plugin_info = array(
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
72
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
73
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
74
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
75
- array('libs/factory/adverts', 'factory_adverts_126', 'admin')
76
  )
77
  );
78
 
79
- $wcm_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($wcm_plugin_info, array(
80
  'plugin_already_activate' => defined('WCM_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
8
  * Text Domain: comments-plus
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  // Exit if accessed directly
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin')
76
  )
77
  );
78
 
79
+ $wcm_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($wcm_plugin_info, array(
80
  'plugin_already_activate' => defined('WCM_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
components/comments-plus/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WCM_Plugin extends Wbcr_Factory448_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory448_Plugin
18
  */
19
  private static $app;
20
 
@@ -59,7 +59,7 @@ class WCM_Plugin extends Wbcr_Factory448_Plugin {
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
- * @return \Wbcr_Factory448_Plugin|\WCM_Plugin
63
  */
64
  public static function app() {
65
  return self::$app;
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WCM_Plugin extends Wbcr_Factory449_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory449_Plugin
18
  */
19
  private static $app;
20
 
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
+ * @return \Wbcr_Factory449_Plugin|\WCM_Plugin
63
  */
64
  public static function app() {
65
  return self::$app;
components/comments-plus/includes/classes/class-configurate-comments.php CHANGED
@@ -12,14 +12,14 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  *
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
- class WbcrCmp_ConfigComments extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
  private $modified_types = [];
18
 
19
  /**
20
- * @param Wbcr_Factory448_Plugin $plugin
21
  */
22
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
23
  parent::__construct( $plugin );
24
  $this->plugin = $plugin;
25
  }
12
  *
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
+ class WbcrCmp_ConfigComments extends WBCR\Factory_Templates_101\Configurate {
16
 
17
  private $modified_types = [];
18
 
19
  /**
20
+ * @param Wbcr_Factory449_Plugin $plugin
21
  */
22
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
23
  parent::__construct( $plugin );
24
  $this->plugin = $plugin;
25
  }
components/cyrlitera/admin/activation.php CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
- * @see Wbcr_Factory448_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WCTR_Activation extends Wbcr_Factory448_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.03.2018, Webcraftic
8
+ * @see Wbcr_Factory449_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WCTR_Activation extends Wbcr_Factory449_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/cyrlitera/admin/boot.php CHANGED
@@ -135,7 +135,7 @@ if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
135
  return $page_url;
136
  }
137
 
138
- add_filter( 'wbcr_factory_pages_447_imppage_rating_widget_url', 'wbcr_cyrlitera_rating_widget_url', 10, 2 );
139
 
140
  /**
141
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
135
  return $page_url;
136
  }
137
 
138
+ add_filter( 'wbcr_factory_pages_448_imppage_rating_widget_url', 'wbcr_cyrlitera_rating_widget_url', 10, 2 );
139
 
140
  /**
141
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/cyrlitera/admin/pages/class-page-cyrlitera.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
- class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -59,9 +59,9 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy240_PageBase {
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
- * @param \Wbcr_Factory448_Plugin $plugin
63
  */
64
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
65
  $this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
66
 
67
  if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
@@ -203,7 +203,7 @@ class WCTR_CyrliteraPage extends Wbcr_FactoryClearfy240_PageBase {
203
  }
204
 
205
  /**
206
- * @param $html_builder Wbcr_FactoryForms445_Html
207
  */
208
  public function rollbackButton( $html_builder ) {
209
  $form_name = $html_builder->getFormName();
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
+ class WCTR_CyrliteraPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
59
  *
60
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
61
  *
62
+ * @param \Wbcr_Factory449_Plugin $plugin
63
  */
64
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
65
  $this->menu_title = __( 'Cyrlitera', 'cyrlitera' );
66
 
67
  if ( ! defined( 'LOADING_CYRLITERA_AS_ADDON' ) ) {
203
  }
204
 
205
  /**
206
+ * @param $html_builder Wbcr_FactoryForms446_Html
207
  */
208
  public function rollbackButton( $html_builder ) {
209
  $form_name = $html_builder->getFormName();
components/cyrlitera/admin/pages/class-page-more-features.php CHANGED
@@ -18,6 +18,6 @@ if ( ! defined( 'ABSPATH' ) ) {
18
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @copyright (c) 2018 Webraftic Ltd
20
  */
21
- class WCTR_MoreFeaturesPage extends Wbcr_FactoryClearfy240_MoreFeaturesPage {
22
 
23
  }
18
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @copyright (c) 2018 Webraftic Ltd
20
  */
21
+ class WCTR_MoreFeaturesPage extends Wbcr_FactoryClearfy000_MoreFeaturesPage {
22
 
23
  }
components/cyrlitera/cyrlitera.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: cyrlitera
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -68,15 +68,15 @@ $wctr_plugin_info = array(
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
72
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
73
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
74
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
75
- array('libs/factory/adverts', 'factory_adverts_126', 'admin')
76
  )
77
  );
78
 
79
- $wctr_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($wctr_plugin_info, array(
80
  'plugin_already_activate' => defined('WCTR_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
8
  * Text Domain: cyrlitera
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  // Exit if accessed directly
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin')
76
  )
77
  );
78
 
79
+ $wctr_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($wctr_plugin_info, array(
80
  'plugin_already_activate' => defined('WCTR_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
components/cyrlitera/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WCTR_Plugin extends Wbcr_Factory448_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory448_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WCTR_Plugin extends Wbcr_Factory448_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory448_Plugin|\WCTR_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
10
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WCTR_Plugin extends Wbcr_Factory449_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory449_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory449_Plugin|\WCTR_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
components/cyrlitera/includes/classes/class-configurate-cyrlitera.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
@@ -235,7 +235,7 @@ class WCTR_ConfigurateCyrlitera extends Wbcr_FactoryClearfy240_Configurate {
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
- if ( ! WbcrFactoryClearfy240_Helpers::isPermalink() ) {
239
  return;
240
  }
241
  $is404 = is_404();
12
  exit;
13
  }
14
 
15
+ class WCTR_ConfigurateCyrlitera extends WBCR\Factory_Templates_101\Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
 
235
  * Перенаправление со старых url, которые были уже преобразованы
236
  */
237
  public function redirectFromOldUrls() {
238
+ if ( ! WBCR\Factory_Templates_101\Helpers::isPermalink() ) {
239
  return;
240
  }
241
  $is404 = is_404();
components/cyrlitera/migrations/010004.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WCTR_Update010004 extends Wbcr_Factory448_Update {
8
 
9
  public function install() {
10
  WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WCTR_Update010004 extends Wbcr_Factory449_Update {
8
 
9
  public function install() {
10
  WCTR_Plugin::app()->deletePopulateOption( 'custom_symbols_pack' );
components/disable-admin-notices/admin/boot.php CHANGED
@@ -44,7 +44,7 @@ if ( ! defined( 'LOADING_DISABLE_ADMIN_NOTICES_AS_ADDON' ) ) {
44
  *
45
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
46
  */
47
- add_filter( 'wbcr_factory_pages_447_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
48
  if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
49
  return 'https://goo.gl/68ucHp';
50
  }
44
  *
45
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
46
  */
47
+ add_filter( 'wbcr_factory_pages_448_imppage_rating_widget_url', function ( $page_url, $plugin_name ) {
48
  if ( $plugin_name == WDN_Plugin::app()->getPluginName() ) {
49
  return 'https://goo.gl/68ucHp';
50
  }
components/disable-admin-notices/admin/class-page-basic.php CHANGED
@@ -19,16 +19,16 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  exit;
20
  }
21
 
22
- class WDN_Page extends Wbcr_FactoryClearfy240_PageBase {
23
 
24
  /**
25
  * Requests assets (js and css) for the page.
26
  *
27
- * @param Wbcr_Factory448_ScriptList $scripts
28
- * @param Wbcr_Factory448_StyleList $styles
29
  *
30
  * @return void
31
- * @see Wbcr_FactoryPages447_AdminPage
32
  *
33
  */
34
  public function assets( $scripts, $styles ) {
19
  exit;
20
  }
21
 
22
+ class WDN_Page extends WBCR\Factory_Templates_101\Pages\PageBase {
23
 
24
  /**
25
  * Requests assets (js and css) for the page.
26
  *
27
+ * @param Wbcr_Factory449_ScriptList $scripts
28
+ * @param Wbcr_Factory449_StyleList $styles
29
  *
30
  * @return void
31
+ * @see Wbcr_FactoryPages448_AdminPage
32
  *
33
  */
34
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/options.php CHANGED
@@ -176,7 +176,7 @@ function wbcr_dan_is_active_clearfy_component() {
176
  * с настройками этого плагина, потому что это ухудшает юзабилити.
177
  *
178
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
179
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $page Экземпляр страницы
180
  *
181
  * @return mixed Отсортированный массив с группой опций
182
  */
@@ -203,7 +203,7 @@ add_filter( 'wbcr_clr_additionally_form_options', 'wbcr_dan_additionally_form_op
203
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
204
  * через фреймворк.
205
  *
206
- * @param @param $html_builder Wbcr_FactoryForms445_Html
207
  *
208
  * @since 1.0
209
  *
176
  * с настройками этого плагина, потому что это ухудшает юзабилити.
177
  *
178
  * @param array $form Массив с группой настроек, страницы "Дополнительно" в плагине Clearfy
179
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $page Экземпляр страницы
180
  *
181
  * @return mixed Отсортированный массив с группой опций
182
  */
203
  * Эта модикация является не стандартной, поэтому мы не можете реалировать ее
204
  * через фреймворк.
205
  *
206
+ * @param @param $html_builder Wbcr_FactoryForms446_Html
207
  *
208
  * @since 1.0
209
  *
components/disable-admin-notices/admin/pages/class-pages-edit-admin-bar.php CHANGED
@@ -63,11 +63,11 @@ class WDAN_Edit_Admin_Bar extends WDN_Page {
63
  /**
64
  * Requests assets (js and css) for the page.
65
  *
66
- * @param Wbcr_Factory448_ScriptList $scripts
67
- * @param Wbcr_Factory448_StyleList $styles
68
  *
69
  * @return void
70
- * @see Wbcr_FactoryPages447_AdminPage
71
  *
72
  */
73
  public function assets( $scripts, $styles ) {
63
  /**
64
  * Requests assets (js and css) for the page.
65
  *
66
+ * @param Wbcr_Factory449_ScriptList $scripts
67
+ * @param Wbcr_Factory449_StyleList $styles
68
  *
69
  * @return void
70
+ * @see Wbcr_FactoryPages448_AdminPage
71
  *
72
  */
73
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-edit-redirects.php CHANGED
@@ -61,11 +61,11 @@ class WDAN_Block_Ad_Redirects extends WDN_Page {
61
  /**
62
  * Requests assets (js and css) for the page.
63
  *
64
- * @param Wbcr_Factory448_ScriptList $scripts
65
- * @param Wbcr_Factory448_StyleList $styles
66
  *
67
  * @return void
68
- * @see Wbcr_FactoryPages447_AdminPage
69
  *
70
  */
71
  public function assets( $scripts, $styles ) {
61
  /**
62
  * Requests assets (js and css) for the page.
63
  *
64
+ * @param Wbcr_Factory449_ScriptList $scripts
65
+ * @param Wbcr_Factory449_StyleList $styles
66
  *
67
  * @return void
68
+ * @see Wbcr_FactoryPages448_AdminPage
69
  *
70
  */
71
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-license.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
- class WDN_LicensePage extends Wbcr_FactoryClearfy240_LicensePage {
17
 
18
  /**
19
  * {@inheritdoc}
@@ -36,12 +36,12 @@ class WDN_LicensePage extends Wbcr_FactoryClearfy240_LicensePage {
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
- * @param \Wbcr_Factory448_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Disable admin notices premium', 'robin-image-optimizer' );
13
  *
14
  * @copyright (c) 2018 Webraftic Ltd
15
  */
16
+ class WDN_LicensePage extends WBCR\Factory_Templates_101\Pages\License {
17
 
18
  /**
19
  * {@inheritdoc}
36
  /**
37
  * WCL_LicensePage constructor.
38
  *
39
+ * @param \Wbcr_Factory449_Plugin $plugin
40
  *
41
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
42
  *
43
  */
44
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
45
  $this->menu_title = __( 'License', 'robin-image-optimizer' );
46
  $this->page_menu_short_description = __( 'Product activation', 'robin-image-optimizer' );
47
  $this->plan_name = __( 'Disable admin notices premium', 'robin-image-optimizer' );
components/disable-admin-notices/admin/pages/class-pages-notices.php CHANGED
@@ -59,11 +59,11 @@ class WDAN_Notices extends WDN_Page {
59
  /**
60
  * Requests assets (js and css) for the page.
61
  *
62
- * @param Wbcr_Factory448_ScriptList $scripts
63
- * @param Wbcr_Factory448_StyleList $styles
64
  *
65
  * @return void
66
- * @see Wbcr_FactoryPages447_AdminPage
67
  *
68
  */
69
  public function assets( $scripts, $styles ) {
59
  /**
60
  * Requests assets (js and css) for the page.
61
  *
62
+ * @param Wbcr_Factory449_ScriptList $scripts
63
+ * @param Wbcr_Factory449_StyleList $styles
64
  *
65
  * @return void
66
+ * @see Wbcr_FactoryPages448_AdminPage
67
  *
68
  */
69
  public function assets( $scripts, $styles ) {
components/disable-admin-notices/admin/pages/class-pages-settings.php CHANGED
@@ -66,9 +66,9 @@ class WDN_Settings_Page extends WDN_Page {
66
 
67
 
68
  /**
69
- * @param Wbcr_Factory448_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
72
  $this->menu_title = __( 'Hide admin notices', 'disable-admin-notices' );
73
  $this->page_menu_short_description = __( 'General settings', 'disable-admin-notices' );
74
 
@@ -88,11 +88,11 @@ class WDN_Settings_Page extends WDN_Page {
88
  /**
89
  * Requests assets (js and css) for the page.
90
  *
91
- * @param Wbcr_Factory448_ScriptList $scripts
92
- * @param Wbcr_Factory448_StyleList $styles
93
  *
94
  * @return void
95
- * @see Wbcr_FactoryPages447_AdminPage
96
  *
97
  */
98
  public function assets( $scripts, $styles ) {
@@ -122,7 +122,7 @@ class WDN_Settings_Page extends WDN_Page {
122
  'wbcr_dan_code' => 'interal_error'
123
  ),
124
  'type' => 'danger',
125
- 'message' => __('An error occurred while trying to delete comments. Internal error occured. Please try again later.', 'factory_pages_447')
126
  );*/
127
 
128
  return $notices;
66
 
67
 
68
  /**
69
+ * @param Wbcr_Factory449_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
72
  $this->menu_title = __( 'Hide admin notices', 'disable-admin-notices' );
73
  $this->page_menu_short_description = __( 'General settings', 'disable-admin-notices' );
74
 
88
  /**
89
  * Requests assets (js and css) for the page.
90
  *
91
+ * @param Wbcr_Factory449_ScriptList $scripts
92
+ * @param Wbcr_Factory449_StyleList $styles
93
  *
94
  * @return void
95
+ * @see Wbcr_FactoryPages448_AdminPage
96
  *
97
  */
98
  public function assets( $scripts, $styles ) {
122
  'wbcr_dan_code' => 'interal_error'
123
  ),
124
  'type' => 'danger',
125
+ 'message' => __('An error occurred while trying to delete comments. Internal error occured. Please try again later.', 'factory_pages_448')
126
  );*/
127
 
128
  return $notices;
components/disable-admin-notices/disable-admin-notices.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: disable-admin-notices
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  /**
@@ -85,17 +85,17 @@ $wdan_plugin_info = array(
85
 
86
  // FRAMEWORK MODULES
87
  'load_factory_modules' => array(
88
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
89
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
90
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
91
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
92
- array('libs/factory/freemius', 'factory_freemius_136', 'all'),
93
- array('libs/factory/adverts', 'factory_adverts_126', 'admin'),
94
- //array('libs/factory/logger', 'factory_logger_113', 'all')
95
  )
96
  );
97
 
98
- $wdan_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($wdan_plugin_info, array(
99
  'plugin_already_activate' => defined('WDN_PLUGIN_ACTIVE'),
100
  'required_php_version' => '5.4',
101
  'required_wp_version' => '4.2.0',
8
  * Text Domain: disable-admin-notices
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  /**
85
 
86
  // FRAMEWORK MODULES
87
  'load_factory_modules' => array(
88
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
89
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
90
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
91
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
92
+ array('libs/factory/freemius', 'factory_freemius_137', 'all'),
93
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin'),
94
+ //array('libs/factory/logger', 'factory_logger_114', 'all')
95
  )
96
  );
97
 
98
+ $wdan_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($wdan_plugin_info, array(
99
  'plugin_already_activate' => defined('WDN_PLUGIN_ACTIVE'),
100
  'required_php_version' => '5.4',
101
  'required_wp_version' => '4.2.0',
components/disable-admin-notices/includes/class-plugin.php CHANGED
@@ -9,16 +9,16 @@
9
  */
10
 
11
  // Exit if accessed directly
12
- //use WBCR\Factory_Adverts_126\Base;
13
 
14
  if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
- class WDN_Plugin extends Wbcr_Factory448_Plugin {
19
 
20
  /**
21
- * @var Wbcr_Factory448_Plugin
22
  */
23
  private static $app;
24
  private $plugin_data;
@@ -44,7 +44,7 @@ class WDN_Plugin extends Wbcr_Factory448_Plugin {
44
  }
45
 
46
  /**
47
- * @return Wbcr_Factory448_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
9
  */
10
 
11
  // Exit if accessed directly
12
+ //use WBCR\Factory_Adverts_127\Base;
13
 
14
  if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
+ class WDN_Plugin extends Wbcr_Factory449_Plugin {
19
 
20
  /**
21
+ * @var Wbcr_Factory449_Plugin
22
  */
23
  private static $app;
24
  private $plugin_data;
44
  }
45
 
46
  /**
47
+ * @return Wbcr_Factory449_Plugin
48
  */
49
  public static function app() {
50
  return self::$app;
components/disable-admin-notices/includes/classes/class-configurate-notices.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  exit;
16
  }
17
 
18
- class WDN_ConfigHideNotices extends Wbcr_FactoryClearfy240_Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
15
  exit;
16
  }
17
 
18
+ class WDN_ConfigHideNotices extends WBCR\Factory_Templates_101\Configurate {
19
 
20
  public function registerActionsAndFilters() {
21
  if ( is_admin() ) {
components/disable-admin-notices/migrations/010007.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WDNUpdate010007 extends Wbcr_Factory448_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WDNUpdate010007 extends Wbcr_Factory449_Update {
8
 
9
  public function install()
10
  {
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 Factory448_Activator
9
  * @version 1.0
10
  */
11
 
@@ -14,7 +14,7 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- class WGA_Activation extends Wbcr_Factory448_Activator {
18
 
19
  /**
20
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
+ * @see Factory449_Activator
9
  * @version 1.0
10
  */
11
 
14
  exit;
15
  }
16
 
17
+ class WGA_Activation extends Wbcr_Factory449_Activator {
18
 
19
  /**
20
  * Runs activation actions.
components/ga-cache/admin/boot.php CHANGED
@@ -21,9 +21,9 @@ if( !defined('ABSPATH') ) {
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
23
  *
24
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $page
25
  *
26
- * @param Wbcr_Factory448_Plugin $plugin
27
  *
28
  * @return void
29
  * @since 3.0.1
21
  * options for analytic caching are enabled or not. If enabled,
22
  * add cron task.
23
  *
24
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $page
25
  *
26
+ * @param Wbcr_Factory449_Plugin $plugin
27
  *
28
  * @return void
29
  * @since 3.0.1
components/ga-cache/admin/options.php CHANGED
@@ -45,6 +45,16 @@ function wbcr_ga_get_plugin_options()
45
  'default' => false
46
  ];
47
 
 
 
 
 
 
 
 
 
 
 
48
  $options[] = [
49
  'type' => 'checkbox',
50
  'way' => 'buttons',
@@ -141,7 +151,7 @@ function wbcr_ga_get_plugin_options()
141
 
142
  /**
143
  * @param $form
144
- * @param $page Wbcr_FactoryPages447_ImpressiveThemplate
145
  *
146
  * @return mixed
147
  */
45
  'default' => false
46
  ];
47
 
48
+ $options[] = [
49
+ 'type' => 'checkbox',
50
+ 'way' => 'buttons',
51
+ 'name' => 'yandex_metrika_cache',
52
+ 'title' => __('Improve browser caching for Yandex metrika', 'simple-google-analytics'),
53
+ 'layout' => ['hint-type' => 'icon', 'hint-icon-color' => 'grey'],
54
+ 'hint' => __('Clearfy will host these Yandex metrika scripts locally on your server to help satisfy the PageSpeed recommendation for Leverage browser caching..', 'simple-google-analytics') . (WGA_Plugin::app()->getPopulateOption('ga_cache') ? '<br>--<br><span class="wbcr-factory-light-orange-color">' . __('ATTENTION! Before using this option, please disable the option "Add Google Analytics code and Cache"!', 'simple-google-analytics') . '</span>' : ''),
55
+ 'default' => false
56
+ ];
57
+
58
  $options[] = [
59
  'type' => 'checkbox',
60
  'way' => 'buttons',
151
 
152
  /**
153
  * @param $form
154
+ * @param $page Wbcr_FactoryPages448_ImpressiveThemplate
155
  *
156
  * @return mixed
157
  */
components/ga-cache/admin/pages/class-pages-general-settings.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
- class WGA_CachePage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -48,9 +48,9 @@ class WGA_CachePage extends Wbcr_FactoryClearfy240_PageBase {
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
- * @param Wbcr_Factory448_Plugin $plugin
52
  */
53
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
54
  $this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
55
 
56
  if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
16
  * @copyright (c) 2018 Webraftic Ltd
17
  * @version 1.0
18
  */
19
+ class WGA_CachePage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
48
  public $show_right_sidebar_in_options = true;
49
 
50
  /**
51
+ * @param Wbcr_Factory449_Plugin $plugin
52
  */
53
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
54
  $this->menu_title = __( 'Local Google Analytics', 'simple-google-analytics' );
55
 
56
  if ( ! defined( 'LOADING_GA_CACHE_AS_ADDON' ) ) {
components/ga-cache/admin/pages/class-pages-more-features.php CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WGA_MoreFeaturesPage extends Wbcr_FactoryClearfy240_MoreFeaturesPage {
20
 
21
  }
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WGA_MoreFeaturesPage extends Wbcr_FactoryClearfy000_MoreFeaturesPage {
20
 
21
  }
components/ga-cache/clearfy.php CHANGED
@@ -15,7 +15,7 @@ if( !defined('ABSPATH') ) {
15
  }
16
 
17
  if( !defined('WGA_PLUGIN_ACTIVE') ) {
18
- define('WGA_PLUGIN_VERSION', '3.1.1');
19
  define('WGA_TEXT_DOMAIN', 'simple-google-analytics');
20
  define('WGA_PLUGIN_ACTIVE', true);
21
 
15
  }
16
 
17
  if( !defined('WGA_PLUGIN_ACTIVE') ) {
18
+ define('WGA_PLUGIN_VERSION', '3.2.1');
19
  define('WGA_TEXT_DOMAIN', 'simple-google-analytics');
20
  define('WGA_PLUGIN_ACTIVE', true);
21
 
components/ga-cache/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if( !defined('ABSPATH') ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WGA_Plugin extends Wbcr_Factory448_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory448_Plugin
18
  */
19
  private static $app;
20
 
@@ -59,7 +59,7 @@ class WGA_Plugin extends Wbcr_Factory448_Plugin {
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
- * @return \Wbcr_Factory448_Plugin|\WGA_Plugin
63
  */
64
  public static function app()
65
  {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WGA_Plugin extends Wbcr_Factory449_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory449_Plugin
18
  */
19
  private static $app;
20
 
59
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
60
  * классам.
61
  *
62
+ * @return \Wbcr_Factory449_Plugin|\WGA_Plugin
63
  */
64
  public static function app()
65
  {
components/ga-cache/includes/classes/class-configurate-ga.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WGA_ConfigGACache extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
12
  exit;
13
  }
14
 
15
+ class WGA_ConfigGACache extends WBCR\Factory_Templates_101\Configurate {
16
 
17
 
18
  public function registerActionsAndFilters() {
components/ga-cache/includes/classes/class-facebook-sdk.php CHANGED
@@ -239,10 +239,10 @@ class Facebook_SDK {
239
  private function update_file_contents($file_path, $file_contents)
240
  {
241
  if( !$this->filesystem->exists($this->busting_path) ) {
242
- \rocket_mkdir_p($this->busting_path);
243
  }
244
 
245
- if( !\rocket_put_content($file_path, $file_contents) ) {
246
  \WGA_Plugin::app()->logger->error('Contents could not be written into file. File path ' . $file_path);
247
 
248
  return false;
239
  private function update_file_contents($file_path, $file_contents)
240
  {
241
  if( !$this->filesystem->exists($this->busting_path) ) {
242
+ wp_mkdir_p($this->busting_path);
243
  }
244
 
245
+ if( !$this->filesystem->put_contents($file_path, $file_contents) ) {
246
  \WGA_Plugin::app()->logger->error('Contents could not be written into file. File path ' . $file_path);
247
 
248
  return false;
components/ga-cache/includes/classes/class-scheduler.php CHANGED
@@ -29,6 +29,7 @@ class Sheduller {
29
  {
30
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-abstract-cache.php';
31
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-google-analytics-cache.php';
 
32
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-google-tag-manager-cache.php';
33
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-facebook-sdk.php';
34
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-facebook-cache.php';
@@ -42,6 +43,10 @@ class Sheduller {
42
  $busting_path = trailingslashit($uploads_dir['basedir']) . WGA_PLUGIN_CACHE_FOLDER . '/';
43
  $busting_url = trailingslashit($uploads_dir['baseurl']) . WGA_PLUGIN_CACHE_FOLDER . '/';
44
 
 
 
 
 
45
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
46
  $this->ga_processor = new Google_Analytics_Cache($busting_path, $busting_url);
47
  $this->gtm_processor = new Google_Tag_Manager_Cache($busting_path, $busting_url, $this->ga_processor);
@@ -78,6 +83,10 @@ class Sheduller {
78
  return $html;
79
  }
80
 
 
 
 
 
81
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
82
  $html = $this->ga_processor->replace_url($html);
83
  $html = $this->gtm_processor->replace_url($html);
@@ -107,7 +116,7 @@ class Sheduller {
107
 
108
  $schedules['weekly'] = [
109
  'interval' => 604800,
110
- 'display' => __('weekly', 'rocket'),
111
  ];
112
 
113
  return $schedules;
@@ -142,6 +151,10 @@ class Sheduller {
142
  return false;
143
  }
144
 
 
 
 
 
145
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
146
  $this->ga_processor->refresh_save($this->ga_processor->get_url());
147
  }
@@ -176,6 +189,10 @@ class Sheduller {
176
  $result = $result && $this->ga_processor->delete() && $this->gtm_processor->delete();
177
  }
178
 
 
 
 
 
179
  return $result;
180
  }
181
 
@@ -188,6 +205,6 @@ class Sheduller {
188
  */
189
  private function is_busting_active()
190
  {
191
- return (\WGA_Plugin::app()->getPopulateOption('google_analytics_cache') || \WGA_Plugin::app()->getPopulateOption('facebook_cache'));
192
  }
193
- }
29
  {
30
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-abstract-cache.php';
31
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-google-analytics-cache.php';
32
+ require_once WGA_PLUGIN_DIR . '/includes/classes/class-yandex-metrika-cache.php';
33
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-google-tag-manager-cache.php';
34
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-facebook-sdk.php';
35
  require_once WGA_PLUGIN_DIR . '/includes/classes/class-facebook-cache.php';
43
  $busting_path = trailingslashit($uploads_dir['basedir']) . WGA_PLUGIN_CACHE_FOLDER . '/';
44
  $busting_url = trailingslashit($uploads_dir['baseurl']) . WGA_PLUGIN_CACHE_FOLDER . '/';
45
 
46
+ if( \WGA_Plugin::app()->getPopulateOption('yandex_metrika_cache') ) {
47
+ $this->ym_processor = new Yandex_Metrika_Cache($busting_path, $busting_url);
48
+ }
49
+
50
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
51
  $this->ga_processor = new Google_Analytics_Cache($busting_path, $busting_url);
52
  $this->gtm_processor = new Google_Tag_Manager_Cache($busting_path, $busting_url, $this->ga_processor);
83
  return $html;
84
  }
85
 
86
+ if( \WGA_Plugin::app()->getPopulateOption('yandex_metrika_cache') ) {
87
+ $html = $this->ym_processor->replace_url($html);
88
+ }
89
+
90
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
91
  $html = $this->ga_processor->replace_url($html);
92
  $html = $this->gtm_processor->replace_url($html);
116
 
117
  $schedules['weekly'] = [
118
  'interval' => 604800,
119
+ 'display' => __('weekly', 'clearfy'),
120
  ];
121
 
122
  return $schedules;
151
  return false;
152
  }
153
 
154
+ if( \WGA_Plugin::app()->getPopulateOption('yandex_metrika_cache') ) {
155
+ $this->ym_processor->refresh_save($this->ym_processor->get_url());
156
+ }
157
+
158
  if( \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') ) {
159
  $this->ga_processor->refresh_save($this->ga_processor->get_url());
160
  }
189
  $result = $result && $this->ga_processor->delete() && $this->gtm_processor->delete();
190
  }
191
 
192
+ if( \WGA_Plugin::app()->getPopulateOption('yandex_metrika_cache') ) {
193
+ $result = $result && $this->ym_processor->delete();
194
+ }
195
+
196
  return $result;
197
  }
198
 
205
  */
206
  private function is_busting_active()
207
  {
208
+ return (\WGA_Plugin::app()->getPopulateOption('yandex_metrika_cache') || \WGA_Plugin::app()->getPopulateOption('google_analytics_cache') || \WGA_Plugin::app()->getPopulateOption('facebook_cache'));
209
  }
210
+ }
components/ga-cache/includes/classes/class-yandex-metrika-cache.php ADDED
@@ -0,0 +1,162 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WGA\Busting;
4
+
5
+ /**
6
+ * This class configures the google analytics cache
7
+ *
8
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
9
+ * @copyright (c) 2017 Webraftic Ltd
10
+ * @version 1.0
11
+ */
12
+
13
+ // Exit if accessed directly
14
+ if( !defined('ABSPATH') ) {
15
+ exit;
16
+ }
17
+
18
+ class Yandex_Metrika_Cache extends Abstract_Cache {
19
+
20
+ /**
21
+ * Google Analytics URL.
22
+ *
23
+ * @var string
24
+ * @since 3.2.0
25
+ */
26
+ protected $url = 'https://mc.yandex.ru/metrika/tag.js';
27
+
28
+ /**
29
+ * File name (local).
30
+ * %s is a "version": a md5 hash of the file contents.
31
+ *
32
+ * @var string
33
+ * @since 3.2.0
34
+ */
35
+ protected $filename_pattern = 'ym-tag-%s.js';
36
+
37
+ /**
38
+ * Current file version (local): a md5 hash of the file contents.
39
+ *
40
+ * @var string
41
+ * @since 3.2.0
42
+ */
43
+ protected $file_version;
44
+
45
+ /**
46
+ * Flag to track the replacement.
47
+ *
48
+ * @var bool
49
+ * @since 3.2.0
50
+ */
51
+ protected $is_replaced = false;
52
+
53
+ /**
54
+ * Constructor.
55
+ *
56
+ * @param string $busting_path Path to the busting directory.
57
+ * @param string $busting_url URL of the busting directory.
58
+ * @since 3.1
59
+ * @access public
60
+ *
61
+ */
62
+ public function __construct($busting_path, $busting_url)
63
+ {
64
+ parent::__construct($busting_path, $busting_url);
65
+
66
+ $this->busting_path = $busting_path . 'yandex-tracking/';
67
+ $this->busting_url = $busting_url . 'yandex-tracking/';
68
+ }
69
+
70
+ /**
71
+ * Performs the replacement process.
72
+ *
73
+ * @param string $html HTML content.
74
+ * @return string
75
+ * @since 3.2.0
76
+ *
77
+ */
78
+ public function replace_url($html)
79
+ {
80
+ $this->is_replaced = false;
81
+
82
+ $tag = $this->find('<script\s*(?<attr>[^>]*)?>(?<content>[^<]+)?<\/script>', $html);
83
+
84
+ if( !$tag ) {
85
+ return $html;
86
+ }
87
+
88
+ \WGA_Plugin::app()->logger->info('YANDEX METRIKA CACHING PROCESS STARTED. TAG #' . $tag);
89
+
90
+ if( !$this->save($this->url) ) {
91
+ return $html;
92
+ }
93
+
94
+ $replace_tag = preg_replace('/(?:https?:)?\/\/mc\.yandex\.ru\/metrika\/tag\.js/i', $this->get_busting_url(), $tag);
95
+ $html = str_replace($tag, $replace_tag, $html);
96
+
97
+ $this->is_replaced = true;
98
+
99
+ \WGA_Plugin::app()->logger->info('Yandex metrika caching process succeeded. Busting path ' . $this->get_busting_path());
100
+
101
+ return $html;
102
+ }
103
+
104
+ /**
105
+ * Tell if the replacement was sucessful or not.
106
+ *
107
+ * @return bool
108
+ *
109
+ * @since 3.2.0
110
+ */
111
+ public function is_replaced()
112
+ {
113
+ return $this->is_replaced;
114
+ }
115
+
116
+ /**
117
+ * Get the Google Analytics URL.
118
+ *
119
+ * @return string
120
+ * @author Remy Perona
121
+ *
122
+ * @since 3.1
123
+ * @access public
124
+ */
125
+ public function get_url()
126
+ {
127
+ return $this->url;
128
+ }
129
+
130
+ /**
131
+ * Searches for element(s) in the DOM.
132
+ *
133
+ * @param string $pattern Pattern to match.
134
+ * @param string $html HTML content.
135
+ * @return string
136
+ * @author Remy Perona
137
+ *
138
+ * @since 3.1
139
+ * @access public
140
+ */
141
+ protected function find($pattern, $html)
142
+ {
143
+ preg_match_all('/' . $pattern . '/is', $html, $all_matches, PREG_SET_ORDER);
144
+
145
+ $matches = array_map(function ($match) {
146
+
147
+ if( empty($match['content']) || (!preg_match('/\"script\",\s*[\'"](?:https?:)?\/\/mc\.yandex\.ru\/metrika\/tag\.js[\'"]/i', $match['attr'] . $match['content'])) ) {
148
+ return false;
149
+ }
150
+
151
+ return $match[0];
152
+ }, $all_matches);
153
+
154
+ $matches = array_values(array_filter($matches));
155
+
156
+ if( !$matches ) {
157
+ return false;
158
+ }
159
+
160
+ return $matches[0];
161
+ }
162
+ }
components/ga-cache/migrations/030002.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WGACUpdate030002 extends Wbcr_Factory448_Update {
8
 
9
  public function install() {
10
  /**
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WGACUpdate030002 extends Wbcr_Factory449_Update {
8
 
9
  public function install() {
10
  /**
components/ga-cache/simple_google_analytics.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Old plugin name: Simple Google Analytics. To improve Google Page Speed indicators Analytics caching is needed. However, it can also slightly increase your website loading speed, because Analytics js files will load locally. The second case that you might need these settings is the usual Google Analytics connection to your website. You do not need to do this with other plugins or insert the tracking code into your theme.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
- * Version: 3.2.0
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
@@ -67,15 +67,15 @@ $plugin_info = array(
67
 
68
  // FRAMEWORK MODULES
69
  'load_factory_modules' => array(
70
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
71
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
72
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
73
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
74
- array('libs/factory/adverts', 'factory_adverts_126', 'admin')
75
  )
76
  );
77
 
78
- $wga_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($plugin_info, array(
79
  'plugin_already_activate' => defined('WGA_PLUGIN_ACTIVE'),
80
  'required_php_version' => '5.4',
81
  'required_wp_version' => '4.2.0',
4
  * Plugin URI: https://webcraftic.com
5
  * Description: Old plugin name: Simple Google Analytics. To improve Google Page Speed indicators Analytics caching is needed. However, it can also slightly increase your website loading speed, because Analytics js files will load locally. The second case that you might need these settings is the usual Google Analytics connection to your website. You do not need to do this with other plugins or insert the tracking code into your theme.
6
  * Author: Webcraftic <wordpress.webraftic@gmail.com>
7
+ * Version: 3.2.1
8
  * Text Domain: simple-google-analytics
9
  * Domain Path: /languages/
10
  * Author URI: http://webcraftic.com
67
 
68
  // FRAMEWORK MODULES
69
  'load_factory_modules' => array(
70
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
71
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
72
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
73
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
74
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin')
75
  )
76
  );
77
 
78
+ $wga_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($plugin_info, array(
79
  'plugin_already_activate' => defined('WGA_PLUGIN_ACTIVE'),
80
  'required_php_version' => '5.4',
81
  'required_wp_version' => '4.2.0',
components/html-minify/admin/pages/class-pages-settings.php CHANGED
@@ -9,7 +9,7 @@ if ( ! defined( 'ABSPATH' ) ) {
9
  *
10
  * @since 1.0.0
11
  */
12
- class WHTM_SettingsPage extends Wbcr_FactoryClearfy240_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -52,9 +52,9 @@ class WHTM_SettingsPage extends Wbcr_FactoryClearfy240_PageBase {
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
- * @param \Wbcr_Factory448_Plugin $plugin
56
  */
57
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
58
  // Заголовок страницы
59
  $this->menu_title = __( 'HTML Minify', 'html-minify' );
60
 
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WHTM_SettingsPage extends WBCR\Factory_Templates_101\Pages\PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
52
  *
53
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
54
  *
55
+ * @param \Wbcr_Factory449_Plugin $plugin
56
  */
57
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
58
  // Заголовок страницы
59
  $this->menu_title = __( 'HTML Minify', 'html-minify' );
60
 
components/html-minify/html-minify.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: html-minify
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  /*
@@ -59,15 +59,15 @@ $whtml_plugin_info = array(
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
- array( 'libs/factory/bootstrap', 'factory_bootstrap_448', 'admin' ),
63
- array( 'libs/factory/forms', 'factory_forms_445', 'admin' ),
64
- array( 'libs/factory/pages', 'factory_pages_447', 'admin' ),
65
- array( 'libs/factory/clearfy', 'factory_clearfy_240', 'all' ),
66
- array( 'libs/factory/adverts', 'factory_adverts_126', 'admin')
67
  )
68
  );
69
 
70
- $whtml_compatibility = new Wbcr_Factory448_Requirements( __FILE__, array_merge( $whtml_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
8
  * Text Domain: html-minify
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_449', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_446', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_448', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_templates_101', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_127', 'admin')
67
  )
68
  );
69
 
70
+ $whtml_compatibility = new Wbcr_Factory449_Requirements( __FILE__, array_merge( $whtml_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WHTM_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
components/html-minify/includes/class-plugin.php CHANGED
@@ -13,11 +13,11 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  }
14
 
15
 
16
- class WHTM_Plugin extends Wbcr_Factory448_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory448_Plugin
21
  */
22
  private static $app;
23
 
@@ -53,7 +53,7 @@ class WHTM_Plugin extends Wbcr_Factory448_Plugin {
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
- * @return \Wbcr_Factory448_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
13
  }
14
 
15
 
16
+ class WHTM_Plugin extends Wbcr_Factory449_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory449_Plugin
21
  */
22
  private static $app;
23
 
53
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
54
  * классам.
55
  *
56
+ * @return \Wbcr_Factory449_Plugin|\WCM_Plugin
57
  */
58
  public static function app() {
59
  return self::$app;
components/minify-and-combine/admin/pages/class-pages-settings.php CHANGED
@@ -9,7 +9,7 @@ if( !defined('ABSPATH') ) {
9
  *
10
  * @since 1.0.0
11
  */
12
- class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy240_PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
@@ -50,12 +50,12 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy240_PageBase
50
  /**
51
  * WMAC_MinifyAndCombineSettingsPage constructor.
52
  *
53
- * @param \Wbcr_Factory448_Plugin $plugin
54
  *
55
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
56
  *
57
  */
58
- public function __construct(Wbcr_Factory448_Plugin $plugin)
59
  {
60
  $this->menu_title = __('Optimize CSS & JS', 'minify-and-combine');
61
  $this->page_menu_short_description = __('Optimize CSS & JS', 'minify-and-combine');
@@ -85,11 +85,11 @@ class WMAC_MinifyAndCombineSettingsPage extends Wbcr_FactoryClearfy240_PageBase
85
  /**
86
  * Requests assets (js and css) for the page.
87
  *
88
- * @param Wbcr_Factory448_ScriptList $scripts
89
- * @param Wbcr_Factory448_StyleList $styles
90
  *
91
  * @return void
92
- * @see Wbcr_FactoryPages447_AdminPage
93
  *
94
  */
95
  public function assets($scripts, $styles)
@@ -483,7 +483,7 @@ This can be fully automated for different types of pages with the Мinify And Co
483
  /**
484
  * @since 1.1.1 - является устаревшим
485
  */
486
- return wbcr_factory_448_apply_filters_deprecated('wbcr_mac_settings_form_options', [$formOptions], '1.1.1', 'wmac/pages/settings_form_options');
487
  }
488
 
489
  public function cacheInfo()
9
  *
10
  * @since 1.0.0
11
  */
12
+ class WMAC_MinifyAndCombineSettingsPage extends WBCR\Factory_Templates_101\Pages\PageBase {
13
 
14
  /**
15
  * {@inheritDoc}
50
  /**
51
  * WMAC_MinifyAndCombineSettingsPage constructor.
52
  *
53
+ * @param \Wbcr_Factory449_Plugin $plugin
54
  *
55
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
56
  *
57
  */
58
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
59
  {
60
  $this->menu_title = __('Optimize CSS & JS', 'minify-and-combine');
61
  $this->page_menu_short_description = __('Optimize CSS & JS', 'minify-and-combine');
85
  /**
86
  * Requests assets (js and css) for the page.
87
  *
88
+ * @param Wbcr_Factory449_ScriptList $scripts
89
+ * @param Wbcr_Factory449_StyleList $styles
90
  *
91
  * @return void
92
+ * @see Wbcr_FactoryPages448_AdminPage
93
  *
94
  */
95
  public function assets($scripts, $styles)
483
  /**
484
  * @since 1.1.1 - является устаревшим
485
  */
486
+ return wbcr_factory_449_apply_filters_deprecated('wbcr_mac_settings_form_options', [$formOptions], '1.1.1', 'wmac/pages/settings_form_options');
487
  }
488
 
489
  public function cacheInfo()
components/minify-and-combine/includes/class-plugin.php CHANGED
@@ -13,11 +13,11 @@ if( !defined('ABSPATH') ) {
13
  }
14
 
15
 
16
- class WMAC_Plugin extends Wbcr_Factory448_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
- * @var Wbcr_Factory448_Plugin
21
  */
22
  private static $app;
23
 
@@ -56,7 +56,7 @@ class WMAC_Plugin extends Wbcr_Factory448_Plugin {
56
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
57
  * классам.
58
  *
59
- * @return \Wbcr_Factory448_Plugin|\WCM_Plugin
60
  */
61
  public static function app()
62
  {
13
  }
14
 
15
 
16
+ class WMAC_Plugin extends Wbcr_Factory449_Plugin {
17
 
18
  /**
19
  * @see self::app()
20
+ * @var Wbcr_Factory449_Plugin
21
  */
22
  private static $app;
23
 
56
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
57
  * классам.
58
  *
59
+ * @return \Wbcr_Factory449_Plugin|\WCM_Plugin
60
  */
61
  public static function app()
62
  {
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', [ 'WbcrFactoryClearfy240_Helpers', 'flushPageCache' ], 10, 0 );
389
  }
390
 
391
  // Warm cache (part of speedupper)!
385
  }
386
  }
387
  add_action( 'shutdown', 'wmac_do_cachepurged_action', 11 );
388
+ add_action( 'wmac_action_cachepurged', [ 'WBCR\Factory_Templates_101\Helpers', 'flushPageCache' ], 10, 0 );
389
  }
390
 
391
  // Warm cache (part of speedupper)!
components/minify-and-combine/minify-and-combine.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: minify-and-combine
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  /*
@@ -59,15 +59,15 @@ $wmac_plugin_info = array(
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
- array( 'libs/factory/bootstrap', 'factory_bootstrap_448', 'admin' ),
63
- array( 'libs/factory/forms', 'factory_forms_445', 'admin' ),
64
- array( 'libs/factory/pages', 'factory_pages_447', 'admin' ),
65
- array( 'libs/factory/clearfy', 'factory_clearfy_240', 'all' ),
66
- array( 'libs/factory/adverts', 'factory_adverts_126', 'admin')
67
  )
68
  );
69
 
70
- $wmac_compatibility = new Wbcr_Factory448_Requirements( __FILE__, array_merge( $wmac_plugin_info, array(
71
  'plugin_already_activate' => defined( 'WMAC_PLUGIN_ACTIVE' ),
72
  'required_php_version' => '5.4',
73
  'required_wp_version' => '4.2.0',
8
  * Text Domain: minify-and-combine
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  /*
59
 
60
  // FRAMEWORK MODULES
61
  'load_factory_modules' => array(
62
+ array( 'libs/factory/bootstrap', 'factory_bootstrap_449', 'admin' ),
63
+ array( 'libs/factory/forms', 'factory_forms_446', 'admin' ),
64
+ array( 'libs/factory/pages', 'factory_pages_448', 'admin' ),
65
+ array( 'libs/factory/clearfy', 'factory_templates_101', 'all' ),
66
+ array( 'libs/factory/adverts', 'factory_adverts_127', 'admin')
67
  )
68
  );
69
 
70
+ $wmac_compatibility = new Wbcr_Factory449_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 Factory448_Activator
9
  */
10
 
11
  // Exit if accessed directly
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WUPM_Activation extends Wbcr_Factory448_Activator {
17
 
18
  /**
19
  * Runs activation actions.
5
  *
6
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
7
  * @copyright (c) 09.09.2017, Webcraftic
8
+ * @see Factory449_Activator
9
  */
10
 
11
  // Exit if accessed directly
13
  exit;
14
  }
15
 
16
+ class WUPM_Activation extends Wbcr_Factory449_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
- $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
63
  }
64
  return false;
65
  }
66
 
67
- /*var noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Settings successfully updated', 'success');
68
 
69
  setTimeout(function() {
70
- $.wbcr_factory_clearfy_240.app.hideNotice(noticeId);
71
  }, 5000);*/
72
  },
73
  error: function(xhr, ajaxOptions, thrownError) {
@@ -75,7 +75,7 @@ jQuery(function($) {
75
  console.log(xhr.responseText);
76
  console.log(thrownError);
77
 
78
- $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
79
  }
80
  });
81
  });
59
 
60
  if( !response || !response.success ) {
61
  if( response.data.error_message ) {
62
+ $.wbcr_factory_templates_101.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
63
  }
64
  return false;
65
  }
66
 
67
+ /*var noticeId = $.wbcr_factory_templates_101.app.showNotice('Settings successfully updated', 'success');
68
 
69
  setTimeout(function() {
70
+ $.wbcr_factory_templates_101.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_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
79
  }
80
  });
81
  });
components/updates-manager/admin/boot.php CHANGED
@@ -48,7 +48,7 @@ if ( ! defined( 'LOADING_UPDATES_MANAGER_AS_ADDON' ) ) {
48
  return $page_url;
49
  }
50
 
51
- add_filter( 'wbcr_factory_pages_447_imppage_rating_widget_url', 'wbcr_upm_rating_widget_url', 10, 2 );
52
 
53
  /**
54
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
48
  return $page_url;
49
  }
50
 
51
+ add_filter( 'wbcr_factory_pages_448_imppage_rating_widget_url', 'wbcr_upm_rating_widget_url', 10, 2 );
52
 
53
  /**
54
  * Удаляем лишние виджеты из правого сайдбара в интерфейсе плагина
components/updates-manager/admin/includes/class-abstract-filters.php CHANGED
@@ -14,7 +14,7 @@ abstract class WUPM_AbstractFilters {
14
  protected $is_disable_translation_updates;
15
 
16
 
17
- function __construct( Wbcr_Factory448_Plugin $plugin ) {
18
  $this->plugin = $plugin;
19
  $this->load();
20
  }
14
  protected $is_disable_translation_updates;
15
 
16
 
17
+ function __construct( Wbcr_Factory449_Plugin $plugin ) {
18
  $this->plugin = $plugin;
19
  $this->load();
20
  }
components/updates-manager/admin/pages/class-page-advanced.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_AdvancedPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
@@ -66,9 +66,9 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy240_PageBase {
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
- * @param \Wbcr_Factory448_Plugin $plugin
70
  */
71
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
72
  $this->menu_title = __( 'Advanced', 'webcraftic-updates-manager' );
73
 
74
  parent::__construct( $plugin );
@@ -79,8 +79,8 @@ class WUPM_AdvancedPage extends Wbcr_FactoryClearfy240_PageBase {
79
  *
80
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
81
  *
82
- * @param \Wbcr_Factory448_ScriptList $scripts
83
- * @param \Wbcr_Factory448_StyleList $styles
84
  */
85
  public function assets( $scripts, $styles ) {
86
  parent::assets( $scripts, $styles );
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_AdvancedPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * {@inheritDoc}
66
  *
67
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
68
  *
69
+ * @param \Wbcr_Factory449_Plugin $plugin
70
  */
71
+ public function __construct( Wbcr_Factory449_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_Factory449_ScriptList $scripts
83
+ * @param \Wbcr_Factory449_StyleList $styles
84
  */
85
  public function assets( $scripts, $styles ) {
86
  parent::assets( $scripts, $styles );
components/updates-manager/admin/pages/class-page-more-features.php CHANGED
@@ -16,6 +16,6 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_MoreFeaturesPage extends Wbcr_FactoryClearfy240_MoreFeaturesPage {
20
 
21
  }
16
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_MoreFeaturesPage extends Wbcr_FactoryClearfy000_MoreFeaturesPage {
20
 
21
  }
components/updates-manager/admin/pages/class-page-plugins.php CHANGED
@@ -16,7 +16,7 @@ if ( ! defined( 'ABSPATH' ) ) {
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
- class WUPM_PluginsPage extends Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
@@ -83,9 +83,9 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy240_PageBase {
83
  *
84
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
85
  *
86
- * @param \Wbcr_Factory448_Plugin $plugin
87
  */
88
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
89
  $this->menu_title = __( 'Plugins', 'webcraftic-updates-manager' );
90
 
91
  parent::__construct( $plugin );
@@ -121,8 +121,8 @@ class WUPM_PluginsPage extends Wbcr_FactoryClearfy240_PageBase {
121
  *
122
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
123
  *
124
- * @param \Wbcr_Factory448_ScriptList $scripts
125
- * @param \Wbcr_Factory448_StyleList $styles
126
  */
127
  public function assets( $scripts, $styles ) {
128
  parent::assets( $scripts, $styles );
16
  *
17
  * @copyright (c) 2018 Webraftic Ltd
18
  */
19
+ class WUPM_PluginsPage extends WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  *{@inheritDoc}
83
  *
84
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
85
  *
86
+ * @param \Wbcr_Factory449_Plugin $plugin
87
  */
88
+ public function __construct( Wbcr_Factory449_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_Factory449_ScriptList $scripts
125
+ * @param \Wbcr_Factory449_StyleList $styles
126
  */
127
  public function assets( $scripts, $styles ) {
128
  parent::assets( $scripts, $styles );
components/updates-manager/admin/pages/class-page-themes.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
- class WUPM_ThemesPage extends Wbcr_FactoryClearfy240_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -85,9 +85,9 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy240_PageBase {
85
  private $themes_update_filters = [];
86
 
87
  /**
88
- * @param Wbcr_Factory448_Plugin $plugin
89
  */
90
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
91
  $this->menu_title = __( 'Themes', 'webcraftic-updates-manager' );
92
 
93
  parent::__construct( $plugin );
@@ -123,7 +123,7 @@ class WUPM_ThemesPage extends Wbcr_FactoryClearfy240_PageBase {
123
  *
124
  * @since 1.0.0
125
  * @return void
126
- * @see FactoryPages447_AdminPage
127
  *
128
  */
129
  public function assets( $scripts, $styles ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
+ class WUPM_ThemesPage extends WBCR\Factory_Templates_101\Pages\PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
85
  private $themes_update_filters = [];
86
 
87
  /**
88
+ * @param Wbcr_Factory449_Plugin $plugin
89
  */
90
+ public function __construct( Wbcr_Factory449_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 FactoryPages448_AdminPage
127
  *
128
  */
129
  public function assets( $scripts, $styles ) {
components/updates-manager/admin/pages/class-page-updates.php CHANGED
@@ -15,7 +15,7 @@ if ( ! defined( 'ABSPATH' ) ) {
15
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
16
  * @copyright (c) 2018 Webraftic Ltd
17
  */
18
- class WUPM_UpdatesPage extends Wbcr_FactoryClearfy240_PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
@@ -51,9 +51,9 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy240_PageBase {
51
  *
52
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
53
  *
54
- * @param \Wbcr_Factory448_Plugin $plugin
55
  */
56
- public function __construct( Wbcr_Factory448_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
 
@@ -86,8 +86,8 @@ class WUPM_UpdatesPage extends Wbcr_FactoryClearfy240_PageBase {
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com> *
88
  *
89
- * @param \Wbcr_Factory448_ScriptList $scripts
90
- * @param \Wbcr_Factory448_StyleList $styles
91
  */
92
  public function assets( $scripts, $styles ) {
93
  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\Factory_Templates_101\Pages\PageBase {
19
 
20
  /**
21
  * {@inheritDoc}
51
  *
52
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
53
  *
54
+ * @param \Wbcr_Factory449_Plugin $plugin
55
  */
56
+ public function __construct( Wbcr_Factory449_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
 
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com> *
88
  *
89
+ * @param \Wbcr_Factory449_ScriptList $scripts
90
+ * @param \Wbcr_Factory449_StyleList $styles
91
  */
92
  public function assets( $scripts, $styles ) {
93
  parent::assets( $scripts, $styles );
components/updates-manager/includes/class-plugin.php CHANGED
@@ -10,11 +10,11 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
- class WUPM_Plugin extends Wbcr_Factory448_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
- * @var Wbcr_Factory448_Plugin
18
  */
19
  private static $app;
20
 
@@ -57,7 +57,7 @@ class WUPM_Plugin extends Wbcr_Factory448_Plugin {
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
- * @return \Wbcr_Factory448_Plugin|\WUPM_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
10
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
11
  * @copyright (c) 19.02.2018, Webcraftic
12
  */
13
+ class WUPM_Plugin extends Wbcr_Factory449_Plugin {
14
 
15
  /**
16
  * @see self::app()
17
+ * @var Wbcr_Factory449_Plugin
18
  */
19
  private static $app;
20
 
57
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
58
  * классам.
59
  *
60
+ * @return \Wbcr_Factory449_Plugin|\WUPM_Plugin
61
  */
62
  public static function app() {
63
  return self::$app;
components/updates-manager/includes/classes/class-configurate-updates.php CHANGED
@@ -12,7 +12,7 @@ require_once WUPM_PLUGIN_DIR . '/admin/includes/class-plugin-filters.php';
12
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
- class WUPM_ConfigUpdates extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
  /**
12
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
13
  * @copyright (c) 2017 Webraftic Ltd
14
  */
15
+ class WUPM_ConfigUpdates extends WBCR\Factory_Templates_101\Configurate {
16
 
17
  public function registerActionsAndFilters() {
18
  /**
components/updates-manager/migrations/010008.php CHANGED
@@ -4,7 +4,7 @@
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
- class WUPMUpdate010008 extends Wbcr_Factory448_Update {
8
 
9
  public function install()
10
  {
4
  * Updates for altering the table used to store statistics data.
5
  * Adds new columns and renames existing ones in order to add support for the new social buttons.
6
  */
7
+ class WUPMUpdate010008 extends Wbcr_Factory449_Update {
8
 
9
  public function install()
10
  {
components/updates-manager/webcraftic-updates-manager.php CHANGED
@@ -8,7 +8,7 @@
8
  * Text Domain: webcraftic-updates-manager
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
- * Framework Version: FACTORY_448_VERSION
12
  */
13
 
14
  // Exit if accessed directly
@@ -68,15 +68,15 @@ $wupm_plugin_info = array(
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
- array('libs/factory/bootstrap', 'factory_bootstrap_448', 'admin'),
72
- array('libs/factory/forms', 'factory_forms_445', 'admin'),
73
- array('libs/factory/pages', 'factory_pages_447', 'admin'),
74
- array('libs/factory/clearfy', 'factory_clearfy_240', 'all'),
75
- array('libs/factory/adverts', 'factory_adverts_126', 'admin')
76
  )
77
  );
78
 
79
- $wupm_compatibility = new Wbcr_Factory448_Requirements(__FILE__, array_merge($wupm_plugin_info, array(
80
  'plugin_already_activate' => defined('WUPM_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
8
  * Text Domain: webcraftic-updates-manager
9
  * Domain Path: /languages/
10
  * Author URI: https://webcraftic.com
11
+ * Framework Version: FACTORY_449_VERSION
12
  */
13
 
14
  // Exit if accessed directly
68
 
69
  // FRAMEWORK MODULES
70
  'load_factory_modules' => array(
71
+ array('libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'),
72
+ array('libs/factory/forms', 'factory_forms_446', 'admin'),
73
+ array('libs/factory/pages', 'factory_pages_448', 'admin'),
74
+ array('libs/factory/clearfy', 'factory_templates_101', 'all'),
75
+ array('libs/factory/adverts', 'factory_adverts_127', 'admin')
76
  )
77
  );
78
 
79
+ $wupm_compatibility = new Wbcr_Factory449_Requirements(__FILE__, array_merge($wupm_plugin_info, array(
80
  'plugin_already_activate' => defined('WUPM_PLUGIN_ACTIVE'),
81
  'required_php_version' => '5.4',
82
  'required_wp_version' => '4.2.0',
includes/boot.php CHANGED
@@ -76,18 +76,6 @@ function wbcr_clr_admin_bar_menu($wp_admin_bar)
76
 
77
  $menu_items = [];
78
 
79
- /**
80
- * @since 1.1.3 - добавлен
81
- * @since 1.1.4 - является устаревшим
82
- */
83
- $menu_items = wbcr_factory_448_apply_filters_deprecated('wbcr_clearfy_admin_bar_menu_items', [$menu_items], '1.4.0', 'wbcr/clearfy/adminbar_menu_items');
84
-
85
- /**
86
- * @since 1.1.3 - добавлен
87
- * @since 1.1.4 - изменено имя
88
- */
89
- $menu_items = apply_filters('wbcr/clearfy/adminbar_menu_items', $menu_items);
90
-
91
  $menu_items['clearfy-docs'] = [
92
  'id' => 'clearfy-docs',
93
  'title' => '<span class="dashicons dashicons-book"></span> ' . __('Documentation', 'clearfy'),
@@ -113,6 +101,18 @@ function wbcr_clr_admin_bar_menu($wp_admin_bar)
113
  ];
114
  }
115
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  if( empty($menu_items) ) {
117
  return;
118
  }
76
 
77
  $menu_items = [];
78
 
 
 
 
 
 
 
 
 
 
 
 
 
79
  $menu_items['clearfy-docs'] = [
80
  'id' => 'clearfy-docs',
81
  'title' => '<span class="dashicons dashicons-book"></span> ' . __('Documentation', 'clearfy'),
101
  ];
102
  }
103
 
104
+ /**
105
+ * @since 1.1.3 - добавлен
106
+ * @since 1.1.4 - является устаревшим
107
+ */
108
+ $menu_items = wbcr_factory_449_apply_filters_deprecated('wbcr_clearfy_admin_bar_menu_items', [$menu_items], '1.4.0', 'wbcr/clearfy/adminbar_menu_items');
109
+
110
+ /**
111
+ * @since 1.1.3 - добавлен
112
+ * @since 1.1.4 - изменено имя
113
+ */
114
+ $menu_items = array_reverse(apply_filters('wbcr/clearfy/adminbar_menu_items', $menu_items));
115
+
116
  if( empty($menu_items) ) {
117
  return;
118
  }
includes/class.plugin.php CHANGED
@@ -12,11 +12,11 @@ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
- class WCL_Plugin extends Wbcr_Factory448_Plugin {
16
 
17
  /**
18
  * @see self::app()
19
- * @var Wbcr_Factory448_Plugin
20
  */
21
  private static $app;
22
 
@@ -37,6 +37,7 @@ class WCL_Plugin extends Wbcr_Factory448_Plugin {
37
  self::$app = $this;
38
  parent::__construct($plugin_path, $data);
39
 
 
40
  require_once(WCL_PLUGIN_DIR . '/includes/classes/class.licensing.php');
41
 
42
  if( is_admin() ) {
@@ -74,7 +75,7 @@ class WCL_Plugin extends Wbcr_Factory448_Plugin {
74
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
75
  * классам.
76
  *
77
- * @return \Wbcr_Factory448_Plugin|\WCL_Plugin
78
  */
79
  public static function app()
80
  {
@@ -206,7 +207,9 @@ class WCL_Plugin extends Wbcr_Factory448_Plugin {
206
  $this->registerPage('WCL_ComponentsLicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components-license.php');
207
  }
208
 
209
- $this->registerPage('WCL_LicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-license.php');
 
 
210
 
211
  if( $this->isActivateComponent('widget_tools') ) {
212
  $this->registerPage('WCL_WidgetsPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-widgets.php');
@@ -312,7 +315,7 @@ class WCL_Plugin extends Wbcr_Factory448_Plugin {
312
  * @param $slug
313
  * param $premium
314
  *
315
- * @return \WBCR\Factory_448\Components\Install_Button
316
  */
317
  public function getInstallComponentsButton($component_type, $slug)
318
  {
@@ -325,7 +328,7 @@ class WCL_Plugin extends Wbcr_Factory448_Plugin {
325
  * @param $component_type
326
  * @param $slug
327
  *
328
- * @return \WBCR\Factory_448\Components\Delete_Button
329
  */
330
  public function getDeleteComponentsButton($component_type, $slug)
331
  {
12
  exit;
13
  }
14
 
15
+ class WCL_Plugin extends Wbcr_Factory449_Plugin {
16
 
17
  /**
18
  * @see self::app()
19
+ * @var Wbcr_Factory449_Plugin
20
  */
21
  private static $app;
22
 
37
  self::$app = $this;
38
  parent::__construct($plugin_path, $data);
39
 
40
+ require_once(WCL_PLUGIN_DIR . '/includes/helpers.php');
41
  require_once(WCL_PLUGIN_DIR . '/includes/classes/class.licensing.php');
42
 
43
  if( is_admin() ) {
75
  * Используется для получения настроек плагина, информации о плагине, для доступа к вспомогательным
76
  * классам.
77
  *
78
+ * @return \Wbcr_Factory449_Plugin|\WCL_Plugin
79
  */
80
  public static function app()
81
  {
207
  $this->registerPage('WCL_ComponentsLicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-components-license.php');
208
  }
209
 
210
+ if( !WCL_Plugin::app()->getPopulateOption('whitelabel_hide_license_page') ) {
211
+ $this->registerPage('WCL_LicensePage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-license.php');
212
+ }
213
 
214
  if( $this->isActivateComponent('widget_tools') ) {
215
  $this->registerPage('WCL_WidgetsPage', WCL_PLUGIN_DIR . '/admin/pages/class-pages-widgets.php');
315
  * @param $slug
316
  * param $premium
317
  *
318
+ * @return \WBCR\Factory_449\Components\Install_Button
319
  */
320
  public function getInstallComponentsButton($component_type, $slug)
321
  {
328
  * @param $component_type
329
  * @param $slug
330
  *
331
+ * @return \WBCR\Factory_449\Components\Delete_Button
332
  */
333
  public function getDeleteComponentsButton($component_type, $slug)
334
  {
includes/classes/3rd-party/boot.php CHANGED
@@ -7,7 +7,7 @@
7
  * @version 1.0
8
  */
9
 
10
- add_filter('wbcr_factory_448_form_items', function ($forms_groups, $name) {
11
 
12
  require_once(WCL_PLUGIN_DIR . '/includes/classes/3rd-party/class-base.php');
13
  require_once(WCL_PLUGIN_DIR . '/includes/classes/3rd-party/plugins/class-wp-rocket.php');
7
  * @version 1.0
8
  */
9
 
10
+ add_filter('wbcr_factory_449_form_items', function ($forms_groups, $name) {
11
 
12
  require_once(WCL_PLUGIN_DIR . '/includes/classes/3rd-party/class-base.php');
13
  require_once(WCL_PLUGIN_DIR . '/includes/classes/3rd-party/plugins/class-wp-rocket.php');
includes/classes/3rd-party/class-form-entity.php CHANGED
@@ -57,7 +57,7 @@ class Form_Entity {
57
 
58
  protected static function is_control(array $item)
59
  {
60
- return isset($item['type']) && isset(\Wbcr_FactoryForms445_Manager::$registered_controls[$item['type']]);
61
  }
62
 
63
  /**
@@ -69,7 +69,7 @@ class Form_Entity {
69
  */
70
  protected static function is_control_holder(array $item)
71
  {
72
- return isset($item['type']) && isset(\Wbcr_FactoryForms445_Manager::$registered_holders[$item['type']]);
73
  }
74
 
75
  /**
@@ -81,7 +81,7 @@ class Form_Entity {
81
  */
82
  protected static function is_custom_element(array $item)
83
  {
84
- return isset($item['type']) && isset(\Wbcr_FactoryForms445_Manager::$registered_custom_elements[$item['type']]);
85
  }
86
 
87
  public function make_control_disabled()
57
 
58
  protected static function is_control(array $item)
59
  {
60
+ return isset($item['type']) && isset(\Wbcr_FactoryForms446_Manager::$registered_controls[$item['type']]);
61
  }
62
 
63
  /**
69
  */
70
  protected static function is_control_holder(array $item)
71
  {
72
+ return isset($item['type']) && isset(\Wbcr_FactoryForms446_Manager::$registered_holders[$item['type']]);
73
  }
74
 
75
  /**
81
  */
82
  protected static function is_custom_element(array $item)
83
  {
84
+ return isset($item['type']) && isset(\Wbcr_FactoryForms446_Manager::$registered_custom_elements[$item['type']]);
85
  }
86
 
87
  public function make_control_disabled()
includes/classes/class.configurate-advanced.php CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  exit;
12
  }
13
 
14
- class WCL_ConfigAdvanced extends Wbcr_FactoryClearfy240_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigAdvanced extends WBCR\Factory_Templates_101\Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-google-performance.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  exit;
13
  }
14
 
15
- class WCL_ConfigGooglePerformance extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigGooglePerformance extends WBCR\Factory_Templates_101\Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-performance.php CHANGED
@@ -12,7 +12,7 @@ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
- class WCL_ConfigPerformance extends Wbcr_FactoryClearfy240_Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
12
  exit;
13
  }
14
 
15
+ class WCL_ConfigPerformance extends WBCR\Factory_Templates_101\Configurate {
16
 
17
  /**
18
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-privacy.php CHANGED
@@ -13,7 +13,7 @@ if( !defined('ABSPATH') ) {
13
  exit;
14
  }
15
 
16
- class WCL_ConfigPrivacy extends Wbcr_FactoryClearfy240_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigPrivacy extends WBCR\Factory_Templates_101\Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-security.php CHANGED
@@ -11,7 +11,7 @@
11
  exit;
12
  }
13
 
14
- class WCL_ConfigSecurity extends Wbcr_FactoryClearfy240_Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
11
  exit;
12
  }
13
 
14
+ class WCL_ConfigSecurity extends WBCR\Factory_Templates_101\Configurate {
15
 
16
  /**
17
  * @param WCL_Plugin $plugin
includes/classes/class.configurate-seo.php CHANGED
@@ -13,7 +13,7 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  exit;
14
  }
15
 
16
- class WCL_ConfigSeo extends Wbcr_FactoryClearfy240_Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
13
  exit;
14
  }
15
 
16
+ class WCL_ConfigSeo extends WBCR\Factory_Templates_101\Configurate {
17
 
18
  /**
19
  * @param WCL_Plugin $plugin
includes/helpers.php CHANGED
@@ -12,11 +12,11 @@ if( !defined('ABSPATH') ) {
12
  exit;
13
  }
14
 
15
- class WCL_Helper {
16
 
17
  public static function array_merge_insert(array $arr, array $inserted, $position = 'bottom', $key = null)
18
  {
19
- return WbcrFactoryClearfy240_Helpers::arrayMergeInsert($arr, $inserted, $position, $key);
20
  }
21
 
22
  /**
@@ -25,7 +25,7 @@ class WCL_Helper {
25
  public static function flush_cache()
26
  {
27
  // Flush cache for all cache plugins
28
- WbcrFactoryClearfy240_Helpers::flushPageCache();
29
  }
30
 
31
  /**
@@ -74,7 +74,7 @@ class WCL_Helper {
74
  $rest_url = wp_parse_url(site_url($prefix));
75
  $current_url = wp_parse_url(add_query_arg([]));
76
 
77
- return strpos($current_url['path'], $rest_url['path'], 0) === 0;
78
  }
79
 
80
  /**
12
  exit;
13
  }
14
 
15
+ class WCL_Helper extends WBCR\Factory_Templates_101\Helpers {
16
 
17
  public static function array_merge_insert(array $arr, array $inserted, $position = 'bottom', $key = null)
18
  {
19
+ return self::arrayMergeInsert($arr, $inserted, $position, $key);
20
  }
21
 
22
  /**
25
  public static function flush_cache()
26
  {
27
  // Flush cache for all cache plugins
28
+ self::flushPageCache();
29
  }
30
 
31
  /**
74
  $rest_url = wp_parse_url(site_url($prefix));
75
  $current_url = wp_parse_url(add_query_arg([]));
76
 
77
+ return (!empty($current_url['path']) && !empty($rest_url['path'])) && strpos($current_url['path'], $rest_url['path'], 0) === 0;
78
  }
79
 
80
  /**
libs/factory/adverts/boot.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- use WBCR\Factory_Adverts_126\Base;
4
 
5
  /**
6
  * Factory Adverts
@@ -20,31 +20,31 @@ if( !defined('ABSPATH') ) {
20
  exit;
21
  }
22
 
23
- if( defined('FACTORY_ADVERTS_126_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
- define('FACTORY_ADVERTS_126_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
- define('FACTORY_ADVERTS_126_VERSION', '1.2.6');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
- load_plugin_textdomain('wbcr_factory_adverts_126', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
- define('FACTORY_ADVERTS_126_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
- define('FACTORY_ADVERTS_126_URL', plugins_url(null, __FILE__));
41
 
42
- require_once(FACTORY_ADVERTS_126_DIR . '/includes/class-rest-request.php');
43
- require_once(FACTORY_ADVERTS_126_DIR . '/includes/class-base.php');
44
 
45
  /**
46
- * @param Wbcr_Factory448_Plugin $plugin
47
  */
48
- add_action('wbcr_factory_adverts_126_plugin_created', function ($plugin) {
49
- $plugin->set_adverts_manager("WBCR\Factory_Adverts_126\Base");
50
  });
1
  <?php
2
 
3
+ use WBCR\Factory_Adverts_127\Base;
4
 
5
  /**
6
  * Factory Adverts
20
  exit;
21
  }
22
 
23
+ if( defined('FACTORY_ADVERTS_127_LOADED') || (defined('FACTORY_ADVERTS_BLOCK') && FACTORY_ADVERTS_BLOCK) ) {
24
  return;
25
  }
26
 
27
  # Устанавливаем константу, что модуль уже загружен
28
+ define('FACTORY_ADVERTS_127_LOADED', true);
29
 
30
  # Устанавливаем версию модуля
31
+ define('FACTORY_ADVERTS_127_VERSION', '1.2.7');
32
 
33
  # Регистрируем тектовый домен, для интернализации интерфейса модуля
34
+ load_plugin_textdomain('wbcr_factory_adverts_127', false, dirname(plugin_basename(__FILE__)) . '/langs');
35
 
36
  # Устанавливаем директорию модуля
37
+ define('FACTORY_ADVERTS_127_DIR', dirname(__FILE__));
38
 
39
  # Устанавливаем url модуля
40
+ define('FACTORY_ADVERTS_127_URL', plugins_url(null, __FILE__));
41
 
42
+ require_once(FACTORY_ADVERTS_127_DIR . '/includes/class-rest-request.php');
43
+ require_once(FACTORY_ADVERTS_127_DIR . '/includes/class-base.php');
44
 
45
  /**
46
+ * @param Wbcr_Factory449_Plugin $plugin
47
  */
48
+ add_action('wbcr_factory_adverts_127_plugin_created', function ($plugin) {
49
+ $plugin->set_adverts_manager("WBCR\Factory_Adverts_127\Base");
50
  });
libs/factory/adverts/includes/class-base.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_126;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -28,7 +28,7 @@ class Base {
28
  *
29
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
30
  * @since 1.0.1
31
- * @var \Wbcr_Factory448_Plugin
32
  */
33
  private $plugin;
34
 
@@ -53,7 +53,7 @@ class Base {
53
  *
54
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
55
  * @since 1.0.1
56
- * @var \WBCR\Factory_Adverts_126\Creative_Motion_API
57
  */
58
  private $api;
59
 
@@ -82,9 +82,9 @@ class Base {
82
  *
83
  * @since 1.0.0 Added
84
  *
85
- * @param \Wbcr_Factory448_Plugin $plugin
86
  */
87
- public function __construct( \Wbcr_Factory448_Plugin $plugin, $settings ) {
88
  $this->plugin = $plugin;
89
 
90
  $this->settings = wp_parse_args( $settings, [
@@ -257,7 +257,7 @@ class Base {
257
  $content = $this->get_debug_message( 'dashboard_widget' );
258
  }
259
 
260
- require_once FACTORY_ADVERTS_126_DIR . '/includes/class-dashboard-widget.php';
261
  new Dashboard_Widget( $this->plugin, $content );
262
  }
263
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_127;
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_Factory449_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_127\Creative_Motion_API
57
  */
58
  private $api;
59
 
82
  *
83
  * @since 1.0.0 Added
84
  *
85
+ * @param \Wbcr_Factory449_Plugin $plugin
86
  */
87
+ public function __construct( \Wbcr_Factory449_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_127_DIR . '/includes/class-dashboard-widget.php';
261
  new Dashboard_Widget( $this->plugin, $content );
262
  }
263
  }
libs/factory/adverts/includes/class-dashboard-widget.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_126;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -35,7 +35,7 @@ class Dashboard_Widget {
35
  *
36
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
37
  * @since 1.0.1
38
- * @var \Wbcr_Factory448_Plugin
39
  */
40
  private $plugin;
41
 
@@ -46,10 +46,10 @@ class Dashboard_Widget {
46
  *
47
  * @since 1.0.0 Added
48
  *
49
- * @param \Wbcr_Factory448_Plugin $plugin
50
  * @param string $content
51
  */
52
- public function __construct( \Wbcr_Factory448_Plugin $plugin, $content ) {
53
 
54
  $this->plugin = $plugin;
55
  $this->content = $content;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_127;
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_Factory449_Plugin
39
  */
40
  private $plugin;
41
 
46
  *
47
  * @since 1.0.0 Added
48
  *
49
+ * @param \Wbcr_Factory449_Plugin $plugin
50
  * @param string $content
51
  */
52
+ public function __construct( \Wbcr_Factory449_Plugin $plugin, $content ) {
53
 
54
  $this->plugin = $plugin;
55
  $this->content = $content;
libs/factory/adverts/includes/class-rest-request.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Adverts_126;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -65,7 +65,7 @@ class Creative_Motion_API {
65
  *
66
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
67
  * @since 1.0.1
68
- * @var \Wbcr_Factory448_Plugin
69
  */
70
  private $plugin;
71
 
@@ -75,11 +75,11 @@ class Creative_Motion_API {
75
  *
76
  * Variable initialization.
77
  *
78
- * @param \Wbcr_Factory448_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
- public function __construct(\Wbcr_Factory448_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_Adverts_127;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
65
  *
66
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
67
  * @since 1.0.1
68
+ * @var \Wbcr_Factory449_Plugin
69
  */
70
  private $plugin;
71
 
75
  *
76
  * Variable initialization.
77
  *
78
+ * @param \Wbcr_Factory449_Plugin $plugin_name
79
  * @since 1.0.0 Added
80
  *
81
  */
82
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
83
  {
84
  $this->plugin = $plugin;
85
  }
libs/factory/adverts/langs/{wbcr_factory_adverts_126-ru_RU.mo → wbcr_factory_adverts_127-ru_RU.mo} RENAMED
File without changes
libs/factory/adverts/langs/{wbcr_factory_adverts_126-ru_RU.po → wbcr_factory_adverts_127-ru_RU.po} RENAMED
File without changes
libs/factory/bootstrap/assets/css-min/bootstrap.accordion.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-448 .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-448 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-448 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-448 .factory-accordion-item{display:none}.factory-bootstrap-448 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-448 .factory-accordion>h3.active:hover{cursor:default}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .factory-accordion>h3{border-bottom:1px solid #DDD;cursor:pointer;padding:8px 15px;margin:0}.factory-bootstrap-449 .factory-accordion>div{display:none;margin:0;border-bottom:1px solid #DDD}.factory-bootstrap-449 .factory-accordion-item{display:none}.factory-bootstrap-449 .inner-factory-accordion-item{padding:10px 0}.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#e1a948;border-color:#d39323}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#d1cdc7!important;background:#db9825!important;border-color:#bd831f!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#c7a589;border-color:#b78a66}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#d1cbc7!important;background:#ba906d!important;border-color:#ae7d55!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 article,.factory-bootstrap-448 aside,.factory-bootstrap-448 details,.factory-bootstrap-448 figcaption,.factory-bootstrap-448 figure,.factory-bootstrap-448 footer,.factory-bootstrap-448 header,.factory-bootstrap-448 hgroup,.factory-bootstrap-448 main,.factory-bootstrap-448 nav,.factory-bootstrap-448 section,.factory-bootstrap-448 summary{display:block}.factory-bootstrap-448 audio,.factory-bootstrap-448 canvas,.factory-bootstrap-448 video{display:inline-block}.factory-bootstrap-448 audio:not([controls]){display:none;height:0}.factory-bootstrap-448 [hidden],.factory-bootstrap-448 template{display:none}.factory-bootstrap-448 body{margin:0}.factory-bootstrap-448 a{background:0 0}.factory-bootstrap-448 a:focus{outline:thin dotted}.factory-bootstrap-448 a:active,.factory-bootstrap-448 a:hover{outline:0}.factory-bootstrap-448 h1{margin:.67em 0}.factory-bootstrap-448 b,.factory-bootstrap-448 strong{font-weight:700}.factory-bootstrap-448 dfn{font-style:italic}.factory-bootstrap-448 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-448 mark{color:#000;background:#ff0}.factory-bootstrap-448 code,.factory-bootstrap-448 kbd,.factory-bootstrap-448 pre,.factory-bootstrap-448 samp{font-size:1em}.factory-bootstrap-448 pre{white-space:pre-wrap}.factory-bootstrap-448 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-448 sub,.factory-bootstrap-448 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-448 sup{top:-.5em}.factory-bootstrap-448 sub{bottom:-.25em}.factory-bootstrap-448 img{border:0}.factory-bootstrap-448 svg:not(:root){overflow:hidden}.factory-bootstrap-448 figure{margin:0}.factory-bootstrap-448 button,.factory-bootstrap-448 input,.factory-bootstrap-448 select,.factory-bootstrap-448 textarea{margin:0}.factory-bootstrap-448 button,.factory-bootstrap-448 select{text-transform:none}.factory-bootstrap-448 select{padding-right:4px!important}.factory-bootstrap-448 button,.factory-bootstrap-448 input[type=reset],.factory-bootstrap-448 input[type=submit],html .factory-bootstrap-448 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-448 button[disabled],html .factory-bootstrap-448 input[disabled]{cursor:default}.factory-bootstrap-448 input[type=checkbox],.factory-bootstrap-448 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-448 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-448 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-448 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-448 button::-moz-focus-inner,.factory-bootstrap-448 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-448 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-448 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-448 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-448 a,.factory-bootstrap-448 a:visited{text-decoration:underline}.factory-bootstrap-448 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-448 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-448 a[href^="javascript:"]:after,.factory-bootstrap-448 a[href^="#"]:after{content:""}.factory-bootstrap-448 blockquote,.factory-bootstrap-448 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-448 thead{display:table-header-group}.factory-bootstrap-448 img,.factory-bootstrap-448 tr{page-break-inside:avoid}.factory-bootstrap-448 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-448 h2,.factory-bootstrap-448 h3,.factory-bootstrap-448 p{orphans:3;widows:3}.factory-bootstrap-448 h2,.factory-bootstrap-448 h3{page-break-after:avoid}.factory-bootstrap-448 select{background:#fff!important}.factory-bootstrap-448 .navbar{display:none}.factory-bootstrap-448 .table td,.factory-bootstrap-448 .table th{background-color:#fff!important}.factory-bootstrap-448 .btn>.caret,.factory-bootstrap-448 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-448 .label{border:1px solid #000}.factory-bootstrap-448 .table{border-collapse:collapse!important}.factory-bootstrap-448 .table-bordered td,.factory-bootstrap-448 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-448 *,.factory-bootstrap-448 :after,.factory-bootstrap-448 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-448{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-448 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-448 button,.factory-bootstrap-448 input,.factory-bootstrap-448 select,.factory-bootstrap-448 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-448 img{vertical-align:middle}.factory-bootstrap-448 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-448 .img-rounded{border-radius:6px}.factory-bootstrap-448 .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-448 .img-circle{border-radius:50%}.factory-bootstrap-448 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-448 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-448 .h1,.factory-bootstrap-448 .h2,.factory-bootstrap-448 .h3,.factory-bootstrap-448 .h4,.factory-bootstrap-448 .h5,.factory-bootstrap-448 .h6,.factory-bootstrap-448 h1,.factory-bootstrap-448 h2,.factory-bootstrap-448 h3,.factory-bootstrap-448 h4,.factory-bootstrap-448 h5,.factory-bootstrap-448 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-448 .h1 .small,.factory-bootstrap-448 .h1 small,.factory-bootstrap-448 .h2 .small,.factory-bootstrap-448 .h2 small,.factory-bootstrap-448 .h3 .small,.factory-bootstrap-448 .h3 small,.factory-bootstrap-448 .h4 .small,.factory-bootstrap-448 .h4 small,.factory-bootstrap-448 .h5 .small,.factory-bootstrap-448 .h5 small,.factory-bootstrap-448 .h6 .small,.factory-bootstrap-448 .h6 small,.factory-bootstrap-448 h1 .small,.factory-bootstrap-448 h1 small,.factory-bootstrap-448 h2 .small,.factory-bootstrap-448 h2 small,.factory-bootstrap-448 h3 .small,.factory-bootstrap-448 h3 small,.factory-bootstrap-448 h4 .small,.factory-bootstrap-448 h4 small,.factory-bootstrap-448 h5 .small,.factory-bootstrap-448 h5 small,.factory-bootstrap-448 h6 .small,.factory-bootstrap-448 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-448 h1,.factory-bootstrap-448 h2,.factory-bootstrap-448 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-448 h1 .small,.factory-bootstrap-448 h1 small,.factory-bootstrap-448 h2 .small,.factory-bootstrap-448 h2 small,.factory-bootstrap-448 h3 .small,.factory-bootstrap-448 h3 small{font-size:65%}.factory-bootstrap-448 h4,.factory-bootstrap-448 h5,.factory-bootstrap-448 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-448 h4 .small,.factory-bootstrap-448 h4 small,.factory-bootstrap-448 h5 .small,.factory-bootstrap-448 h5 small,.factory-bootstrap-448 h6 .small,.factory-bootstrap-448 h6 small{font-size:75%}.factory-bootstrap-448 .h1,.factory-bootstrap-448 h1{font-size:36px}.factory-bootstrap-448 .h2,.factory-bootstrap-448 h2{font-size:30px}.factory-bootstrap-448 .h3,.factory-bootstrap-448 h3{font-size:24px}.factory-bootstrap-448 .h4,.factory-bootstrap-448 h4{font-size:18px}.factory-bootstrap-448 .h5,.factory-bootstrap-448 h5{font-size:14px}.factory-bootstrap-448 .h6,.factory-bootstrap-448 h6{font-size:12px}.factory-bootstrap-448 p{margin:0 0 10px}.factory-bootstrap-448 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-448 .small,.factory-bootstrap-448 small{font-size:85%}.factory-bootstrap-448 cite{font-style:normal}.factory-bootstrap-448 .text-muted{color:#999}.factory-bootstrap-448 .text-primary{color:#428bca}.factory-bootstrap-448 .text-primary:hover{color:#3071a9}.factory-bootstrap-448 .text-warning{color:#8a6d3b}.factory-bootstrap-448 .text-warning:hover{color:#66512c}.factory-bootstrap-448 .text-danger{color:#a94442}.factory-bootstrap-448 .text-danger:hover{color:#843534}.factory-bootstrap-448 .text-success{color:#3c763d}.factory-bootstrap-448 .text-success:hover{color:#2b542c}.factory-bootstrap-448 .text-info{color:#31708f}.factory-bootstrap-448 .text-info:hover{color:#245269}.factory-bootstrap-448 .text-left{text-align:left}.factory-bootstrap-448 .text-right{text-align:right}.factory-bootstrap-448 .text-center{text-align:center}.factory-bootstrap-448 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-448 ol,.factory-bootstrap-448 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-448 ol ol,.factory-bootstrap-448 ol ul,.factory-bootstrap-448 ul ol,.factory-bootstrap-448 ul ul{margin-bottom:0}.factory-bootstrap-448 .list-inline,.factory-bootstrap-448 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-448 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-448 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-448 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-448 dd,.factory-bootstrap-448 dt{line-height:1.428571429}.factory-bootstrap-448 dt{font-weight:700}.factory-bootstrap-448 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-448 abbr[data-original-title],.factory-bootstrap-448 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-448 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-448 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-448 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-448 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-448 blockquote .small,.factory-bootstrap-448 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-448 blockquote .small:before,.factory-bootstrap-448 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-448 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-448 blockquote.pull-right .small,.factory-bootstrap-448 blockquote.pull-right p,.factory-bootstrap-448 blockquote.pull-right small{text-align:right}.factory-bootstrap-448 blockquote.pull-right .small:before,.factory-bootstrap-448 blockquote.pull-right small:before{content:''}.factory-bootstrap-448 blockquote.pull-right .small:after,.factory-bootstrap-448 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-448 blockquote:after,.factory-bootstrap-448 blockquote:before{content:""}.factory-bootstrap-448 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-448 code,.factory-bootstrap-448 kbd,.factory-bootstrap-448 pre,.factory-bootstrap-448 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-448 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-448 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-448 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-448 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-448 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-448 .container:after,.factory-bootstrap-448 .container:before{display:table;content:" "}.factory-bootstrap-448 .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-448 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-448 .row:after,.factory-bootstrap-448 .row:before{display:table;content:" "}.factory-bootstrap-448 .row:after{clear:both}.factory-bootstrap-448 .col-lg-1,.factory-bootstrap-448 .col-lg-10,.factory-bootstrap-448 .col-lg-11,.factory-bootstrap-448 .col-lg-12,.factory-bootstrap-448 .col-lg-2,.factory-bootstrap-448 .col-lg-3,.factory-bootstrap-448 .col-lg-4,.factory-bootstrap-448 .col-lg-5,.factory-bootstrap-448 .col-lg-6,.factory-bootstrap-448 .col-lg-7,.factory-bootstrap-448 .col-lg-8,.factory-bootstrap-448 .col-lg-9,.factory-bootstrap-448 .col-md-1,.factory-bootstrap-448 .col-md-10,.factory-bootstrap-448 .col-md-11,.factory-bootstrap-448 .col-md-12,.factory-bootstrap-448 .col-md-2,.factory-bootstrap-448 .col-md-3,.factory-bootstrap-448 .col-md-4,.factory-bootstrap-448 .col-md-5,.factory-bootstrap-448 .col-md-6,.factory-bootstrap-448 .col-md-7,.factory-bootstrap-448 .col-md-8,.factory-bootstrap-448 .col-md-9,.factory-bootstrap-448 .col-sm-1,.factory-bootstrap-448 .col-sm-10,.factory-bootstrap-448 .col-sm-11,.factory-bootstrap-448 .col-sm-12,.factory-bootstrap-448 .col-sm-2,.factory-bootstrap-448 .col-sm-3,.factory-bootstrap-448 .col-sm-4,.factory-bootstrap-448 .col-sm-5,.factory-bootstrap-448 .col-sm-6,.factory-bootstrap-448 .col-sm-7,.factory-bootstrap-448 .col-sm-8,.factory-bootstrap-448 .col-sm-9,.factory-bootstrap-448 .col-xs-1,.factory-bootstrap-448 .col-xs-10,.factory-bootstrap-448 .col-xs-11,.factory-bootstrap-448 .col-xs-12,.factory-bootstrap-448 .col-xs-2,.factory-bootstrap-448 .col-xs-3,.factory-bootstrap-448 .col-xs-4,.factory-bootstrap-448 .col-xs-5,.factory-bootstrap-448 .col-xs-6,.factory-bootstrap-448 .col-xs-7,.factory-bootstrap-448 .col-xs-8,.factory-bootstrap-448 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-448 .col-xs-1,.factory-bootstrap-448 .col-xs-10,.factory-bootstrap-448 .col-xs-11,.factory-bootstrap-448 .col-xs-12,.factory-bootstrap-448 .col-xs-2,.factory-bootstrap-448 .col-xs-3,.factory-bootstrap-448 .col-xs-4,.factory-bootstrap-448 .col-xs-5,.factory-bootstrap-448 .col-xs-6,.factory-bootstrap-448 .col-xs-7,.factory-bootstrap-448 .col-xs-8,.factory-bootstrap-448 .col-xs-9{float:left}.factory-bootstrap-448 .col-xs-12{width:100%}.factory-bootstrap-448 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-448 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-448 .col-xs-9{width:75%}.factory-bootstrap-448 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-448 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-448 .col-xs-6{width:50%}.factory-bootstrap-448 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-448 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-448 .col-xs-3{width:25%}.factory-bootstrap-448 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-448 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-448 .col-xs-pull-12{right:100%}.factory-bootstrap-448 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-448 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-448 .col-xs-pull-9{right:75%}.factory-bootstrap-448 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-448 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-448 .col-xs-pull-6{right:50%}.factory-bootstrap-448 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-448 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-448 .col-xs-pull-3{right:25%}.factory-bootstrap-448 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-448 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-448 .col-xs-pull-0{right:0}.factory-bootstrap-448 .col-xs-push-12{left:100%}.factory-bootstrap-448 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-448 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-448 .col-xs-push-9{left:75%}.factory-bootstrap-448 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-448 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-448 .col-xs-push-6{left:50%}.factory-bootstrap-448 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-448 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-448 .col-xs-push-3{left:25%}.factory-bootstrap-448 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-448 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-448 .col-xs-push-0{left:0}.factory-bootstrap-448 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-448 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-448 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-448 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-448 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-448 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-448 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-448 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-448 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-448 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-448 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-448 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-448 .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-448 table{max-width:100%;background-color:transparent}.factory-bootstrap-448 th{text-align:left}.factory-bootstrap-448 .table{width:100%;margin-bottom:20px}.factory-bootstrap-448 .table>tbody>tr>td,.factory-bootstrap-448 .table>tbody>tr>th,.factory-bootstrap-448 .table>tfoot>tr>td,.factory-bootstrap-448 .table>tfoot>tr>th,.factory-bootstrap-448 .table>thead>tr>td,.factory-bootstrap-448 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-448 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-448 .table>caption+thead>tr:first-child>td,.factory-bootstrap-448 .table>caption+thead>tr:first-child>th,.factory-bootstrap-448 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-448 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-448 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-448 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-448 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-448 .table .table{background-color:#fff}.factory-bootstrap-448 .table-condensed>tbody>tr>td,.factory-bootstrap-448 .table-condensed>tbody>tr>th,.factory-bootstrap-448 .table-condensed>tfoot>tr>td,.factory-bootstrap-448 .table-condensed>tfoot>tr>th,.factory-bootstrap-448 .table-condensed>thead>tr>td,.factory-bootstrap-448 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-448 .table-bordered,.factory-bootstrap-448 .table-bordered>tbody>tr>td,.factory-bootstrap-448 .table-bordered>tbody>tr>th,.factory-bootstrap-448 .table-bordered>tfoot>tr>td,.factory-bootstrap-448 .table-bordered>tfoot>tr>th,.factory-bootstrap-448 .table-bordered>thead>tr>td,.factory-bootstrap-448 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-448 .table-bordered>thead>tr>td,.factory-bootstrap-448 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-448 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-448 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-448 .table-hover>tbody>tr:hover>td,.factory-bootstrap-448 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-448 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-448 table td[class*=col-],.factory-bootstrap-448 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-448 .table>tbody>.active>td,.factory-bootstrap-448 .table>tbody>.active>th,.factory-bootstrap-448 .table>tbody>tr>.active,.factory-bootstrap-448 .table>tfoot>.active>td,.factory-bootstrap-448 .table>tfoot>.active>th,.factory-bootstrap-448 .table>tfoot>tr>.active,.factory-bootstrap-448 .table>thead>.active>td,.factory-bootstrap-448 .table>thead>.active>th,.factory-bootstrap-448 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-448 .table-hover>tbody>.active:hover>td,.factory-bootstrap-448 .table-hover>tbody>.active:hover>th,.factory-bootstrap-448 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-448 .table>tbody>.success>td,.factory-bootstrap-448 .table>tbody>.success>th,.factory-bootstrap-448 .table>tbody>tr>.success,.factory-bootstrap-448 .table>tfoot>.success>td,.factory-bootstrap-448 .table>tfoot>.success>th,.factory-bootstrap-448 .table>tfoot>tr>.success,.factory-bootstrap-448 .table>thead>.success>td,.factory-bootstrap-448 .table>thead>.success>th,.factory-bootstrap-448 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-448 .table-hover>tbody>.success:hover>td,.factory-bootstrap-448 .table-hover>tbody>.success:hover>th,.factory-bootstrap-448 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-448 .table>tbody>.danger>td,.factory-bootstrap-448 .table>tbody>.danger>th,.factory-bootstrap-448 .table>tbody>tr>.danger,.factory-bootstrap-448 .table>tfoot>.danger>td,.factory-bootstrap-448 .table>tfoot>.danger>th,.factory-bootstrap-448 .table>tfoot>tr>.danger,.factory-bootstrap-448 .table>thead>.danger>td,.factory-bootstrap-448 .table>thead>.danger>th,.factory-bootstrap-448 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-448 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-448 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-448 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-448 .table>tbody>.warning>td,.factory-bootstrap-448 .table>tbody>.warning>th,.factory-bootstrap-448 .table>tbody>tr>.warning,.factory-bootstrap-448 .table>tfoot>.warning>td,.factory-bootstrap-448 .table>tfoot>.warning>th,.factory-bootstrap-448 .table>tfoot>tr>.warning,.factory-bootstrap-448 .table>thead>.warning>td,.factory-bootstrap-448 .table>thead>.warning>th,.factory-bootstrap-448 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-448 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-448 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-448 .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-448 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-448 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-448 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-448 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-448 input[type=checkbox],.factory-bootstrap-448 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-448 input[type=file]{display:block}.factory-bootstrap-448 select[multiple],.factory-bootstrap-448 select[size]{height:auto}.factory-bootstrap-448 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-448 input[type=checkbox]:focus,.factory-bootstrap-448 input[type=file]:focus,.factory-bootstrap-448 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-448 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-448 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-448 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-448 .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-448 .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-448 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-448 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-448 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-448 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-448 .form-control[disabled],.factory-bootstrap-448 .form-control[readonly],.factory-bootstrap-448 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-448 textarea.form-control{height:auto}.factory-bootstrap-448 .form-group{margin-bottom:15px}.factory-bootstrap-448 .checkbox,.factory-bootstrap-448 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-448 .checkbox label,.factory-bootstrap-448 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-448 .checkbox input[type=checkbox],.factory-bootstrap-448 .checkbox-inline input[type=checkbox],.factory-bootstrap-448 .radio input[type=radio],.factory-bootstrap-448 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-448 .checkbox+.checkbox,.factory-bootstrap-448 .radio+.radio{margin-top:-5px}.factory-bootstrap-448 .checkbox-inline,.factory-bootstrap-448 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-448 .checkbox-inline+.checkbox-inline,.factory-bootstrap-448 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-448 .checkbox-inline[disabled],.factory-bootstrap-448 .checkbox[disabled],.factory-bootstrap-448 .radio-inline[disabled],.factory-bootstrap-448 .radio[disabled],.factory-bootstrap-448 fieldset[disabled] .checkbox,.factory-bootstrap-448 fieldset[disabled] .checkbox-inline,.factory-bootstrap-448 fieldset[disabled] .radio,.factory-bootstrap-448 fieldset[disabled] .radio-inline,.factory-bootstrap-448 fieldset[disabled] input[type=checkbox],.factory-bootstrap-448 fieldset[disabled] input[type=radio],.factory-bootstrap-448 input[type=checkbox][disabled],.factory-bootstrap-448 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-448 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-448 textarea.input-sm{height:auto}.factory-bootstrap-448 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-448 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-448 textarea.input-lg{height:auto}.factory-bootstrap-448 .has-warning .checkbox,.factory-bootstrap-448 .has-warning .checkbox-inline,.factory-bootstrap-448 .has-warning .control-label,.factory-bootstrap-448 .has-warning .help-block,.factory-bootstrap-448 .has-warning .radio,.factory-bootstrap-448 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-448 .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-448 .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-448 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-448 .has-error .checkbox,.factory-bootstrap-448 .has-error .checkbox-inline,.factory-bootstrap-448 .has-error .control-label,.factory-bootstrap-448 .has-error .help-block,.factory-bootstrap-448 .has-error .radio,.factory-bootstrap-448 .has-error .radio-inline{color:#a94442}.factory-bootstrap-448 .controls{display:block}.factory-bootstrap-448 .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-448 .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-448 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-448 .has-success .checkbox,.factory-bootstrap-448 .has-success .checkbox-inline,.factory-bootstrap-448 .has-success .control-label,.factory-bootstrap-448 .has-success .help-block,.factory-bootstrap-448 .has-success .radio,.factory-bootstrap-448 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-448 .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-448 .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-448 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-448 .form-control-static{margin-bottom:0}.factory-bootstrap-448 .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-448 .form-horizontal .checkbox,.factory-bootstrap-448 .form-horizontal .checkbox-inline,.factory-bootstrap-448 .form-horizontal .control-label,.factory-bootstrap-448 .form-horizontal .radio,.factory-bootstrap-448 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-448 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-448 .form-horizontal .checkbox,.factory-bootstrap-448 .form-horizontal .radio{min-height:27px}.factory-bootstrap-448 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-448 .form-horizontal .form-group:after,.factory-bootstrap-448 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-448 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-448 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-448 .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-448 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-448 .btn{text-decoration:none}.factory-bootstrap-448 .btn:focus,.factory-bootstrap-448 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-448 .btn.disabled,.factory-bootstrap-448 .btn[disabled],.factory-bootstrap-448 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-448 .btn-default.active,.factory-bootstrap-448 .btn-default:active,.factory-bootstrap-448 .btn-default:focus,.factory-bootstrap-448 .btn-default:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-448 .btn-default.active,.factory-bootstrap-448 .btn-default:active,.factory-bootstrap-448 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-448 .btn-default.disabled,.factory-bootstrap-448 .btn-default.disabled.active,.factory-bootstrap-448 .btn-default.disabled:active,.factory-bootstrap-448 .btn-default.disabled:focus,.factory-bootstrap-448 .btn-default.disabled:hover,.factory-bootstrap-448 .btn-default[disabled],.factory-bootstrap-448 .btn-default[disabled].active,.factory-bootstrap-448 .btn-default[disabled]:active,.factory-bootstrap-448 .btn-default[disabled]:focus,.factory-bootstrap-448 .btn-default[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-default,.factory-bootstrap-448 fieldset[disabled] .btn-default.active,.factory-bootstrap-448 fieldset[disabled] .btn-default:active,.factory-bootstrap-448 fieldset[disabled] .btn-default:focus,.factory-bootstrap-448 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-448 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-448 .btn-primary.active,.factory-bootstrap-448 .btn-primary:active,.factory-bootstrap-448 .btn-primary:focus,.factory-bootstrap-448 .btn-primary:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-448 .btn-primary.active,.factory-bootstrap-448 .btn-primary:active,.factory-bootstrap-448 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-448 .btn-primary.disabled,.factory-bootstrap-448 .btn-primary.disabled.active,.factory-bootstrap-448 .btn-primary.disabled:active,.factory-bootstrap-448 .btn-primary.disabled:focus,.factory-bootstrap-448 .btn-primary.disabled:hover,.factory-bootstrap-448 .btn-primary[disabled],.factory-bootstrap-448 .btn-primary[disabled].active,.factory-bootstrap-448 .btn-primary[disabled]:active,.factory-bootstrap-448 .btn-primary[disabled]:focus,.factory-bootstrap-448 .btn-primary[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-primary,.factory-bootstrap-448 fieldset[disabled] .btn-primary.active,.factory-bootstrap-448 fieldset[disabled] .btn-primary:active,.factory-bootstrap-448 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-448 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-448 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-448 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-448 .btn-warning.active,.factory-bootstrap-448 .btn-warning:active,.factory-bootstrap-448 .btn-warning:focus,.factory-bootstrap-448 .btn-warning:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-448 .btn-warning.active,.factory-bootstrap-448 .btn-warning:active,.factory-bootstrap-448 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-448 .btn-warning.disabled,.factory-bootstrap-448 .btn-warning.disabled.active,.factory-bootstrap-448 .btn-warning.disabled:active,.factory-bootstrap-448 .btn-warning.disabled:focus,.factory-bootstrap-448 .btn-warning.disabled:hover,.factory-bootstrap-448 .btn-warning[disabled],.factory-bootstrap-448 .btn-warning[disabled].active,.factory-bootstrap-448 .btn-warning[disabled]:active,.factory-bootstrap-448 .btn-warning[disabled]:focus,.factory-bootstrap-448 .btn-warning[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-warning,.factory-bootstrap-448 fieldset[disabled] .btn-warning.active,.factory-bootstrap-448 fieldset[disabled] .btn-warning:active,.factory-bootstrap-448 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-448 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-448 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-448 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-448 .btn-success.active,.factory-bootstrap-448 .btn-success:active,.factory-bootstrap-448 .btn-success:focus,.factory-bootstrap-448 .btn-success:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-448 .btn-success.active,.factory-bootstrap-448 .btn-success:active,.factory-bootstrap-448 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-448 .btn-success.disabled,.factory-bootstrap-448 .btn-success.disabled.active,.factory-bootstrap-448 .btn-success.disabled:active,.factory-bootstrap-448 .btn-success.disabled:focus,.factory-bootstrap-448 .btn-success.disabled:hover,.factory-bootstrap-448 .btn-success[disabled],.factory-bootstrap-448 .btn-success[disabled].active,.factory-bootstrap-448 .btn-success[disabled]:active,.factory-bootstrap-448 .btn-success[disabled]:focus,.factory-bootstrap-448 .btn-success[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-success,.factory-bootstrap-448 fieldset[disabled] .btn-success.active,.factory-bootstrap-448 fieldset[disabled] .btn-success:active,.factory-bootstrap-448 fieldset[disabled] .btn-success:focus,.factory-bootstrap-448 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-448 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-448 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-448 .btn-info.active,.factory-bootstrap-448 .btn-info:active,.factory-bootstrap-448 .btn-info:focus,.factory-bootstrap-448 .btn-info:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-448 .btn-info.active,.factory-bootstrap-448 .btn-info:active,.factory-bootstrap-448 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-448 .btn-info.disabled,.factory-bootstrap-448 .btn-info.disabled.active,.factory-bootstrap-448 .btn-info.disabled:active,.factory-bootstrap-448 .btn-info.disabled:focus,.factory-bootstrap-448 .btn-info.disabled:hover,.factory-bootstrap-448 .btn-info[disabled],.factory-bootstrap-448 .btn-info[disabled].active,.factory-bootstrap-448 .btn-info[disabled]:active,.factory-bootstrap-448 .btn-info[disabled]:focus,.factory-bootstrap-448 .btn-info[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-info,.factory-bootstrap-448 fieldset[disabled] .btn-info.active,.factory-bootstrap-448 fieldset[disabled] .btn-info:active,.factory-bootstrap-448 fieldset[disabled] .btn-info:focus,.factory-bootstrap-448 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-448 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-448 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-448 .btn-link,.factory-bootstrap-448 .btn-link:active,.factory-bootstrap-448 .btn-link[disabled],.factory-bootstrap-448 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-448 .btn-link,.factory-bootstrap-448 .btn-link:active,.factory-bootstrap-448 .btn-link:focus,.factory-bootstrap-448 .btn-link:hover{border-color:transparent}.factory-bootstrap-448 .btn-link:focus,.factory-bootstrap-448 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-448 .btn-link[disabled]:focus,.factory-bootstrap-448 .btn-link[disabled]:hover,.factory-bootstrap-448 fieldset[disabled] .btn-link:focus,.factory-bootstrap-448 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-448 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-448 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-448 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-448 input[type=button].btn-block,.factory-bootstrap-448 input[type=reset].btn-block,.factory-bootstrap-448 input[type=submit].btn-block{width:100%}.factory-bootstrap-448 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-448 .fade.in{opacity:1}.factory-bootstrap-448 .collapse{display:none}.factory-bootstrap-448 .collapse.in{display:block}.factory-bootstrap-448 .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-448 .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-448 .glyphicon:empty{width:1em}.factory-bootstrap-448 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-448 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-448 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-448 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-448 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-448 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-448 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-448 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-448 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-448 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-448 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-448 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-448 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-448 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-448 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-448 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-448 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-448 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-448 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-448 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-448 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-448 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-448 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-448 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-448 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-448 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-448 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-448 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-448 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-448 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-448 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-448 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-448 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-448 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-448 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-448 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-448 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-448 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-448 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-448 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-448 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-448 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-448 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-448 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-448 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-448 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-448 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-448 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-448 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-448 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-448 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-448 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-448 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-448 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-448 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-448 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-448 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-448 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-448 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-448 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-448 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-448 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-448 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-448 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-448 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-448 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-448 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-448 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-448 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-448 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-448 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-448 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-448 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-448 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-448 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-448 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-448 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-448 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-448 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-448 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-448 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-448 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-448 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-448 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-448 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-448 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-448 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-448 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-448 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-448 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-448 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-448 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-448 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-448 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-448 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-448 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-448 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-448 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-448 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-448 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-448 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-448 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-448 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-448 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-448 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-448 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-448 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-448 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-448 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-448 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-448 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-448 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-448 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-448 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-448 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-448 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-448 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-448 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-448 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-448 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-448 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-448 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-448 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-448 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-448 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-448 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-448 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-448 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-448 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-448 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-448 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-448 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-448 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-448 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-448 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-448 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-448 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-448 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-448 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-448 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-448 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-448 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-448 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-448 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-448 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-448 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-448 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-448 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-448 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-448 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-448 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-448 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-448 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-448 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-448 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-448 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-448 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-448 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-448 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-448 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-448 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-448 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-448 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-448 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-448 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-448 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-448 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-448 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-448 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-448 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-448 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-448 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-448 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-448 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-448 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-448 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-448 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-448 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-448 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-448 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-448 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-448 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-448 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-448 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-448 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-448 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-448 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-448 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-448 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-448 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-448 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-448 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-448 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-448 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-448 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-448 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-448 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-448 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-448 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-448 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-448 .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-448 .dropdown{position:relative}.factory-bootstrap-448 .dropdown-toggle:focus{outline:0}.factory-bootstrap-448 .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-448 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-448 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-448 .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-448 .dropdown-menu>li>a:focus,.factory-bootstrap-448 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-448 .dropdown-menu>.active>a,.factory-bootstrap-448 .dropdown-menu>.active>a:focus,.factory-bootstrap-448 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-448 .dropdown-menu>.disabled>a,.factory-bootstrap-448 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-448 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-448 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-448 .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-448 .open>.dropdown-menu{display:block}.factory-bootstrap-448 .open>a{outline:0}.factory-bootstrap-448 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-448 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-448 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-448 .dropup .caret,.factory-bootstrap-448 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-448 .dropup .dropdown-menu,.factory-bootstrap-448 .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-448 .btn-group,.factory-bootstrap-448 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-448 .btn-group-vertical>.btn,.factory-bootstrap-448 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-448 .btn-group-vertical>.btn.active,.factory-bootstrap-448 .btn-group-vertical>.btn:active,.factory-bootstrap-448 .btn-group-vertical>.btn:focus,.factory-bootstrap-448 .btn-group-vertical>.btn:hover,.factory-bootstrap-448 .btn-group>.btn.active,.factory-bootstrap-448 .btn-group>.btn:active,.factory-bootstrap-448 .btn-group>.btn:focus,.factory-bootstrap-448 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-448 .btn-group-vertical>.btn:focus,.factory-bootstrap-448 .btn-group>.btn:focus{outline:0}.factory-bootstrap-448 .btn-group .btn+.btn,.factory-bootstrap-448 .btn-group .btn+.btn-group,.factory-bootstrap-448 .btn-group .btn-group+.btn,.factory-bootstrap-448 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-448 .btn-toolbar:after,.factory-bootstrap-448 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-448 .btn-toolbar:after{clear:both}.factory-bootstrap-448 .btn-toolbar .btn-group{float:left}.factory-bootstrap-448 .btn-toolbar>.btn+.btn,.factory-bootstrap-448 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-448 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-448 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-448 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-448 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-448 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-448 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-448 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .btn-group>.btn-group{float:left}.factory-bootstrap-448 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-448 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-448 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-448 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .btn-group .dropdown-toggle:active,.factory-bootstrap-448 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-448 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-448 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-448 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-448 .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-448 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-448 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-448 .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-448 .btn .caret{margin-left:0}.factory-bootstrap-448 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-448 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-448 .btn-group-vertical>.btn,.factory-bootstrap-448 .btn-group-vertical>.btn-group,.factory-bootstrap-448 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-448 .btn-group-vertical>.btn-group:after,.factory-bootstrap-448 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-448 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-448 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-448 .btn-group-vertical>.btn+.btn,.factory-bootstrap-448 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-448 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-448 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-448 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-448 .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-448 .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-448 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-448 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-448 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-448 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-448 .btn-group-justified>.btn,.factory-bootstrap-448 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-448 .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-448 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-448 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-448 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-448 .input-group-lg>.form-control,.factory-bootstrap-448 .input-group-lg>.input-group-addon,.factory-bootstrap-448 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-448 select.input-group-lg>.form-control,.factory-bootstrap-448 select.input-group-lg>.input-group-addon,.factory-bootstrap-448 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-448 textarea.input-group-lg>.form-control,.factory-bootstrap-448 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-448 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-448 .input-group-sm>.form-control,.factory-bootstrap-448 .input-group-sm>.input-group-addon,.factory-bootstrap-448 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-448 select.input-group-sm>.form-control,.factory-bootstrap-448 select.input-group-sm>.input-group-addon,.factory-bootstrap-448 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-448 textarea.input-group-sm>.form-control,.factory-bootstrap-448 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-448 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-448 .input-group .form-control,.factory-bootstrap-448 .input-group-addon,.factory-bootstrap-448 .input-group-btn{display:table-cell}.factory-bootstrap-448 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-448 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-448 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-448 .input-group-addon,.factory-bootstrap-448 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-448 .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-448 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-448 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-448 .input-group-addon input[type=checkbox],.factory-bootstrap-448 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-448 .input-group .form-control:first-child,.factory-bootstrap-448 .input-group-addon:first-child,.factory-bootstrap-448 .input-group-btn:first-child>.btn,.factory-bootstrap-448 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-448 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-448 .input-group-addon:first-child{border-right:0}.factory-bootstrap-448 .input-group .form-control:last-child,.factory-bootstrap-448 .input-group-addon:last-child,.factory-bootstrap-448 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-448 .input-group-btn:last-child>.btn,.factory-bootstrap-448 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .input-group-addon:last-child{border-left:0}.factory-bootstrap-448 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-448 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-448 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-448 .input-group-btn>.btn{position:relative}.factory-bootstrap-448 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-448 .input-group-btn>.btn:active,.factory-bootstrap-448 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-448 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-448 .nav:after,.factory-bootstrap-448 .nav:before{display:table;content:" "}.factory-bootstrap-448 .nav:after{clear:both}.factory-bootstrap-448 .nav>li{position:relative;display:block}.factory-bootstrap-448 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-448 .nav>li>a:focus,.factory-bootstrap-448 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-448 .nav>li.disabled>a{color:#999}.factory-bootstrap-448 .nav>li.disabled>a:focus,.factory-bootstrap-448 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-448 .nav .open>a,.factory-bootstrap-448 .nav .open>a:focus,.factory-bootstrap-448 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-448 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-448 .nav>li>a>img{max-width:none}.factory-bootstrap-448 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-448 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-448 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-448 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-448 .nav-tabs>li.active>a,.factory-bootstrap-448 .nav-tabs>li.active>a:focus,.factory-bootstrap-448 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-448 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-448 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-448 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-448 .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-448 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-448 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-448 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-448 .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-448 .nav-pills>li{float:left}.factory-bootstrap-448 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-448 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-448 .nav-pills>li.active>a,.factory-bootstrap-448 .nav-pills>li.active>a:focus,.factory-bootstrap-448 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-448 .nav-stacked>li{float:none}.factory-bootstrap-448 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-448 .nav-justified{width:100%}.factory-bootstrap-448 .nav-justified>li{float:none}.factory-bootstrap-448 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-448 .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-448 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-448 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-448 .nav-tabs-justified>.active>a,.factory-bootstrap-448 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-448 .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-448 .tab-content>.tab-pane{display:none}.factory-bootstrap-448 .tab-content>.active{display:block}.factory-bootstrap-448 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-448 .navbar:after,.factory-bootstrap-448 .navbar:before{display:table;content:" "}.factory-bootstrap-448 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-448 .navbar-header:after,.factory-bootstrap-448 .navbar-header:before{display:table;content:" "}.factory-bootstrap-448 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-448 .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-448 .navbar-collapse:after,.factory-bootstrap-448 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-448 .navbar-collapse:after{clear:both}.factory-bootstrap-448 .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-448 .container>.navbar-collapse,.factory-bootstrap-448 .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-448 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-448 .navbar-fixed-bottom,.factory-bootstrap-448 .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-448 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-448 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-448 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-448 .navbar-brand:focus,.factory-bootstrap-448 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-448 .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-448 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-448 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-448 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-448 .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-448 .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-448 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-448 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-448 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-448 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-448 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-448 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-448 .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-448 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-448 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-448 .navbar-default .navbar-brand:focus,.factory-bootstrap-448 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-448 .navbar-default .navbar-nav>li>a,.factory-bootstrap-448 .navbar-default .navbar-text{color:#777}.factory-bootstrap-448 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-448 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-448 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-448 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-448 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-448 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-448 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-448 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-448 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-448 .navbar-default .navbar-toggle:focus,.factory-bootstrap-448 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-448 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-448 .navbar-default .navbar-collapse,.factory-bootstrap-448 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-448 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-448 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-448 .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-448 .navbar-default .navbar-link{color:#777}.factory-bootstrap-448 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-448 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-448 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-448 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-448 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-448 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-448 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-448 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-448 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-448 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-448 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-448 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-448 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-448 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-448 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-448 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-448 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-448 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-448 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-448 .navbar-inverse .navbar-collapse,.factory-bootstrap-448 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-448 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-448 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-448 .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-448 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-448 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-448 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-448 .breadcrumb>li{display:inline-block}.factory-bootstrap-448 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-448 .breadcrumb>.active{color:#999}.factory-bootstrap-448 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-448 .pagination>li{display:inline}.factory-bootstrap-448 .pagination>li>a,.factory-bootstrap-448 .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-448 .pagination>li:first-child>a,.factory-bootstrap-448 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-448 .pagination>li:last-child>a,.factory-bootstrap-448 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-448 .pagination>li>a:focus,.factory-bootstrap-448 .pagination>li>a:hover,.factory-bootstrap-448 .pagination>li>span:focus,.factory-bootstrap-448 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-448 .pagination>.disabled>a,.factory-bootstrap-448 .pagination>.disabled>a:focus,.factory-bootstrap-448 .pagination>.disabled>a:hover,.factory-bootstrap-448 .pagination>.disabled>span,.factory-bootstrap-448 .pagination>.disabled>span:focus,.factory-bootstrap-448 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-448 .pagination-lg>li>a,.factory-bootstrap-448 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-448 .pagination-lg>li:first-child>a,.factory-bootstrap-448 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-448 .pagination-lg>li:last-child>a,.factory-bootstrap-448 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-448 .pagination-sm>li>a,.factory-bootstrap-448 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-448 .pagination-sm>li:first-child>a,.factory-bootstrap-448 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-448 .pagination-sm>li:last-child>a,.factory-bootstrap-448 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-448 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-448 .pager:after,.factory-bootstrap-448 .pager:before{display:table;content:" "}.factory-bootstrap-448 .pager:after{clear:both}.factory-bootstrap-448 .pager li{display:inline}.factory-bootstrap-448 .pager li>a,.factory-bootstrap-448 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-448 .pager li>a:focus,.factory-bootstrap-448 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-448 .pager .next>a,.factory-bootstrap-448 .pager .next>span{float:right}.factory-bootstrap-448 .pager .previous>a,.factory-bootstrap-448 .pager .previous>span{float:left}.factory-bootstrap-448 .pager .disabled>a,.factory-bootstrap-448 .pager .disabled>a:focus,.factory-bootstrap-448 .pager .disabled>a:hover,.factory-bootstrap-448 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-448 .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-448 .label[href]:focus,.factory-bootstrap-448 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-448 .label:empty{display:none}.factory-bootstrap-448 .btn .label{position:relative;top:-1px}.factory-bootstrap-448 .label-default{background-color:#999}.factory-bootstrap-448 .label-default[href]:focus,.factory-bootstrap-448 .label-default[href]:hover{background-color:gray}.factory-bootstrap-448 .label-primary{background-color:#428bca}.factory-bootstrap-448 .label-primary[href]:focus,.factory-bootstrap-448 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-448 .label-success{background-color:#5cb85c}.factory-bootstrap-448 .label-success[href]:focus,.factory-bootstrap-448 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-448 .label-info{background-color:#5bc0de}.factory-bootstrap-448 .label-info[href]:focus,.factory-bootstrap-448 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-448 .label-warning{background-color:#f0ad4e}.factory-bootstrap-448 .label-warning[href]:focus,.factory-bootstrap-448 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-448 .label-danger{background-color:#d9534f}.factory-bootstrap-448 .label-danger[href]:focus,.factory-bootstrap-448 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-448 .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-448 .badge:empty{display:none}.factory-bootstrap-448 .btn .badge{position:relative;top:-1px}.factory-bootstrap-448 a.badge:focus,.factory-bootstrap-448 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-448 .nav-pills>.active>a>.badge,.factory-bootstrap-448 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-448 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-448 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-448 .jumbotron .h1,.factory-bootstrap-448 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-448 .jumbotron p{line-height:1.4}.factory-bootstrap-448 .container .jumbotron{border-radius:6px}.factory-bootstrap-448 .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-448 .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-448 .thumbnail a>img,.factory-bootstrap-448 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-448 a.thumbnail.active,.factory-bootstrap-448 a.thumbnail:focus,.factory-bootstrap-448 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-448 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-448 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-448 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-448 .alert .alert-link{font-weight:700}.factory-bootstrap-448 .alert>p,.factory-bootstrap-448 .alert>ul{margin-bottom:0}.factory-bootstrap-448 .alert>p+p{margin-top:5px}.factory-bootstrap-448 .alert-dismissable{padding-right:35px}.factory-bootstrap-448 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-448 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-448 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-448 .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-448 .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-448 .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-448 .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-448 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-448 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-448 .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-448 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-448 .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-448 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-448 .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-448 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-448 .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-448 .media,.factory-bootstrap-448 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-448 .media,.factory-bootstrap-448 .media .media{margin-top:15px}.factory-bootstrap-448 .media:first-child{margin-top:0}.factory-bootstrap-448 .media-object{display:block}.factory-bootstrap-448 .media-heading{margin:0 0 5px}.factory-bootstrap-448 .media>.pull-left{margin-right:10px}.factory-bootstrap-448 .media>.pull-right{margin-left:10px}.factory-bootstrap-448 .media-list{padding-left:0;list-style:none}.factory-bootstrap-448 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-448 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-448 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-448 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-448 .list-group-item>.badge{float:right}.factory-bootstrap-448 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-448 a.list-group-item{color:#555}.factory-bootstrap-448 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-448 a.list-group-item:focus,.factory-bootstrap-448 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-448 a.list-group-item.active,.factory-bootstrap-448 a.list-group-item.active:focus,.factory-bootstrap-448 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-448 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-448 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-448 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-448 a.list-group-item.active .list-group-item-text,.factory-bootstrap-448 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-448 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-448 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-448 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-448 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-448 .panel-body{padding:15px}.factory-bootstrap-448 .panel-body:after,.factory-bootstrap-448 .panel-body:before{display:table;content:" "}.factory-bootstrap-448 .panel-body:after{clear:both}.factory-bootstrap-448 .panel>.list-group{margin-bottom:0}.factory-bootstrap-448 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-448 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-448 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-448 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-448 .panel>.table,.factory-bootstrap-448 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-448 .panel>.panel-body+.table,.factory-bootstrap-448 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-448 .panel>.table>tbody:first-child td,.factory-bootstrap-448 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-448 .panel>.table-bordered,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-448 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-448 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-448 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-448 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-448 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-448 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-448 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-448 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-448 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-448 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-448 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-448 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-448 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-448 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-448 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-448 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-448 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-448 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-448 .panel-title>a{color:inherit}.factory-bootstrap-448 .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-448 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-448 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-448 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-448 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-448 .panel-group .panel-footer{border-top:0}.factory-bootstrap-448 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-448 .panel-default{border-color:#ddd}.factory-bootstrap-448 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-448 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-448 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-448 .panel-primary{border-color:#428bca}.factory-bootstrap-448 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-448 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-448 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-448 .panel-success{border-color:#d6e9c6}.factory-bootstrap-448 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-448 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-448 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-448 .panel-warning{border-color:#faebcc}.factory-bootstrap-448 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-448 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-448 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-448 .panel-danger{border-color:#ebccd1}.factory-bootstrap-448 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-448 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-448 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-448 .panel-info{border-color:#bce8f1}.factory-bootstrap-448 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-448 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-448 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-448 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-448 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-448 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-448 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-448 .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-448 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-448 .close:focus,.factory-bootstrap-448 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-448 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-448 .modal-open{overflow:hidden}.factory-bootstrap-448 .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-448 .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-448 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-448 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-448 .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-448 .modal-backdrop,.factory-bootstrap-448-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-448 .modal-backdrop.fade,.factory-bootstrap-448-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-448 .modal-backdrop.in,.factory-bootstrap-448-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-448 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-448 .modal-header .close{margin-top:-2px}.factory-bootstrap-448 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-448 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-448 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-448 .modal-footer:after,.factory-bootstrap-448 .modal-footer:before{display:table;content:" "}.factory-bootstrap-448 .modal-footer:after{clear:both}.factory-bootstrap-448 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-448 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-448 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-448 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-448 .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-448 .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-448 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-448 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-448 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-448 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-448 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-448 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-448 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-448 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-448 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-448 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-448 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-448 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-448 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-448 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-448 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-448 .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-448 .popover.top{margin-top:-10px}.factory-bootstrap-448 .popover.right{margin-left:10px}.factory-bootstrap-448 .popover.bottom{margin-top:10px}.factory-bootstrap-448 .popover.left{margin-left:-10px}.factory-bootstrap-448 .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-448 .popover-content{padding:9px 14px}.factory-bootstrap-448 .popover .arrow,.factory-bootstrap-448 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-448 .popover .arrow{border-width:11px}.factory-bootstrap-448 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-448 .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-448 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-448 .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-448 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-448 .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-448 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-448 .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-448 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-448 .carousel{position:relative}.factory-bootstrap-448 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-448 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-448 .carousel-inner>.item>a>img,.factory-bootstrap-448 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-448 .carousel-inner>.active,.factory-bootstrap-448 .carousel-inner>.next,.factory-bootstrap-448 .carousel-inner>.prev{display:block}.factory-bootstrap-448 .carousel-inner>.active{left:0}.factory-bootstrap-448 .carousel-inner>.next,.factory-bootstrap-448 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-448 .carousel-inner>.next{left:100%}.factory-bootstrap-448 .carousel-inner>.prev{left:-100%}.factory-bootstrap-448 .carousel-inner>.next.left,.factory-bootstrap-448 .carousel-inner>.prev.right{left:0}.factory-bootstrap-448 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-448 .carousel-inner>.active.right{left:100%}.factory-bootstrap-448 .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-448 .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-448 .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-448 .carousel-control:focus,.factory-bootstrap-448 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-448 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-448 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-448 .carousel-control .icon-next,.factory-bootstrap-448 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-448 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-448 .carousel-control .icon-prev{left:50%}.factory-bootstrap-448 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-448 .carousel-control .icon-next{right:50%}.factory-bootstrap-448 .carousel-control .icon-next,.factory-bootstrap-448 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-448 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-448 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-448 .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-448 .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-448 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-448 .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-448 .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-448 .clearfix:after,.factory-bootstrap-448 .clearfix:before{display:table;content:" "}.factory-bootstrap-448 .clearfix:after{clear:both}.factory-bootstrap-448 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-448 .pull-right{float:right!important}.factory-bootstrap-448 .pull-left{float:left!important}.factory-bootstrap-448 .hide{display:none!important}.factory-bootstrap-448 .show{display:block!important}.factory-bootstrap-448 .invisible{visibility:hidden}.factory-bootstrap-448 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-448 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-448 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-448 .visible-lg,.factory-bootstrap-448 .visible-md,.factory-bootstrap-448 .visible-sm,.factory-bootstrap-448 .visible-xs,.factory-bootstrap-448 td.visible-lg,.factory-bootstrap-448 td.visible-md,.factory-bootstrap-448 td.visible-sm,.factory-bootstrap-448 td.visible-xs,.factory-bootstrap-448 th.visible-lg,.factory-bootstrap-448 th.visible-md,.factory-bootstrap-448 th.visible-sm,.factory-bootstrap-448 th.visible-xs,.factory-bootstrap-448 tr.visible-lg,.factory-bootstrap-448 tr.visible-md,.factory-bootstrap-448 tr.visible-sm,.factory-bootstrap-448 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-448 .hidden-xs{display:block!important}.factory-bootstrap-448 table.hidden-xs{display:table}.factory-bootstrap-448 tr.hidden-xs{display:table-row!important}.factory-bootstrap-448 td.hidden-xs,.factory-bootstrap-448 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-448 .hidden-sm{display:block!important}.factory-bootstrap-448 table.hidden-sm{display:table}.factory-bootstrap-448 tr.hidden-sm{display:table-row!important}.factory-bootstrap-448 td.hidden-sm,.factory-bootstrap-448 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-448 .hidden-md{display:block!important}.factory-bootstrap-448 table.hidden-md{display:table}.factory-bootstrap-448 tr.hidden-md{display:table-row!important}.factory-bootstrap-448 td.hidden-md,.factory-bootstrap-448 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-448 .hidden-lg{display:block!important}.factory-bootstrap-448 table.hidden-lg{display:table}.factory-bootstrap-448 tr.hidden-lg{display:table-row!important}.factory-bootstrap-448 td.hidden-lg,.factory-bootstrap-448 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-448 .hidden-lg.hidden-xs,.factory-bootstrap-448 td.hidden-lg.hidden-xs,.factory-bootstrap-448 th.hidden-lg.hidden-xs,.factory-bootstrap-448 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-448 .hidden-lg.hidden-sm,.factory-bootstrap-448 td.hidden-lg.hidden-sm,.factory-bootstrap-448 th.hidden-lg.hidden-sm,.factory-bootstrap-448 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-448 .hidden-lg.hidden-md,.factory-bootstrap-448 td.hidden-lg.hidden-md,.factory-bootstrap-448 th.hidden-lg.hidden-md,.factory-bootstrap-448 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-448 .hidden-lg,.factory-bootstrap-448 td.hidden-lg,.factory-bootstrap-448 th.hidden-lg,.factory-bootstrap-448 tr.hidden-lg{display:none!important}}.factory-bootstrap-448 .visible-print,.factory-bootstrap-448 td.visible-print,.factory-bootstrap-448 th.visible-print,.factory-bootstrap-448 tr.visible-print{display:none!important}@media print{.factory-bootstrap-448 .visible-print{display:block!important}.factory-bootstrap-448 table.visible-print{display:table}.factory-bootstrap-448 tr.visible-print{display:table-row!important}.factory-bootstrap-448 td.visible-print,.factory-bootstrap-448 th.visible-print{display:table-cell!important}.factory-bootstrap-448 .hidden-print,.factory-bootstrap-448 td.hidden-print,.factory-bootstrap-448 th.hidden-print,.factory-bootstrap-448 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-448 .btn-danger,.factory-bootstrap-448 .btn-default,.factory-bootstrap-448 .btn-info,.factory-bootstrap-448 .btn-primary,.factory-bootstrap-448 .btn-success,.factory-bootstrap-448 .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-448 .btn-danger.active,.factory-bootstrap-448 .btn-danger:active,.factory-bootstrap-448 .btn-default.active,.factory-bootstrap-448 .btn-default:active,.factory-bootstrap-448 .btn-info.active,.factory-bootstrap-448 .btn-info:active,.factory-bootstrap-448 .btn-primary.active,.factory-bootstrap-448 .btn-primary:active,.factory-bootstrap-448 .btn-success.active,.factory-bootstrap-448 .btn-success:active,.factory-bootstrap-448 .btn-warning.active,.factory-bootstrap-448 .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-448 .btn.active,.factory-bootstrap-448 .btn:active{background-image:none}.factory-bootstrap-448 .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-448 .btn-default.active,.factory-bootstrap-448 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-448 .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-448 .btn-gold:focus,.factory-bootstrap-448 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-448 .btn-gold.active,.factory-bootstrap-448 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .btn-primary.active,.factory-bootstrap-448 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-448 .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-448 .btn-success:focus,.factory-bootstrap-448 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-448 .btn-success.active,.factory-bootstrap-448 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-448 .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-448 .btn-warning:focus,.factory-bootstrap-448 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-448 .btn-warning.active,.factory-bootstrap-448 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-448 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-448 .btn-danger.active,.factory-bootstrap-448 .btn-danger:active,.factory-bootstrap-448 .btn-danger:focus,.factory-bootstrap-448 .btn-danger:hover,.factory-bootstrap-448 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-448 .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-448 .btn-info:focus,.factory-bootstrap-448 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-448 .btn-info.active,.factory-bootstrap-448 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-448 .img-thumbnail,.factory-bootstrap-448 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-448 .dropdown-menu>li>a:focus,.factory-bootstrap-448 .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-448 .dropdown-menu>.active>a,.factory-bootstrap-448 .dropdown-menu>.active>a:focus,.factory-bootstrap-448 .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-448 .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-448 .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-448 .navbar-brand,.factory-bootstrap-448 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-448 .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-448 .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-448 .navbar-inverse .navbar-brand,.factory-bootstrap-448 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-448 .navbar-fixed-bottom,.factory-bootstrap-448 .navbar-fixed-top,.factory-bootstrap-448 .navbar-static-top{border-radius:0}.factory-bootstrap-448 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-448 .alert .actions{padding-top:10px}.factory-bootstrap-448 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-448 .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-448 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-448 .alert-normal,.factory-bootstrap-448 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-448 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-448 .alert-danger a:not(.btn),.factory-bootstrap-448 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .list-group-item.active,.factory-bootstrap-448 .list-group-item.active:focus,.factory-bootstrap-448 .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-448 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-448 .factory-hidden{display:none}.factory-bootstrap-448 .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-449 article,.factory-bootstrap-449 aside,.factory-bootstrap-449 details,.factory-bootstrap-449 figcaption,.factory-bootstrap-449 figure,.factory-bootstrap-449 footer,.factory-bootstrap-449 header,.factory-bootstrap-449 hgroup,.factory-bootstrap-449 main,.factory-bootstrap-449 nav,.factory-bootstrap-449 section,.factory-bootstrap-449 summary{display:block}.factory-bootstrap-449 audio,.factory-bootstrap-449 canvas,.factory-bootstrap-449 video{display:inline-block}.factory-bootstrap-449 audio:not([controls]){display:none;height:0}.factory-bootstrap-449 [hidden],.factory-bootstrap-449 template{display:none}.factory-bootstrap-449 body{margin:0}.factory-bootstrap-449 a{background:0 0}.factory-bootstrap-449 a:focus{outline:thin dotted}.factory-bootstrap-449 a:active,.factory-bootstrap-449 a:hover{outline:0}.factory-bootstrap-449 h1{margin:.67em 0}.factory-bootstrap-449 b,.factory-bootstrap-449 strong{font-weight:700}.factory-bootstrap-449 dfn{font-style:italic}.factory-bootstrap-449 hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}.factory-bootstrap-449 mark{color:#000;background:#ff0}.factory-bootstrap-449 code,.factory-bootstrap-449 kbd,.factory-bootstrap-449 pre,.factory-bootstrap-449 samp{font-size:1em}.factory-bootstrap-449 pre{white-space:pre-wrap}.factory-bootstrap-449 q{quotes:"\201C" "\201D" "\2018" "\2019"}.factory-bootstrap-449 sub,.factory-bootstrap-449 sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.factory-bootstrap-449 sup{top:-.5em}.factory-bootstrap-449 sub{bottom:-.25em}.factory-bootstrap-449 img{border:0}.factory-bootstrap-449 svg:not(:root){overflow:hidden}.factory-bootstrap-449 figure{margin:0}.factory-bootstrap-449 button,.factory-bootstrap-449 input,.factory-bootstrap-449 select,.factory-bootstrap-449 textarea{margin:0}.factory-bootstrap-449 button,.factory-bootstrap-449 select{text-transform:none}.factory-bootstrap-449 select{padding-right:4px!important}.factory-bootstrap-449 button,.factory-bootstrap-449 input[type=reset],.factory-bootstrap-449 input[type=submit],html .factory-bootstrap-449 input[type=button]{cursor:pointer;-webkit-appearance:button}.factory-bootstrap-449 button[disabled],html .factory-bootstrap-449 input[disabled]{cursor:default}.factory-bootstrap-449 input[type=checkbox],.factory-bootstrap-449 input[type=radio]{padding:0;box-sizing:border-box}.factory-bootstrap-449 input[type=search]{-webkit-appearance:textfield}.factory-bootstrap-449 input[type=search]::-webkit-search-cancel-button,.factory-bootstrap-449 input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.factory-bootstrap-449 button::-moz-focus-inner,.factory-bootstrap-449 input::-moz-focus-inner{padding:0;border:0}.factory-bootstrap-449 textarea{overflow:auto;vertical-align:top}.factory-bootstrap-449 table{border-collapse:collapse;border-spacing:0}@media print{.factory-bootstrap-449 *{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}.factory-bootstrap-449 a,.factory-bootstrap-449 a:visited{text-decoration:underline}.factory-bootstrap-449 a[href]:after{content:" (" attr(href) ")"}.factory-bootstrap-449 abbr[title]:after{content:" (" attr(title) ")"}.factory-bootstrap-449 a[href^="javascript:"]:after,.factory-bootstrap-449 a[href^="#"]:after{content:""}.factory-bootstrap-449 blockquote,.factory-bootstrap-449 pre{border:1px solid #999;page-break-inside:avoid}.factory-bootstrap-449 thead{display:table-header-group}.factory-bootstrap-449 img,.factory-bootstrap-449 tr{page-break-inside:avoid}.factory-bootstrap-449 img{max-width:100%!important}@page{margin:2cm .5cm}.factory-bootstrap-449 h2,.factory-bootstrap-449 h3,.factory-bootstrap-449 p{orphans:3;widows:3}.factory-bootstrap-449 h2,.factory-bootstrap-449 h3{page-break-after:avoid}.factory-bootstrap-449 select{background:#fff!important}.factory-bootstrap-449 .navbar{display:none}.factory-bootstrap-449 .table td,.factory-bootstrap-449 .table th{background-color:#fff!important}.factory-bootstrap-449 .btn>.caret,.factory-bootstrap-449 .dropup>.btn>.caret{border-top-color:#000!important}.factory-bootstrap-449 .label{border:1px solid #000}.factory-bootstrap-449 .table{border-collapse:collapse!important}.factory-bootstrap-449 .table-bordered td,.factory-bootstrap-449 .table-bordered th{border:1px solid #ddd!important}}.factory-bootstrap-449 *,.factory-bootstrap-449 :after,.factory-bootstrap-449 :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html .factory-bootstrap-449{-webkit-tap-highlight-color:rgba(0,0,0,0)}.factory-bootstrap-449 body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}.factory-bootstrap-449 button,.factory-bootstrap-449 input,.factory-bootstrap-449 select,.factory-bootstrap-449 textarea{font-family:inherit;font-size:inherit;line-height:inherit}.factory-bootstrap-449 img{vertical-align:middle}.factory-bootstrap-449 .img-responsive{display:block;height:auto;max-width:100%}.factory-bootstrap-449 .img-rounded{border-radius:6px}.factory-bootstrap-449 .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-449 .img-circle{border-radius:50%}.factory-bootstrap-449 hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.factory-bootstrap-449 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.factory-bootstrap-449 .h1,.factory-bootstrap-449 .h2,.factory-bootstrap-449 .h3,.factory-bootstrap-449 .h4,.factory-bootstrap-449 .h5,.factory-bootstrap-449 .h6,.factory-bootstrap-449 h1,.factory-bootstrap-449 h2,.factory-bootstrap-449 h3,.factory-bootstrap-449 h4,.factory-bootstrap-449 h5,.factory-bootstrap-449 h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}.factory-bootstrap-449 .h1 .small,.factory-bootstrap-449 .h1 small,.factory-bootstrap-449 .h2 .small,.factory-bootstrap-449 .h2 small,.factory-bootstrap-449 .h3 .small,.factory-bootstrap-449 .h3 small,.factory-bootstrap-449 .h4 .small,.factory-bootstrap-449 .h4 small,.factory-bootstrap-449 .h5 .small,.factory-bootstrap-449 .h5 small,.factory-bootstrap-449 .h6 .small,.factory-bootstrap-449 .h6 small,.factory-bootstrap-449 h1 .small,.factory-bootstrap-449 h1 small,.factory-bootstrap-449 h2 .small,.factory-bootstrap-449 h2 small,.factory-bootstrap-449 h3 .small,.factory-bootstrap-449 h3 small,.factory-bootstrap-449 h4 .small,.factory-bootstrap-449 h4 small,.factory-bootstrap-449 h5 .small,.factory-bootstrap-449 h5 small,.factory-bootstrap-449 h6 .small,.factory-bootstrap-449 h6 small{font-weight:400;line-height:1;color:#999}.factory-bootstrap-449 h1,.factory-bootstrap-449 h2,.factory-bootstrap-449 h3{margin-top:20px;margin-bottom:10px}.factory-bootstrap-449 h1 .small,.factory-bootstrap-449 h1 small,.factory-bootstrap-449 h2 .small,.factory-bootstrap-449 h2 small,.factory-bootstrap-449 h3 .small,.factory-bootstrap-449 h3 small{font-size:65%}.factory-bootstrap-449 h4,.factory-bootstrap-449 h5,.factory-bootstrap-449 h6{margin-top:10px;margin-bottom:10px}.factory-bootstrap-449 h4 .small,.factory-bootstrap-449 h4 small,.factory-bootstrap-449 h5 .small,.factory-bootstrap-449 h5 small,.factory-bootstrap-449 h6 .small,.factory-bootstrap-449 h6 small{font-size:75%}.factory-bootstrap-449 .h1,.factory-bootstrap-449 h1{font-size:36px}.factory-bootstrap-449 .h2,.factory-bootstrap-449 h2{font-size:30px}.factory-bootstrap-449 .h3,.factory-bootstrap-449 h3{font-size:24px}.factory-bootstrap-449 .h4,.factory-bootstrap-449 h4{font-size:18px}.factory-bootstrap-449 .h5,.factory-bootstrap-449 h5{font-size:14px}.factory-bootstrap-449 .h6,.factory-bootstrap-449 h6{font-size:12px}.factory-bootstrap-449 p{margin:0 0 10px}.factory-bootstrap-449 .lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.factory-bootstrap-449 .small,.factory-bootstrap-449 small{font-size:85%}.factory-bootstrap-449 cite{font-style:normal}.factory-bootstrap-449 .text-muted{color:#999}.factory-bootstrap-449 .text-primary{color:#428bca}.factory-bootstrap-449 .text-primary:hover{color:#3071a9}.factory-bootstrap-449 .text-warning{color:#8a6d3b}.factory-bootstrap-449 .text-warning:hover{color:#66512c}.factory-bootstrap-449 .text-danger{color:#a94442}.factory-bootstrap-449 .text-danger:hover{color:#843534}.factory-bootstrap-449 .text-success{color:#3c763d}.factory-bootstrap-449 .text-success:hover{color:#2b542c}.factory-bootstrap-449 .text-info{color:#31708f}.factory-bootstrap-449 .text-info:hover{color:#245269}.factory-bootstrap-449 .text-left{text-align:left}.factory-bootstrap-449 .text-right{text-align:right}.factory-bootstrap-449 .text-center{text-align:center}.factory-bootstrap-449 .page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}.factory-bootstrap-449 ol,.factory-bootstrap-449 ul{margin-top:0;margin-bottom:10px}.factory-bootstrap-449 ol ol,.factory-bootstrap-449 ol ul,.factory-bootstrap-449 ul ol,.factory-bootstrap-449 ul ul{margin-bottom:0}.factory-bootstrap-449 .list-inline,.factory-bootstrap-449 .list-unstyled{padding-left:0;list-style:none}.factory-bootstrap-449 .list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.factory-bootstrap-449 .list-inline>li:first-child{padding-left:0}.factory-bootstrap-449 dl{margin-top:0;margin-bottom:20px}.factory-bootstrap-449 dd,.factory-bootstrap-449 dt{line-height:1.428571429}.factory-bootstrap-449 dt{font-weight:700}.factory-bootstrap-449 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-449 abbr[data-original-title],.factory-bootstrap-449 abbr[title]{cursor:help;border-bottom:1px dotted #999}.factory-bootstrap-449 .initialism{font-size:90%;text-transform:uppercase}.factory-bootstrap-449 blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}.factory-bootstrap-449 blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}.factory-bootstrap-449 blockquote p:last-child{margin-bottom:0}.factory-bootstrap-449 blockquote .small,.factory-bootstrap-449 blockquote small{display:block;line-height:1.428571429;color:#999}.factory-bootstrap-449 blockquote .small:before,.factory-bootstrap-449 blockquote small:before{content:'\2014 \00A0'}.factory-bootstrap-449 blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}.factory-bootstrap-449 blockquote.pull-right .small,.factory-bootstrap-449 blockquote.pull-right p,.factory-bootstrap-449 blockquote.pull-right small{text-align:right}.factory-bootstrap-449 blockquote.pull-right .small:before,.factory-bootstrap-449 blockquote.pull-right small:before{content:''}.factory-bootstrap-449 blockquote.pull-right .small:after,.factory-bootstrap-449 blockquote.pull-right small:after{content:'\00A0 \2014'}.factory-bootstrap-449 blockquote:after,.factory-bootstrap-449 blockquote:before{content:""}.factory-bootstrap-449 address{margin-bottom:20px;font-style:normal;line-height:1.428571429}.factory-bootstrap-449 code,.factory-bootstrap-449 kbd,.factory-bootstrap-449 pre,.factory-bootstrap-449 samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}.factory-bootstrap-449 code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}.factory-bootstrap-449 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-449 pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.factory-bootstrap-449 .pre-scrollable{max-height:340px;overflow-y:scroll}.factory-bootstrap-449 .container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.factory-bootstrap-449 .container:after,.factory-bootstrap-449 .container:before{display:table;content:" "}.factory-bootstrap-449 .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-449 .row{margin-right:-15px;margin-left:-15px}.factory-bootstrap-449 .row:after,.factory-bootstrap-449 .row:before{display:table;content:" "}.factory-bootstrap-449 .row:after{clear:both}.factory-bootstrap-449 .col-lg-1,.factory-bootstrap-449 .col-lg-10,.factory-bootstrap-449 .col-lg-11,.factory-bootstrap-449 .col-lg-12,.factory-bootstrap-449 .col-lg-2,.factory-bootstrap-449 .col-lg-3,.factory-bootstrap-449 .col-lg-4,.factory-bootstrap-449 .col-lg-5,.factory-bootstrap-449 .col-lg-6,.factory-bootstrap-449 .col-lg-7,.factory-bootstrap-449 .col-lg-8,.factory-bootstrap-449 .col-lg-9,.factory-bootstrap-449 .col-md-1,.factory-bootstrap-449 .col-md-10,.factory-bootstrap-449 .col-md-11,.factory-bootstrap-449 .col-md-12,.factory-bootstrap-449 .col-md-2,.factory-bootstrap-449 .col-md-3,.factory-bootstrap-449 .col-md-4,.factory-bootstrap-449 .col-md-5,.factory-bootstrap-449 .col-md-6,.factory-bootstrap-449 .col-md-7,.factory-bootstrap-449 .col-md-8,.factory-bootstrap-449 .col-md-9,.factory-bootstrap-449 .col-sm-1,.factory-bootstrap-449 .col-sm-10,.factory-bootstrap-449 .col-sm-11,.factory-bootstrap-449 .col-sm-12,.factory-bootstrap-449 .col-sm-2,.factory-bootstrap-449 .col-sm-3,.factory-bootstrap-449 .col-sm-4,.factory-bootstrap-449 .col-sm-5,.factory-bootstrap-449 .col-sm-6,.factory-bootstrap-449 .col-sm-7,.factory-bootstrap-449 .col-sm-8,.factory-bootstrap-449 .col-sm-9,.factory-bootstrap-449 .col-xs-1,.factory-bootstrap-449 .col-xs-10,.factory-bootstrap-449 .col-xs-11,.factory-bootstrap-449 .col-xs-12,.factory-bootstrap-449 .col-xs-2,.factory-bootstrap-449 .col-xs-3,.factory-bootstrap-449 .col-xs-4,.factory-bootstrap-449 .col-xs-5,.factory-bootstrap-449 .col-xs-6,.factory-bootstrap-449 .col-xs-7,.factory-bootstrap-449 .col-xs-8,.factory-bootstrap-449 .col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.factory-bootstrap-449 .col-xs-1,.factory-bootstrap-449 .col-xs-10,.factory-bootstrap-449 .col-xs-11,.factory-bootstrap-449 .col-xs-12,.factory-bootstrap-449 .col-xs-2,.factory-bootstrap-449 .col-xs-3,.factory-bootstrap-449 .col-xs-4,.factory-bootstrap-449 .col-xs-5,.factory-bootstrap-449 .col-xs-6,.factory-bootstrap-449 .col-xs-7,.factory-bootstrap-449 .col-xs-8,.factory-bootstrap-449 .col-xs-9{float:left}.factory-bootstrap-449 .col-xs-12{width:100%}.factory-bootstrap-449 .col-xs-11{width:91.66666666666666%}.factory-bootstrap-449 .col-xs-10{width:83.33333333333334%}.factory-bootstrap-449 .col-xs-9{width:75%}.factory-bootstrap-449 .col-xs-8{width:66.66666666666666%}.factory-bootstrap-449 .col-xs-7{width:58.333333333333336%}.factory-bootstrap-449 .col-xs-6{width:50%}.factory-bootstrap-449 .col-xs-5{width:41.66666666666667%}.factory-bootstrap-449 .col-xs-4{width:33.33333333333333%}.factory-bootstrap-449 .col-xs-3{width:25%}.factory-bootstrap-449 .col-xs-2{width:16.666666666666664%}.factory-bootstrap-449 .col-xs-1{width:8.333333333333332%}.factory-bootstrap-449 .col-xs-pull-12{right:100%}.factory-bootstrap-449 .col-xs-pull-11{right:91.66666666666666%}.factory-bootstrap-449 .col-xs-pull-10{right:83.33333333333334%}.factory-bootstrap-449 .col-xs-pull-9{right:75%}.factory-bootstrap-449 .col-xs-pull-8{right:66.66666666666666%}.factory-bootstrap-449 .col-xs-pull-7{right:58.333333333333336%}.factory-bootstrap-449 .col-xs-pull-6{right:50%}.factory-bootstrap-449 .col-xs-pull-5{right:41.66666666666667%}.factory-bootstrap-449 .col-xs-pull-4{right:33.33333333333333%}.factory-bootstrap-449 .col-xs-pull-3{right:25%}.factory-bootstrap-449 .col-xs-pull-2{right:16.666666666666664%}.factory-bootstrap-449 .col-xs-pull-1{right:8.333333333333332%}.factory-bootstrap-449 .col-xs-pull-0{right:0}.factory-bootstrap-449 .col-xs-push-12{left:100%}.factory-bootstrap-449 .col-xs-push-11{left:91.66666666666666%}.factory-bootstrap-449 .col-xs-push-10{left:83.33333333333334%}.factory-bootstrap-449 .col-xs-push-9{left:75%}.factory-bootstrap-449 .col-xs-push-8{left:66.66666666666666%}.factory-bootstrap-449 .col-xs-push-7{left:58.333333333333336%}.factory-bootstrap-449 .col-xs-push-6{left:50%}.factory-bootstrap-449 .col-xs-push-5{left:41.66666666666667%}.factory-bootstrap-449 .col-xs-push-4{left:33.33333333333333%}.factory-bootstrap-449 .col-xs-push-3{left:25%}.factory-bootstrap-449 .col-xs-push-2{left:16.666666666666664%}.factory-bootstrap-449 .col-xs-push-1{left:8.333333333333332%}.factory-bootstrap-449 .col-xs-push-0{left:0}.factory-bootstrap-449 .col-xs-offset-12{margin-left:100%}.factory-bootstrap-449 .col-xs-offset-11{margin-left:91.66666666666666%}.factory-bootstrap-449 .col-xs-offset-10{margin-left:83.33333333333334%}.factory-bootstrap-449 .col-xs-offset-9{margin-left:75%}.factory-bootstrap-449 .col-xs-offset-8{margin-left:66.66666666666666%}.factory-bootstrap-449 .col-xs-offset-7{margin-left:58.333333333333336%}.factory-bootstrap-449 .col-xs-offset-6{margin-left:50%}.factory-bootstrap-449 .col-xs-offset-5{margin-left:41.66666666666667%}.factory-bootstrap-449 .col-xs-offset-4{margin-left:33.33333333333333%}.factory-bootstrap-449 .col-xs-offset-3{margin-left:25%}.factory-bootstrap-449 .col-xs-offset-2{margin-left:16.666666666666664%}.factory-bootstrap-449 .col-xs-offset-1{margin-left:8.333333333333332%}.factory-bootstrap-449 .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-449 table{max-width:100%;background-color:transparent}.factory-bootstrap-449 th{text-align:left}.factory-bootstrap-449 .table{width:100%;margin-bottom:20px}.factory-bootstrap-449 .table>tbody>tr>td,.factory-bootstrap-449 .table>tbody>tr>th,.factory-bootstrap-449 .table>tfoot>tr>td,.factory-bootstrap-449 .table>tfoot>tr>th,.factory-bootstrap-449 .table>thead>tr>td,.factory-bootstrap-449 .table>thead>tr>th{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.factory-bootstrap-449 .table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.factory-bootstrap-449 .table>caption+thead>tr:first-child>td,.factory-bootstrap-449 .table>caption+thead>tr:first-child>th,.factory-bootstrap-449 .table>colgroup+thead>tr:first-child>td,.factory-bootstrap-449 .table>colgroup+thead>tr:first-child>th,.factory-bootstrap-449 .table>thead:first-child>tr:first-child>td,.factory-bootstrap-449 .table>thead:first-child>tr:first-child>th{border-top:0}.factory-bootstrap-449 .table>tbody+tbody{border-top:2px solid #ddd}.factory-bootstrap-449 .table .table{background-color:#fff}.factory-bootstrap-449 .table-condensed>tbody>tr>td,.factory-bootstrap-449 .table-condensed>tbody>tr>th,.factory-bootstrap-449 .table-condensed>tfoot>tr>td,.factory-bootstrap-449 .table-condensed>tfoot>tr>th,.factory-bootstrap-449 .table-condensed>thead>tr>td,.factory-bootstrap-449 .table-condensed>thead>tr>th{padding:5px}.factory-bootstrap-449 .table-bordered,.factory-bootstrap-449 .table-bordered>tbody>tr>td,.factory-bootstrap-449 .table-bordered>tbody>tr>th,.factory-bootstrap-449 .table-bordered>tfoot>tr>td,.factory-bootstrap-449 .table-bordered>tfoot>tr>th,.factory-bootstrap-449 .table-bordered>thead>tr>td,.factory-bootstrap-449 .table-bordered>thead>tr>th{border:1px solid #ddd}.factory-bootstrap-449 .table-bordered>thead>tr>td,.factory-bootstrap-449 .table-bordered>thead>tr>th{border-bottom-width:2px}.factory-bootstrap-449 .table-striped>tbody>tr:nth-child(odd)>td,.factory-bootstrap-449 .table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.factory-bootstrap-449 .table-hover>tbody>tr:hover>td,.factory-bootstrap-449 .table-hover>tbody>tr:hover>th{background-color:#f5f5f5}.factory-bootstrap-449 table col[class*=col-]{position:static;display:table-column;float:none}.factory-bootstrap-449 table td[class*=col-],.factory-bootstrap-449 table th[class*=col-]{display:table-cell;float:none}.factory-bootstrap-449 .table>tbody>.active>td,.factory-bootstrap-449 .table>tbody>.active>th,.factory-bootstrap-449 .table>tbody>tr>.active,.factory-bootstrap-449 .table>tfoot>.active>td,.factory-bootstrap-449 .table>tfoot>.active>th,.factory-bootstrap-449 .table>tfoot>tr>.active,.factory-bootstrap-449 .table>thead>.active>td,.factory-bootstrap-449 .table>thead>.active>th,.factory-bootstrap-449 .table>thead>tr>.active{background-color:#f5f5f5}.factory-bootstrap-449 .table-hover>tbody>.active:hover>td,.factory-bootstrap-449 .table-hover>tbody>.active:hover>th,.factory-bootstrap-449 .table-hover>tbody>tr>.active:hover{background-color:#e8e8e8}.factory-bootstrap-449 .table>tbody>.success>td,.factory-bootstrap-449 .table>tbody>.success>th,.factory-bootstrap-449 .table>tbody>tr>.success,.factory-bootstrap-449 .table>tfoot>.success>td,.factory-bootstrap-449 .table>tfoot>.success>th,.factory-bootstrap-449 .table>tfoot>tr>.success,.factory-bootstrap-449 .table>thead>.success>td,.factory-bootstrap-449 .table>thead>.success>th,.factory-bootstrap-449 .table>thead>tr>.success{background-color:#dff0d8}.factory-bootstrap-449 .table-hover>tbody>.success:hover>td,.factory-bootstrap-449 .table-hover>tbody>.success:hover>th,.factory-bootstrap-449 .table-hover>tbody>tr>.success:hover{background-color:#d0e9c6}.factory-bootstrap-449 .table>tbody>.danger>td,.factory-bootstrap-449 .table>tbody>.danger>th,.factory-bootstrap-449 .table>tbody>tr>.danger,.factory-bootstrap-449 .table>tfoot>.danger>td,.factory-bootstrap-449 .table>tfoot>.danger>th,.factory-bootstrap-449 .table>tfoot>tr>.danger,.factory-bootstrap-449 .table>thead>.danger>td,.factory-bootstrap-449 .table>thead>.danger>th,.factory-bootstrap-449 .table>thead>tr>.danger{background-color:#f2dede}.factory-bootstrap-449 .table-hover>tbody>.danger:hover>td,.factory-bootstrap-449 .table-hover>tbody>.danger:hover>th,.factory-bootstrap-449 .table-hover>tbody>tr>.danger:hover{background-color:#ebcccc}.factory-bootstrap-449 .table>tbody>.warning>td,.factory-bootstrap-449 .table>tbody>.warning>th,.factory-bootstrap-449 .table>tbody>tr>.warning,.factory-bootstrap-449 .table>tfoot>.warning>td,.factory-bootstrap-449 .table>tfoot>.warning>th,.factory-bootstrap-449 .table>tfoot>tr>.warning,.factory-bootstrap-449 .table>thead>.warning>td,.factory-bootstrap-449 .table>thead>.warning>th,.factory-bootstrap-449 .table>thead>tr>.warning{background-color:#fcf8e3}.factory-bootstrap-449 .table-hover>tbody>.warning:hover>td,.factory-bootstrap-449 .table-hover>tbody>.warning:hover>th,.factory-bootstrap-449 .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-449 fieldset{padding:0;margin:0;border:0}.factory-bootstrap-449 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-449 label{display:inline-block;margin-bottom:5px;font-weight:700}.factory-bootstrap-449 input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.factory-bootstrap-449 input[type=checkbox],.factory-bootstrap-449 input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}.factory-bootstrap-449 input[type=file]{display:block}.factory-bootstrap-449 select[multiple],.factory-bootstrap-449 select[size]{height:auto}.factory-bootstrap-449 select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}.factory-bootstrap-449 input[type=checkbox]:focus,.factory-bootstrap-449 input[type=file]:focus,.factory-bootstrap-449 input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-449 input[type=number]::-webkit-inner-spin-button,.factory-bootstrap-449 input[type=number]::-webkit-outer-spin-button{height:auto}.factory-bootstrap-449 output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.factory-bootstrap-449 .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-449 .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-449 .form-control:-moz-placeholder{color:#999}.factory-bootstrap-449 .form-control::-moz-placeholder{color:#999;opacity:1}.factory-bootstrap-449 .form-control:-ms-input-placeholder{color:#999}.factory-bootstrap-449 .form-control::-webkit-input-placeholder{color:#999}.factory-bootstrap-449 .form-control[disabled],.factory-bootstrap-449 .form-control[readonly],.factory-bootstrap-449 fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}.factory-bootstrap-449 textarea.form-control{height:auto}.factory-bootstrap-449 .form-group{margin-bottom:15px}.factory-bootstrap-449 .checkbox,.factory-bootstrap-449 .radio{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.factory-bootstrap-449 .checkbox label,.factory-bootstrap-449 .radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.factory-bootstrap-449 .checkbox input[type=checkbox],.factory-bootstrap-449 .checkbox-inline input[type=checkbox],.factory-bootstrap-449 .radio input[type=radio],.factory-bootstrap-449 .radio-inline input[type=radio]{float:left;margin-left:-20px}.factory-bootstrap-449 .checkbox+.checkbox,.factory-bootstrap-449 .radio+.radio{margin-top:-5px}.factory-bootstrap-449 .checkbox-inline,.factory-bootstrap-449 .radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.factory-bootstrap-449 .checkbox-inline+.checkbox-inline,.factory-bootstrap-449 .radio-inline+.radio-inline{margin-top:0;margin-left:10px}.factory-bootstrap-449 .checkbox-inline[disabled],.factory-bootstrap-449 .checkbox[disabled],.factory-bootstrap-449 .radio-inline[disabled],.factory-bootstrap-449 .radio[disabled],.factory-bootstrap-449 fieldset[disabled] .checkbox,.factory-bootstrap-449 fieldset[disabled] .checkbox-inline,.factory-bootstrap-449 fieldset[disabled] .radio,.factory-bootstrap-449 fieldset[disabled] .radio-inline,.factory-bootstrap-449 fieldset[disabled] input[type=checkbox],.factory-bootstrap-449 fieldset[disabled] input[type=radio],.factory-bootstrap-449 input[type=checkbox][disabled],.factory-bootstrap-449 input[type=radio][disabled]{cursor:not-allowed}.factory-bootstrap-449 .input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 select.input-sm{height:30px;line-height:30px}.factory-bootstrap-449 textarea.input-sm{height:auto}.factory-bootstrap-449 .input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-449 select.input-lg{height:46px;line-height:46px}.factory-bootstrap-449 textarea.input-lg{height:auto}.factory-bootstrap-449 .has-warning .checkbox,.factory-bootstrap-449 .has-warning .checkbox-inline,.factory-bootstrap-449 .has-warning .control-label,.factory-bootstrap-449 .has-warning .help-block,.factory-bootstrap-449 .has-warning .radio,.factory-bootstrap-449 .has-warning .radio-inline{color:#8a6d3b}.factory-bootstrap-449 .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-449 .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-449 .has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.factory-bootstrap-449 .has-error .checkbox,.factory-bootstrap-449 .has-error .checkbox-inline,.factory-bootstrap-449 .has-error .control-label,.factory-bootstrap-449 .has-error .help-block,.factory-bootstrap-449 .has-error .radio,.factory-bootstrap-449 .has-error .radio-inline{color:#a94442}.factory-bootstrap-449 .controls{display:block}.factory-bootstrap-449 .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-449 .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-449 .has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.factory-bootstrap-449 .has-success .checkbox,.factory-bootstrap-449 .has-success .checkbox-inline,.factory-bootstrap-449 .has-success .control-label,.factory-bootstrap-449 .has-success .help-block,.factory-bootstrap-449 .has-success .radio,.factory-bootstrap-449 .has-success .radio-inline{color:#3c763d}.factory-bootstrap-449 .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-449 .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-449 .has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.factory-bootstrap-449 .form-control-static{margin-bottom:0}.factory-bootstrap-449 .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-449 .form-horizontal .checkbox,.factory-bootstrap-449 .form-horizontal .checkbox-inline,.factory-bootstrap-449 .form-horizontal .control-label,.factory-bootstrap-449 .form-horizontal .radio,.factory-bootstrap-449 .form-horizontal .radio-inline{position:relative;padding-top:7px;margin-top:0;margin-bottom:0}.factory-bootstrap-449 .form-horizontal .control-label{max-width:200px}.factory-bootstrap-449 .form-horizontal .checkbox,.factory-bootstrap-449 .form-horizontal .radio{min-height:27px}.factory-bootstrap-449 .form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.factory-bootstrap-449 .form-horizontal .form-group:after,.factory-bootstrap-449 .form-horizontal .form-group:before{display:table;content:" "}.factory-bootstrap-449 .form-horizontal .form-group:after{clear:both}.factory-bootstrap-449 .form-horizontal .form-control-static{padding-top:7px}@media (min-width:768px){.form-horizontal .control-label{text-align:right}}.factory-bootstrap-449 .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-449 .btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.factory-bootstrap-449 .btn{text-decoration:none}.factory-bootstrap-449 .btn:focus,.factory-bootstrap-449 .btn:hover{color:#333;text-decoration:none}.factory-bootstrap-449 .btn.disabled,.factory-bootstrap-449 .btn[disabled],.factory-bootstrap-449 fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-449 .btn-default.active,.factory-bootstrap-449 .btn-default:active,.factory-bootstrap-449 .btn-default:focus,.factory-bootstrap-449 .btn-default:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-default{background:#fafafa;border-color:#999;color:#222}.factory-bootstrap-449 .btn-default.active,.factory-bootstrap-449 .btn-default:active,.factory-bootstrap-449 .open .dropdown-toggle.btn-default{background-image:none}.factory-bootstrap-449 .btn-default.disabled,.factory-bootstrap-449 .btn-default.disabled.active,.factory-bootstrap-449 .btn-default.disabled:active,.factory-bootstrap-449 .btn-default.disabled:focus,.factory-bootstrap-449 .btn-default.disabled:hover,.factory-bootstrap-449 .btn-default[disabled],.factory-bootstrap-449 .btn-default[disabled].active,.factory-bootstrap-449 .btn-default[disabled]:active,.factory-bootstrap-449 .btn-default[disabled]:focus,.factory-bootstrap-449 .btn-default[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-default,.factory-bootstrap-449 fieldset[disabled] .btn-default.active,.factory-bootstrap-449 fieldset[disabled] .btn-default:active,.factory-bootstrap-449 fieldset[disabled] .btn-default:focus,.factory-bootstrap-449 fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.factory-bootstrap-449 .btn-default .badge{color:#fff;background-color:#fff}.factory-bootstrap-449 .btn-primary.active,.factory-bootstrap-449 .btn-primary:active,.factory-bootstrap-449 .btn-primary:focus,.factory-bootstrap-449 .btn-primary:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.factory-bootstrap-449 .btn-primary.active,.factory-bootstrap-449 .btn-primary:active,.factory-bootstrap-449 .open .dropdown-toggle.btn-primary{background-image:none}.factory-bootstrap-449 .btn-primary.disabled,.factory-bootstrap-449 .btn-primary.disabled.active,.factory-bootstrap-449 .btn-primary.disabled:active,.factory-bootstrap-449 .btn-primary.disabled:focus,.factory-bootstrap-449 .btn-primary.disabled:hover,.factory-bootstrap-449 .btn-primary[disabled],.factory-bootstrap-449 .btn-primary[disabled].active,.factory-bootstrap-449 .btn-primary[disabled]:active,.factory-bootstrap-449 .btn-primary[disabled]:focus,.factory-bootstrap-449 .btn-primary[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-primary,.factory-bootstrap-449 fieldset[disabled] .btn-primary.active,.factory-bootstrap-449 fieldset[disabled] .btn-primary:active,.factory-bootstrap-449 fieldset[disabled] .btn-primary:focus,.factory-bootstrap-449 fieldset[disabled] .btn-primary:hover{background-color:#428bca;border-color:#357ebd}.factory-bootstrap-449 .btn-primary .badge{color:#428bca;background-color:#fff}.factory-bootstrap-449 .btn-warning{color:#fff;background-color:#f0ad4e}.factory-bootstrap-449 .btn-warning.active,.factory-bootstrap-449 .btn-warning:active,.factory-bootstrap-449 .btn-warning:focus,.factory-bootstrap-449 .btn-warning:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.factory-bootstrap-449 .btn-warning.active,.factory-bootstrap-449 .btn-warning:active,.factory-bootstrap-449 .open .dropdown-toggle.btn-warning{background-image:none}.factory-bootstrap-449 .btn-warning.disabled,.factory-bootstrap-449 .btn-warning.disabled.active,.factory-bootstrap-449 .btn-warning.disabled:active,.factory-bootstrap-449 .btn-warning.disabled:focus,.factory-bootstrap-449 .btn-warning.disabled:hover,.factory-bootstrap-449 .btn-warning[disabled],.factory-bootstrap-449 .btn-warning[disabled].active,.factory-bootstrap-449 .btn-warning[disabled]:active,.factory-bootstrap-449 .btn-warning[disabled]:focus,.factory-bootstrap-449 .btn-warning[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-warning,.factory-bootstrap-449 fieldset[disabled] .btn-warning.active,.factory-bootstrap-449 fieldset[disabled] .btn-warning:active,.factory-bootstrap-449 fieldset[disabled] .btn-warning:focus,.factory-bootstrap-449 fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.factory-bootstrap-449 .btn-warning .badge{color:#f0ad4e;background-color:#fff}.factory-bootstrap-449 .btn-success{color:#fff;background-color:#5cb85c}.factory-bootstrap-449 .btn-success.active,.factory-bootstrap-449 .btn-success:active,.factory-bootstrap-449 .btn-success:focus,.factory-bootstrap-449 .btn-success:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.factory-bootstrap-449 .btn-success.active,.factory-bootstrap-449 .btn-success:active,.factory-bootstrap-449 .open .dropdown-toggle.btn-success{background-image:none}.factory-bootstrap-449 .btn-success.disabled,.factory-bootstrap-449 .btn-success.disabled.active,.factory-bootstrap-449 .btn-success.disabled:active,.factory-bootstrap-449 .btn-success.disabled:focus,.factory-bootstrap-449 .btn-success.disabled:hover,.factory-bootstrap-449 .btn-success[disabled],.factory-bootstrap-449 .btn-success[disabled].active,.factory-bootstrap-449 .btn-success[disabled]:active,.factory-bootstrap-449 .btn-success[disabled]:focus,.factory-bootstrap-449 .btn-success[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-success,.factory-bootstrap-449 fieldset[disabled] .btn-success.active,.factory-bootstrap-449 fieldset[disabled] .btn-success:active,.factory-bootstrap-449 fieldset[disabled] .btn-success:focus,.factory-bootstrap-449 fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.factory-bootstrap-449 .btn-success .badge{color:#5cb85c;background-color:#fff}.factory-bootstrap-449 .btn-info{color:#fff;background-color:#5bc0de}.factory-bootstrap-449 .btn-info.active,.factory-bootstrap-449 .btn-info:active,.factory-bootstrap-449 .btn-info:focus,.factory-bootstrap-449 .btn-info:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.factory-bootstrap-449 .btn-info.active,.factory-bootstrap-449 .btn-info:active,.factory-bootstrap-449 .open .dropdown-toggle.btn-info{background-image:none}.factory-bootstrap-449 .btn-info.disabled,.factory-bootstrap-449 .btn-info.disabled.active,.factory-bootstrap-449 .btn-info.disabled:active,.factory-bootstrap-449 .btn-info.disabled:focus,.factory-bootstrap-449 .btn-info.disabled:hover,.factory-bootstrap-449 .btn-info[disabled],.factory-bootstrap-449 .btn-info[disabled].active,.factory-bootstrap-449 .btn-info[disabled]:active,.factory-bootstrap-449 .btn-info[disabled]:focus,.factory-bootstrap-449 .btn-info[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-info,.factory-bootstrap-449 fieldset[disabled] .btn-info.active,.factory-bootstrap-449 fieldset[disabled] .btn-info:active,.factory-bootstrap-449 fieldset[disabled] .btn-info:focus,.factory-bootstrap-449 fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.factory-bootstrap-449 .btn-info .badge{color:#5bc0de;background-color:#fff}.factory-bootstrap-449 .btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.factory-bootstrap-449 .btn-link,.factory-bootstrap-449 .btn-link:active,.factory-bootstrap-449 .btn-link[disabled],.factory-bootstrap-449 fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-449 .btn-link,.factory-bootstrap-449 .btn-link:active,.factory-bootstrap-449 .btn-link:focus,.factory-bootstrap-449 .btn-link:hover{border-color:transparent}.factory-bootstrap-449 .btn-link:focus,.factory-bootstrap-449 .btn-link:hover{color:#2a6496;text-decoration:underline;background-color:transparent}.factory-bootstrap-449 .btn-link[disabled]:focus,.factory-bootstrap-449 .btn-link[disabled]:hover,.factory-bootstrap-449 fieldset[disabled] .btn-link:focus,.factory-bootstrap-449 fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.factory-bootstrap-449 .btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-449 .btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 .btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 .btn-block{display:block;width:100%;padding-right:0;padding-left:0}.factory-bootstrap-449 .btn-block+.btn-block{margin-top:5px}.factory-bootstrap-449 input[type=button].btn-block,.factory-bootstrap-449 input[type=reset].btn-block,.factory-bootstrap-449 input[type=submit].btn-block{width:100%}.factory-bootstrap-449 .fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.factory-bootstrap-449 .fade.in{opacity:1}.factory-bootstrap-449 .collapse{display:none}.factory-bootstrap-449 .collapse.in{display:block}.factory-bootstrap-449 .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-449 .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-449 .glyphicon:empty{width:1em}.factory-bootstrap-449 .glyphicon-asterisk:before{content:"\2a"}.factory-bootstrap-449 .glyphicon-plus:before{content:"\2b"}.factory-bootstrap-449 .glyphicon-euro:before{content:"\20ac"}.factory-bootstrap-449 .glyphicon-minus:before{content:"\2212"}.factory-bootstrap-449 .glyphicon-cloud:before{content:"\2601"}.factory-bootstrap-449 .glyphicon-envelope:before{content:"\2709"}.factory-bootstrap-449 .glyphicon-pencil:before{content:"\270f"}.factory-bootstrap-449 .glyphicon-glass:before{content:"\e001"}.factory-bootstrap-449 .glyphicon-music:before{content:"\e002"}.factory-bootstrap-449 .glyphicon-search:before{content:"\e003"}.factory-bootstrap-449 .glyphicon-heart:before{content:"\e005"}.factory-bootstrap-449 .glyphicon-star:before{content:"\e006"}.factory-bootstrap-449 .glyphicon-star-empty:before{content:"\e007"}.factory-bootstrap-449 .glyphicon-user:before{content:"\e008"}.factory-bootstrap-449 .glyphicon-film:before{content:"\e009"}.factory-bootstrap-449 .glyphicon-th-large:before{content:"\e010"}.factory-bootstrap-449 .glyphicon-th:before{content:"\e011"}.factory-bootstrap-449 .glyphicon-th-list:before{content:"\e012"}.factory-bootstrap-449 .glyphicon-ok:before{content:"\e013"}.factory-bootstrap-449 .glyphicon-remove:before{content:"\e014"}.factory-bootstrap-449 .glyphicon-zoom-in:before{content:"\e015"}.factory-bootstrap-449 .glyphicon-zoom-out:before{content:"\e016"}.factory-bootstrap-449 .glyphicon-off:before{content:"\e017"}.factory-bootstrap-449 .glyphicon-signal:before{content:"\e018"}.factory-bootstrap-449 .glyphicon-cog:before{content:"\e019"}.factory-bootstrap-449 .glyphicon-trash:before{content:"\e020"}.factory-bootstrap-449 .glyphicon-home:before{content:"\e021"}.factory-bootstrap-449 .glyphicon-file:before{content:"\e022"}.factory-bootstrap-449 .glyphicon-time:before{content:"\e023"}.factory-bootstrap-449 .glyphicon-road:before{content:"\e024"}.factory-bootstrap-449 .glyphicon-download-alt:before{content:"\e025"}.factory-bootstrap-449 .glyphicon-download:before{content:"\e026"}.factory-bootstrap-449 .glyphicon-upload:before{content:"\e027"}.factory-bootstrap-449 .glyphicon-inbox:before{content:"\e028"}.factory-bootstrap-449 .glyphicon-play-circle:before{content:"\e029"}.factory-bootstrap-449 .glyphicon-repeat:before{content:"\e030"}.factory-bootstrap-449 .glyphicon-refresh:before{content:"\e031"}.factory-bootstrap-449 .glyphicon-list-alt:before{content:"\e032"}.factory-bootstrap-449 .glyphicon-lock:before{content:"\e033"}.factory-bootstrap-449 .glyphicon-flag:before{content:"\e034"}.factory-bootstrap-449 .glyphicon-headphones:before{content:"\e035"}.factory-bootstrap-449 .glyphicon-volume-off:before{content:"\e036"}.factory-bootstrap-449 .glyphicon-volume-down:before{content:"\e037"}.factory-bootstrap-449 .glyphicon-volume-up:before{content:"\e038"}.factory-bootstrap-449 .glyphicon-qrcode:before{content:"\e039"}.factory-bootstrap-449 .glyphicon-barcode:before{content:"\e040"}.factory-bootstrap-449 .glyphicon-tag:before{content:"\e041"}.factory-bootstrap-449 .glyphicon-tags:before{content:"\e042"}.factory-bootstrap-449 .glyphicon-book:before{content:"\e043"}.factory-bootstrap-449 .glyphicon-bookmark:before{content:"\e044"}.factory-bootstrap-449 .glyphicon-print:before{content:"\e045"}.factory-bootstrap-449 .glyphicon-camera:before{content:"\e046"}.factory-bootstrap-449 .glyphicon-font:before{content:"\e047"}.factory-bootstrap-449 .glyphicon-bold:before{content:"\e048"}.factory-bootstrap-449 .glyphicon-italic:before{content:"\e049"}.factory-bootstrap-449 .glyphicon-text-height:before{content:"\e050"}.factory-bootstrap-449 .glyphicon-text-width:before{content:"\e051"}.factory-bootstrap-449 .glyphicon-align-left:before{content:"\e052"}.factory-bootstrap-449 .glyphicon-align-center:before{content:"\e053"}.factory-bootstrap-449 .glyphicon-align-right:before{content:"\e054"}.factory-bootstrap-449 .glyphicon-align-justify:before{content:"\e055"}.factory-bootstrap-449 .glyphicon-list:before{content:"\e056"}.factory-bootstrap-449 .glyphicon-indent-left:before{content:"\e057"}.factory-bootstrap-449 .glyphicon-indent-right:before{content:"\e058"}.factory-bootstrap-449 .glyphicon-facetime-video:before{content:"\e059"}.factory-bootstrap-449 .glyphicon-picture:before{content:"\e060"}.factory-bootstrap-449 .glyphicon-map-marker:before{content:"\e062"}.factory-bootstrap-449 .glyphicon-adjust:before{content:"\e063"}.factory-bootstrap-449 .glyphicon-tint:before{content:"\e064"}.factory-bootstrap-449 .glyphicon-edit:before{content:"\e065"}.factory-bootstrap-449 .glyphicon-share:before{content:"\e066"}.factory-bootstrap-449 .glyphicon-check:before{content:"\e067"}.factory-bootstrap-449 .glyphicon-move:before{content:"\e068"}.factory-bootstrap-449 .glyphicon-step-backward:before{content:"\e069"}.factory-bootstrap-449 .glyphicon-fast-backward:before{content:"\e070"}.factory-bootstrap-449 .glyphicon-backward:before{content:"\e071"}.factory-bootstrap-449 .glyphicon-play:before{content:"\e072"}.factory-bootstrap-449 .glyphicon-pause:before{content:"\e073"}.factory-bootstrap-449 .glyphicon-stop:before{content:"\e074"}.factory-bootstrap-449 .glyphicon-forward:before{content:"\e075"}.factory-bootstrap-449 .glyphicon-fast-forward:before{content:"\e076"}.factory-bootstrap-449 .glyphicon-step-forward:before{content:"\e077"}.factory-bootstrap-449 .glyphicon-eject:before{content:"\e078"}.factory-bootstrap-449 .glyphicon-chevron-left:before{content:"\e079"}.factory-bootstrap-449 .glyphicon-chevron-right:before{content:"\e080"}.factory-bootstrap-449 .glyphicon-plus-sign:before{content:"\e081"}.factory-bootstrap-449 .glyphicon-minus-sign:before{content:"\e082"}.factory-bootstrap-449 .glyphicon-remove-sign:before{content:"\e083"}.factory-bootstrap-449 .glyphicon-ok-sign:before{content:"\e084"}.factory-bootstrap-449 .glyphicon-question-sign:before{content:"\e085"}.factory-bootstrap-449 .glyphicon-info-sign:before{content:"\e086"}.factory-bootstrap-449 .glyphicon-screenshot:before{content:"\e087"}.factory-bootstrap-449 .glyphicon-remove-circle:before{content:"\e088"}.factory-bootstrap-449 .glyphicon-ok-circle:before{content:"\e089"}.factory-bootstrap-449 .glyphicon-ban-circle:before{content:"\e090"}.factory-bootstrap-449 .glyphicon-arrow-left:before{content:"\e091"}.factory-bootstrap-449 .glyphicon-arrow-right:before{content:"\e092"}.factory-bootstrap-449 .glyphicon-arrow-up:before{content:"\e093"}.factory-bootstrap-449 .glyphicon-arrow-down:before{content:"\e094"}.factory-bootstrap-449 .glyphicon-share-alt:before{content:"\e095"}.factory-bootstrap-449 .glyphicon-resize-full:before{content:"\e096"}.factory-bootstrap-449 .glyphicon-resize-small:before{content:"\e097"}.factory-bootstrap-449 .glyphicon-exclamation-sign:before{content:"\e101"}.factory-bootstrap-449 .glyphicon-gift:before{content:"\e102"}.factory-bootstrap-449 .glyphicon-leaf:before{content:"\e103"}.factory-bootstrap-449 .glyphicon-fire:before{content:"\e104"}.factory-bootstrap-449 .glyphicon-eye-open:before{content:"\e105"}.factory-bootstrap-449 .glyphicon-eye-close:before{content:"\e106"}.factory-bootstrap-449 .glyphicon-warning-sign:before{content:"\e107"}.factory-bootstrap-449 .glyphicon-plane:before{content:"\e108"}.factory-bootstrap-449 .glyphicon-calendar:before{content:"\e109"}.factory-bootstrap-449 .glyphicon-random:before{content:"\e110"}.factory-bootstrap-449 .glyphicon-comment:before{content:"\e111"}.factory-bootstrap-449 .glyphicon-magnet:before{content:"\e112"}.factory-bootstrap-449 .glyphicon-chevron-up:before{content:"\e113"}.factory-bootstrap-449 .glyphicon-chevron-down:before{content:"\e114"}.factory-bootstrap-449 .glyphicon-retweet:before{content:"\e115"}.factory-bootstrap-449 .glyphicon-shopping-cart:before{content:"\e116"}.factory-bootstrap-449 .glyphicon-folder-close:before{content:"\e117"}.factory-bootstrap-449 .glyphicon-folder-open:before{content:"\e118"}.factory-bootstrap-449 .glyphicon-resize-vertical:before{content:"\e119"}.factory-bootstrap-449 .glyphicon-resize-horizontal:before{content:"\e120"}.factory-bootstrap-449 .glyphicon-hdd:before{content:"\e121"}.factory-bootstrap-449 .glyphicon-bullhorn:before{content:"\e122"}.factory-bootstrap-449 .glyphicon-bell:before{content:"\e123"}.factory-bootstrap-449 .glyphicon-certificate:before{content:"\e124"}.factory-bootstrap-449 .glyphicon-thumbs-up:before{content:"\e125"}.factory-bootstrap-449 .glyphicon-thumbs-down:before{content:"\e126"}.factory-bootstrap-449 .glyphicon-hand-right:before{content:"\e127"}.factory-bootstrap-449 .glyphicon-hand-left:before{content:"\e128"}.factory-bootstrap-449 .glyphicon-hand-up:before{content:"\e129"}.factory-bootstrap-449 .glyphicon-hand-down:before{content:"\e130"}.factory-bootstrap-449 .glyphicon-circle-arrow-right:before{content:"\e131"}.factory-bootstrap-449 .glyphicon-circle-arrow-left:before{content:"\e132"}.factory-bootstrap-449 .glyphicon-circle-arrow-up:before{content:"\e133"}.factory-bootstrap-449 .glyphicon-circle-arrow-down:before{content:"\e134"}.factory-bootstrap-449 .glyphicon-globe:before{content:"\e135"}.factory-bootstrap-449 .glyphicon-wrench:before{content:"\e136"}.factory-bootstrap-449 .glyphicon-tasks:before{content:"\e137"}.factory-bootstrap-449 .glyphicon-filter:before{content:"\e138"}.factory-bootstrap-449 .glyphicon-briefcase:before{content:"\e139"}.factory-bootstrap-449 .glyphicon-fullscreen:before{content:"\e140"}.factory-bootstrap-449 .glyphicon-dashboard:before{content:"\e141"}.factory-bootstrap-449 .glyphicon-paperclip:before{content:"\e142"}.factory-bootstrap-449 .glyphicon-heart-empty:before{content:"\e143"}.factory-bootstrap-449 .glyphicon-link:before{content:"\e144"}.factory-bootstrap-449 .glyphicon-phone:before{content:"\e145"}.factory-bootstrap-449 .glyphicon-pushpin:before{content:"\e146"}.factory-bootstrap-449 .glyphicon-usd:before{content:"\e148"}.factory-bootstrap-449 .glyphicon-gbp:before{content:"\e149"}.factory-bootstrap-449 .glyphicon-sort:before{content:"\e150"}.factory-bootstrap-449 .glyphicon-sort-by-alphabet:before{content:"\e151"}.factory-bootstrap-449 .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.factory-bootstrap-449 .glyphicon-sort-by-order:before{content:"\e153"}.factory-bootstrap-449 .glyphicon-sort-by-order-alt:before{content:"\e154"}.factory-bootstrap-449 .glyphicon-sort-by-attributes:before{content:"\e155"}.factory-bootstrap-449 .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.factory-bootstrap-449 .glyphicon-unchecked:before{content:"\e157"}.factory-bootstrap-449 .glyphicon-expand:before{content:"\e158"}.factory-bootstrap-449 .glyphicon-collapse-down:before{content:"\e159"}.factory-bootstrap-449 .glyphicon-collapse-up:before{content:"\e160"}.factory-bootstrap-449 .glyphicon-log-in:before{content:"\e161"}.factory-bootstrap-449 .glyphicon-flash:before{content:"\e162"}.factory-bootstrap-449 .glyphicon-log-out:before{content:"\e163"}.factory-bootstrap-449 .glyphicon-new-window:before{content:"\e164"}.factory-bootstrap-449 .glyphicon-record:before{content:"\e165"}.factory-bootstrap-449 .glyphicon-save:before{content:"\e166"}.factory-bootstrap-449 .glyphicon-open:before{content:"\e167"}.factory-bootstrap-449 .glyphicon-saved:before{content:"\e168"}.factory-bootstrap-449 .glyphicon-import:before{content:"\e169"}.factory-bootstrap-449 .glyphicon-export:before{content:"\e170"}.factory-bootstrap-449 .glyphicon-send:before{content:"\e171"}.factory-bootstrap-449 .glyphicon-floppy-disk:before{content:"\e172"}.factory-bootstrap-449 .glyphicon-floppy-saved:before{content:"\e173"}.factory-bootstrap-449 .glyphicon-floppy-remove:before{content:"\e174"}.factory-bootstrap-449 .glyphicon-floppy-save:before{content:"\e175"}.factory-bootstrap-449 .glyphicon-floppy-open:before{content:"\e176"}.factory-bootstrap-449 .glyphicon-credit-card:before{content:"\e177"}.factory-bootstrap-449 .glyphicon-transfer:before{content:"\e178"}.factory-bootstrap-449 .glyphicon-cutlery:before{content:"\e179"}.factory-bootstrap-449 .glyphicon-header:before{content:"\e180"}.factory-bootstrap-449 .glyphicon-compressed:before{content:"\e181"}.factory-bootstrap-449 .glyphicon-earphone:before{content:"\e182"}.factory-bootstrap-449 .glyphicon-phone-alt:before{content:"\e183"}.factory-bootstrap-449 .glyphicon-tower:before{content:"\e184"}.factory-bootstrap-449 .glyphicon-stats:before{content:"\e185"}.factory-bootstrap-449 .glyphicon-sd-video:before{content:"\e186"}.factory-bootstrap-449 .glyphicon-hd-video:before{content:"\e187"}.factory-bootstrap-449 .glyphicon-subtitles:before{content:"\e188"}.factory-bootstrap-449 .glyphicon-sound-stereo:before{content:"\e189"}.factory-bootstrap-449 .glyphicon-sound-dolby:before{content:"\e190"}.factory-bootstrap-449 .glyphicon-sound-5-1:before{content:"\e191"}.factory-bootstrap-449 .glyphicon-sound-6-1:before{content:"\e192"}.factory-bootstrap-449 .glyphicon-sound-7-1:before{content:"\e193"}.factory-bootstrap-449 .glyphicon-copyright-mark:before{content:"\e194"}.factory-bootstrap-449 .glyphicon-registration-mark:before{content:"\e195"}.factory-bootstrap-449 .glyphicon-cloud-download:before{content:"\e197"}.factory-bootstrap-449 .glyphicon-cloud-upload:before{content:"\e198"}.factory-bootstrap-449 .glyphicon-tree-conifer:before{content:"\e199"}.factory-bootstrap-449 .glyphicon-tree-deciduous:before{content:"\e200"}.factory-bootstrap-449 .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-449 .dropdown{position:relative}.factory-bootstrap-449 .dropdown-toggle:focus{outline:0}.factory-bootstrap-449 .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-449 .dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-449 .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-449 .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-449 .dropdown-menu>li>a:focus,.factory-bootstrap-449 .dropdown-menu>li>a:hover{color:#262626;text-decoration:none}.factory-bootstrap-449 .dropdown-menu>.active>a,.factory-bootstrap-449 .dropdown-menu>.active>a:focus,.factory-bootstrap-449 .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0}.factory-bootstrap-449 .dropdown-menu>.disabled>a,.factory-bootstrap-449 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-449 .dropdown-menu>.disabled>a:hover{color:#999}.factory-bootstrap-449 .dropdown-menu>.disabled>a:focus,.factory-bootstrap-449 .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-449 .open>.dropdown-menu{display:block}.factory-bootstrap-449 .open>a{outline:0}.factory-bootstrap-449 .dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.factory-bootstrap-449 .dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.factory-bootstrap-449 .pull-right>.dropdown-menu{right:0;left:auto}.factory-bootstrap-449 .dropup .caret,.factory-bootstrap-449 .navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.factory-bootstrap-449 .dropup .dropdown-menu,.factory-bootstrap-449 .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-449 .btn-group,.factory-bootstrap-449 .btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.factory-bootstrap-449 .btn-group-vertical>.btn,.factory-bootstrap-449 .btn-group>.btn{position:relative;float:left}.factory-bootstrap-449 .btn-group-vertical>.btn.active,.factory-bootstrap-449 .btn-group-vertical>.btn:active,.factory-bootstrap-449 .btn-group-vertical>.btn:focus,.factory-bootstrap-449 .btn-group-vertical>.btn:hover,.factory-bootstrap-449 .btn-group>.btn.active,.factory-bootstrap-449 .btn-group>.btn:active,.factory-bootstrap-449 .btn-group>.btn:focus,.factory-bootstrap-449 .btn-group>.btn:hover{z-index:2}.factory-bootstrap-449 .btn-group-vertical>.btn:focus,.factory-bootstrap-449 .btn-group>.btn:focus{outline:0}.factory-bootstrap-449 .btn-group .btn+.btn,.factory-bootstrap-449 .btn-group .btn+.btn-group,.factory-bootstrap-449 .btn-group .btn-group+.btn,.factory-bootstrap-449 .btn-group .btn-group+.btn-group{margin-left:-1px}.factory-bootstrap-449 .btn-toolbar:after,.factory-bootstrap-449 .btn-toolbar:before{display:table;content:" "}.factory-bootstrap-449 .btn-toolbar:after{clear:both}.factory-bootstrap-449 .btn-toolbar .btn-group{float:left}.factory-bootstrap-449 .btn-toolbar>.btn+.btn,.factory-bootstrap-449 .btn-toolbar>.btn+.btn-group,.factory-bootstrap-449 .btn-toolbar>.btn-group+.btn,.factory-bootstrap-449 .btn-toolbar>.btn-group+.btn-group{margin-left:5px}.factory-bootstrap-449 .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.factory-bootstrap-449 .btn-group>.btn:first-child{margin-left:0}.factory-bootstrap-449 .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-449 .btn-group>.btn:last-child:not(:first-child),.factory-bootstrap-449 .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .btn-group>.btn-group{float:left}.factory-bootstrap-449 .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-449 .btn-group>.btn-group:first-child>.btn:last-child,.factory-bootstrap-449 .btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-449 .btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .btn-group .dropdown-toggle:active,.factory-bootstrap-449 .btn-group.open .dropdown-toggle{outline:0}.factory-bootstrap-449 .btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 .btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 .btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-449 .btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.factory-bootstrap-449 .btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.factory-bootstrap-449 .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-449 .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-449 .btn-group{border:4px solid #f9f9f9;border-radius:4px}.factory-bootstrap-449 .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-449 .btn .caret{margin-left:0}.factory-bootstrap-449 .btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.factory-bootstrap-449 .dropup .btn-lg .caret{border-width:0 5px 5px}.factory-bootstrap-449 .btn-group-vertical>.btn,.factory-bootstrap-449 .btn-group-vertical>.btn-group,.factory-bootstrap-449 .btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.factory-bootstrap-449 .btn-group-vertical>.btn-group:after,.factory-bootstrap-449 .btn-group-vertical>.btn-group:before{display:table;content:" "}.factory-bootstrap-449 .btn-group-vertical>.btn-group:after{clear:both}.factory-bootstrap-449 .btn-group-vertical>.btn-group>.btn{float:none}.factory-bootstrap-449 .btn-group-vertical>.btn+.btn,.factory-bootstrap-449 .btn-group-vertical>.btn+.btn-group,.factory-bootstrap-449 .btn-group-vertical>.btn-group+.btn,.factory-bootstrap-449 .btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.factory-bootstrap-449 .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-449 .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-449 .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-449 .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.factory-bootstrap-449 .btn-group-vertical>.btn-group:first-child>.btn:last-child,.factory-bootstrap-449 .btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-449 .btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.factory-bootstrap-449 .btn-group-justified>.btn,.factory-bootstrap-449 .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.factory-bootstrap-449 .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-449 .input-group{position:relative;display:table;border-collapse:separate}.factory-bootstrap-449 .input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.factory-bootstrap-449 .input-group .form-control{width:100%;margin-bottom:0}.factory-bootstrap-449 .input-group-lg>.form-control,.factory-bootstrap-449 .input-group-lg>.input-group-addon,.factory-bootstrap-449 .input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.factory-bootstrap-449 select.input-group-lg>.form-control,.factory-bootstrap-449 select.input-group-lg>.input-group-addon,.factory-bootstrap-449 select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.factory-bootstrap-449 textarea.input-group-lg>.form-control,.factory-bootstrap-449 textarea.input-group-lg>.input-group-addon,.factory-bootstrap-449 textarea.input-group-lg>.input-group-btn>.btn{height:auto}.factory-bootstrap-449 .input-group-sm>.form-control,.factory-bootstrap-449 .input-group-sm>.input-group-addon,.factory-bootstrap-449 .input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.factory-bootstrap-449 select.input-group-sm>.form-control,.factory-bootstrap-449 select.input-group-sm>.input-group-addon,.factory-bootstrap-449 select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.factory-bootstrap-449 textarea.input-group-sm>.form-control,.factory-bootstrap-449 textarea.input-group-sm>.input-group-addon,.factory-bootstrap-449 textarea.input-group-sm>.input-group-btn>.btn{height:auto}.factory-bootstrap-449 .input-group .form-control,.factory-bootstrap-449 .input-group-addon,.factory-bootstrap-449 .input-group-btn{display:table-cell}.factory-bootstrap-449 .input-group .form-control:not(:first-child):not(:last-child),.factory-bootstrap-449 .input-group-addon:not(:first-child):not(:last-child),.factory-bootstrap-449 .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.factory-bootstrap-449 .input-group-addon,.factory-bootstrap-449 .input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.factory-bootstrap-449 .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-449 .input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.factory-bootstrap-449 .input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.factory-bootstrap-449 .input-group-addon input[type=checkbox],.factory-bootstrap-449 .input-group-addon input[type=radio]{margin-top:0}.factory-bootstrap-449 .input-group .form-control:first-child,.factory-bootstrap-449 .input-group-addon:first-child,.factory-bootstrap-449 .input-group-btn:first-child>.btn,.factory-bootstrap-449 .input-group-btn:first-child>.dropdown-toggle,.factory-bootstrap-449 .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.factory-bootstrap-449 .input-group-addon:first-child{border-right:0}.factory-bootstrap-449 .input-group .form-control:last-child,.factory-bootstrap-449 .input-group-addon:last-child,.factory-bootstrap-449 .input-group-btn:first-child>.btn:not(:first-child),.factory-bootstrap-449 .input-group-btn:last-child>.btn,.factory-bootstrap-449 .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .input-group-addon:last-child{border-left:0}.factory-bootstrap-449 .input-group-btn{position:relative;white-space:nowrap}.factory-bootstrap-449 .input-group-btn:first-child>.btn{margin-right:-1px}.factory-bootstrap-449 .input-group-btn:last-child>.btn{margin-left:-1px}.factory-bootstrap-449 .input-group-btn>.btn{position:relative}.factory-bootstrap-449 .input-group-btn>.btn+.btn{margin-left:-4px}.factory-bootstrap-449 .input-group-btn>.btn:active,.factory-bootstrap-449 .input-group-btn>.btn:hover{z-index:2}.factory-bootstrap-449 .nav{padding-left:0;margin-bottom:0;list-style:none}.factory-bootstrap-449 .nav:after,.factory-bootstrap-449 .nav:before{display:table;content:" "}.factory-bootstrap-449 .nav:after{clear:both}.factory-bootstrap-449 .nav>li{position:relative;display:block}.factory-bootstrap-449 .nav>li>a{position:relative;display:block;padding:10px 15px}.factory-bootstrap-449 .nav>li>a:focus,.factory-bootstrap-449 .nav>li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-449 .nav>li.disabled>a{color:#999}.factory-bootstrap-449 .nav>li.disabled>a:focus,.factory-bootstrap-449 .nav>li.disabled>a:hover{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.factory-bootstrap-449 .nav .open>a,.factory-bootstrap-449 .nav .open>a:focus,.factory-bootstrap-449 .nav .open>a:hover{background-color:#eee;border-color:#428bca}.factory-bootstrap-449 .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.factory-bootstrap-449 .nav>li>a>img{max-width:none}.factory-bootstrap-449 .nav-tabs{border-bottom:1px solid #ddd}.factory-bootstrap-449 .nav-tabs>li{float:left;margin-bottom:-1px}.factory-bootstrap-449 .nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.factory-bootstrap-449 .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.factory-bootstrap-449 .nav-tabs>li.active>a,.factory-bootstrap-449 .nav-tabs>li.active>a:focus,.factory-bootstrap-449 .nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.factory-bootstrap-449 .nav-tabs.nav-justified{width:100%;border-bottom:0}.factory-bootstrap-449 .nav-tabs.nav-justified>li{float:none}.factory-bootstrap-449 .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-449 .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-449 .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-449 .nav-tabs.nav-justified>.active>a,.factory-bootstrap-449 .nav-tabs.nav-justified>.active>a:focus,.factory-bootstrap-449 .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-449 .nav-pills>li{float:left}.factory-bootstrap-449 .nav-pills>li>a{border-radius:4px}.factory-bootstrap-449 .nav-pills>li+li{margin-left:2px}.factory-bootstrap-449 .nav-pills>li.active>a,.factory-bootstrap-449 .nav-pills>li.active>a:focus,.factory-bootstrap-449 .nav-pills>li.active>a:hover{color:#fff;background-color:#428bca}.factory-bootstrap-449 .nav-stacked>li{float:none}.factory-bootstrap-449 .nav-stacked>li+li{margin-top:2px;margin-left:0}.factory-bootstrap-449 .nav-justified{width:100%}.factory-bootstrap-449 .nav-justified>li{float:none}.factory-bootstrap-449 .nav-justified>li>a{margin-bottom:5px;text-align:center}.factory-bootstrap-449 .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-449 .nav-tabs-justified{border-bottom:0}.factory-bootstrap-449 .nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.factory-bootstrap-449 .nav-tabs-justified>.active>a,.factory-bootstrap-449 .nav-tabs-justified>.active>a:focus,.factory-bootstrap-449 .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-449 .tab-content>.tab-pane{display:none}.factory-bootstrap-449 .tab-content>.active{display:block}.factory-bootstrap-449 .nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.factory-bootstrap-449 .navbar:after,.factory-bootstrap-449 .navbar:before{display:table;content:" "}.factory-bootstrap-449 .navbar:after{clear:both}@media (min-width:768px){.navbar{border-radius:4px}}.factory-bootstrap-449 .navbar-header:after,.factory-bootstrap-449 .navbar-header:before{display:table;content:" "}.factory-bootstrap-449 .navbar-header:after{clear:both}@media (min-width:768px){.navbar-header{float:left}}.factory-bootstrap-449 .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-449 .navbar-collapse:after,.factory-bootstrap-449 .navbar-collapse:before{display:table;content:" "}.factory-bootstrap-449 .navbar-collapse:after{clear:both}.factory-bootstrap-449 .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-449 .container>.navbar-collapse,.factory-bootstrap-449 .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-449 .navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.factory-bootstrap-449 .navbar-fixed-bottom,.factory-bootstrap-449 .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-449 .navbar-fixed-top{top:0;border-width:0 0 1px}.factory-bootstrap-449 .navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.factory-bootstrap-449 .navbar-brand{float:left;padding:15px;font-size:18px;line-height:20px}.factory-bootstrap-449 .navbar-brand:focus,.factory-bootstrap-449 .navbar-brand:hover{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.factory-bootstrap-449 .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-449 .navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.factory-bootstrap-449 .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.factory-bootstrap-449 .navbar-nav{margin:7.5px -15px}.factory-bootstrap-449 .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-449 .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-449 .navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.factory-bootstrap-449 .navbar-nav.pull-right>li>.dropdown-menu,.factory-bootstrap-449 .navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.factory-bootstrap-449 .navbar-btn{margin-top:8px;margin-bottom:8px}.factory-bootstrap-449 .navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.factory-bootstrap-449 .navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.factory-bootstrap-449 .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-449 .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.factory-bootstrap-449 .navbar-default .navbar-brand{color:#777}.factory-bootstrap-449 .navbar-default .navbar-brand:focus,.factory-bootstrap-449 .navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.factory-bootstrap-449 .navbar-default .navbar-nav>li>a,.factory-bootstrap-449 .navbar-default .navbar-text{color:#777}.factory-bootstrap-449 .navbar-default .navbar-nav>li>a:focus,.factory-bootstrap-449 .navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.factory-bootstrap-449 .navbar-default .navbar-nav>.active>a,.factory-bootstrap-449 .navbar-default .navbar-nav>.active>a:focus,.factory-bootstrap-449 .navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.factory-bootstrap-449 .navbar-default .navbar-nav>.disabled>a,.factory-bootstrap-449 .navbar-default .navbar-nav>.disabled>a:focus,.factory-bootstrap-449 .navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.factory-bootstrap-449 .navbar-default .navbar-toggle{border-color:#ddd}.factory-bootstrap-449 .navbar-default .navbar-toggle:focus,.factory-bootstrap-449 .navbar-default .navbar-toggle:hover{background-color:#ddd}.factory-bootstrap-449 .navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.factory-bootstrap-449 .navbar-default .navbar-collapse,.factory-bootstrap-449 .navbar-default .navbar-form{border-color:#e7e7e7}.factory-bootstrap-449 .navbar-default .navbar-nav>.open>a,.factory-bootstrap-449 .navbar-default .navbar-nav>.open>a:focus,.factory-bootstrap-449 .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-449 .navbar-default .navbar-link{color:#777}.factory-bootstrap-449 .navbar-default .navbar-link:hover{color:#333}.factory-bootstrap-449 .navbar-inverse{background-color:#222;border-color:#080808}.factory-bootstrap-449 .navbar-inverse .navbar-brand{color:#999}.factory-bootstrap-449 .navbar-inverse .navbar-brand:focus,.factory-bootstrap-449 .navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.factory-bootstrap-449 .navbar-inverse .navbar-nav>li>a,.factory-bootstrap-449 .navbar-inverse .navbar-text{color:#999}.factory-bootstrap-449 .navbar-inverse .navbar-nav>li>a:focus,.factory-bootstrap-449 .navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.factory-bootstrap-449 .navbar-inverse .navbar-nav>.active>a,.factory-bootstrap-449 .navbar-inverse .navbar-nav>.active>a:focus,.factory-bootstrap-449 .navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.factory-bootstrap-449 .navbar-inverse .navbar-nav>.disabled>a,.factory-bootstrap-449 .navbar-inverse .navbar-nav>.disabled>a:focus,.factory-bootstrap-449 .navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.factory-bootstrap-449 .navbar-inverse .navbar-toggle{border-color:#333}.factory-bootstrap-449 .navbar-inverse .navbar-toggle:focus,.factory-bootstrap-449 .navbar-inverse .navbar-toggle:hover{background-color:#333}.factory-bootstrap-449 .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.factory-bootstrap-449 .navbar-inverse .navbar-collapse,.factory-bootstrap-449 .navbar-inverse .navbar-form{border-color:#101010}.factory-bootstrap-449 .navbar-inverse .navbar-nav>.open>a,.factory-bootstrap-449 .navbar-inverse .navbar-nav>.open>a:focus,.factory-bootstrap-449 .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-449 .navbar-inverse .navbar-link{color:#999}.factory-bootstrap-449 .navbar-inverse .navbar-link:hover{color:#fff}.factory-bootstrap-449 .breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.factory-bootstrap-449 .breadcrumb>li{display:inline-block}.factory-bootstrap-449 .breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.factory-bootstrap-449 .breadcrumb>.active{color:#999}.factory-bootstrap-449 .pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.factory-bootstrap-449 .pagination>li{display:inline}.factory-bootstrap-449 .pagination>li>a,.factory-bootstrap-449 .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-449 .pagination>li:first-child>a,.factory-bootstrap-449 .pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.factory-bootstrap-449 .pagination>li:last-child>a,.factory-bootstrap-449 .pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.factory-bootstrap-449 .pagination>li>a:focus,.factory-bootstrap-449 .pagination>li>a:hover,.factory-bootstrap-449 .pagination>li>span:focus,.factory-bootstrap-449 .pagination>li>span:hover{background-color:#eee}.factory-bootstrap-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#1e8cbe;border-color:#0074a2}.factory-bootstrap-449 .pagination>.disabled>a,.factory-bootstrap-449 .pagination>.disabled>a:focus,.factory-bootstrap-449 .pagination>.disabled>a:hover,.factory-bootstrap-449 .pagination>.disabled>span,.factory-bootstrap-449 .pagination>.disabled>span:focus,.factory-bootstrap-449 .pagination>.disabled>span:hover{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.factory-bootstrap-449 .pagination-lg>li>a,.factory-bootstrap-449 .pagination-lg>li>span{padding:10px 16px;font-size:18px}.factory-bootstrap-449 .pagination-lg>li:first-child>a,.factory-bootstrap-449 .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.factory-bootstrap-449 .pagination-lg>li:last-child>a,.factory-bootstrap-449 .pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.factory-bootstrap-449 .pagination-sm>li>a,.factory-bootstrap-449 .pagination-sm>li>span{padding:5px 10px;font-size:12px}.factory-bootstrap-449 .pagination-sm>li:first-child>a,.factory-bootstrap-449 .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.factory-bootstrap-449 .pagination-sm>li:last-child>a,.factory-bootstrap-449 .pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.factory-bootstrap-449 .pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.factory-bootstrap-449 .pager:after,.factory-bootstrap-449 .pager:before{display:table;content:" "}.factory-bootstrap-449 .pager:after{clear:both}.factory-bootstrap-449 .pager li{display:inline}.factory-bootstrap-449 .pager li>a,.factory-bootstrap-449 .pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.factory-bootstrap-449 .pager li>a:focus,.factory-bootstrap-449 .pager li>a:hover{text-decoration:none;background-color:#eee}.factory-bootstrap-449 .pager .next>a,.factory-bootstrap-449 .pager .next>span{float:right}.factory-bootstrap-449 .pager .previous>a,.factory-bootstrap-449 .pager .previous>span{float:left}.factory-bootstrap-449 .pager .disabled>a,.factory-bootstrap-449 .pager .disabled>a:focus,.factory-bootstrap-449 .pager .disabled>a:hover,.factory-bootstrap-449 .pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.factory-bootstrap-449 .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-449 .label[href]:focus,.factory-bootstrap-449 .label[href]:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-449 .label:empty{display:none}.factory-bootstrap-449 .btn .label{position:relative;top:-1px}.factory-bootstrap-449 .label-default{background-color:#999}.factory-bootstrap-449 .label-default[href]:focus,.factory-bootstrap-449 .label-default[href]:hover{background-color:gray}.factory-bootstrap-449 .label-primary{background-color:#428bca}.factory-bootstrap-449 .label-primary[href]:focus,.factory-bootstrap-449 .label-primary[href]:hover{background-color:#3071a9}.factory-bootstrap-449 .label-success{background-color:#5cb85c}.factory-bootstrap-449 .label-success[href]:focus,.factory-bootstrap-449 .label-success[href]:hover{background-color:#449d44}.factory-bootstrap-449 .label-info{background-color:#5bc0de}.factory-bootstrap-449 .label-info[href]:focus,.factory-bootstrap-449 .label-info[href]:hover{background-color:#31b0d5}.factory-bootstrap-449 .label-warning{background-color:#f0ad4e}.factory-bootstrap-449 .label-warning[href]:focus,.factory-bootstrap-449 .label-warning[href]:hover{background-color:#ec971f}.factory-bootstrap-449 .label-danger{background-color:#d9534f}.factory-bootstrap-449 .label-danger[href]:focus,.factory-bootstrap-449 .label-danger[href]:hover{background-color:#c9302c}.factory-bootstrap-449 .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-449 .badge:empty{display:none}.factory-bootstrap-449 .btn .badge{position:relative;top:-1px}.factory-bootstrap-449 a.badge:focus,.factory-bootstrap-449 a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.factory-bootstrap-449 .nav-pills>.active>a>.badge,.factory-bootstrap-449 a.list-group-item.active>.badge{color:#428bca;background-color:#fff}.factory-bootstrap-449 .nav-pills>li>a>.badge{margin-left:3px}.factory-bootstrap-449 .jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.factory-bootstrap-449 .jumbotron .h1,.factory-bootstrap-449 .jumbotron h1{line-height:1;color:inherit}.factory-bootstrap-449 .jumbotron p{line-height:1.4}.factory-bootstrap-449 .container .jumbotron{border-radius:6px}.factory-bootstrap-449 .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-449 .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-449 .thumbnail a>img,.factory-bootstrap-449 .thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}.factory-bootstrap-449 a.thumbnail.active,.factory-bootstrap-449 a.thumbnail:focus,.factory-bootstrap-449 a.thumbnail:hover{border-color:#428bca}.factory-bootstrap-449 .thumbnail .caption{padding:9px;color:#333}.factory-bootstrap-449 .alert{border:1px solid transparent;border-radius:4px}.factory-bootstrap-449 .alert h4{margin-top:0;color:inherit}.factory-bootstrap-449 .alert .alert-link{font-weight:700}.factory-bootstrap-449 .alert>p,.factory-bootstrap-449 .alert>ul{margin-bottom:0}.factory-bootstrap-449 .alert>p+p{margin-top:5px}.factory-bootstrap-449 .alert-dismissable{padding-right:35px}.factory-bootstrap-449 .alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.factory-bootstrap-449 .alert-info{color:#31708f;background-color:#d9edf7}.factory-bootstrap-449 .alert-info hr{border-top-color:#a6e1ec}.factory-bootstrap-449 .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-449 .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-449 .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-449 .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-449 .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.factory-bootstrap-449 .progress-bar-success{background-color:#5cb85c}.factory-bootstrap-449 .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-449 .progress-bar-info{background-color:#5bc0de}.factory-bootstrap-449 .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-449 .progress-bar-warning{background-color:#f0ad4e}.factory-bootstrap-449 .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-449 .progress-bar-danger{background-color:#d9534f}.factory-bootstrap-449 .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-449 .media,.factory-bootstrap-449 .media-body{overflow:hidden;zoom:1}.factory-bootstrap-449 .media,.factory-bootstrap-449 .media .media{margin-top:15px}.factory-bootstrap-449 .media:first-child{margin-top:0}.factory-bootstrap-449 .media-object{display:block}.factory-bootstrap-449 .media-heading{margin:0 0 5px}.factory-bootstrap-449 .media>.pull-left{margin-right:10px}.factory-bootstrap-449 .media>.pull-right{margin-left:10px}.factory-bootstrap-449 .media-list{padding-left:0;list-style:none}.factory-bootstrap-449 .list-group{padding-left:0;margin-bottom:20px}.factory-bootstrap-449 .list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.factory-bootstrap-449 .list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.factory-bootstrap-449 .list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.factory-bootstrap-449 .list-group-item>.badge{float:right}.factory-bootstrap-449 .list-group-item>.badge+.badge{margin-right:5px}.factory-bootstrap-449 a.list-group-item{color:#555}.factory-bootstrap-449 a.list-group-item .list-group-item-heading{color:#333}.factory-bootstrap-449 a.list-group-item:focus,.factory-bootstrap-449 a.list-group-item:hover{text-decoration:none;background-color:#f5f5f5}.factory-bootstrap-449 a.list-group-item.active,.factory-bootstrap-449 a.list-group-item.active:focus,.factory-bootstrap-449 a.list-group-item.active:hover{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-449 a.list-group-item.active .list-group-item-heading,.factory-bootstrap-449 a.list-group-item.active:focus .list-group-item-heading,.factory-bootstrap-449 a.list-group-item.active:hover .list-group-item-heading{color:inherit}.factory-bootstrap-449 a.list-group-item.active .list-group-item-text,.factory-bootstrap-449 a.list-group-item.active:focus .list-group-item-text,.factory-bootstrap-449 a.list-group-item.active:hover .list-group-item-text{color:#e1edf7}.factory-bootstrap-449 .list-group-item-heading{margin-top:0;margin-bottom:5px}.factory-bootstrap-449 .list-group-item-text{margin-bottom:0;line-height:1.3}.factory-bootstrap-449 .panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px}.factory-bootstrap-449 .panel-body{padding:15px}.factory-bootstrap-449 .panel-body:after,.factory-bootstrap-449 .panel-body:before{display:table;content:" "}.factory-bootstrap-449 .panel-body:after{clear:both}.factory-bootstrap-449 .panel>.list-group{margin-bottom:0}.factory-bootstrap-449 .panel>.list-group .list-group-item{border-width:1px 0}.factory-bootstrap-449 .panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.factory-bootstrap-449 .panel>.list-group .list-group-item:last-child{border-bottom:0}.factory-bootstrap-449 .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.factory-bootstrap-449 .panel>.table,.factory-bootstrap-449 .panel>.table-responsive>.table{margin-bottom:0}.factory-bootstrap-449 .panel>.panel-body+.table,.factory-bootstrap-449 .panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.factory-bootstrap-449 .panel>.table>tbody:first-child td,.factory-bootstrap-449 .panel>.table>tbody:first-child th{border-top:0}.factory-bootstrap-449 .panel>.table-bordered,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered{border:0}.factory-bootstrap-449 .panel>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-449 .panel>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-449 .panel>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-449 .panel>.table-bordered>thead>tr>th:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.factory-bootstrap-449 .panel>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-449 .panel>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-449 .panel>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-449 .panel>.table-bordered>thead>tr>th:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.factory-bootstrap-449 .panel>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-449 .panel>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-449 .panel>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-449 .panel>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-449 .panel>.table-bordered>thead>tr:last-child>th,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.factory-bootstrap-449 .panel>.table-responsive>.table-bordered>thead>tr:last-child>th{border-bottom:0}.factory-bootstrap-449 .panel>.table-responsive{margin-bottom:0;border:0}.factory-bootstrap-449 .panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.factory-bootstrap-449 .panel-heading>.dropdown .dropdown-toggle{color:inherit}.factory-bootstrap-449 .panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.factory-bootstrap-449 .panel-title>a{color:inherit}.factory-bootstrap-449 .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-449 .panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.factory-bootstrap-449 .panel-group .panel+.panel{margin-top:5px}.factory-bootstrap-449 .panel-group .panel-heading{border-bottom:0}.factory-bootstrap-449 .panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.factory-bootstrap-449 .panel-group .panel-footer{border-top:0}.factory-bootstrap-449 .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.factory-bootstrap-449 .panel-default{border-color:#ddd}.factory-bootstrap-449 .panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.factory-bootstrap-449 .panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.factory-bootstrap-449 .panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.factory-bootstrap-449 .panel-primary{border-color:#428bca}.factory-bootstrap-449 .panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.factory-bootstrap-449 .panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.factory-bootstrap-449 .panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.factory-bootstrap-449 .panel-success{border-color:#d6e9c6}.factory-bootstrap-449 .panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.factory-bootstrap-449 .panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.factory-bootstrap-449 .panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.factory-bootstrap-449 .panel-warning{border-color:#faebcc}.factory-bootstrap-449 .panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.factory-bootstrap-449 .panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.factory-bootstrap-449 .panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.factory-bootstrap-449 .panel-danger{border-color:#ebccd1}.factory-bootstrap-449 .panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.factory-bootstrap-449 .panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.factory-bootstrap-449 .panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.factory-bootstrap-449 .panel-info{border-color:#bce8f1}.factory-bootstrap-449 .panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.factory-bootstrap-449 .panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.factory-bootstrap-449 .panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.factory-bootstrap-449 .well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px}.factory-bootstrap-449 .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.factory-bootstrap-449 .well-lg{padding:24px;border-radius:6px}.factory-bootstrap-449 .well-sm{padding:9px;border-radius:3px}.factory-bootstrap-449 .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-449 .alert .close{position:relative;top:-8px;right:-7px}.factory-bootstrap-449 .close:focus,.factory-bootstrap-449 .close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-449 button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.factory-bootstrap-449 .modal-open{overflow:hidden}.factory-bootstrap-449 .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-449 .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-449 .modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.factory-bootstrap-449 .modal-dialog{position:relative;z-index:1050;width:auto;margin:10px}.factory-bootstrap-449 .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-449 .modal-backdrop,.factory-bootstrap-449-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.factory-bootstrap-449 .modal-backdrop.fade,.factory-bootstrap-449-modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.factory-bootstrap-449 .modal-backdrop.in,.factory-bootstrap-449-modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.factory-bootstrap-449 .modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.factory-bootstrap-449 .modal-header .close{margin-top:-2px}.factory-bootstrap-449 .modal-title{margin:0;line-height:1.428571429}.factory-bootstrap-449 .modal-body{position:relative;padding:20px;max-height:none}.factory-bootstrap-449 .modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.factory-bootstrap-449 .modal-footer:after,.factory-bootstrap-449 .modal-footer:before{display:table;content:" "}.factory-bootstrap-449 .modal-footer:after{clear:both}.factory-bootstrap-449 .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.factory-bootstrap-449 .modal-footer .btn-group .btn+.btn{margin-left:-1px}.factory-bootstrap-449 .modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.factory-bootstrap-449 .modal-dialog{width:600px;margin:30px auto}.factory-bootstrap-449 .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-449 .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-449 .tooltip.in{opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-449 .tooltip.top{padding:5px 0;margin-top:-3px}.factory-bootstrap-449 .tooltip.right{padding:0 5px;margin-left:3px}.factory-bootstrap-449 .tooltip.bottom{padding:5px 0;margin-top:3px}.factory-bootstrap-449 .tooltip.left{padding:0 5px;margin-left:-3px}.factory-bootstrap-449 .tooltip-inner{width:400px;padding:15px 20px;color:#fff;text-align:left;text-decoration:none;background-color:#673ab7;border-radius:3px}.factory-bootstrap-449 .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-449 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-449 .tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-449 .tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#673ab7;border-width:5px 5px 0}.factory-bootstrap-449 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#673ab7;border-width:5px 5px 5px 0}.factory-bootstrap-449 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#673ab7;border-width:5px 0 5px 5px}.factory-bootstrap-449 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-449 .tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-449 .tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#673ab7;border-width:0 5px 5px}.factory-bootstrap-449 .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-449 .popover.top{margin-top:-10px}.factory-bootstrap-449 .popover.right{margin-left:10px}.factory-bootstrap-449 .popover.bottom{margin-top:10px}.factory-bootstrap-449 .popover.left{margin-left:-10px}.factory-bootstrap-449 .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-449 .popover-content{padding:9px 14px}.factory-bootstrap-449 .popover .arrow,.factory-bootstrap-449 .popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.factory-bootstrap-449 .popover .arrow{border-width:11px}.factory-bootstrap-449 .popover .arrow:after{border-width:10px;content:""}.factory-bootstrap-449 .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-449 .popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.factory-bootstrap-449 .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-449 .popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.factory-bootstrap-449 .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-449 .popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.factory-bootstrap-449 .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-449 .popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.factory-bootstrap-449 .carousel{position:relative}.factory-bootstrap-449 .carousel-inner{position:relative;width:100%;overflow:hidden}.factory-bootstrap-449 .carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.factory-bootstrap-449 .carousel-inner>.item>a>img,.factory-bootstrap-449 .carousel-inner>.item>img{display:block;height:auto;max-width:100%;line-height:1}.factory-bootstrap-449 .carousel-inner>.active,.factory-bootstrap-449 .carousel-inner>.next,.factory-bootstrap-449 .carousel-inner>.prev{display:block}.factory-bootstrap-449 .carousel-inner>.active{left:0}.factory-bootstrap-449 .carousel-inner>.next,.factory-bootstrap-449 .carousel-inner>.prev{position:absolute;top:0;width:100%}.factory-bootstrap-449 .carousel-inner>.next{left:100%}.factory-bootstrap-449 .carousel-inner>.prev{left:-100%}.factory-bootstrap-449 .carousel-inner>.next.left,.factory-bootstrap-449 .carousel-inner>.prev.right{left:0}.factory-bootstrap-449 .carousel-inner>.active.left{left:-100%}.factory-bootstrap-449 .carousel-inner>.active.right{left:100%}.factory-bootstrap-449 .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-449 .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-449 .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-449 .carousel-control:focus,.factory-bootstrap-449 .carousel-control:hover{color:#fff;text-decoration:none;outline:0;opacity:.9;filter:alpha(opacity=90)}.factory-bootstrap-449 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-449 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-449 .carousel-control .icon-next,.factory-bootstrap-449 .carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.factory-bootstrap-449 .carousel-control .glyphicon-chevron-left,.factory-bootstrap-449 .carousel-control .icon-prev{left:50%}.factory-bootstrap-449 .carousel-control .glyphicon-chevron-right,.factory-bootstrap-449 .carousel-control .icon-next{right:50%}.factory-bootstrap-449 .carousel-control .icon-next,.factory-bootstrap-449 .carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.factory-bootstrap-449 .carousel-control .icon-prev:before{content:'\2039'}.factory-bootstrap-449 .carousel-control .icon-next:before{content:'\203a'}.factory-bootstrap-449 .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-449 .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-449 .carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.factory-bootstrap-449 .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-449 .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-449 .clearfix:after,.factory-bootstrap-449 .clearfix:before{display:table;content:" "}.factory-bootstrap-449 .clearfix:after{clear:both}.factory-bootstrap-449 .center-block{display:block;margin-right:auto;margin-left:auto}.factory-bootstrap-449 .pull-right{float:right!important}.factory-bootstrap-449 .pull-left{float:left!important}.factory-bootstrap-449 .hide{display:none!important}.factory-bootstrap-449 .show{display:block!important}.factory-bootstrap-449 .invisible{visibility:hidden}.factory-bootstrap-449 .text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.factory-bootstrap-449 .hidden{display:none!important;visibility:hidden!important}.factory-bootstrap-449 .affix{position:fixed}@-ms-viewport{width:device-width}.factory-bootstrap-449 .visible-lg,.factory-bootstrap-449 .visible-md,.factory-bootstrap-449 .visible-sm,.factory-bootstrap-449 .visible-xs,.factory-bootstrap-449 td.visible-lg,.factory-bootstrap-449 td.visible-md,.factory-bootstrap-449 td.visible-sm,.factory-bootstrap-449 td.visible-xs,.factory-bootstrap-449 th.visible-lg,.factory-bootstrap-449 th.visible-md,.factory-bootstrap-449 th.visible-sm,.factory-bootstrap-449 th.visible-xs,.factory-bootstrap-449 tr.visible-lg,.factory-bootstrap-449 tr.visible-md,.factory-bootstrap-449 tr.visible-sm,.factory-bootstrap-449 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-449 .hidden-xs{display:block!important}.factory-bootstrap-449 table.hidden-xs{display:table}.factory-bootstrap-449 tr.hidden-xs{display:table-row!important}.factory-bootstrap-449 td.hidden-xs,.factory-bootstrap-449 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-449 .hidden-sm{display:block!important}.factory-bootstrap-449 table.hidden-sm{display:table}.factory-bootstrap-449 tr.hidden-sm{display:table-row!important}.factory-bootstrap-449 td.hidden-sm,.factory-bootstrap-449 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-449 .hidden-md{display:block!important}.factory-bootstrap-449 table.hidden-md{display:table}.factory-bootstrap-449 tr.hidden-md{display:table-row!important}.factory-bootstrap-449 td.hidden-md,.factory-bootstrap-449 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-449 .hidden-lg{display:block!important}.factory-bootstrap-449 table.hidden-lg{display:table}.factory-bootstrap-449 tr.hidden-lg{display:table-row!important}.factory-bootstrap-449 td.hidden-lg,.factory-bootstrap-449 th.hidden-lg{display:table-cell!important}@media (max-width:767px){.factory-bootstrap-449 .hidden-lg.hidden-xs,.factory-bootstrap-449 td.hidden-lg.hidden-xs,.factory-bootstrap-449 th.hidden-lg.hidden-xs,.factory-bootstrap-449 tr.hidden-lg.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.factory-bootstrap-449 .hidden-lg.hidden-sm,.factory-bootstrap-449 td.hidden-lg.hidden-sm,.factory-bootstrap-449 th.hidden-lg.hidden-sm,.factory-bootstrap-449 tr.hidden-lg.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.factory-bootstrap-449 .hidden-lg.hidden-md,.factory-bootstrap-449 td.hidden-lg.hidden-md,.factory-bootstrap-449 th.hidden-lg.hidden-md,.factory-bootstrap-449 tr.hidden-lg.hidden-md{display:none!important}}@media (min-width:1200px){.factory-bootstrap-449 .hidden-lg,.factory-bootstrap-449 td.hidden-lg,.factory-bootstrap-449 th.hidden-lg,.factory-bootstrap-449 tr.hidden-lg{display:none!important}}.factory-bootstrap-449 .visible-print,.factory-bootstrap-449 td.visible-print,.factory-bootstrap-449 th.visible-print,.factory-bootstrap-449 tr.visible-print{display:none!important}@media print{.factory-bootstrap-449 .visible-print{display:block!important}.factory-bootstrap-449 table.visible-print{display:table}.factory-bootstrap-449 tr.visible-print{display:table-row!important}.factory-bootstrap-449 td.visible-print,.factory-bootstrap-449 th.visible-print{display:table-cell!important}.factory-bootstrap-449 .hidden-print,.factory-bootstrap-449 td.hidden-print,.factory-bootstrap-449 th.hidden-print,.factory-bootstrap-449 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-449 .btn-danger,.factory-bootstrap-449 .btn-default,.factory-bootstrap-449 .btn-info,.factory-bootstrap-449 .btn-primary,.factory-bootstrap-449 .btn-success,.factory-bootstrap-449 .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-449 .btn-danger.active,.factory-bootstrap-449 .btn-danger:active,.factory-bootstrap-449 .btn-default.active,.factory-bootstrap-449 .btn-default:active,.factory-bootstrap-449 .btn-info.active,.factory-bootstrap-449 .btn-info:active,.factory-bootstrap-449 .btn-primary.active,.factory-bootstrap-449 .btn-primary:active,.factory-bootstrap-449 .btn-success.active,.factory-bootstrap-449 .btn-success:active,.factory-bootstrap-449 .btn-warning.active,.factory-bootstrap-449 .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-449 .btn.active,.factory-bootstrap-449 .btn:active{background-image:none}.factory-bootstrap-449 .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-449 .btn-default.active,.factory-bootstrap-449 .btn-default:active{background-color:#fff;border-color:#dbdbdb}.factory-bootstrap-449 .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-449 .btn-gold:focus,.factory-bootstrap-449 .btn-gold:hover{background:#fef0a1}.factory-bootstrap-449 .btn-gold.active,.factory-bootstrap-449 .btn-gold:active{background:#fef0a1;-webkit-box-shadow:inset 0 3px 8px 0 #f8ba36;box-shadow:inset 0 3px 8px 0 #f8ba36}.factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .btn-primary.active,.factory-bootstrap-449 .btn-primary:active{background-color:#2d6ca2;border-color:#2b669a}.factory-bootstrap-449 .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-449 .btn-success:focus,.factory-bootstrap-449 .btn-success:hover{background-color:#419641;background-position:0 -15px}.factory-bootstrap-449 .btn-success.active,.factory-bootstrap-449 .btn-success:active{background-color:#419641;border-color:#3e8f3e}.factory-bootstrap-449 .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-449 .btn-warning:focus,.factory-bootstrap-449 .btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.factory-bootstrap-449 .btn-warning.active,.factory-bootstrap-449 .btn-warning:active{background-color:#eb9316;border-color:#e38d13}.factory-bootstrap-449 .btn-danger{color:#fff;background:#d9534f;border-color:#d43f3a}.factory-bootstrap-449 .btn-danger.active,.factory-bootstrap-449 .btn-danger:active,.factory-bootstrap-449 .btn-danger:focus,.factory-bootstrap-449 .btn-danger:hover,.factory-bootstrap-449 .open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.factory-bootstrap-449 .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-449 .btn-info:focus,.factory-bootstrap-449 .btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.factory-bootstrap-449 .btn-info.active,.factory-bootstrap-449 .btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.factory-bootstrap-449 .img-thumbnail,.factory-bootstrap-449 .thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.factory-bootstrap-449 .dropdown-menu>li>a:focus,.factory-bootstrap-449 .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-449 .dropdown-menu>.active>a,.factory-bootstrap-449 .dropdown-menu>.active>a:focus,.factory-bootstrap-449 .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-449 .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-449 .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-449 .navbar-brand,.factory-bootstrap-449 .navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.factory-bootstrap-449 .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-449 .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-449 .navbar-inverse .navbar-brand,.factory-bootstrap-449 .navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.factory-bootstrap-449 .navbar-fixed-bottom,.factory-bootstrap-449 .navbar-fixed-top,.factory-bootstrap-449 .navbar-static-top{border-radius:0}.factory-bootstrap-449 .alert{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-449 .alert .actions{padding-top:10px}.factory-bootstrap-449 .alert-success{color:#3c763d;background-color:#dff0d8;border-bottom:2px solid #c8e5bc}.factory-bootstrap-449 .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-449 .alert{text-shadow:none;box-shadow:none;margin:0;margin-top:10px;margin-bottom:10px;padding:10px}.factory-bootstrap-449 .alert-normal,.factory-bootstrap-449 .alert-warning{background:#fcf8e3;color:#8a6d3b;border:1px solid #b8823b}.factory-bootstrap-449 .alert-danger{background:#cf4944;color:#fff;border-bottom:2px solid #b23e3a}.factory-bootstrap-449 .alert-danger a:not(.btn),.factory-bootstrap-449 .alert-error a:not(.btn){color:#fff}.factory-bootstrap-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .list-group-item.active,.factory-bootstrap-449 .list-group-item.active:focus,.factory-bootstrap-449 .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-449 .panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.factory-bootstrap-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .factory-after{margin-left:7px;display:inline-block}.factory-bootstrap-449 .factory-hidden{display:none}.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#a3b745;border-color:#839237}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#cfd1c7!important;background:#89993a!important;border-color:#727f30!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-448 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-448 .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-448 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-448 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-448 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-448 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-448 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-448 .factory-form-group legend+.control-group{margin-top:0}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .factory-form-group .factory-legend{padding:9px 12px;background-color:#f9f9f9}.factory-bootstrap-449 .factory-form-group .factory-title{font-weight:700;font-size:14px;line-height:14px;color:#555;margin:0}.factory-bootstrap-449 .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-449 .factory-form-group .factory-hint-icon.factory-hint-icon-green{background:#8bc34a}.factory-bootstrap-449 .factory-form-group .factory-hint-icon.factory-hint-icon-grey{background:#9e9e9e}.factory-bootstrap-449 .factory-form-group .factory-hint-icon.factory-hint-icon-red{background:#E91E63}.factory-bootstrap-449 .factory-form-group .factory-hint{margin:0;font-size:12px;line-height:16px;margin-top:6px}.factory-bootstrap-449 .factory-form-group+.factory-form-group{margin-top:30px}.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#04a4cc;border-color:#037c9a}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#c7cfd1!important;background:#0384a4!important;border-color:#036881!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#e14d43;border-color:#d02a21}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#d1c7c7!important;background:#d92c23!important;border-color:#ba251e!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#9ebaa0;border-color:#80a583}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#c7d1c8!important;background:#86a988!important;border-color:#719a74!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .factory-separator{border-bottom:1px solid #f9f9f9;border-top:1px solid #d1d1d1;margin-bottom:25px}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-448 .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-448 .btn-primary:focus,.factory-bootstrap-448 .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-448 .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-448 .btn-primary:disabled,.factory-bootstrap-448 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-448 .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-448 .pagination>.active>a,.factory-bootstrap-448 .pagination>.active>a:focus,.factory-bootstrap-448 .pagination>.active>a:hover,.factory-bootstrap-448 .pagination>.active>span,.factory-bootstrap-448 .pagination>.active>span:focus,.factory-bootstrap-448 .pagination>.active>span:hover{background-color:#dd823b;border-color:#c36822}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .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-449 .btn-primary:focus,.factory-bootstrap-449 .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-449 .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-449 .btn-primary:disabled,.factory-bootstrap-449 .btn-primary[disabled]{color:#d1cbc7!important;background:#cc6c23!important;border-color:#ad5c1e!important;text-shadow:none!important}.factory-bootstrap-449 .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-449 .pagination>.active>a,.factory-bootstrap-449 .pagination>.active>a:focus,.factory-bootstrap-449 .pagination>.active>a:hover,.factory-bootstrap-449 .pagination>.active>span,.factory-bootstrap-449 .pagination>.active>span:focus,.factory-bootstrap-449 .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-448 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-448 .factory-checkbox-disabled button,.factory-bootstrap-448 .factory-checkbox-disabled input{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-448 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-448 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-448 .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-448 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-448 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .factory-buttons-way .factory-on.active{background-color:#dd823b;-webkit-box-shadow:inset 0 1px 2px #c36822;box-shadow:inset 0 1px 2px #c36822;border-top:1px solid #c36822;border-bottom:1px solid #c36822;border-left:1px solid #c36822}
8
  */
9
 
10
 
11
+ #side-sortables .factory-bootstrap-449 .factory-buttons-way{float:right;position:relative;top:-25px;left:5px;border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-449 .factory-checkbox-disabled button,.factory-bootstrap-449 .factory-checkbox-disabled input{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.factory-bootstrap-449 .factory-buttons-way{border:3px solid #f9f9f9;border-radius:4px}.factory-bootstrap-449 .factory-buttons-way button{padding-left:10px;padding-right:10px}.factory-bootstrap-449 .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-449 .factory-checkbox-tumbler-hint{margin-top:5px}.factory-bootstrap-449 .factory-checkbox-tumbler-hint .factory-tumbler-content{display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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.color.min.css ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap generator - v1.0.1, 2021-02-04
3
+ * Webcraftic factory build
4
+ *
5
+ * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
6
+ * Site: http://webcraftic.com
7
+ * Support: http://webcraftic.com/contact-us/
8
+ */
9
+
10
+
11
+ .factory-bootstrap-449 .factory-color{position:relative}.factory-bootstrap-449 .factory-color .factory-color-hex{display:inline-block;width:65px;text-align:left;vertical-align:top;border-top-right-radius:3px;border-bottom-right-radius:3px;border-radius:3px;z-index:1;position:relative;margin-left:26px;border-top-left-radius:0;border-bottom-left-radius:0}.factory-bootstrap-449 .factory-color .factory-background,.factory-bootstrap-449 .factory-color .factory-pattern{cursor:pointer;height:26px;width:26px;position:absolute;border-radius:5px;background:transparent url(../../assets/images/color_picker_pattern.jpg) center center repeat;-moz-box-sizing:border-box;box-sizing:border-box;border-bottom:2px solid rgba(0,0,0,.34);z-index:1;border-top-right-radius:0!important;border-bottom-right-radius:0!important}.factory-bootstrap-449 .factory-color .factory-background{z-index:2;border-radius:3px}
libs/factory/bootstrap/assets/css-min/control.dropdown.min.css CHANGED
@@ -8,4 +8,4 @@
8
  */
9
 
10
 
11
- .factory-bootstrap-448 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-448 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-448 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .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-448 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-448 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-448 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-448 .factory-dropdown.factory-ddslick-way .dd-selected{padding:8px 12px 8px 11px!important}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .factory-dropdown.factory-buttons-way .fa{margin-right:6px;position:relative}.factory-bootstrap-449 .factory-dropdown.factory-buttons-way{border:0;border-radius:0}.factory-bootstrap-449 .factory-hints .factory-hint{margin-top:5px;display:inline-block;background-color:#ffd;padding:1px 5px}.admin-color-light .factory-bootstrap-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .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-449 .factory-dropdown.factory-ddslick-way .dd-select{background-color:#fff!important}.factory-bootstrap-449 .factory-dropdown.factory-ddslick-way label{margin-bottom:1px}.factory-bootstrap-449 .factory-dropdown.factory-ddslick-way .dd-option,.factory-bootstrap-449 .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-448 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-448 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-448 .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-448 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-448 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-448 .factory-mtextbox-add-item{display:block;margin-top:10px}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .factory-mtextbox-item{position:relative;margin-bottom:5px}.factory-bootstrap-449 .factory-mtextbox-item input,.factory-mtextbox-remove-item{display:inline-block}.factory-bootstrap-449 .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-449 .factory-mtextbox-item .factory-mtextbox-remove-item:focus,.factory-bootstrap-449 .factory-mtextbox-item .factory-mtextbox-remove-item:hover{box-shadow:none;outline:0}.factory-bootstrap-449 .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-448 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-448 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-448 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-448 .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-448 .factory-tab .factory-more-link-hide:hover{color:#999}
8
  */
9
 
10
 
11
+ .factory-bootstrap-449 .factory-more-link-content{border-top:1px dashed #DDD;padding-top:25px;width:100%;padding-right:20px;position:relative}.factory-bootstrap-449 .factory-tab .factory-more-link-show{display:inline-block;text-decoration:none;border-bottom:1px dotted #21759b;position:relative}.factory-bootstrap-449 .factory-tab .factory-more-link-show:hover{border-color:#d54e21}.factory-bootstrap-449 .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-449 .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.factoryBootstrap448_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.factoryBootstrap448_dropdown.Constructor=f,a(document).on("click.bs.dropdown.data-api",b).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",e,f.prototype.toggle).on("keydown.bs.dropdown.data-api",e+", [role=menu]",f.prototype.keydown)}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ +function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=factory-dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i<h.length-1&&i++,~i||(i=0),h.eq(i).focus()}}}},a.fn.factoryBootstrap449_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.factoryBootstrap449_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.prop("checked",!0),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.prop("checked",!1),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&a(m).val(l[m])}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap448_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.factoryBootstrap448_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-448 .factory-checkbox.factory-buttons-way").factoryBootstrap448_checkboxControl(),a(".factory-bootstrap-448 .factory-checkbox").not(".factory-buttons-way").click(function(){a(this).prop("checked")?a(this).val(1):a(this).val(0)})})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;this.$element=a(b),this.$result=this.$element.find(".factory-result"),this.$on=this.$element.find(".factory-on"),this.$off=this.$element.find(".factory-off");var d=this.$element.is(".factory-tumbler"),e=this.$element.is(".factory-has-tumbler-hint"),f=this.$element.data("tumbler-function"),g=this.$element.data("tumbler-delay");g||(g=3e3),this.callByPath=function(a,b){for(var c=a.split("."),d=window,e=0;e<c.length;e++)d=d[c[e]];d.apply(d,b)},this.$on.click(function(){return c.$off.removeClass("active"),c.$on.addClass("active"),d?setTimeout(function(){c.$on.removeClass("active"),c.$off.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.prop("checked",!0),c.$result.val(1),c.$result.trigger("change")),!1}),this.$off.click(function(){return c.$on.removeClass("active"),c.$off.addClass("active"),d?setTimeout(function(){c.$off.removeClass("active"),c.$on.addClass("active");var a=e?c.$element.next():null;f?c.callByPath(f,[c.$element,a]):e&&(c.$element.next().fadeIn(300),setTimeout(function(){c.$element.next().fadeOut(500)},g))},300):(c.$result.prop("checked",!1),c.$result.val(0),c.$result.trigger("change")),!1}),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){(void 0!==window.__factory_checkbox_control_events_off_data||void 0!==window.__factory_checkbox_control_events_on_data)&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.prop("checked"),f=window.__factory_checkbox_control_events_on_data[d],g=window.__factory_checkbox_control_events_off_data[d];if(f||g){var h,i;void 0===window.__factory_checkbox_control_detach_elements&&(window.__factory_checkbox_control_detach_elements={}),h=window.__factory_checkbox_control_detach_elements,i=e?f:g;for(var j in i)if(i.hasOwnProperty(j)){var k,l=i[j];a.isArray(l)||(k=c.hashCode(d+l));var m;switch(j){case"hide":"string"==typeof l&&a(l).hide(0);break;case"show":"string"==typeof l&&a(l).fadeIn(200);break;case"detach":"string"==typeof l&&a(l).each(function(b){h[k]||(h[k]={}),h[k][b]||(h[k][b]={}),h[k][b].recovery_contanier=a(this).parent(),h[k][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(h[k]){for(var n in h[k])h[k].hasOwnProperty(n)&&h[k][n].recovery_contanier&&h[k][n].element&&h[k][n].recovery_contanier.append(h[k][n].element);delete h[k]}break;case"removeClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).removeClass(l[m]);break;case"addClasses":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&l[m]&&a(m).addClass(l[m]);break;case"setValue":if("object"==typeof l)for(m in l)l.hasOwnProperty(m)&&void 0!==l[m]&&null!==l[m]&&a(m).val(l[m])}}}},this.executeEvents(this.$result)};a.fn.factoryBootstrap449_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.factoryBootstrap449_checkboxControl.Constructor=b,a(function(){a(".factory-bootstrap-449 .factory-checkbox.factory-buttons-way").factoryBootstrap449_checkboxControl(),a(".factory-bootstrap-449 .factory-checkbox").not(".factory-buttons-way").click(function(){a(this).prop("checked")?a(this).val(1):a(this).val(0)})})}(jQuery);
libs/factory/bootstrap/assets/js-min/control.color.min.js ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap generator - v1.0.1, 2021-02-04
3
+ * Webcraftic factory build
4
+ *
5
+ * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
6
+ * Site: http://webcraftic.com
7
+ * Support: http://webcraftic.com/contact-us/
8
+ */
9
+
10
+ !function(a){a.widget("factoryBootstrap449.colorControl",{_create:function(){this.$element=this.element,this.$picker=this.$element.find(".factory-color-hex"),this.$preview=this.$element.find(".factory-preview"),this.$background=this.$element.find(".factory-background"),this._init()},_init:function(b){var c=this,d={width:216,palettes:["#16a086","#27ae61","#2a80b9","#8f44ad","#2d3e50","#f49c14","#c1392b","#bec3c7"],hide:!0,change:function(a,b){c.$background.css({background:b.color.toString()}),c.$element.trigger("change.color.factory",[b.color.toString()]),c.$element.trigger("updated.color.factory",[b.color.toString()])}},e=this.$element.data("picker-target");e&&(d.target=a(e)),this.$picker.factoryBootstrap449_iris(d),this.$picker.off("focus"),a(document).on("click.color.factory",function(){c.$picker.factoryBootstrap449_iris("hide")}),this.$picker.add(this.$background).on("click.color.factory",function(a){a.stopPropagation(),c.$picker.factoryBootstrap449_iris("show")})},togglePicker:function(){this.$element.hasClass("factory-picker-active")?this.hidePicker():this.showPicker()},hidePicker:function(){this.$element.removeClass("factory-picker-active"),this.$picker.factoryBootstrap449_iris("hide")},showPicker:function(){this.$element.addClass("factory-picker-active"),this.$picker.factoryBootstrap449_iris("show")},getValue:function(){return this.$picker.val()},setValue:function(a,b){this.$picker.val(a),b&&self.$picker.trigger("change")}}),a(function(){a.widget.bridge("factoryBootstrap449_colorControl",a.factoryBootstrap449.colorControl),a(".factory-bootstrap-449 .factory-color").factoryBootstrap449_colorControl({})})}(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.factoryBootstrap448_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.factoryBootstrap448_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-448 .factory-dropdown").factoryBootstrap448_dropdownControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name")||this.$element.attr("name"),this.hashCode=function(a){var b=0;if(!a||0===a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b=b.toString(16),b=b.replace("-","")},this.executeEvents=function(a){void 0!==window.factory_dropdown_control_events_data&&(a.change(function(){c.eventsProcess(a)}),c.eventsProcess(a))},this.eventsProcess=function(b){var d=b.attr("name"),e=b.val(),f=window.factory_dropdown_control_events_data[d];if(f&&f[e]){var g;void 0===window.__factory_dropdown_control_detach_elements&&(window.__factory_dropdown_control_detach_elements={}),g=window.__factory_dropdown_control_detach_elements;for(var h in f[e])if(f[e].hasOwnProperty(h)){var i,j=f[e][h];switch(a.isArray(j)||(i=c.hashCode(d+j)),h){case"hide":"string"==typeof j&&a(j).hide(0);break;case"show":"string"==typeof j&&a(j).fadeIn(200);break;case"detach":"string"==typeof j&&a(j).each(function(b){g[i]||(g[i]={}),g[i][b]||(g[i][b]={}),g[i][b].recovery_contanier=a(this).parent(),g[i][b].element=a(this).clone(!0),a(this).remove()});break;case"recovery":if(g[i]){for(var k in g[i])g[i].hasOwnProperty(k)&&g[i][k].recovery_contanier&&g[i][k].element&&g[i][k].recovery_contanier.append(g[i][k].element);delete g[i]}break;case"removeClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).removeClass(j[l]);break;case"addClasses":if("object"==typeof j)for(var l in j)j.hasOwnProperty(l)&&j[l]&&a(l).addClass(j[l])}}}},"buttons"===this.way)this.$result=this.$element.find(".factory-result"),this.$hints=this.$element.find(".factory-hints"),this.$buttons=this.$element.find(".btn"),c.executeEvents(this.$result),this.$buttons.click(function(){var b=a(this).data("value");return c.$buttons.removeClass("active"),a(this).addClass("active"),c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+b).fadeIn(),c.$result.val(b),c.$result.trigger("change"),!1});else if("ddslick"===this.way){c.executeEvents(c.$element.find(".factory-result"));var d=window["factory_"+this.name+"_data"],e=this.$element.find(".factory-ddslick"),f=this.$element.data("width")||300,g=this.$element.data("align")||"right";a(d).each(function(){return this.imageHoverSrc?void(a("<img/>")[0].src=this.imageHoverSrc):!0}),e.ddslick({data:d,width:f,imagePosition:g,selectText:"- select -",onSelected:function(a){a.selectedData.imageHoverSrc&&c.$element.find(".dd-selected-image").attr("src",a.selectedData.imageHoverSrc);var b=c.$element.find(".factory-result").val(a.selectedData.value);b.change()}})}else{c.executeEvents(this.$element),this.$hints=this.$element.next(),this.$hints.hasClass("factory-hints")&&(this.$element.change(function(){return c.updateHints(),!1}),this.updateHints=function(){var a=c.$element.val();c.$hints.find(".factory-hint").hide(),c.$hints.find(".factory-hint-"+a).show()},c.updateHints()),this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(a){console&&console.log&&console.log(a.responseText),c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length)for(var d in a){var e=a[d];c.addListItem(e)}else this.$element.append("<option>"+b.emptyList+"</li>");this.$element.trigger("factory-loaded")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<option />").attr("value",b.value).text(b.title).appendTo(this.$element),e=c.getAjaxData();e.selected&&e.selected==b.value&&d.attr("selected","selected")},this.showError=function(b){this.clearList();var d=a("<div class='factory-control-error'></div>").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),e=c.getAjaxData();this.$element.append("<option>"+e.emptyList+"</li>"),this.$element.after(d),this.$element.addClass("factory-has-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var h=this.$element.data("ajax");h&&this.loadData()}};a.fn.factoryBootstrap449_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.factoryBootstrap449_dropdownControl.Constructor=b,a(function(){a(".factory-bootstrap-449 .factory-dropdown").factoryBootstrap449_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.factoryBootstrap448_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.factoryBootstrap448_listControl.Constructor=b,a(function(){a(".factory-bootstrap-448 .factory-list").factoryBootstrap448_listControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){var b=function(b){var c=this;if(this.$element=a(b),this.way=this.$element.data("way"),this.name=this.$element.data("name"),"checklist"===this.way){this.getAjaxData=function(){var a=c.$element.data("ajax-data-id");return window[a]},this.loadData=function(){var b=c.getAjaxData();a.ajax({url:b.url,data:b.data,dataType:"json",success:function(a){return a.error?c.showError(a.error):void c.fill(a.items)},error:function(){c.showError("Unexpected error occurred during the ajax request.")},complete:function(){c.removeLoader()}})},this.fill=function(a){this.clearList();var b=c.getAjaxData();if(a&&a.length){this.$element.removeClass("factory-empty");for(var d in a){var e=a[d];c.addListItem(e)}}else this.$element.addClass("factory-empty"),this.$element.append("<li>"+b.emptyList+"</li>")},this.clearList=function(){this.$element.html("")},this.addListItem=function(b){var d=a("<li>"),e=a("<label>").attr("for","factory-checklist-"+c.name+"-"+b.value).appendTo(d),f=a("<span>").appendTo(e),g=a("<input />").attr("type","checkbox").attr("name",c.name+"[]").val(b.value).attr("id","factory-checklist-"+c.name+"-"+b.value).appendTo(f),h=(a("<span>"+b.title+"</span>").appendTo(e),c.getAjaxData());h.selected.length&&a.inArray(b.value,h.selected)>=0&&g.attr("checked","checked"),this.$element.append(d)},this.showError=function(b){this.$element.html("").append(a("<i class='fa fa-exclamation-triangle'></i>")).append(b),this.$element.addClass("factory-list-error")},this.removeLoader=function(){this.$element.removeClass("factory-hidden");var b=c.getAjaxData();a(b.loader).remove()};var d=this.$element.data("ajax");d&&this.loadData()}};a.fn.factoryBootstrap449_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.factoryBootstrap449_listControl.Constructor=b,a(function(){a(".factory-bootstrap-449 .factory-list").factoryBootstrap449_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.factoryBootstrap448_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-448 .factory-multiple-textbox-group").factoryBootstrap448_MultipleTextboxControl()})}(jQuery);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a){"use strict";var b=function(b){this.$element=a(b);var c=a(".factory-mtextbox-item",this.$element).eq(0).clone(!0);a(".factory-mtextbox-add-item",this.$element).on("click",function(){var b=a(this).closest(".factory-multiple-textbox-group").find(".factory-mtextbox-items"),d=c.clone(!0),e=a('<button class="btn btn-default btn-small factory-mtextbox-remove-item"><i class="fa fa-times" aria-hidden="true"></i></button>');return b.append(d.append(e)),d.find('input[type="text"]').val("").focus(),!1}),a(document).on("click",".factory-mtextbox-remove-item",function(){return a(this).closest(".factory-mtextbox-item").remove(),!1})};a.fn.factoryBootstrap449_MultipleTextboxControl=function(){return this.each(function(){new b(this)})},a(function(){a(".factory-bootstrap-449 .factory-multiple-textbox-group").factoryBootstrap449_MultipleTextboxControl()})}(jQuery);
libs/factory/bootstrap/assets/js-min/holder.more-link.min.js CHANGED
@@ -7,4 +7,4 @@
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
- !function(a,b,c,d){"use strict";var e="factoryBootstrap448_moreLink";a.fn[e]=function(b,c){return this.each(function(){var b=a(this);b.find(".factory-more-link-show").click(function(){return a(a(this).attr("href")).fadeIn(),a(this).hide(),!1}),b.find(".factory-more-link-hide").click(function(){var b=a(a(this).attr("href"));return b.fadeOut(300,function(){b.parents(".factory-more-link").find(".factory-more-link-show").show()}),!1})})},a(function(){a(".factory-bootstrap-448 .factory-more-link").factoryBootstrap448_moreLink()})}(jQuery,window,document);
7
  * Support: http://webcraftic.com/contact-us/
8
  */
9
 
10
+ !function(a,b,c,d){"use strict";var e="factoryBootstrap449_moreLink";a.fn[e]=function(b,c){return this.each(function(){var b=a(this);b.find(".factory-more-link-show").click(function(){return a(a(this).attr("href")).fadeIn(),a(this).hide(),!1}),b.find(".factory-more-link-hide").click(function(){var b=a(a(this).attr("href"));return b.fadeOut(300,function(){b.parents(".factory-more-link").find(".factory-more-link-show").show()}),!1})})},a(function(){a(".factory-bootstrap-449 .factory-more-link").factoryBootstrap449_moreLink()})}(jQuery,window,document);
libs/factory/bootstrap/assets/js-min/plugin.color.min.js ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap generator - v1.0.1, 2021-02-04
3
+ * Webcraftic factory build
4
+ *
5
+ * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
6
+ * Site: http://webcraftic.com
7
+ * Support: http://webcraftic.com/contact-us/
8
+ */
9
+
10
+ !function(a,b){var c=function(a,b){return this instanceof c?this._init(a,b):new c(a,b)};c.fn=c.prototype={_color:0,_alpha:1,error:!1,_hsl:{h:0,s:0,l:0},_hsv:{h:0,s:0,v:0},_hSpace:"hsl",_init:function(a){var c="noop";switch(typeof a){case"object":return a.a!==b&&this.a(a.a),c=a.r!==b?"fromRgb":a.l!==b?"fromHsl":a.v!==b?"fromHsv":c,this[c](a);case"string":return this.fromCSS(a);case"number":return this.fromInt(parseInt(a,10))}return this},_error:function(){return this.error=!0,this},clone:function(){for(var a=new c(this.toInt()),b=["_alpha","_hSpace","_hsl","_hsv","error"],d=b.length-1;d>=0;d--)a[b[d]]=this[b[d]];return a},setHSpace:function(a){return this._hSpace="hsv"===a?a:"hsl",this},noop:function(){return this},fromCSS:function(a){var b,c=/^(rgb|hs(l|v))a?\(/;if(this.error=!1,a=a.replace(/^\s+/,"").replace(/\s+$/,"").replace(/;$/,""),a.match(c)&&a.match(/\)$/)){if(b=a.replace(/(\s|%)/g,"").replace(c,"").replace(/,?\);?$/,"").split(","),b.length<3)return this._error();if(4===b.length&&(this.a(parseFloat(b.pop())),this.error))return this;for(var d=b.length-1;d>=0;d--)if(b[d]=parseInt(b[d],10),isNaN(b[d]))return this._error();return a.match(/^rgb/)?this.fromRgb({r:b[0],g:b[1],b:b[2]}):a.match(/^hsv/)?this.fromHsv({h:b[0],s:b[1],v:b[2]}):this.fromHsl({h:b[0],s:b[1],l:b[2]})}return this.fromHex(a)},fromRgb:function(a,c){return"object"!=typeof a||a.r===b||a.g===b||a.b===b?this._error():(this.error=!1,this.fromInt(parseInt((a.r<<16)+(a.g<<8)+a.b,10),c))},fromHex:function(a){return a=a.replace(/^#/,"").replace(/^0x/,""),3===a.length&&(a=a[0]+a[0]+a[1]+a[1]+a[2]+a[2]),this.error=!/^[0-9A-F]{6}$/i.test(a),this.fromInt(parseInt(a,16))},fromHsl:function(a){var c,d,e,f,g,h,i,j;return"object"!=typeof a||a.h===b||a.s===b||a.l===b?this._error():(this._hsl=a,this._hSpace="hsl",h=a.h/360,i=a.s/100,j=a.l/100,0===i?c=d=e=j:(f=.5>j?j*(1+i):j+i-j*i,g=2*j-f,c=this.hue2rgb(g,f,h+1/3),d=this.hue2rgb(g,f,h),e=this.hue2rgb(g,f,h-1/3)),this.fromRgb({r:255*c,g:255*d,b:255*e},!0))},fromHsv:function(a){var c,d,e,f,g,h,i,j,k,l,m;if("object"!=typeof a||a.h===b||a.s===b||a.v===b)return this._error();switch(this._hsv=a,this._hSpace="hsv",c=a.h/360,d=a.s/100,e=a.v/100,i=Math.floor(6*c),j=6*c-i,k=e*(1-d),l=e*(1-j*d),m=e*(1-(1-j)*d),i%6){case 0:f=e,g=m,h=k;break;case 1:f=l,g=e,h=k;break;case 2:f=k,g=e,h=m;break;case 3:f=k,g=l,h=e;break;case 4:f=m,g=k,h=e;break;case 5:f=e,g=k,h=l}return this.fromRgb({r:255*f,g:255*g,b:255*h},!0)},fromInt:function(a,c){return this._color=parseInt(a,10),isNaN(this._color)&&(this._color=0),this._color>16777215?this._color=16777215:this._color<0&&(this._color=0),c===b&&(this._hsv.h=this._hsv.s=this._hsl.h=this._hsl.s=0),this},hue2rgb:function(a,b,c){return 0>c&&(c+=1),c>1&&(c-=1),1/6>c?a+6*(b-a)*c:.5>c?b:2/3>c?a+(b-a)*(2/3-c)*6:a},toString:function(){var a=parseInt(this._color,10).toString(16);if(this.error)return"";if(a.length<6)for(var b=6-a.length-1;b>=0;b--)a="0"+a;return"#"+a},toCSS:function(a,b){switch(a=a||"hex",b=parseFloat(b||this._alpha),a){case"rgb":case"rgba":var c=this.toRgb();return 1>b?"rgba( "+c.r+", "+c.g+", "+c.b+", "+b+" )":"rgb( "+c.r+", "+c.g+", "+c.b+" )";case"hsl":case"hsla":var d=this.toHsl();return 1>b?"hsla( "+d.h+", "+d.s+"%, "+d.l+"%, "+b+" )":"hsl( "+d.h+", "+d.s+"%, "+d.l+"% )";default:return this.toString()}},toRgb:function(){return{r:255&this._color>>16,g:255&this._color>>8,b:255&this._color}},toHsl:function(){var a,b,c=this.toRgb(),d=c.r/255,e=c.g/255,f=c.b/255,g=Math.max(d,e,f),h=Math.min(d,e,f),i=(g+h)/2;if(g===h)a=b=0;else{var j=g-h;switch(b=i>.5?j/(2-g-h):j/(g+h),g){case d:a=(e-f)/j+(f>e?6:0);break;case e:a=(f-d)/j+2;break;case f:a=(d-e)/j+4}a/=6}return a=Math.round(360*a),0===a&&this._hsl.h!==a&&(a=this._hsl.h),b=Math.round(100*b),0===b&&this._hsl.s&&(b=this._hsl.s),{h:a,s:b,l:Math.round(100*i)}},toHsv:function(){var a,b,c=this.toRgb(),d=c.r/255,e=c.g/255,f=c.b/255,g=Math.max(d,e,f),h=Math.min(d,e,f),i=g,j=g-h;if(b=0===g?0:j/g,g===h)a=b=0;else{switch(g){case d:a=(e-f)/j+(f>e?6:0);break;case e:a=(f-d)/j+2;break;case f:a=(d-e)/j+4}a/=6}return a=Math.round(360*a),0===a&&this._hsv.h!==a&&(a=this._hsv.h),b=Math.round(100*b),0===b&&this._hsv.s&&(b=this._hsv.s),{h:a,s:b,v:Math.round(100*i)}},toInt:function(){return this._color},toIEOctoHex:function(){var a=this.toString(),b=parseInt(255*this._alpha,10).toString(16);return 1===b.length&&(b="0"+b),"#"+b+a.replace(/^#/,"")},toLuminosity:function(){var a=this.toRgb();return.2126*Math.pow(a.r/255,2.2)+.7152*Math.pow(a.g/255,2.2)+.0722*Math.pow(a.b/255,2.2)},getDistanceLuminosityFrom:function(a){if(!(a instanceof c))throw"getDistanceLuminosityFrom requires a Color object";var b=this.toLuminosity(),d=a.toLuminosity();return b>d?(b+.05)/(d+.05):(d+.05)/(b+.05)},getMaxContrastColor:function(){var a=this.toLuminosity(),b=a>=.5?"000000":"ffffff";return new c(b)},getReadableContrastingColor:function(a,d){if(!a instanceof c)return this;var e=d===b?5:d,f=a.getDistanceLuminosityFrom(this),g=a.getMaxContrastColor(),h=g.getDistanceLuminosityFrom(a);if(e>=h)return g;if(f>=e)return this;for(var i=0===g.toInt()?-1:1;e>f&&(this.l(i,!0),f=this.getDistanceLuminosityFrom(a),0!==this._color&&16777215!==this._color););return this},a:function(a){if(a===b)return this._alpha;var c=parseFloat(a);return isNaN(c)?this._error():(this._alpha=c,this)},darken:function(a){return a=a||5,this.l(-a,!0)},lighten:function(a){return a=a||5,this.l(a,!0)},saturate:function(a){return a=a||15,this.s(a,!0)},desaturate:function(a){return a=a||15,this.s(-a,!0)},toGrayscale:function(){return this.setHSpace("hsl").s(0)},getComplement:function(){return this.h(180,!0)},getSplitComplement:function(a){a=a||1;var b=180+30*a;return this.h(b,!0)},getAnalog:function(a){a=a||1;var b=30*a;return this.h(b,!0)},getTetrad:function(a){a=a||1;var b=60*a;return this.h(b,!0)},getTriad:function(a){a=a||1;var b=120*a;return this.h(b,!0)},_partial:function(a){var c=d[a];return function(d,e){var f=this._spaceFunc("to",c.space);return d===b?f[a]:(e===!0&&(d=f[a]+d),c.mod&&(d%=c.mod),c.range&&(d=d<c.range[0]?c.range[0]:d>c.range[1]?c.range[1]:d),f[a]=d,this._spaceFunc("from",c.space,f))}},_spaceFunc:function(a,b,c){var d=b||this._hSpace,e=a+d.charAt(0).toUpperCase()+d.substr(1);return this[e](c)}};var d={h:{mod:360},s:{range:[0,100]},l:{space:"hsl",range:[0,100]},v:{space:"hsv",range:[0,100]},r:{space:"rgb",range:[0,255]},g:{space:"rgb",range:[0,255]},b:{space:"rgb",range:[0,255]}};for(var e in d)d.hasOwnProperty(e)&&(c.fn[e]=c.fn._partial(e));"object"==typeof exports?module.exports=c:a.Color=c}(this);
libs/factory/bootstrap/assets/js-min/plugin.iris.min.js ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Bootstrap generator - v1.0.1, 2021-02-04
3
+ * Webcraftic factory build
4
+ *
5
+ * Copyright 2018, Alex Kovalev <alex.kovalevv@gmail.com>, Webcraftic <wordpress.webraftic@gmail.com>
6
+ * Site: http://webcraftic.com
7
+ * Support: http://webcraftic.com/contact-us/
8
+ */
9
+
10
+ /*! Iris Color Picker - v1.0.4 - 2013-11-18
11
+ * https://github.com/Automattic/Iris
12
+ * Copyright (c) 2013 Matt Wiebe; Licensed GPLv2 */
13
+ !function(a,b){function c(){var b,c;j?k="filter":(b=a('<div id="iris-gradtest" />'),c="linear-gradient(top,#fff,#000)",a.each(l,function(a,d){return b.css("backgroundImage",d+c),b.css("backgroundImage").match("gradient")?(k=a,!1):void 0}),k===!1&&(b.css("background","-webkit-gradient(linear,0% 0%,0% 100%,from(#fff),to(#000))"),b.css("backgroundImage").match("gradient")&&(k="webkit")),b.remove())}function d(b,c){return b="top"===b?"top":"left",c=a.isArray(c)?c:Array.prototype.slice.call(arguments,1),"webkit"===k?f(b,c):l[k]+"linear-gradient("+b+", "+c.join(", ")+")"}function e(b,c){var d,e,f,h,i,j,k,l,m;b="top"===b?"top":"left",c=a.isArray(c)?c:Array.prototype.slice.call(arguments,1),d="top"===b?0:1,e=a(this),f=c.length-1,h="filter",i=1===d?"left":"top",j=1===d?"right":"bottom",k=1===d?"height":"width",l='<div class="iris-ie-gradient-shim" style="position:absolute;'+k+":100%;"+i+":%start%;"+j+":%end%;"+h+':%filter%;" data-color:"%color%"></div>',m="","static"===e.css("position")&&e.css({position:"relative"}),c=g(c),a.each(c,function(a,b){var e,g,h;return a===f?!1:(e=c[a+1],void(b.stop!==e.stop&&(g=100-parseFloat(e.stop)+"%",b.octoHex=new Color(b.color).toIEOctoHex(),e.octoHex=new Color(e.color).toIEOctoHex(),h="progid:DXImageTransform.Microsoft.Gradient(GradientType="+d+", StartColorStr='"+b.octoHex+"', EndColorStr='"+e.octoHex+"')",m+=l.replace("%start%",b.stop).replace("%end%",g).replace("%filter%",h))))}),e.find(".iris-ie-gradient-shim").remove(),a(m).prependTo(e)}function f(b,c){var d=[];return b="top"===b?"0% 0%,0% 100%,":"0% 100%,100% 100%,",c=g(c),a.each(c,function(a,b){d.push("color-stop("+parseFloat(b.stop)/100+", "+b.color+")")}),"-webkit-gradient(linear,"+b+d.join(",")+")"}function g(b){var c=[],d=[],e=[],f=b.length-1;return a.each(b,function(a,b){var e=b,f=!1,g=b.match(/1?[0-9]{1,2}%$/);g&&(e=b.replace(/\s?1?[0-9]{1,2}%$/,""),f=g.shift()),c.push(e),d.push(f)}),d[0]===!1&&(d[0]="0%"),d[f]===!1&&(d[f]="100%"),d=h(d),a.each(d,function(a){e[a]={color:c[a],stop:d[a]}}),e}function h(b){var c,d,e,f,g=0,i=b.length-1,j=0,k=!1;if(b.length<=2||a.inArray(!1,b)<0)return b;for(;j<b.length-1;)k||b[j]!==!1?k&&b[j]!==!1&&(i=j,j=b.length):(g=j-1,k=!0),j++;for(d=i-g,f=parseInt(b[g].replace("%"),10),c=(parseFloat(b[i].replace("%"))-f)/d,j=g+1,e=1;i>j;)b[j]=f+e*c+"%",e++,j++;return h(b)}var i,j,k,l,m,n,o,p,q;return i='<div class="iris-picker"><div class="iris-picker-inner"><div class="iris-square"><a class="iris-square-value" href="#"><span class="iris-square-handle ui-slider-handle"></span></a><div class="iris-square-inner iris-square-horiz"></div><div class="iris-square-inner iris-square-vert"></div></div><div class="iris-slider iris-strip"><div class="iris-slider-offset"></div></div></div></div>',o=navigator.userAgent.toLowerCase(),p="Microsoft Internet Explorer"===navigator.appName,q=p?parseFloat(o.match(/msie ([0-9]{1,}[\.0-9]{0,})/)[1]):0,j=p&&10>q,k=!1,l=["-moz-","-webkit-","-o-","-ms-"],m='.iris-picker{display:block;position:relative}.iris-picker,.iris-picker *{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input+.iris-picker{margin-top:4px}.iris-error{background-color:#ffafaf}.iris-border{border-radius:3px;border:1px solid #aaa;width:200px;background-color:#fff}.iris-picker-inner{position:absolute;top:0;right:0;left:0;bottom:0}.iris-border .iris-picker-inner{top:10px;right:10px;left:10px;bottom:10px}.iris-picker .iris-square-inner{position:absolute;left:0;right:0;top:0;bottom:0}.iris-picker .iris-square,.iris-picker .iris-slider,.iris-picker .iris-square-inner,.iris-picker .iris-palette{border-radius:3px;box-shadow:inset 0 0 5px rgba(0,0,0,.4);height:100%;width:12.5%;float:left;margin-right:5%}.iris-picker .iris-square{width:76%;margin-right:10%;position:relative}.iris-picker .iris-square-inner{width:auto;margin:0}.iris-ie-9 .iris-square,.iris-ie-9 .iris-slider,.iris-ie-9 .iris-square-inner,.iris-ie-9 .iris-palette{box-shadow:none;border-radius:0}.iris-ie-9 .iris-square,.iris-ie-9 .iris-slider,.iris-ie-9 .iris-palette{outline:1px solid rgba(0,0,0,.1)}.iris-ie-lt9 .iris-square,.iris-ie-lt9 .iris-slider,.iris-ie-lt9 .iris-square-inner,.iris-ie-lt9 .iris-palette{outline:1px solid #aaa}.iris-ie-lt9 .iris-square .ui-slider-handle{outline:1px solid #aaa;background-color:#fff;-ms-filter:"alpha(Opacity=30)"}.iris-ie-lt9 .iris-square .iris-square-handle{background:0;border:3px solid #fff;-ms-filter:"alpha(Opacity=50)"}.iris-picker .iris-strip{margin-right:0;position:relative}.iris-picker .iris-strip .ui-slider-handle{position:absolute;background:0;margin:0;right:-3px;left:-3px;border:4px solid #aaa;border-width:4px 3px;width:auto;height:6px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.2);opacity:.9;z-index:5;cursor:ns-resize}.iris-strip .ui-slider-handle:before{content:" ";position:absolute;left:-2px;right:-2px;top:-3px;bottom:-3px;border:2px solid #fff;border-radius:3px}.iris-picker .iris-slider-offset{position:absolute;top:11px;left:0;right:0;bottom:-3px;width:auto;height:auto;background:transparent;border:0;top:none;border-radius:0}.iris-picker .iris-square-handle{background:transparent;border:5px solid #aaa;border-radius:50%;border-color:rgba(128,128,128,.5);box-shadow:none;width:12px;height:12px;position:absolute;left:-10px;top:-10px;cursor:move;opacity:1;z-index:10}.iris-picker .ui-state-focus .iris-square-handle{opacity:.8}.iris-picker .iris-square-handle:hover{border-color:#999}.iris-picker .iris-square-value:focus .iris-square-handle{box-shadow:0 0 2px rgba(0,0,0,.75);opacity:.8}.iris-picker .iris-square-handle:hover::after{border-color:#fff}.iris-picker .iris-square-handle::after{position:absolute;bottom:-4px;right:-4px;left:-4px;top:-4px;border:3px solid #f9f9f9;border-color:rgba(255,255,255,.8);border-radius:50%;content:" "}.iris-picker .iris-square-value{width:8px;height:8px;position:absolute}.iris-ie-lt9 .iris-square-value,.iris-mozilla .iris-square-value{width:1px;height:1px}.iris-palette-container{position:absolute;bottom:0;left:0;margin:0;padding:0}.iris-border .iris-palette-container{left:10px;bottom:10px}.iris-picker .iris-palette{margin:0;cursor:pointer}',j&&7>=q?(a.fn.iris=a.noop,void(a.support.iris=!1)):(a.support.factoryBootstrap449_iris=!0,a.fn.factoryBootstrap449_gradient=function(){var b=arguments;return this.each(function(){j?e.apply(this,b):a(this).css("backgroundImage",d.apply(this,b))})},a.fn.factoryBootstrap449_raninbowGradient=function(b,c){var d,e,f,g;for(b=b||"top",d=a.extend({},{s:100,l:50},c),e="hsl(%h%,"+d.s+"%,"+d.l+"%)",f=0,g=[];360>=f;)g.push(e.replace("%h%",f)),f+=30;return this.each(function(){a(this).factoryBootstrap449_gradient(b,g)})},n={options:{color:!1,mode:"hsl",controls:{horiz:"s",vert:"l",strip:"h"},hide:!0,border:!0,target:!1,width:200,palettes:!1},_color:"",_palettes:["#000","#fff","#d33","#d93","#ee2","#81d742","#1e73be","#8224e3"],_inited:!1,_defaultHSLControls:{horiz:"s",vert:"l",strip:"h"},_defaultHSVControls:{horiz:"h",vert:"v",strip:"s"},_scale:{h:360,s:100,l:100,v:100},_create:function(){var b=this,d=b.element,e=b.options.color||d.val();k===!1&&c(),d.is("input")?(b.options.target?b.picker=a(i).appendTo(b.options.target):b.picker=a(i).insertAfter(d),b._addInputListeners(d)):(d.append(i),b.picker=d.find(".iris-picker")),p?9===q?b.picker.addClass("iris-ie-9"):8>=q&&b.picker.addClass("iris-ie-lt9"):o.indexOf("compatible")<0&&o.indexOf("khtml")<0&&o.match(/mozilla/)&&b.picker.addClass("iris-mozilla"),b.options.palettes&&b._addPalettes(),b._color=new Color(e).setHSpace(b.options.mode),b.options.color=b._color.toString(),b.controls={square:b.picker.find(".iris-square"),squareDrag:b.picker.find(".iris-square-value"),horiz:b.picker.find(".iris-square-horiz"),vert:b.picker.find(".iris-square-vert"),strip:b.picker.find(".iris-strip"),stripSlider:b.picker.find(".iris-strip .iris-slider-offset")},"hsv"===b.options.mode&&b._has("l",b.options.controls)?b.options.controls=b._defaultHSVControls:"hsl"===b.options.mode&&b._has("v",b.options.controls)&&(b.options.controls=b._defaultHSLControls),b.hue=b._color.h(),b.options.hide&&b.picker.hide(),b.options.border&&b.picker.addClass("iris-border"),b._initControls(),b.active="external",b._dimensions(),b._change()},_has:function(b,c){var d=!1;return a.each(c,function(a,c){return b===c?(d=!0,!1):void 0}),d},_addPalettes:function(){var b=a('<div class="iris-palette-container" />'),c=a('<a class="iris-palette" tabindex="0" />'),d=a.isArray(this.options.palettes)?this.options.palettes:this._palettes;this.picker.find(".iris-palette-container").length&&(b=this.picker.find(".iris-palette-container").detach().html("")),a.each(d,function(a,d){c.clone().data("color",d).css("backgroundColor",d).appendTo(b).height(10).width(10)}),this.picker.append(b)},_paint:function(){var a=this;a._paintDimension("top","strip"),a._paintDimension("top","vert"),a._paintDimension("left","horiz")},_paintDimension:function(a,b){var c,d=this,e=d._color,f=d.options.mode,g=d._getHSpaceColor(),h=d.controls[b],i=d.options.controls;if(b!==d.active&&("square"!==d.active||"strip"===b))switch(i[b]){case"h":if("hsv"===f){switch(g=e.clone(),b){case"horiz":g[i.vert](100);break;case"vert":g[i.horiz](100);break;case"strip":g.setHSpace("hsl")}c=g.toHsl()}else c="strip"===b?{s:g.s,l:g.l}:{s:100,l:g.l};h.factoryBootstrap449_raninbowGradient(a,c);break;case"s":"hsv"===f?"vert"===b?c=[e.clone().a(0).s(0).toCSS("rgba"),e.clone().a(1).s(0).toCSS("rgba")]:"strip"===b?c=[e.clone().s(100).toCSS("hsl"),e.clone().s(0).toCSS("hsl")]:"horiz"===b&&(c=["#fff","hsl("+g.h+",100%,50%)"]):c="vert"===b&&"h"===d.options.controls.horiz?["hsla(0, 0%, "+g.l+"%, 0)","hsla(0, 0%, "+g.l+"%, 1)"]:["hsl("+g.h+",0%,50%)","hsl("+g.h+",100%,50%)"],h.factoryBootstrap449_gradient(a,c);break;case"l":c="strip"===b?["hsl("+g.h+",100%,100%)","hsl("+g.h+", "+g.s+"%,50%)","hsl("+g.h+",100%,0%)"]:["#fff","rgba(255,255,255,0) 50%","rgba(0,0,0,0) 50%","rgba(0,0,0,1)"],h.factoryBootstrap449_gradient(a,c);break;case"v":c="strip"===b?[e.clone().v(100).toCSS(),e.clone().v(0).toCSS()]:["rgba(0,0,0,0)","#000"],h.factoryBootstrap449_gradient(a,c)}},_getHSpaceColor:function(){return"hsv"===this.options.mode?this._color.toHsv():this._color.toHsl()},_dimensions:function(b){var c,d,e,f,g=this,h=g.options,i=g.controls,j=i.square,k=g.picker.find(".iris-strip"),l="77.5%",m="12%",n=20,o=h.border?h.width-n:h.width,p=a.isArray(h.palettes)?h.palettes.length:g._palettes.length;return b&&(j.css("width",""),k.css("width",""),g.picker.css({width:"",height:""})),l=o*(parseFloat(l)/100),m=o*(parseFloat(m)/100),c=h.border?l+n:l,j.width(l).height(l),k.height(l).width(m),g.picker.css({width:h.width,height:c}),h.palettes?(d=2*l/100,f=l-(p-1)*d,e=f/p,g.picker.find(".iris-palette").each(function(b){var c=0===b?0:d;a(this).css({width:e,height:e,marginLeft:c})}),g.picker.css("paddingBottom",e+d),void k.height(e+d+l)):g.picker.css("paddingBottom","")},_addInputListeners:function(a){var b=this,c=100,d=function(c){var d=new Color(a.val()),e=a.val().replace(/^#/,"");a.removeClass("iris-error"),d.error?""!==e&&a.addClass("iris-error"):d.toString()!==b._color.toString()&&("keyup"===c.type&&e.match(/^[0-9a-fA-F]{3}$/)||b._setOption("color",d.toString()))};a.on("change",d).on("keyup",b._debounce(d,c)),b.options.hide&&a.one("focus",function(){b.show()})},_initControls:function(){var b=this,c=b.controls,d=c.square,e=b.options.controls,f=b._scale[e.strip];c.stripSlider.slider({orientation:"vertical",max:f,slide:function(a,c){b.active="strip","h"===e.strip&&(c.value=f-c.value),b._color[e.strip](c.value),b._change.apply(b,arguments)}}),c.squareDrag.draggable({containment:"parent",zIndex:1e3,cursor:"move",drag:function(a,c){b._squareDrag(a,c)},start:function(){d.addClass("iris-dragging"),a(this).addClass("ui-state-focus")},stop:function(){d.removeClass("iris-dragging"),a(this).removeClass("ui-state-focus")}}).on("mousedown mouseup",function(c){var d="ui-state-focus";c.preventDefault(),"mousedown"===c.type?(b.picker.find("."+d).removeClass(d).blur(),a(this).addClass(d).focus()):a(this).removeClass(d)}).on("keydown",function(a){var d=c.square,e=c.squareDrag,f=e.position(),g=b.options.width/100;switch(a.altKey&&(g*=10),a.keyCode){case 37:f.left-=g;break;case 38:f.top-=g;break;case 39:f.left+=g;break;case 40:f.top+=g;break;default:return!0}f.left=Math.max(0,Math.min(f.left,d.width())),f.top=Math.max(0,Math.min(f.top,d.height())),e.css(f),b._squareDrag(a,{position:f}),a.preventDefault()}),d.mousedown(function(c){var d,e;1===c.which&&a(c.target).is("div")&&(d=b.controls.square.offset(),e={top:c.pageY-d.top,left:c.pageX-d.left},c.preventDefault(),b._squareDrag(c,{position:e}),c.target=b.controls.squareDrag.get(0),b.controls.squareDrag.css(e).trigger(c))}),b.options.palettes&&b._paletteListeners()},_paletteListeners:function(){var b=this;b.picker.find(".iris-palette-container").on("click.palette",".iris-palette",function(){b._color.fromCSS(a(this).data("color")),b.active="external",b._change()}).on("keydown.palette",".iris-palette",function(b){return 13!==b.keyCode&&32!==b.keyCode?!0:(b.stopPropagation(),void a(this).click())})},_squareDrag:function(a,b){var c=this,d=c.options.controls,e=c._squareDimensions(),f=Math.round((e.h-b.position.top)/e.h*c._scale[d.vert]),g=c._scale[d.horiz]-Math.round((e.w-b.position.left)/e.w*c._scale[d.horiz]);c._color[d.horiz](g)[d.vert](f),c.active="square",c._change.apply(c,arguments)},_setOption:function(b,c){var d,e,f,g=this,h=g.options[b],i=!1;switch(g.options[b]=c,b){case"color":c=""+c,d=c.replace(/^#/,""),e=new Color(c).setHSpace(g.options.mode),e.error?g.options[b]=h:(g._color=e,g.options.color=g.options[b]=g._color.toString(),g.active="external",g._change());break;case"palettes":i=!0,c?g._addPalettes():g.picker.find(".iris-palette-container").remove(),h||g._paletteListeners();break;case"width":i=!0;break;case"border":i=!0,f=c?"addClass":"removeClass",g.picker[f]("iris-border");break;case"mode":case"controls":if(h===c)return;return f=g.element,h=g.options,h.hide=!g.picker.is(":visible"),g.destroy(),g.picker.remove(),a(g.element).iris(h)}i&&g._dimensions(!0)},_squareDimensions:function(a){var c,d,e=this.controls.square;return a!==b&&e.data("dimensions")?e.data("dimensions"):(d=this.controls.squareDrag,c={w:e.width(),h:e.height()},e.data("dimensions",c),c)},_isNonHueControl:function(a,b){return"square"===a&&"h"===this.options.controls.strip?!0:"external"===b||"h"===b&&"strip"===a?!1:!0},_change:function(){var b=this,c=b.controls,d=b._getHSpaceColor(),e=["square","strip"],f=b.options.controls,g=f[b.active]||"external",h=b.hue;"strip"===b.active?e=[]:"external"!==b.active&&e.pop(),a.each(e,function(a,e){var g,h,i;if(e!==b.active)switch(e){case"strip":g="h"===f.strip?b._scale[f.strip]-d[f.strip]:d[f.strip],c.stripSlider.slider("value",g);break;case"square":h=b._squareDimensions(),i={left:d[f.horiz]/b._scale[f.horiz]*h.w,top:h.h-d[f.vert]/b._scale[f.vert]*h.h},b.controls.squareDrag.css(i)}}),d.h!==h&&b._isNonHueControl(b.active,g)&&b._color.h(h),b.hue=b._color.h(),b.options.color=b._color.toString(),b._inited&&b._trigger("change",{type:b.active},{color:b._color}),b.element.is(":input")&&!b._color.error&&(b.element.removeClass("iris-error"),b.element.val()!==b._color.toString()&&b.element.val(b._color.toString())),b._paint(),b._inited=!0,b.active=!1},_debounce:function(a,b,c){var d,e;return function(){var f,g,h=this,i=arguments;return f=function(){d=null,c||(e=a.apply(h,i))},g=c&&!d,clearTimeout(d),d=setTimeout(f,b),g&&(e=a.apply(h,i)),e}},show:function(){this.picker.show()},hide:function(){this.picker.hide()},toggle:function(){this.picker.toggle()},color:function(a){return a===!0?this._color.clone():a===b?this._color.toString():void this.option("color",a)}},a.widget("a8c.factoryBootstrap449_iris",n),void a('<style id="iris-css">'+m+"</style>").appendTo("head"))}(jQuery);
libs/factory/bootstrap/boot.php CHANGED
@@ -19,27 +19,27 @@ if( !is_admin() ) {
19
  return;
20
  }
21
 
22
- if( defined('FACTORY_BOOTSTRAP_448_LOADED') ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_BOOTSTRAP_448_VERSION', '4.4.8');
27
- define('FACTORY_BOOTSTRAP_448_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
- define('FACTORY_BOOTSTRAP_448_DIR', dirname(__FILE__));
34
- define('FACTORY_BOOTSTRAP_448_URL', plugins_url(null, __FILE__));
35
 
36
- require_once(FACTORY_BOOTSTRAP_448_DIR . '/includes/functions.php');
37
 
38
  /**
39
- * @param Wbcr_Factory448_Plugin $plugin
40
  */
41
- add_action('wbcr_factory_bootstrap_448_plugin_created', function ($plugin) {
42
- $manager = new Wbcr_FactoryBootstrap448_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_BOOTSTRAP_449_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_BOOTSTRAP_449_VERSION', '4.4.9');
27
+ define('FACTORY_BOOTSTRAP_449_LOADED', true);
28
 
29
  if( !defined('FACTORY_FLAT_ADMIN') ) {
30
  define('FACTORY_FLAT_ADMIN', true);
31
  }
32
 
33
+ define('FACTORY_BOOTSTRAP_449_DIR', dirname(__FILE__));
34
+ define('FACTORY_BOOTSTRAP_449_URL', plugins_url(null, __FILE__));
35
 
36
+ require_once(FACTORY_BOOTSTRAP_449_DIR . '/includes/functions.php');
37
 
38
  /**
39
+ * @param Wbcr_Factory449_Plugin $plugin
40
  */
41
+ add_action('wbcr_factory_bootstrap_449_plugin_created', function ($plugin) {
42
+ $manager = new Wbcr_FactoryBootstrap449_Manager($plugin);
43
  $plugin->setBootstap($manager);
44
  });
45
 
libs/factory/bootstrap/includes/functions.php CHANGED
@@ -20,13 +20,13 @@ if( !defined('ABSPATH') ) {
20
  *
21
  * @since 3.2.0
22
  */
23
- class Wbcr_FactoryBootstrap448_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
- * @var Wbcr_Factory448_Plugin
30
  */
31
  public $plugin;
32
 
@@ -51,7 +51,7 @@ class Wbcr_FactoryBootstrap448_Manager {
51
  *
52
  * @since 1.0.0
53
  */
54
- public function __construct(Wbcr_Factory448_Plugin $plugin)
55
  {
56
  $this->plugin = $plugin;
57
 
@@ -115,8 +115,8 @@ class Wbcr_FactoryBootstrap448_Manager {
115
  public function loadAssets($hook)
116
  {
117
 
118
- do_action('wbcr_factory_448_bootstrap_enqueue_scripts', $hook);
119
- do_action('wbcr_factory_448_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook);
120
 
121
  $dependencies = [];
122
  if( !empty($this->scripts) ) {
@@ -161,8 +161,8 @@ class Wbcr_FactoryBootstrap448_Manager {
161
  $cache_enable = apply_filters('wbcr/factory/bootstrap/cache_enable', true);
162
 
163
  $cache_id = md5(implode(',', $this->scripts) . $type . $this->plugin->getPluginVersion());
164
- $cache_dir_path = FACTORY_BOOTSTRAP_448_DIR . '/assets/cache/';
165
- $cache_dir_url = FACTORY_BOOTSTRAP_448_URL . '/assets/cache/';
166
 
167
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
168
  $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
@@ -189,7 +189,7 @@ class Wbcr_FactoryBootstrap448_Manager {
189
  foreach($scripts as $script_to_load) {
190
  $script_to_load = sanitize_text_field($script_to_load);
191
  if( $cache_enable && $cache_dir_exists ) {
192
- $fname = FACTORY_BOOTSTRAP_448_DIR . "/assets/$type-min/$script_to_load.min." . $type;
193
  if( file_exists($fname) ) {
194
  $f = @fopen($fname, 'r');
195
  $concat_files[] = @fread($f, filesize($fname));
@@ -197,9 +197,9 @@ class Wbcr_FactoryBootstrap448_Manager {
197
  }
198
  } else {
199
  if( $type == 'js' ) {
200
- wp_enqueue_script(md5($script_to_load), FACTORY_BOOTSTRAP_448_URL . "/assets/$type-min/$script_to_load.min." . $type, $is_first ? $dependencies : false, $this->plugin->getPluginVersion());
201
  } else {
202
- wp_enqueue_style(md5($script_to_load), FACTORY_BOOTSTRAP_448_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion());
203
  }
204
  $is_first = false;
205
  }
20
  *
21
  * @since 3.2.0
22
  */
23
+ class Wbcr_FactoryBootstrap449_Manager {
24
 
25
  /**
26
  * A plugin for which the manager was created.
27
  *
28
  * @since 3.2.0
29
+ * @var Wbcr_Factory449_Plugin
30
  */
31
  public $plugin;
32
 
51
  *
52
  * @since 1.0.0
53
  */
54
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
55
  {
56
  $this->plugin = $plugin;
57
 
115
  public function loadAssets($hook)
116
  {
117
 
118
+ do_action('wbcr_factory_449_bootstrap_enqueue_scripts', $hook);
119
+ do_action('wbcr_factory_449_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), $hook);
120
 
121
  $dependencies = [];
122
  if( !empty($this->scripts) ) {
161
  $cache_enable = apply_filters('wbcr/factory/bootstrap/cache_enable', true);
162
 
163
  $cache_id = md5(implode(',', $this->scripts) . $type . $this->plugin->getPluginVersion());
164
+ $cache_dir_path = FACTORY_BOOTSTRAP_449_DIR . '/assets/cache/';
165
+ $cache_dir_url = FACTORY_BOOTSTRAP_449_URL . '/assets/cache/';
166
 
167
  $cache_filepath = $cache_dir_path . $cache_id . ".min." . $type;
168
  $cache_fileurl = $cache_dir_url . $cache_id . ".min." . $type;
189
  foreach($scripts as $script_to_load) {
190
  $script_to_load = sanitize_text_field($script_to_load);
191
  if( $cache_enable && $cache_dir_exists ) {
192
+ $fname = FACTORY_BOOTSTRAP_449_DIR . "/assets/$type-min/$script_to_load.min." . $type;
193
  if( file_exists($fname) ) {
194
  $f = @fopen($fname, 'r');
195
  $concat_files[] = @fread($f, filesize($fname));
197
  }
198
  } else {
199
  if( $type == 'js' ) {
200
+ wp_enqueue_script(md5($script_to_load), FACTORY_BOOTSTRAP_449_URL . "/assets/$type-min/$script_to_load.min." . $type, $is_first ? $dependencies : false, $this->plugin->getPluginVersion());
201
  } else {
202
+ wp_enqueue_style(md5($script_to_load), FACTORY_BOOTSTRAP_449_URL . "/assets/$type-min/$script_to_load.min." . $type, [], $this->plugin->getPluginVersion());
203
  }
204
  $is_first = false;
205
  }
libs/factory/clearfy/assets/css/clearfy-base.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["clearfy-base.less"],"names":[],"mappings":";;;;;;;AAoCA;;;AAAA,KAoBE,iDACE,kBAAiB,8BAA8B;EAnB/C,qBAAA;EACA,kBAAA;EACA,SAAS,KAAT;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,eAAA;EACA,cAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;EACA,SAAA;EACA,WAAA;EACA,WAAA;EACA,WAAA;;AAjBJ,KAoBE,iDAKE;EACE,kBAAA;;AA1BN,KAoBE,iDAKE,8CAGE;EACE,gBAAA;;AA7BR,KAoBE,iDAKE,8CAOE;EACE,0BAAA;EACA,gBAAA;EACA,aAAA;;AAnCR,KAoBE,iDAKE,8CAaE;EACE,qBAAA;EAlEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,iDAKE,8CAaE,+BAjDH;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,iDAKE,8CAaE,+BA5CH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,iDAKE,8CAkBE;EACE,qBAAA;EAvEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,yCAAA;EACA,8CAAA;EACA,iDAAA;;AACA,KA+BA,iDAKE,8CAkBE,+BAtDH;EACC,+CAAA;EACA,oDAAA;EACA,uDAAA;;AAEF,KA0BA,iDAKE,8CAkBE,+BAjDH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,iDA6BE,oCACE;EACE,gBAAA;EACA,cAAA;EACA,gBAAA;EACA,0BAAA;;AAtDR,KAoBE,iDA6BE,oCACE,yCAME;EACE,gBAAA;EACA,eAAA;EACA,kBAAA;EACA,gCAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,sBAAA;EACA,yBAAA;;AAjEV,KAoBE,iDA6BE,oCACE,yCAkBE;EAEE,kBAAA;EACA,mBAAA;;AAvEV,KAoBE,iDA6BE,oCACE,yCAkBE,GAKE;EACE,eAAA;EACA,YAAA;EACA,kBAAA;;AAKA,KA7DV,iDA6BE,oCACE,yCAkBE,GAKE,GAQG;EACC,SAAS,GAAT;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,6BAAA;EACA,OAAA;EACA,kBAAA;EACA,mBAAmB,aAAnB;EACA,gBAAgB,aAAhB;EACA,cAAc,aAAd;EACA,WAAW,aAAX;;AA7Fd,KAoBE,iDA6BE,oCACE,yCAiDE;EACE,cAAA;EA/HR,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,iDA6BE,oCACE,yCAiDE,+BA9GL;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,iDA6BE,oCACE,yCAiDE,+BAzGL;EACC,aAAA;EACA,SAAA;;AAIJ,KA6GE;EACE,wBAAA;EACA,oCAAA;EACA,kBAAA;;AAGA,KANF,+BAMG;EACC,iBAAA;EACA,cAAA;EACA,WAAA;EACA,kBAAA;EACA,6BAAA;EACA,kBAAA;EACA,yBAAA;EACA,sBAAA;EACA,cAAA;;AAGF,KAlBF,+BAkBG;EACC,cAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,SAAA;EACA,WAAA;;AAEA,KA7BJ,+BAkBG,QAWE;AAAS,KA7Bd,+BAkBG,QAWY;EACT,mCAAA;EACA,aAAA;;AAIJ,KAnCF,+BAmCG;EACC,iBAAA;;AAGF,KAvCF,+BAuCG;EACC,aAAA;EACA,kBAAA;EACA,gBAAA;;AAIF,KA9CF,+BA8CG;EACC,mBAAA;EACA,cAAA;;AAGF,KAnDF,+BAmDG;EACC,mBAAA;;AAGF,KAvDF,+BAuDG;EACC,mBAAA;;AAGF,KA3DF,+BA2DG;EACC,kBAAA;;AAGF,KA/DF,+BA+DG;EACC,mBAAA;EACA,cAAA;EACA,eAAA;;AAKN,mBAAsC;EACpC,KACE,iDACE;IACE,kBAAA;;EAHN,KACE,iDAKE,oCACE;IACE,aAAA;;EARR,KACE,iDAKE,oCACE,yCAGE;IACE,gBAAA;IACA,eAAA;IACA,eAAA;IACA,gBAAA;;EAdV,KACE,iDAKE,oCACE,yCAUE;IACE,mBAAA;;EAlBV,KACE,iDAKE,oCACE,yCAUE,GAGE;IACE,eAAA;IACA,YAAA;IACA,kBAAA;;EAEA,KAxBV,iDAKE,oCACE,yCAUE,GAGE,GAKG;IACC,YAAA;IACA,aAAA;IACA,6BAAA;IACA,OAAA;IACA,kBAAA;;EA9Bd,KACE,iDAKE,oCACE,yCA4BE;IACE,gBAAA;IACA,iBAAA;IACA,eAAA;IACA,iBAAA;IACA,kBAAA;IACA,uBAAA;IACA,0BAAA","file":"clearfy-base.css"}
 
libs/factory/clearfy/assets/css/components.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["components.less"],"names":[],"mappings":";;;;;AAMA,KAkBE;EACE,oBAAA;EACA,kBAAA;;AApBJ,KAkBE,oCAIE;EACE,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,WAAA;EACA,mBAAA;;AAEA,KAfJ,oCAIE,aAWG;EACC,cAAA;;AAlCR,KAkBE,oCAIE,aAeE;EACE,kBAAA;EACA,SAAA;EACA,QAAA;EACA,OAAA;;AAzCR,KAkBE,oCAIE,aAsBE;EACE,iBAAA;;AA7CR,KAkBE,oCAIE,aA0BE;AAhDN,KAkBE,oCAIE,aA0BS;EACL,0BAAA;;AAjDR,KAkBE,oCAIE,aA8BE,MACE;EACE,eAAA;EACA,wBAAA;;AAvDV,KAkBE,oCAIE,aAqCE;EACE,YAAA;;AA5DR,KAkBE,oCAIE,aAyCE;EACE,YAAA;EACA,gBAAA;;AAjER,KAkBE,oCAIE,aAyCE,YAIE;AAnER,KAkBE,oCAIE,aAyCE,YAIc,kBAAiB;EAC3B,0BAAA;EACA,gBAAA;EACA,cAAA;;AAtEV,KAkBE,oCAIE,aAoDE,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AA9ER,KAkBE,oCAIE,aA4DE;EAhFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,oCAIE,aAiEE;EArFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,oCAIE,aAsEE;EA1FF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAiFE,KA9EJ,oCAIE,aA0EG;EACC,qBAAA;EACA,yBAAA;;AAGF,KAnFJ,oCAIE,aA+EG;EACC,yBAAA;;AADF,KAnFJ,oCAIE,aA+EG,uBAIC,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AARJ,KAnFJ,oCAIE,aA+EG,uBAWC;EACE,YAAA;;AAZJ,KAnFJ,oCAIE,aA+EG,uBAeC;EACE,cAAA;;AAGF,KAtGN,oCAIE,aA+EG,uBAmBE;EACC,yBAAA;;AAOV,mBAAsC;EACpC,KACE,oCACE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,oCACE;IACE,WAAA","file":"components.css"}
 
libs/factory/clearfy/assets/css/libs/autocomplete.css DELETED
@@ -1,57 +0,0 @@
1
- /**
2
- * Styles for plugin options search form
3
-
4
- * @author Alex Kovlaev <alex.kovalevv@gmail.com>, https://github.com/alexkovalevv
5
- *
6
- * @since 2.2.0
7
- */
8
- #wbcr-factory-clearfy-240__search_options_form #wbcr-factory-clearfy-240__autocomplete {
9
- width: 100%;
10
- box-sizing: border-box;
11
- border-color: #d6d4d4;
12
- }
13
-
14
- #wbcr-factory-clearfy-240__search_options_form #wbcr-factory-clearfy-240__autocomplete::placeholder {
15
- color: #eae9e9;
16
- }
17
-
18
- #wbcr-factory-clearfy-240__search_options_form.wbcr-factory-clearfy-240__autocomplete-wrap {
19
- padding: 10px;
20
- }
21
-
22
- #wbcr-factory-clearfy-240__search_options_form .wbcr-factory-clearfy-240__autocomplete-label {
23
- display: block !important;
24
- }
25
-
26
- .wbcr-factory-clearfy-240__autocomplete-suggestions {
27
- border: 1px solid #999;
28
- background: #FFF;
29
- overflow: auto;
30
- }
31
-
32
- .wbcr-factory-clearfy-240__autocomplete-suggestion {
33
- padding: 2px 5px;
34
- white-space: nowrap;
35
- overflow: hidden;
36
- cursor: pointer;
37
- }
38
-
39
- .wbcr-factory-clearfy-240__autocomplete-selected {
40
- background: #F0F0F0;
41
- }
42
-
43
- .wbcr-factory-clearfy-240__autocomplete-suggestions strong {
44
- font-weight: normal;
45
- color: #3399FF;
46
- }
47
-
48
- .wbcr-factory-clearfy-240__autocomplete-group {
49
- padding: 2px 5px;
50
- }
51
-
52
- .wbcr-factory-clearfy-240__autocomplete-group strong {
53
- display: block;
54
- border-bottom: 1px solid #000;
55
- }
56
-
57
- /*# sourceMappingURL=autocomplete.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/clearfy/assets/css/libs/autocomplete.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["autocomplete.less"],"names":[],"mappings":";;;;;;;AAUA,8CAVC;EAYG,WAAA;EACA,sBAAA;EACA,qBAAA;;AAEA,8CAhBH,wCAgBI;AAAe,8CAhBnB,wCAgBoB;AAAoB,8CAhBxC,wCAgByC;EACpC,cAAA;;AAjBL,8CAAC;EAsBE,aAAA;;AAZJ,8CAVC;EA0BG,yBAAA;;AA1BH;EA+BC,sBAAA;EACA,gBAAA;EACA,cAAA;;AAjCD;EAqCC,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,eAAA;;AAxCD;EA4CC,mBAAA;;AA5CD,mDAGM;EA6CL,mBAAA;EACA,cAAA;;AAjDD;EAqDC,gBAAA;;AArDD,6CAGA;EAsDC,cAAA;EACA,6BAAA","file":"autocomplete.css"}
 
libs/factory/clearfy/assets/css/page-setup.css DELETED
@@ -1,454 +0,0 @@
1
- #WBCR {
2
- margin: 0;
3
- padding: 0;
4
- }
5
- .w-factory-clearfy-240__form-buttons {
6
- text-align: right;
7
- padding: 10px;
8
- background: #f7f7f7;
9
- border-top: 1px solid #e8e8e8;
10
- }
11
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__skip-button {
12
- background-color: #e7e7e7;
13
- border-color: #e7e7e7;
14
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #e7e7e7;
15
- text-shadow: 0 -1px 1px #e7e7e7, 1px 0 1px #e7e7e7, 0 1px 1px #e7e7e7, -1px 0 1px #e7e7e7;
16
- margin: 0;
17
- color: #8a8a8a;
18
- }
19
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__skip-button:active,
20
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__skip-button:hover,
21
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__skip-button:focus {
22
- background: #dddddd;
23
- border-color: #dddddd;
24
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #dddddd;
25
- color: #8a8a8a;
26
- }
27
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__continue-button {
28
- background-color: #f57d4f;
29
- border-color: #f77d50;
30
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
31
- text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
32
- margin: 0;
33
- }
34
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__continue-button:active,
35
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__continue-button:hover,
36
- .w-factory-clearfy-240__form-buttons .w-factory-clearfy-240__continue-button:focus {
37
- background: #f86b3b;
38
- border-color: #f86b3b;
39
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f86b3b;
40
- }
41
- .w-factory-clearfy-240-setup {
42
- text-align: center;
43
- max-width: 900px;
44
- margin: 65px auto 24px;
45
- box-shadow: none;
46
- background: #f1f1f1;
47
- padding: 0;
48
- }
49
- .w-factory-clearfy-240-setup__inner-wrap,
50
- .w-factory-clearfy-240__setup-form .factory-form-layout {
51
- padding: 30px;
52
- }
53
- .w-factory-clearfy-240-setup-steps {
54
- padding: 0 0 24px;
55
- margin: 0;
56
- list-style: none outside;
57
- overflow: hidden;
58
- color: #ccc;
59
- width: 100%;
60
- display: -webkit-inline-box;
61
- display: inline-flex;
62
- }
63
- .w-factory-clearfy-240-setup-steps li {
64
- width: 100%;
65
- float: left;
66
- padding: 0 0 0.8em;
67
- margin: 0;
68
- text-align: center;
69
- position: relative;
70
- border-bottom: 4px solid #ccc;
71
- line-height: 1.4;
72
- }
73
- .w-factory-clearfy-240-setup-steps li::before {
74
- content: "";
75
- border: 4px solid #ccc;
76
- border-radius: 100%;
77
- width: 4px;
78
- height: 4px;
79
- position: absolute;
80
- bottom: 0;
81
- left: 50%;
82
- margin-left: -6px;
83
- margin-bottom: -8px;
84
- background: #fff;
85
- }
86
- .w-factory-clearfy-240-setup-steps li.active {
87
- border-color: #ff1c40 !important;
88
- color: #222;
89
- font-weight: 700;
90
- }
91
- .w-factory-clearfy-240-setup-steps li.active::before {
92
- border-color: #ff1c40 !important;
93
- }
94
- .w-factory-clearfy-240-setup-steps li a {
95
- color: #a16696;
96
- text-decoration: none;
97
- padding: 1.5em;
98
- margin: -1.5em;
99
- position: relative;
100
- z-index: 1;
101
- }
102
- .w-factory-clearfy-240-setup-steps li a:focus,
103
- .w-factory-clearfy-240-setup-steps li a:hover {
104
- color: #111;
105
- text-decoration: underline;
106
- }
107
- /*.w-factory-clearfy-240-setup-steps li.done {
108
- border-color: #f57d4f;
109
- color: #f57d4f
110
- }
111
-
112
- .w-factory-clearfy-240-setup-steps li.done::before {
113
- border-color: #f57d4f;
114
- background: #f57d4f
115
- }*/
116
- .w-factory-clearfy-240-setup .w-factory-clearfy-240-setup-actions {
117
- overflow: hidden;
118
- margin: 20px 0 0;
119
- position: relative;
120
- }
121
- .w-factory-clearfy-240-setup-content p:last-child {
122
- margin-bottom: 0;
123
- }
124
- .w-factory-clearfy-240-setup-content p.store-setup {
125
- margin-top: 0;
126
- }
127
- .w-factory-clearfy-240-setup-footer-links {
128
- font-size: 0.85em;
129
- color: #7b7b7b;
130
- margin: 1.18em auto;
131
- display: inline-block;
132
- text-align: center;
133
- }
134
- .w-factory-clearfy-240-logo {
135
- text-align: center;
136
- }
137
- .w-factory-clearfy-240-logo img {
138
- max-width: 250px;
139
- }
140
- .w-factory-clearfy-240-setup-content {
141
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
142
- margin: 0 0 20px;
143
- background: #fff;
144
- zoom: 1;
145
- text-align: left;
146
- }
147
- .w-factory-clearfy-240-setup-content table {
148
- font-size: 1em;
149
- line-height: 1.75;
150
- color: #666;
151
- }
152
- .w-factory-clearfy-240-setup-content table thead {
153
- background: #f1f1f1;
154
- }
155
- .w-factory-clearfy-240-setup-content table th,
156
- .w-factory-clearfy-240-setup-content table td {
157
- padding: 10px 15px;
158
- }
159
- .w-factory-clearfy-240-setup-content h1,
160
- .w-factory-clearfy-240-setup-content h2,
161
- .w-factory-clearfy-240-setup-content h3,
162
- .w-factory-clearfy-240-setup-content table {
163
- margin: 0 0 20px;
164
- border: 0;
165
- padding: 0;
166
- color: #666;
167
- clear: none;
168
- font-weight: 500;
169
- }
170
- .w-factory-clearfy-240-setup-content p {
171
- margin: 20px 0;
172
- font-size: 1.15em;
173
- line-height: 1.75;
174
- color: #666;
175
- text-align: center;
176
- }
177
- .w-factory-clearfy-240-setup-step__new_onboarding-welcome {
178
- font-size: 22px !important;
179
- }
180
- .w-factory-clearfy-240-setup-content a {
181
- color: #f57d4f;
182
- }
183
- .w-factory-clearfy-240-setup-content a:focus,
184
- .w-factory-clearfy-240-setup-content a:hover {
185
- color: #111;
186
- }
187
- .w-factory-clearfy-240-setup-content table.tax-rates {
188
- width: 100%;
189
- font-size: 0.92em;
190
- }
191
- .w-factory-clearfy-240-setup-content table.tax-rates th {
192
- padding: 0;
193
- text-align: center;
194
- width: auto;
195
- vertical-align: middle;
196
- }
197
- .w-factory-clearfy-240-setup-content table.tax-rates td {
198
- border: 1px solid #f5f5f5;
199
- padding: 6px;
200
- text-align: center;
201
- vertical-align: middle;
202
- }
203
- .w-factory-clearfy-240-setup-content table.tax-rates td input {
204
- outline: 0;
205
- border: 0;
206
- padding: 0;
207
- box-shadow: none;
208
- text-align: center;
209
- width: 100%;
210
- }
211
- .w-factory-clearfy-240-setup-content table.tax-rates td.sort {
212
- cursor: move;
213
- color: #ccc;
214
- }
215
- .w-factory-clearfy-240-setup-content table.tax-rates td.sort::before {
216
- content: "\f333";
217
- font-family: dashicons;
218
- }
219
- .w-factory-clearfy-240-setup-content table.tax-rates td.readonly {
220
- background: #f5f5f5;
221
- }
222
- .w-factory-clearfy-240-setup-content table.tax-rates .add {
223
- padding: 1em 0 0 1em;
224
- line-height: 1;
225
- font-size: 1em;
226
- width: 0;
227
- margin: 6px 0 0;
228
- height: 0;
229
- overflow: hidden;
230
- position: relative;
231
- display: inline-block;
232
- }
233
- .w-factory-clearfy-240-setup-content table.tax-rates .add::before {
234
- content: "\f502";
235
- font-family: dashicons;
236
- position: absolute;
237
- left: 0;
238
- top: 0;
239
- }
240
- .w-factory-clearfy-240-setup-content table.tax-rates .remove {
241
- padding: 1em 0 0 1em;
242
- line-height: 1;
243
- font-size: 1em;
244
- width: 0;
245
- margin: 0;
246
- height: 0;
247
- overflow: hidden;
248
- position: relative;
249
- display: inline-block;
250
- }
251
- .w-factory-clearfy-240-setup-content table.tax-rates .remove::before {
252
- content: "\f182";
253
- font-family: dashicons;
254
- position: absolute;
255
- left: 0;
256
- top: 0;
257
- }
258
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages {
259
- width: 100%;
260
- border-top: 1px solid #eee;
261
- }
262
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages thead th {
263
- display: none;
264
- }
265
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages .page-name {
266
- width: 30%;
267
- font-weight: 700;
268
- }
269
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages td,
270
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages th {
271
- padding: 14px 0;
272
- border-bottom: 1px solid #eee;
273
- }
274
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages td:first-child,
275
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages th:first-child {
276
- padding-right: 9px;
277
- }
278
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages th {
279
- padding-top: 0;
280
- }
281
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages .page-options p {
282
- color: #777;
283
- margin: 6px 0 0 24px;
284
- line-height: 1.75;
285
- }
286
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages .page-options p input {
287
- vertical-align: middle;
288
- margin: 1px 0 0;
289
- height: 1.75em;
290
- width: 1.75em;
291
- line-height: 1.75;
292
- }
293
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-pages .page-options p label {
294
- line-height: 1;
295
- }
296
- @media screen and (max-width: 782px) {
297
- .w-factory-clearfy-240-setup-content .form-table tbody th {
298
- width: auto;
299
- }
300
- }
301
- .w-factory-clearfy-240-setup-content .twitter-share-button {
302
- float: right;
303
- }
304
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps {
305
- overflow: hidden;
306
- margin: 0 0 24px;
307
- padding-bottom: 2px;
308
- }
309
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps h2 {
310
- margin-bottom: 12px;
311
- }
312
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps .w-factory-clearfy-240-setup-next-steps-first {
313
- float: left;
314
- width: 50%;
315
- box-sizing: border-box;
316
- }
317
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps .w-factory-clearfy-240-setup-next-steps-last {
318
- float: right;
319
- width: 50%;
320
- box-sizing: border-box;
321
- }
322
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul {
323
- padding: 0 2em 0 0;
324
- list-style: none outside;
325
- margin: 0;
326
- }
327
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul li a {
328
- display: block;
329
- padding: 0 0 0.75em;
330
- }
331
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button {
332
- background-color: #f7f7f7;
333
- border-color: #ccc;
334
- color: #23282d;
335
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #ccc;
336
- text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
337
- font-size: 1em;
338
- height: auto;
339
- line-height: 1.75;
340
- margin: 0 0 0.75em;
341
- opacity: 1;
342
- padding: 1em;
343
- text-align: center;
344
- }
345
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button:active,
346
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button:focus,
347
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button:hover {
348
- background: #f5f5f5;
349
- border-color: #aaa;
350
- }
351
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button-primary {
352
- color: #fff;
353
- background-color: #f19570;
354
- border-color: #f77d50;
355
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
356
- text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
357
- }
358
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button-primary:active,
359
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button-primary:focus,
360
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .setup-product a.button-primary:hover {
361
- color: #fff;
362
- background: #f77d50;
363
- border-color: #f77d50;
364
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
365
- }
366
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul li a::before {
367
- color: #82878c;
368
- font: 400 20px/1 dashicons;
369
- speak: none;
370
- display: inline-block;
371
- padding: 0 10px 0 0;
372
- top: 1px;
373
- position: relative;
374
- text-decoration: none !important;
375
- vertical-align: top;
376
- }
377
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .learn-more a::before {
378
- content: "\f105";
379
- }
380
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .video-walkthrough a::before {
381
- content: "\f126";
382
- }
383
- .w-factory-clearfy-240-setup-content .w-factory-clearfy-240-setup-next-steps ul .newsletter a::before {
384
- content: "\f465";
385
- }
386
- .w-factory-clearfy-240-setup-content .updated,
387
- .w-factory-clearfy-240-setup-content .woocommerce-newsletter {
388
- padding: 24px 24px 0;
389
- margin: 0 0 24px;
390
- overflow: hidden;
391
- background: #f5f5f5;
392
- }
393
- .w-factory-clearfy-240-setup-content .updated p,
394
- .w-factory-clearfy-240-setup-content .woocommerce-newsletter p {
395
- padding: 0;
396
- margin: 0 0 12px;
397
- }
398
- .w-factory-clearfy-240-setup-content .updated form,
399
- .w-factory-clearfy-240-setup-content .updated p:last-child,
400
- .w-factory-clearfy-240-setup-content .woocommerce-newsletter form,
401
- .w-factory-clearfy-240-setup-content .woocommerce-newsletter p:last-child {
402
- margin: 0 0 24px;
403
- }
404
- .w-factory-clearfy-240-setup-content .checkbox input[type=checkbox] {
405
- opacity: 0;
406
- position: absolute;
407
- left: -9999px;
408
- }
409
- .w-factory-clearfy-240-setup-content .checkbox label {
410
- position: relative;
411
- display: inline-block;
412
- padding-left: 28px;
413
- }
414
- .w-factory-clearfy-240-setup-content .checkbox label::after,
415
- .w-factory-clearfy-240-setup-content .checkbox label::before {
416
- position: absolute;
417
- content: "";
418
- display: inline-block;
419
- }
420
- .w-factory-clearfy-240-setup-content .checkbox label::before {
421
- height: 16px;
422
- width: 16px;
423
- left: 0;
424
- top: 3px;
425
- border: 1px solid #aaa;
426
- background-color: #fff;
427
- border-radius: 3px;
428
- }
429
- .w-factory-clearfy-240-setup-content .checkbox label::after {
430
- height: 5px;
431
- width: 9px;
432
- border-left: 2px solid;
433
- border-bottom: 2px solid;
434
- -webkit-transform: rotate(-45deg);
435
- -ms-transform: rotate(-45deg);
436
- transform: rotate(-45deg);
437
- left: 4px;
438
- top: 7px;
439
- color: #fff;
440
- }
441
- .w-factory-clearfy-240-setup-content .checkbox input[type=checkbox] + label::after {
442
- content: none;
443
- }
444
- .w-factory-clearfy-240-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
- content: "";
446
- }
447
- .w-factory-clearfy-240-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
- outline: #3b99fc auto 5px;
449
- }
450
- .w-factory-clearfy-240-setup-content .checkbox input[type=checkbox]:checked + label::before {
451
- background: #935687;
452
- border-color: #935687;
453
- }
454
- /*# sourceMappingURL=page-setup.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/clearfy/assets/css/page-setup.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["page-setup.less"],"names":[],"mappings":"AAAA;EACE,SAAA;EACA,UAAA;;AAGF;EACE,iBAAA;EACA,aAAA;EACA,mBAAA;EAEA,6BAAA;;AALF,oCAOE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;EACA,cAAA;;AAEA,oCARF,oCAQG;AAAS,oCARZ,oCAQa;AAAQ,oCARrB,oCAQsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;EACA,cAAA;;AAnBN,oCAuBE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;;AAEA,oCAPF,wCAOG;AAAS,oCAPZ,wCAOa;AAAQ,oCAPrB,wCAOsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAKN;EACE,kBAAA;EACA,gBAAA;EACA,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,UAAA;;AAGF;AAA0C,kCAAmC;EAC3E,aAAA;;AAGF;EACE,iBAAA;EACA,SAAA;EACA,wBAAA;EACA,gBAAA;EACA,WAAA;EACA,WAAA;EACA,2BAAA;EACA,oBAAA;;AAGF,kCAAmC;EACjC,WAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,kBAAA;EACA,kBAAA;EACA,6BAAA;EACA,gBAAA;;AAEA,kCAViC,GAUhC;EACC,SAAS,EAAT;EACA,sBAAA;EACA,mBAAA;EACA,UAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,SAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;;AAGF,kCAxBiC,GAwBhC;EACC,qBAAA;EACA,WAAA;EACA,gBAAA;;AAEA,kCA7B+B,GAwBhC,OAKE;EACC,qBAAA;;AAKN,kCAAmC,GAAG;EACpC,cAAA;EACA,qBAAA;EACA,cAAA;EACA,cAAA;EACA,kBAAA;EACA,UAAA;;AAGF,kCAAmC,GAAG,EAAC;AAAQ,kCAAmC,GAAG,EAAC;EACpF,WAAA;EACA,0BAAA;;;;;;;;;;;AAcF,4BAA6B;EAC3B,gBAAA;EACA,gBAAA;EACA,kBAAA;;AAGF,oCAAqC,EAAC;EACpC,gBAAA;;AAGF,oCAAqC,EAAC;EACpC,aAAA;;AAGF;EACE,iBAAA;EACA,cAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF;EACE,kBAAA;;AADF,2BAGE;EACE,gBAAA;;AAKJ;EACE,yCAAA;EAEA,gBAAA;EACA,gBAAA;EAEA,OAAA;EACA,gBAAA;;AAEA,oCAAE;EACA,cAAA;EACA,iBAAA;EACA,WAAA;;AAHF,oCAAE,MAKA;EACE,mBAAA;;AANJ,oCAAE,MASA;AATF,oCAAE,MASI;EACF,kBAAA;;AAKN,oCAAqC;AAAI,oCAAqC;AAAI,oCAAqC;AAAI,oCAAqC;EAC9J,gBAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;EACA,WAAA;EACA,gBAAA;;AAGF,oCAAqC;EACnC,cAAA;EACA,iBAAA;EACA,iBAAA;EACA,WAAA;EACA,kBAAA;;AAGF;EACE,0BAAA;;AAIF,oCAAqC;EACnC,cAAA;;AAGF,oCAAqC,EAAC;AAAQ,oCAAqC,EAAC;EAClF,WAAA;;AAIF,oCAAqC,MAAK;EACxC,WAAA;EACA,iBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,UAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,yBAAA;EACA,YAAA;EACA,kBAAA;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAG;EACtD,UAAA;EACA,SAAA;EACA,UAAA;EACA,gBAAA;EACA,kBAAA;EACA,WAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE;EACrD,YAAA;EACA,WAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE,KAAK;EAC1D,SAAS,OAAT;EACA,sBAAA;;AAGF,oCAAqC,MAAK,UAAW,GAAE;EACrD,mBAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,oCAAqC,MAAK,UAAW,KAAI;EACvD,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,oCAAqC,MAAK,UAAW;EACnD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,SAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,oCAAqC,MAAK,UAAW,QAAO;EAC1D,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,oCAAqC;EACnC,WAAA;EACA,0BAAA;;AAGF,oCAAqC,mCAAmC,MAAM;EAC5E,aAAA;;AAGF,oCAAqC,mCAAmC;EACtE,UAAA;EACA,gBAAA;;AAGF,oCAAqC,mCAAmC;AAAI,oCAAqC,mCAAmC;EAClJ,eAAA;EACA,6BAAA;;AAGF,oCAAqC,mCAAmC,GAAE;AAAc,oCAAqC,mCAAmC,GAAE;EAChK,kBAAA;;AAGF,oCAAqC,mCAAmC;EACtE,cAAA;;AAGF,oCAAqC,mCAAmC,cAAc;EACpF,WAAA;EACA,oBAAA;EACA,iBAAA;;AAGF,oCAAqC,mCAAmC,cAAc,EAAE;EACtF,sBAAA;EACA,eAAA;EACA,cAAA;EACA,aAAA;EACA,iBAAA;;AAGF,oCAAqC,mCAAmC,cAAc,EAAE;EACtF,cAAA;;AAGF,mBAAqC;EACnC,oCAAqC,YAAY,MAAM;IACrD,WAAA;;;AAIJ,oCAAqC;EACnC,YAAA;;AAGF,oCAAqC;EACnC,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,mBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,WAAA;EACA,UAAA;EACA,sBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,YAAA;EACA,UAAA;EACA,sBAAA;;AAGF,oCAAqC,wCAAwC;EAC3E,kBAAA;EACA,wBAAA;EACA,SAAA;;AAGF,oCAAqC,wCAAwC,GAAG,GAAG;EACjF,cAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC;EAC9F,yBAAA;EACA,kBAAA;EACA,cAAA;EACA,iEAAA;EACA,2CAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,kBAAA;EACA,UAAA;EACA,YAAA;EACA,kBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;AAAS,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;AAAQ,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,OAAO;EACpU,mBAAA;EACA,kBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC;EAC9F,WAAA;EACA,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;;AAGF,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;AAAS,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;AAAQ,oCAAqC,wCAAwC,GAAG,eAAe,EAAC,eAAe;EAC5V,WAAA;EACA,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAGF,oCAAqC,wCAAwC,GAAG,GAAG,EAAC;EAClF,cAAA;EACA,0BAAA;EACA,WAAA;EACA,qBAAA;EACA,mBAAA;EACA,QAAA;EACA,kBAAA;EACA,gCAAA;EACA,mBAAA;;AAGF,oCAAqC,wCAAwC,GAAG,YAAY,EAAC;EAC3F,SAAS,OAAT;;AAGF,oCAAqC,wCAAwC,GAAG,mBAAmB,EAAC;EAClG,SAAS,OAAT;;AAGF,oCAAqC,wCAAwC,GAAG,YAAY,EAAC;EAC3F,SAAS,OAAT;;AAGF,oCAAqC;AAAU,oCAAqC;EAClF,oBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,oCAAqC,SAAS;AAAG,oCAAqC,wBAAwB;EAC5G,UAAA;EACA,gBAAA;;AAGF,oCAAqC,SAAS;AAAM,oCAAqC,SAAS,EAAC;AAAa,oCAAqC,wBAAwB;AAAM,oCAAqC,wBAAwB,EAAC;EAC/O,gBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,UAAA;EACA,kBAAA;EACA,aAAA;;AAGF,oCAAqC,UAAU;EAC7C,kBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF,oCAAqC,UAAU,MAAK;AAAS,oCAAqC,UAAU,MAAK;EAC/G,kBAAA;EACA,SAAS,EAAT;EACA,qBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,YAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,sBAAA;EACA,sBAAA;EACA,kBAAA;;AAGF,oCAAqC,UAAU,MAAK;EAClD,WAAA;EACA,UAAA;EACA,sBAAA;EACA,wBAAA;EACA,mBAAmB,cAAnB;EACA,eAAe,cAAf;EACA,WAAW,cAAX;EACA,SAAA;EACA,QAAA;EACA,WAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAgB,QAAO;EACzE,aAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAe,QAAS,QAAO;EACjF,SAAS,EAAT;;AAGF,oCAAqC,UAAU,MAAK,eAAe,MAAO,QAAO;EAC/E,yBAAA;;AAGF,oCAAqC,UAAU,MAAK,eAAe,QAAS,QAAO;EACjF,mBAAA;EACA,qBAAA","file":"page-setup.css"}
 
libs/factory/clearfy/assets/js/libs/jquery.autocomplete.min.js DELETED
@@ -1,8 +0,0 @@
1
- /**
2
- * Ajax Autocomplete for jQuery, version 1.4.11
3
- * (c) 2017 Tomas Kirda
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-240__autocomplete-selected",suggestion:"wbcr-factory-clearfy-240__autocomplete-suggestion"},e.hint=null,e.hintValue="",e.selection=null,e.initialize(),e.setOptions(d)}function c(a,b,c){return a.value.toLowerCase().indexOf(c)!==-1}function d(b){return"string"==typeof b?a.parseJSON(b):b}function e(a,b){if(!b)return a.value;var c="("+g.escapeRegExChars(b)+")";return a.value.replace(new RegExp(c,"gi"),"<strong>$1</strong>").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/&lt;(\/?strong)&gt;/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-clearfy-240__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-240__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
 
 
 
 
 
 
 
 
libs/factory/clearfy/boot.php DELETED
@@ -1,89 +0,0 @@
1
- <?php
2
- /**
3
- * Factory clearfy
4
- *
5
- * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
6
- * @since 1.0.0
7
- * @package clearfy
8
- * @copyright (c) 2018, Webcraftic Ltd
9
- *
10
- */
11
-
12
- // Exit if accessed directly
13
- if( !defined('ABSPATH') ) {
14
- exit;
15
- }
16
-
17
- if( defined('FACTORY_CLEARFY_240_LOADED') ) {
18
- return;
19
- }
20
-
21
- define('FACTORY_CLEARFY_240_LOADED', true);
22
-
23
- define('FACTORY_CLEARFY_240', '2.4.0');
24
-
25
- define('FACTORY_CLEARFY_240_DIR', dirname(__FILE__));
26
- define('FACTORY_CLEARFY_240_URL', plugins_url(null, __FILE__));
27
-
28
- load_plugin_textdomain('wbcr_factory_clearfy_240', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
-
30
- require(FACTORY_CLEARFY_240_DIR . '/includes/ajax-handlers.php');
31
- require(FACTORY_CLEARFY_240_DIR . '/includes/class-helpers.php');
32
- require(FACTORY_CLEARFY_240_DIR . '/includes/class-configurate.php');
33
-
34
- // module provides function only for the admin area
35
- if( is_admin() ) {
36
- /**
37
- * Подключаем скрипты для установки компонентов Clearfy
38
- * на все страницы админпанели.
39
- */
40
- add_action('admin_enqueue_scripts', function ($hook) {
41
- wp_enqueue_script('wbcr-factory-clearfy-240-global', FACTORY_CLEARFY_240_URL . '/assets/js/clearfy-globals.js', [
42
- 'jquery',
43
- 'wfactory-448-core-general'
44
- ], FACTORY_CLEARFY_240);
45
-
46
- require_once FACTORY_CLEARFY_240_DIR . '/includes/class-search-options.php';
47
- $all_options = \WBCR\Factory_Clearfy_240\Search_Options::get_all_options();
48
-
49
- if( empty($all_options) ) {
50
- return;
51
- }
52
-
53
- $allow_print_data = false;
54
- $formated_options = [];
55
-
56
- foreach($all_options as $option) {
57
- //if( !$allow_print_data && isset($_GET['page']) && $option['page_id'] === $_GET['page'] ) {
58
- //$allow_print_data = true;
59
- //}
60
-
61
- $formated_options[] = [
62
- 'value' => $option['title'],
63
- 'data' => [
64
- //'hint' => isset($option['hint']) ? $option['hint'] : '',
65
- 'page_url' => $option['page_url'],
66
- 'page_id' => $option['page_id']
67
- ]
68
- ];
69
- }
70
-
71
- //if( !$allow_print_data ) {
72
- //return;
73
- //}
74
-
75
- wp_localize_script('wbcr-factory-clearfy-240-global', 'wfactory_clearfy_search_options', $formated_options);
76
- });
77
-
78
- if( defined('FACTORY_PAGES_447_LOADED') ) {
79
- require(FACTORY_CLEARFY_240_DIR . '/pages/class-pages.php');
80
- require(FACTORY_CLEARFY_240_DIR . '/pages/class-page-more-features.php');
81
- require(FACTORY_CLEARFY_240_DIR . '/pages/class-page-license.php');
82
- require(FACTORY_CLEARFY_240_DIR . '/pages/class-pages-components.php');
83
-
84
- require(FACTORY_CLEARFY_240_DIR . '/pages/setup-parts/class-step.php');
85
- require(FACTORY_CLEARFY_240_DIR . '/pages/setup-parts/class-step-form.php');
86
- require(FACTORY_CLEARFY_240_DIR . '/pages/setup-parts/class-step-custom.php');
87
- require(FACTORY_CLEARFY_240_DIR . '/pages/class-page-setup.php');
88
- }
89
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/clearfy/pages/class-page-more-features.php DELETED
@@ -1,170 +0,0 @@
1
- <?php
2
- /**
3
- * The page Settings.
4
- *
5
- * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
6
- * @since 1.0.1
7
- * @package clearfy
8
- * @copyright (c) 2018, Webcraftic Ltd
9
- *
10
- */
11
-
12
- // Exit if accessed directly
13
- if ( ! defined( 'ABSPATH' ) ) {
14
- exit;
15
- }
16
-
17
-
18
- class Wbcr_FactoryClearfy240_MoreFeaturesPage extends Wbcr_FactoryPages447_ImpressiveThemplate {
19
-
20
- /**
21
- * {@inheritDoc}
22
- *
23
- * @var string
24
- */
25
- public $id = "more_features";
26
-
27
- /**
28
- * {@inheritDoc}
29
- *
30
- * @var string
31
- */
32
- public $page_menu_dashicon = 'dashicons-star-filled wbcr-factory-orange-color';
33
-
34
- /**
35
- * {@inheritDoc}
36
- *
37
- * @var string
38
- */
39
- public $page_menu_position = 5;
40
-
41
- /**
42
- * {@inheritDoc}
43
- *
44
- * @var string
45
- */
46
- public $type = 'page';
47
-
48
- /**
49
- * {@inheritDoc}
50
- *
51
- * @var bool
52
- */
53
- public $available_for_multisite = true;
54
-
55
- /**
56
- * {@inheritDoc}
57
- *
58
- * @since 2.0.6 - добавлен
59
- * @var bool
60
- */
61
- public $internal = true;
62
-
63
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
64
- $this->menu_title = __( 'More features (<b>free</b>)', 'wbcr_factory_clearfy_240' );
65
-
66
- parent::__construct( $plugin );
67
-
68
- $this->plugin = $plugin;
69
- }
70
-
71
- /**
72
- * {@inheritDoc}
73
- *
74
- * @return string
75
- */
76
- public function getPageTitle() {
77
- return __( 'More features', 'wbcr_factory_clearfy_240' );
78
- }
79
-
80
- /**
81
- * {@inheritDoc}
82
- *
83
- * @return void
84
- */
85
- public function showPageContent() {
86
- ?>
87
- <div class="row">
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_240' ) ?></h3>
92
- <p><?php _e( 'Clears the source code of the page from unused code.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></h3>
99
- <p><?php _e( 'Removes duplicate pages, closes external links, changes the headers of the server.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></h3>
106
- <p><?php _e( 'Enables and disables features that improve the protection of your site.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></h3>
113
- <p><?php _e( 'Disables comments on the entire site or on specific pages.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></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_240' ) ?></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_240' ) ?></h3>
128
- <p><?php _e( 'Allows you to remove unused widgets.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></h3>
135
- <p><?php _e( 'Increases performance by disabling unused functions and reducing the number of requests.', 'wbcr_factory_clearfy_240' ) ?></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_240' ) ?></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_240' ) ?></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_240' ) ?></h3>
150
- <p><?php _e( 'In quick mode, you can easily configure the plugin according to your needs.', 'wbcr_factory_clearfy_240' ) ?></p>
151
- </div>
152
- </div>
153
- </div>
154
- <div class="wbcr-factory-buttons-wrap">
155
- <?php
156
- $url = 'https://clearfy.pro';
157
-
158
- if ( get_locale() == 'ru_RU' ) {
159
- $url = 'https://ru.clearfy.pro';
160
- }
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_240' ) ?>
165
- </a>
166
- </div>
167
- <?php
168
- }
169
- }
170
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/core/ajax/install-addons.php CHANGED
@@ -15,7 +15,7 @@ if( !defined('ABSPATH') ) {
15
  /**
16
  * This action allows you to process Ajax requests to activate external components Clearfy
17
  */
18
- function wfactory_448_install_components($plugin_instance)
19
  {
20
  check_ajax_referer('updates');
21
 
@@ -24,11 +24,11 @@ function wfactory_448_install_components($plugin_instance)
24
  $storage = $plugin_instance->request->post('storage', null, true);
25
 
26
  if( !current_user_can('update_plugins') ) {
27
- wp_die(__('You don\'t have enough capability to edit this information.', 'wbcr_factory_448'), __('Something went wrong.'), 403);
28
  }
29
 
30
  if( empty($slug) || empty($action) ) {
31
- wp_send_json_error(['error_message' => __('Required attributes are not passed or empty.', 'wbcr_factory_448')]);
32
  }
33
  $success = false;
34
  $send_data = [];
@@ -44,7 +44,7 @@ function wfactory_448_install_components($plugin_instance)
44
  $success = true;
45
  }
46
  } else {
47
- wp_send_json_error(['error_message' => __('You are trying to perform an invalid action.', 'wbcr_factory_448')]);
48
  }
49
  } else if( $storage == 'wordpress' || $storage == 'creativemotion' ) {
50
  if( !empty($slug) ) {
@@ -80,7 +80,7 @@ function wfactory_448_install_components($plugin_instance)
80
  /*if ( $action == 'deactivate' ) {
81
  $is_need_rewrite_rules = $plugin_instance->getPopulateOption( 'need_rewrite_rules' );
82
  if ( $is_need_rewrite_rules ) {
83
- $send_data['need_rewrite_rules'] = sprintf( '<span class="wbcr-clr-need-rewrite-rules-message">' . __( 'When you deactivate some components, permanent links may work incorrectly. If this happens, please, <a href="%s">update the permalinks</a>, so you could complete the deactivation.', 'wbcr_factory_448' ), admin_url( 'options-permalink.php' ) . '</span>' );
84
  }
85
  }*/
86
 
@@ -94,7 +94,7 @@ function wfactory_448_install_components($plugin_instance)
94
  wp_send_json_success($send_data);
95
  }
96
 
97
- wp_send_json_error(['error_message' => __('An unknown error occurred during the activation of the component.', 'wbcr_factory_448')]);
98
  }
99
 
100
  /**
@@ -102,18 +102,18 @@ function wfactory_448_install_components($plugin_instance)
102
  * to get the component to work. Usually this is a call to the installation functions,
103
  * but in some cases, overwriting permanent references or compatibility checks.
104
  */
105
- function wfactory_448_prepare_component($plugin_instance)
106
  {
107
  check_ajax_referer('updates');
108
 
109
  $component_name = $plugin_instance->request->post('plugin', null, true);
110
 
111
  if( !current_user_can('update_plugins') ) {
112
- wp_send_json_error(['error_message' => __('You don\'t have enough capability to edit this information.', 'wbcr_factory_448')], 403);
113
  }
114
 
115
  if( empty($component_name) ) {
116
- wp_send_json_error(['error_message' => __('Required attribute [component_name] is empty.', 'wbcr_factory_448')]);
117
  }
118
  // todo: для совместимости с плагином Clearfy
119
  if( "wbcr_clearfy" === $plugin_instance->getPluginName() ) {
@@ -133,7 +133,7 @@ function wfactory_448_prepare_component($plugin_instance)
133
  *
134
  * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass.
135
  */
136
- function wfactory_448_creativemotion_install_plugin($plugin_instance)
137
  {
138
  check_ajax_referer('updates');
139
 
15
  /**
16
  * This action allows you to process Ajax requests to activate external components Clearfy
17
  */
18
+ function wfactory_449_install_components($plugin_instance)
19
  {
20
  check_ajax_referer('updates');
21
 
24
  $storage = $plugin_instance->request->post('storage', null, true);
25
 
26
  if( !current_user_can('update_plugins') ) {
27
+ wp_die(__('You don\'t have enough capability to edit this information.', 'wbcr_factory_449'), __('Something went wrong.'), 403);
28
  }
29
 
30
  if( empty($slug) || empty($action) ) {
31
+ wp_send_json_error(['error_message' => __('Required attributes are not passed or empty.', 'wbcr_factory_449')]);
32
  }
33
  $success = false;
34
  $send_data = [];
44
  $success = true;
45
  }
46
  } else {
47
+ wp_send_json_error(['error_message' => __('You are trying to perform an invalid action.', 'wbcr_factory_449')]);
48
  }
49
  } else if( $storage == 'wordpress' || $storage == 'creativemotion' ) {
50
  if( !empty($slug) ) {
80
  /*if ( $action == 'deactivate' ) {
81
  $is_need_rewrite_rules = $plugin_instance->getPopulateOption( 'need_rewrite_rules' );
82
  if ( $is_need_rewrite_rules ) {
83
+ $send_data['need_rewrite_rules'] = sprintf( '<span class="wbcr-clr-need-rewrite-rules-message">' . __( 'When you deactivate some components, permanent links may work incorrectly. If this happens, please, <a href="%s">update the permalinks</a>, so you could complete the deactivation.', 'wbcr_factory_449' ), admin_url( 'options-permalink.php' ) . '</span>' );
84
  }
85
  }*/
86
 
94
  wp_send_json_success($send_data);
95
  }
96
 
97
+ wp_send_json_error(['error_message' => __('An unknown error occurred during the activation of the component.', 'wbcr_factory_449')]);
98
  }
99
 
100
  /**
102
  * to get the component to work. Usually this is a call to the installation functions,
103
  * but in some cases, overwriting permanent references or compatibility checks.
104
  */
105
+ function wfactory_449_prepare_component($plugin_instance)
106
  {
107
  check_ajax_referer('updates');
108
 
109
  $component_name = $plugin_instance->request->post('plugin', null, true);
110
 
111
  if( !current_user_can('update_plugins') ) {
112
+ wp_send_json_error(['error_message' => __('You don\'t have enough capability to edit this information.', 'wbcr_factory_449')], 403);
113
  }
114
 
115
  if( empty($component_name) ) {
116
+ wp_send_json_error(['error_message' => __('Required attribute [component_name] is empty.', 'wbcr_factory_449')]);
117
  }
118
  // todo: для совместимости с плагином Clearfy
119
  if( "wbcr_clearfy" === $plugin_instance->getPluginName() ) {
133
  *
134
  * @global WP_Filesystem_Base $wp_filesystem WordPress filesystem subclass.
135
  */
136
+ function wfactory_449_creativemotion_install_plugin($plugin_instance)
137
  {
138
  check_ajax_referer('updates');
139
 
libs/factory/core/assets/js/core-components.js CHANGED
@@ -20,7 +20,7 @@
20
  * This event is intended for installation, removal, activation, deactivation of external add-ons
21
  */
22
 
23
- $(document).on('click', '.wfactory-448-process-button', function() {
24
  var $this = $(this),
25
  button_i18n = $(this).data('i18n'),
26
  plugin_slug = $(this).data('slug'),
@@ -30,11 +30,11 @@
30
  wpnonce = $(this).data('wpnonce');
31
 
32
  var action = ('creativemotion' === storage)
33
- ? 'wfactory-448-creativemotion-install-plugin'
34
  : 'install-plugin';
35
 
36
  if( storage === 'freemius' || ((storage === 'wordpress' || storage === 'creativemotion' || storage === 'internal') && (plugin_action === 'activate' || plugin_action === 'deactivate')) ) {
37
- action = 'wfactory-448-intall-component';
38
  } else if( storage === 'wordpress' && plugin_action === 'delete' ) {
39
  action = 'delete-plugin';
40
  }
@@ -54,11 +54,11 @@
54
 
55
  $this.addClass('disabled').text(button_i18n.loading);
56
 
57
- $.wfactory_448.hooks.run('core/components/pre_update', [$this, data]);
58
 
59
  self.sendRequest(data, function(response) {
60
  if( !response || !response.success ) {
61
- $.wfactory_448.hooks.run('core/components/update_error', [
62
  $this,
63
  data,
64
  response
@@ -80,7 +80,7 @@
80
  $this.removeClass('button-default').addClass('button-primary');
81
  }
82
 
83
- $.wfactory_448.hooks.run('core/components/installed', [
84
  $this,
85
  data,
86
  response
@@ -96,7 +96,7 @@
96
  $this.removeClass('button-primary').addClass('button-default');
97
  }
98
 
99
- $.wfactory_448.hooks.run('core/components/pre_activate', [
100
  $this,
101
  data,
102
  response
@@ -124,7 +124,7 @@
124
  $this.removeClass('button-default').addClass('button-primary');
125
  }
126
 
127
- $.wfactory_448.hooks.run('core/components/deactivated', [
128
  $this,
129
  data,
130
  response
@@ -134,7 +134,7 @@
134
 
135
  plugin_action = 'install';
136
 
137
- $.wfactory_448.hooks.run('core/components/deleted', [$this, data, response]);
138
  }
139
  } else {
140
  if( plugin_action === 'install' ) {
@@ -144,7 +144,7 @@
144
 
145
  $this.text(button_i18n[plugin_action]);
146
 
147
- $.wfactory_448.hooks.run('core/components/updated', [$this, data, response]);
148
  });
149
 
150
  return false;
@@ -169,7 +169,7 @@
169
  .addClass('disabled')
170
  .text(button_i18n.preparation);
171
 
172
- sendData.action = 'wfactory-448-prepare-component';
173
 
174
  this.sendRequest(sendData, function(response) {
175
  componentButton.removeClass('disabled');
@@ -177,7 +177,7 @@
177
  if( !response || !response.success ) {
178
  componentButton.text(button_i18n['activate']);
179
 
180
- $.wfactory_448.hooks.run('core/components/activation_error', [
181
  componentButton,
182
  sendData,
183
  response
@@ -187,7 +187,7 @@
187
 
188
  componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
189
 
190
- $.wfactory_448.hooks.run('core/components/activated', [
191
  componentButton,
192
  sendData,
193
  response
@@ -210,7 +210,7 @@
210
  console.log(xhr.responseText);
211
  console.log(thrownError);
212
 
213
- $.wfactory_448.hooks.run('core/components/ajax_error', [
214
  xhr,
215
  ajaxOptions,
216
  thrownError
20
  * This event is intended for installation, removal, activation, deactivation of external add-ons
21
  */
22
 
23
+ $(document).on('click', '.wfactory-449-process-button', function() {
24
  var $this = $(this),
25
  button_i18n = $(this).data('i18n'),
26
  plugin_slug = $(this).data('slug'),
30
  wpnonce = $(this).data('wpnonce');
31
 
32
  var action = ('creativemotion' === storage)
33
+ ? 'wfactory-449-creativemotion-install-plugin'
34
  : 'install-plugin';
35
 
36
  if( storage === 'freemius' || ((storage === 'wordpress' || storage === 'creativemotion' || storage === 'internal') && (plugin_action === 'activate' || plugin_action === 'deactivate')) ) {
37
+ action = 'wfactory-449-intall-component';
38
  } else if( storage === 'wordpress' && plugin_action === 'delete' ) {
39
  action = 'delete-plugin';
40
  }
54
 
55
  $this.addClass('disabled').text(button_i18n.loading);
56
 
57
+ $.wfactory_449.hooks.run('core/components/pre_update', [$this, data]);
58
 
59
  self.sendRequest(data, function(response) {
60
  if( !response || !response.success ) {
61
+ $.wfactory_449.hooks.run('core/components/update_error', [
62
  $this,
63
  data,
64
  response
80
  $this.removeClass('button-default').addClass('button-primary');
81
  }
82
 
83
+ $.wfactory_449.hooks.run('core/components/installed', [
84
  $this,
85
  data,
86
  response
96
  $this.removeClass('button-primary').addClass('button-default');
97
  }
98
 
99
+ $.wfactory_449.hooks.run('core/components/pre_activate', [
100
  $this,
101
  data,
102
  response
124
  $this.removeClass('button-default').addClass('button-primary');
125
  }
126
 
127
+ $.wfactory_449.hooks.run('core/components/deactivated', [
128
  $this,
129
  data,
130
  response
134
 
135
  plugin_action = 'install';
136
 
137
+ $.wfactory_449.hooks.run('core/components/deleted', [$this, data, response]);
138
  }
139
  } else {
140
  if( plugin_action === 'install' ) {
144
 
145
  $this.text(button_i18n[plugin_action]);
146
 
147
+ $.wfactory_449.hooks.run('core/components/updated', [$this, data, response]);
148
  });
149
 
150
  return false;
169
  .addClass('disabled')
170
  .text(button_i18n.preparation);
171
 
172
+ sendData.action = 'wfactory-449-prepare-component';
173
 
174
  this.sendRequest(sendData, function(response) {
175
  componentButton.removeClass('disabled');
177
  if( !response || !response.success ) {
178
  componentButton.text(button_i18n['activate']);
179
 
180
+ $.wfactory_449.hooks.run('core/components/activation_error', [
181
  componentButton,
182
  sendData,
183
  response
187
 
188
  componentButton.removeClass('button-primary').text(button_i18n['deactivate']);
189
 
190
+ $.wfactory_449.hooks.run('core/components/activated', [
191
  componentButton,
192
  sendData,
193
  response
210
  console.log(xhr.responseText);
211
  console.log(thrownError);
212
 
213
+ $.wfactory_449.hooks.run('core/components/ajax_error', [
214
  xhr,
215
  ajaxOptions,
216
  thrownError
libs/factory/core/assets/js/core-general.js CHANGED
@@ -8,11 +8,11 @@
8
  (function($) {
9
  'use strict';
10
 
11
- if( !$.wfactory_448 ) {
12
- $.wfactory_448 = {};
13
  }
14
 
15
- $.wfactory_448.filters = $.wfactory_448.filters || {
16
 
17
  /**
18
  * A set of registered filters.
@@ -79,20 +79,20 @@
79
  }
80
  };
81
 
82
- $.wfactory_448.hooks = $.wfactory_448.hooks || {
83
 
84
  /**
85
  * Applies filters to a given input value.
86
  */
87
  run: function(filterName, args) {
88
- $.wfactory_448.filters.run(filterName, args);
89
  },
90
 
91
  /**
92
  * Registers a new filter.
93
  */
94
  add: function(filterName, callback, priority) {
95
- $.wfactory_448.filters.add(filterName, callback, priority);
96
  }
97
  };
98
 
8
  (function($) {
9
  'use strict';
10
 
11
+ if( !$.wfactory_449 ) {
12
+ $.wfactory_449 = {};
13
  }
14
 
15
+ $.wfactory_449.filters = $.wfactory_449.filters || {
16
 
17
  /**
18
  * A set of registered filters.
79
  }
80
  };
81
 
82
+ $.wfactory_449.hooks = $.wfactory_449.hooks || {
83
 
84
  /**
85
  * Applies filters to a given input value.
86
  */
87
  run: function(filterName, args) {
88
+ $.wfactory_449.filters.run(filterName, args);
89
  },
90
 
91
  /**
92
  * Registers a new filter.
93
  */
94
  add: function(filterName, callback, priority) {
95
+ $.wfactory_449.filters.add(filterName, callback, priority);
96
  }
97
  };
98
 
libs/factory/core/boot.php CHANGED
@@ -14,60 +14,60 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( defined('FACTORY_448_LOADED') ) {
18
  return;
19
  }
20
 
21
- define('FACTORY_448_LOADED', true);
22
 
23
- define('FACTORY_448_VERSION', '4.4.8');
24
 
25
- define('FACTORY_448_DIR', dirname(__FILE__));
26
- define('FACTORY_448_URL', plugins_url(null, __FILE__));
27
 
28
- load_plugin_textdomain('wbcr_factory_448', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
  #comp merge
31
- require_once(FACTORY_448_DIR . '/includes/functions.php');
32
 
33
- require_once(FACTORY_448_DIR . '/includes/entities/class-factory-paths.php');
34
- require_once(FACTORY_448_DIR . '/includes/entities/class-factory-support.php');
35
 
36
- require_once(FACTORY_448_DIR . '/includes/class-factory-requests.php');
37
- require_once(FACTORY_448_DIR . '/includes/class-factory-options.php');
38
- require_once(FACTORY_448_DIR . '/includes/class-factory-plugin-base.php');
39
- require_once(FACTORY_448_DIR . '/includes/class-factory-migrations.php');
40
- require_once(FACTORY_448_DIR . '/includes/class-factory-notices.php');
41
 
42
  // ASSETS
43
- require_once(FACTORY_448_DIR . '/includes/assets-managment/class-factory-assets-list.php');
44
- require_once(FACTORY_448_DIR . '/includes/assets-managment/class-factory-script-list.php');
45
- require_once(FACTORY_448_DIR . '/includes/assets-managment/class-factory-style-list.php');
46
 
47
  // PREMIUM
48
- require_once(FACTORY_448_DIR . '/includes/premium/class-factory-license-interface.php');
49
- require_once(FACTORY_448_DIR . '/includes/premium/class-factory-provider-abstract.php');
50
- require_once(FACTORY_448_DIR . '/includes/premium/class-factory-manager.php');
51
 
52
  // UPDATES
53
- require_once(FACTORY_448_DIR . '/includes/updates/repositories/class-factory-repository-abstract.php');
54
- require_once(FACTORY_448_DIR . '/includes/updates/repositories/class-factory-wordpress.php');
55
- require_once(FACTORY_448_DIR . '/includes/updates/repositories/class-factory-github.php');
56
- require_once(FACTORY_448_DIR . '/includes/updates/class-factory-upgrader.php');
57
- require_once(FACTORY_448_DIR . '/includes/updates/class-factory-premium-upgrader.php');
58
 
59
- require_once(FACTORY_448_DIR . '/includes/class-factory-plugin-abstract.php');
60
 
61
- require_once(FACTORY_448_DIR . '/includes/activation/class-factory-activator.php');
62
- require_once(FACTORY_448_DIR . '/includes/activation/class-factory-update.php');
63
  #endcomp
64
 
65
  add_action('admin_enqueue_scripts', function () {
66
- wp_enqueue_script('wfactory-448-core-general', FACTORY_448_URL . '/assets/js/core-general.js', [
67
  'jquery'
68
- ], FACTORY_448_VERSION);
69
- wp_enqueue_script('wfactory-448-core-components', FACTORY_448_URL . '/assets/js/core-components.js', [
70
  'jquery',
71
- 'wfactory-448-core-general'
72
- ], FACTORY_448_VERSION);
73
  });
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_449_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_449_LOADED', true);
22
 
23
+ define('FACTORY_449_VERSION', '4.4.9');
24
 
25
+ define('FACTORY_449_DIR', dirname(__FILE__));
26
+ define('FACTORY_449_URL', plugins_url(null, __FILE__));
27
 
28
+ load_plugin_textdomain('wbcr_factory_449', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
 
30
  #comp merge
31
+ require_once(FACTORY_449_DIR . '/includes/functions.php');
32
 
33
+ require_once(FACTORY_449_DIR . '/includes/entities/class-factory-paths.php');
34
+ require_once(FACTORY_449_DIR . '/includes/entities/class-factory-support.php');
35
 
36
+ require_once(FACTORY_449_DIR . '/includes/class-factory-requests.php');
37
+ require_once(FACTORY_449_DIR . '/includes/class-factory-options.php');
38
+ require_once(FACTORY_449_DIR . '/includes/class-factory-plugin-base.php');
39
+ require_once(FACTORY_449_DIR . '/includes/class-factory-migrations.php');
40
+ require_once(FACTORY_449_DIR . '/includes/class-factory-notices.php');
41
 
42
  // ASSETS
43
+ require_once(FACTORY_449_DIR . '/includes/assets-managment/class-factory-assets-list.php');
44
+ require_once(FACTORY_449_DIR . '/includes/assets-managment/class-factory-script-list.php');
45
+ require_once(FACTORY_449_DIR . '/includes/assets-managment/class-factory-style-list.php');
46
 
47
  // PREMIUM
48
+ require_once(FACTORY_449_DIR . '/includes/premium/class-factory-license-interface.php');
49
+ require_once(FACTORY_449_DIR . '/includes/premium/class-factory-provider-abstract.php');
50
+ require_once(FACTORY_449_DIR . '/includes/premium/class-factory-manager.php');
51
 
52
  // UPDATES
53
+ require_once(FACTORY_449_DIR . '/includes/updates/repositories/class-factory-repository-abstract.php');
54
+ require_once(FACTORY_449_DIR . '/includes/updates/repositories/class-factory-wordpress.php');
55
+ require_once(FACTORY_449_DIR . '/includes/updates/repositories/class-factory-github.php');
56
+ require_once(FACTORY_449_DIR . '/includes/updates/class-factory-upgrader.php');
57
+ require_once(FACTORY_449_DIR . '/includes/updates/class-factory-premium-upgrader.php');
58
 
59
+ require_once(FACTORY_449_DIR . '/includes/class-factory-plugin-abstract.php');
60
 
61
+ require_once(FACTORY_449_DIR . '/includes/activation/class-factory-activator.php');
62
+ require_once(FACTORY_449_DIR . '/includes/activation/class-factory-update.php');
63
  #endcomp
64
 
65
  add_action('admin_enqueue_scripts', function () {
66
+ wp_enqueue_script('wfactory-449-core-general', FACTORY_449_URL . '/assets/js/core-general.js', [
67
  'jquery'
68
+ ], FACTORY_449_VERSION);
69
+ wp_enqueue_script('wfactory-449-core-components', FACTORY_449_URL . '/assets/js/core-components.js', [
70
  'jquery',
71
+ 'wfactory-449-core-general'
72
+ ], FACTORY_449_VERSION);
73
  });
libs/factory/core/includes/activation/class-factory-activator.php CHANGED
@@ -19,16 +19,16 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @since 1.0.0
21
  */
22
- abstract class Wbcr_Factory448_Activator {
23
 
24
  /**
25
  * Curent plugin.
26
  *
27
- * @var Wbcr_Factory448_Plugin
28
  */
29
  public $plugin;
30
 
31
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
32
  $this->plugin = $plugin;
33
  }
34
 
19
  *
20
  * @since 1.0.0
21
  */
22
+ abstract class Wbcr_Factory449_Activator {
23
 
24
  /**
25
  * Curent plugin.
26
  *
27
+ * @var Wbcr_Factory449_Plugin
28
  */
29
  public $plugin;
30
 
31
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
32
  $this->plugin = $plugin;
33
  }
34
 
libs/factory/core/includes/activation/class-factory-update.php CHANGED
@@ -20,16 +20,16 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_Factory448_Update {
24
 
25
  /**
26
  * Current plugin
27
  *
28
- * @var Wbcr_Factory448_Plugin
29
  */
30
  var $plugin;
31
 
32
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
33
  $this->plugin = $plugin;
34
  }
35
 
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_Factory449_Update {
24
 
25
  /**
26
  * Current plugin
27
  *
28
+ * @var Wbcr_Factory449_Plugin
29
  */
30
  var $plugin;
31
 
32
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
33
  $this->plugin = $plugin;
34
  }
35
 
libs/factory/core/includes/assets-managment/class-factory-assets-list.php CHANGED
@@ -19,7 +19,7 @@ if ( ! defined( 'ABSPATH' ) ) {
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_Factory448_AssetsList {
23
 
24
  protected $all = [];
25
  public $header_place = [];
@@ -29,15 +29,15 @@ class Wbcr_Factory448_AssetsList {
29
  protected $default_place;
30
 
31
  /**
32
- * @var Wbcr_Factory448_Plugin
33
  */
34
  protected $plugin;
35
 
36
  /**
37
- * @param Wbcr_Factory448_Plugin $plugin
38
  * @param bool $defaultIsFooter
39
  */
40
- public function __construct( Wbcr_Factory448_Plugin $plugin, $defaultIsFooter = true ) {
41
  $this->plugin = $plugin;
42
 
43
  if ( $defaultIsFooter ) {
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_Factory449_AssetsList {
23
 
24
  protected $all = [];
25
  public $header_place = [];
29
  protected $default_place;
30
 
31
  /**
32
+ * @var Wbcr_Factory449_Plugin
33
  */
34
  protected $plugin;
35
 
36
  /**
37
+ * @param Wbcr_Factory449_Plugin $plugin
38
  * @param bool $defaultIsFooter
39
  */
40
+ public function __construct( Wbcr_Factory449_Plugin $plugin, $defaultIsFooter = true ) {
41
  $this->plugin = $plugin;
42
 
43
  if ( $defaultIsFooter ) {
libs/factory/core/includes/assets-managment/class-factory-script-list.php CHANGED
@@ -20,7 +20,7 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_Factory448_ScriptList extends Wbcr_Factory448_AssetsList {
24
 
25
  public $localize_data = [];
26
  public $use_ajax = false;
@@ -149,7 +149,7 @@ class Wbcr_Factory448_ScriptList extends Wbcr_Factory448_AssetsList {
149
  * @param string $varname
150
  * @param array $data
151
  *
152
- * @return Wbcr_Factory448_ScriptList $this
153
  */
154
  public function localize( $varname, $data ) {
155
  $bindTo = count( $this->all ) == 0 ? null : end( $this->all );
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_Factory449_ScriptList extends Wbcr_Factory449_AssetsList {
24
 
25
  public $localize_data = [];
26
  public $use_ajax = false;
149
  * @param string $varname
150
  * @param array $data
151
  *
152
+ * @return Wbcr_Factory449_ScriptList $this
153
  */
154
  public function localize( $varname, $data ) {
155
  $bindTo = count( $this->all ) == 0 ? null : end( $this->all );
libs/factory/core/includes/assets-managment/class-factory-style-list.php CHANGED
@@ -20,7 +20,7 @@ if ( ! defined( 'ABSPATH' ) ) {
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_Factory448_StyleList extends Wbcr_Factory448_AssetsList {
24
 
25
  /**
26
  * Adds new items to the collection (default place).
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_Factory449_StyleList extends Wbcr_Factory449_AssetsList {
24
 
25
  /**
26
  * Adds new items to the collection (default place).
libs/factory/core/includes/class-check-compatibility.php CHANGED
@@ -75,19 +75,19 @@ if ( ! class_exists( 'Wbcr_Factory_Compatibility' ) ) {
75
  $notice_text = $notice_default_text = '';
76
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
77
 
78
- $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_clearfy_240' ), $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_448' ), $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_448' ), $this->required_wp_version ) . '<br>';
91
  }
92
 
93
  if ( $has_one ) {
75
  $notice_text = $notice_default_text = '';
76
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
77
 
78
+ $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_templates_101' ), $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_449' ), $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_449' ), $this->required_wp_version ) . '<br>';
91
  }
92
 
93
  if ( $has_one ) {
libs/factory/core/includes/class-factory-migrations.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448;
4
 
5
  use Exception;
6
- use Wbcr_Factory448_Plugin;
7
 
8
  if ( ! defined( 'ABSPATH' ) ) {
9
  exit;
@@ -35,11 +35,11 @@ class Migrations {
35
  /**
36
  * Migrations constructor.
37
  *
38
- * @param Wbcr_Factory448_Plugin $plugin
39
  *
40
  * @throws Exception
41
  */
42
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
43
 
44
  $this->plugin = $plugin;
45
  $plugin_name = $plugin->getPluginName();
@@ -129,14 +129,14 @@ class Migrations {
129
  $fix_migration_error_url = add_query_arg( 'wbcr_factory_fix_migration_error', 1 );
130
 
131
  $notice_text = $migration_error_text;
132
- $notice_text .= "<br><br><a href='{$fix_migration_error_url}' class='button button-default'>" . __( 'I fixed, confirm migration', 'wbcr_factory_448' ) . "</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_448' ) . '</b><br>' . $notice_text . '</p>'
140
  ];
141
 
142
  return $notices;
@@ -162,19 +162,19 @@ class Migrations {
162
 
163
  $migrate_url = add_query_arg( 'wbcr_factory_test_migration', 1 );
164
 
165
- $notice_text = __( "Plugin activated:", "wbcr_factory_448" ) . ' ' . date( "Y-m-d H:i:s", $this->get_plugin_activated_time() ) . "<br>";
166
 
167
- $notice_text .= __( "Old plugin version (debug):", "wbcr_factory_448" ) . ' ' . $this->get_old_plugin_version() . "<br>";
168
- $notice_text .= __( "Current plugin version:", "wbcr_factory_448" ) . ' ' . $this->get_current_plugin_version() . "<br>";
169
- $notice_text .= __( "Need migration:", "wbcr_factory_448" ) . ' ' . ( $this->need_migration() ? "true" : "false" ) . "<br><br>";
170
- $notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "wbcr_factory_448" ) . "</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_448' ) . '</b><br>' . $notice_text . '</p>'
178
  ];
179
 
180
  return $notices;
@@ -505,7 +505,7 @@ class Migrations {
505
  $classes = [];
506
 
507
  if ( ! function_exists( 'token_get_all' ) ) {
508
- throw new Exception( __( 'There is no PHP Tokenizer extension installed on your server, you cannot use the token_get_all function.', 'wbcr_factory_448' ) );
509
  }
510
 
511
  $tokens = token_get_all( $phpCode );
1
  <?php
2
 
3
+ namespace WBCR\Factory_449;
4
 
5
  use Exception;
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  if ( ! defined( 'ABSPATH' ) ) {
9
  exit;
35
  /**
36
  * Migrations constructor.
37
  *
38
+ * @param Wbcr_Factory449_Plugin $plugin
39
  *
40
  * @throws Exception
41
  */
42
+ public function __construct( Wbcr_Factory449_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_449' ) . "</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_449' ) . '</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_449" ) . ' ' . date( "Y-m-d H:i:s", $this->get_plugin_activated_time() ) . "<br>";
166
 
167
+ $notice_text .= __( "Old plugin version (debug):", "wbcr_factory_449" ) . ' ' . $this->get_old_plugin_version() . "<br>";
168
+ $notice_text .= __( "Current plugin version:", "wbcr_factory_449" ) . ' ' . $this->get_current_plugin_version() . "<br>";
169
+ $notice_text .= __( "Need migration:", "wbcr_factory_449" ) . ' ' . ( $this->need_migration() ? "true" : "false" ) . "<br><br>";
170
+ $notice_text .= "<a href='{$migrate_url}' class='button button-default'>" . __( "Migrate now", "wbcr_factory_449" ) . "</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_449' ) . '</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_449' ) );
509
  }
510
 
511
  $tokens = token_get_all( $phpCode );
libs/factory/core/includes/class-factory-notices.php CHANGED
@@ -1,8 +1,8 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448;
4
 
5
- use Wbcr_Factory448_Plugin;
6
 
7
  // Exit if accessed directly
8
  if( !defined('ABSPATH') ) {
@@ -27,7 +27,7 @@ if( !defined('ABSPATH') ) {
27
  class Notices {
28
 
29
  /**
30
- * @var Wbcr_Factory448_Plugin
31
  */
32
  protected $plugin;
33
  /**
@@ -58,7 +58,7 @@ class Notices {
58
  /**
59
  * Инициализируем уведомлений сразу после загрузки модуля уведомлений
60
  *
61
- * @param Wbcr_Factory448_Plugin $plugin
62
  */
63
  public function __construct($plugin)
64
  {
@@ -86,7 +86,7 @@ class Notices {
86
  public function currentScreenAction()
87
  {
88
  /**
89
- * @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_448
90
  */
91
  $this->notices = apply_filters('wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName());
92
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_449;
4
 
5
+ use Wbcr_Factory449_Plugin;
6
 
7
  // Exit if accessed directly
8
  if( !defined('ABSPATH') ) {
27
  class Notices {
28
 
29
  /**
30
+ * @var Wbcr_Factory449_Plugin
31
  */
32
  protected $plugin;
33
  /**
58
  /**
59
  * Инициализируем уведомлений сразу после загрузки модуля уведомлений
60
  *
61
+ * @param Wbcr_Factory449_Plugin $plugin
62
  */
63
  public function __construct($plugin)
64
  {
86
  public function currentScreenAction()
87
  {
88
  /**
89
+ * @since 2.1.2 - Добавлен, модуль factory_notices_000 был удален. Поэтому в этому хуке мы заменили префикс на factory_449
90
  */
91
  $this->notices = apply_filters('wbcr/factory/admin_notices', $this->notices, $this->plugin->getPluginName());
92
 
libs/factory/core/includes/class-factory-options.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448;
4
 
5
  // Exit if accessed directly
6
  use Exception;
@@ -10,7 +10,7 @@ if ( ! defined( 'ABSPATH' ) ) {
10
  }
11
 
12
  /**
13
- * Трейт используется для расширения базового класса плагина Wbcr_Factory448_Base, позволяя работать с опциями плагина.
14
  *
15
  * Этот трейт является оберткой для Wordpress функций get_option, get_site_option, update_option, update_site_option,
16
  * delete_option, delete_site_option. Основная задача была получать, обновлять, удалять опции без использования префиксов,
1
  <?php
2
 
3
+ namespace WBCR\Factory_449;
4
 
5
  // Exit if accessed directly
6
  use Exception;
10
  }
11
 
12
  /**
13
+ * Трейт используется для расширения базового класса плагина Wbcr_Factory449_Base, позволяя работать с опциями плагина.
14
  *
15
  * Этот трейт является оберткой для Wordpress функций get_option, get_site_option, update_option, update_site_option,
16
  * delete_option, delete_site_option. Основная задача была получать, обновлять, удалять опции без использования префиксов,
libs/factory/core/includes/class-factory-plugin-abstract.php CHANGED
@@ -24,42 +24,42 @@ if( !defined('ABSPATH') ) {
24
  * @package factory-core
25
  *
26
  */
27
- abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
28
 
29
  /**
30
- * Instance class Wbcr_Factory448_Request, required manages http requests
31
  *
32
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
33
- * @var Wbcr_Factory448_Request
34
  */
35
  public $request;
36
 
37
  /**
38
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
39
- * @var \WBCR\Factory_448\Premium\Provider
40
  */
41
  public $premium;
42
 
43
  /**
44
  * The Bootstrap Manager class
45
  *
46
- * @var Wbcr_FactoryBootstrap448_Manager
47
  */
48
  public $bootstrap;
49
 
50
  /**
51
  * The Bootstrap Manager class
52
  *
53
- * @var Wbcr_FactoryForms445_Manager
54
  */
55
  public $forms;
56
 
57
  /**
58
- * Простой массив со списком зарегистрированных классов унаследованных от Wbcr_Factory448_Activator.
59
  * Классы активации используются для упаковки набора функций, которые нужно выполнить во время
60
  * активации плагина.
61
  *
62
- * @var array[] Wbcr_Factory448_Activator
63
  */
64
  protected $activator_class = [];
65
 
@@ -86,7 +86,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
86
  *
87
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
88
  * @since 4.1.9
89
- * @var WBCR\Factory_Adverts_126\Base
90
  */
91
  private $adverts;
92
 
@@ -95,7 +95,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
95
  *
96
  * @author Artem Prihodko <webtemyk@yandex.ru>
97
  * @since 4.3.7
98
- * @var WBCR\Factory_Logger_113\Logger
99
  */
100
  public $logger;
101
 
@@ -115,8 +115,8 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
115
 
116
  parent::__construct($plugin_path, $data);
117
 
118
- $this->request = new Wbcr_Factory448_Request();
119
- //$this->route = new Wbcr_Factory448_Route();
120
 
121
  // INIT PLUGIN FRAMEWORK MODULES
122
  // Framework modules should always be loaded first,
@@ -144,15 +144,15 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
144
  $this->init_plugin_components();
145
 
146
  if( wp_doing_ajax() && isset($_REQUEST['action']) ) {
147
- if( "wfactory-448-intall-component" == $_REQUEST['action'] ) {
148
- add_action('wp_ajax_wfactory-448-intall-component', [$this, 'ajax_handler_install_components']);
149
  }
150
 
151
- if( "wfactory-448-prepare-component" == $_REQUEST['action'] ) {
152
- add_action('wp_ajax_wfactory-448-prepare-component', [$this, 'ajax_handler_prepare_component']);
153
  }
154
- if( "wfactory-448-creativemotion-install-plugin" == $_REQUEST['action'] ) {
155
- add_action('wp_ajax_wfactory-448-creativemotion-install-plugin', [
156
  $this,
157
  'ajax_handler_install_creativemotion_plugins'
158
  ]);
@@ -165,20 +165,20 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
165
 
166
  public function ajax_handler_install_components()
167
  {
168
- require_once FACTORY_448_DIR . '/ajax/install-addons.php';
169
- wfactory_448_install_components($this);
170
  }
171
 
172
  public function ajax_handler_prepare_component()
173
  {
174
- require_once FACTORY_448_DIR . '/ajax/install-addons.php';
175
- wfactory_448_prepare_component($this);
176
  }
177
 
178
  public function ajax_handler_install_creativemotion_plugins()
179
  {
180
- require_once FACTORY_448_DIR . '/ajax/install-addons.php';
181
- wfactory_448_creativemotion_install_plugin($this);
182
  }
183
  // --------------------------------------------------------
184
 
@@ -186,9 +186,9 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
186
  * Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
187
  * скриптов, стилей) фреймворка.
188
  *
189
- * @param Wbcr_FactoryBootstrap448_Manager $bootstrap
190
  */
191
- public function setBootstap(Wbcr_FactoryBootstrap448_Manager $bootstrap)
192
  {
193
  $this->bootstrap = $bootstrap;
194
  }
@@ -196,9 +196,9 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
196
  /**
197
  * Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
198
  *
199
- * @param Wbcr_FactoryForms445_Manager $forms
200
  */
201
- public function setForms(Wbcr_FactoryForms445_Manager $forms)
202
  {
203
  $this->forms = $forms;
204
  }
@@ -246,8 +246,8 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
246
  */
247
  public function set_license_provider($name, $class_name)
248
  {
249
- if( !isset(WBCR\Factory_448\Premium\Manager::$providers[$name]) ) {
250
- WBCR\Factory_448\Premium\Manager::$providers[$name] = $class_name;
251
  }
252
  }
253
 
@@ -265,8 +265,8 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
265
  */
266
  public function set_update_repository($name, $class_name)
267
  {
268
- if( !isset(WBCR\Factory_448\Updates\Upgrader::$repositories[$name]) ) {
269
- WBCR\Factory_448\Updates\Upgrader::$repositories[$name] = $class_name;
270
  }
271
  }
272
 
@@ -276,7 +276,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
276
  * Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
277
  * рекламных объявлений.
278
  *
279
- * @return \WBCR\Factory_Adverts_126\Base
280
  * @since 1.1
281
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
282
  */
@@ -312,18 +312,18 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
312
 
313
  public function newScriptList()
314
  {
315
- return new Wbcr_Factory448_ScriptList($this);
316
  }
317
 
318
  public function newStyleList()
319
  {
320
- return new Wbcr_Factory448_StyleList($this);
321
  }
322
 
323
  /**
324
  * Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
325
  * фреймворка pages. Разработчик создает собственный класс, унаследованный от
326
- * Wbcr_FactoryPages447_AdminPage, а затем регистрирует его через этот метод.
327
  * Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
328
  * pages.
329
  *
@@ -333,7 +333,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
333
  * @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
334
  *
335
  * @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
336
- * Регистрируемый класс должен быть унаследован от класса Wbcr_FactoryPages447_AdminPage.
337
  * @param string $file_path Абсолютный путь к файлу с классом страницы.
338
  *
339
  * @throws Exception
@@ -355,11 +355,11 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
355
  throw new Exception('A class with this name {' . $class_name . '} does not exist.');
356
  }
357
 
358
- if( !class_exists('Wbcr_FactoryPages447') ) {
359
- throw new Exception('The factory_pages_447 module is not included.');
360
  }
361
 
362
- Wbcr_FactoryPages447::register($this, $class_name);
363
  }
364
 
365
  /**
@@ -409,16 +409,16 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
409
  /**
410
  * @since 4.1.1 - change hook name
411
  */
412
- if( apply_filters("wbcr/factory_448/cancel_plugin_activation_{$this->plugin_name}", false) ) {
413
  return;
414
  }
415
 
416
  /**
417
- * wbcr_factory_448_plugin_activation
418
  *
419
  * @since 4.1.1 - deprecated
420
  */
421
- wbcr_factory_448_do_action_deprecated('wbcr_factory_448_plugin_activation', [
422
  $this
423
  ], '4.1.1', "wbcr/factory/plugin_activation");
424
 
@@ -427,7 +427,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
427
  *
428
  * @since 4.1.2 - deprecated
429
  */
430
- wbcr_factory_448_do_action_deprecated('wbcr/factory/plugin_activation', [
431
  $this
432
  ], '4.1.2', "wbcr/factory/before_plugin_activation");
433
 
@@ -443,16 +443,16 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
443
  *
444
  * @since 4.1.2 - deprecated
445
  */
446
- wbcr_factory_448_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_activation", [
447
  $this
448
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
449
 
450
  /**
451
- * wbcr_factory_448_plugin_activation_' . $this->plugin_name
452
  *
453
  * @since 4.1.1 - deprecated
454
  */
455
- wbcr_factory_448_do_action_deprecated('wbcr_factory_448_plugin_activation_' . $this->plugin_name, [
456
  $this
457
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
458
 
@@ -493,16 +493,16 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
493
  /**
494
  * @since 4.1.1 - change hook name
495
  */
496
- if( apply_filters("wbcr/factory_448/cancel_plugin_deactivation_{$this->plugin_name}", false) ) {
497
  return;
498
  }
499
 
500
  /**
501
- * wbcr_factory_448_plugin_deactivation
502
  *
503
  * @since 4.1.1 - deprecated
504
  */
505
- wbcr_factory_448_do_action_deprecated('wbcr_factory_448_plugin_deactivation', [
506
  $this
507
  ], '4.1.1', "wbcr/factory/plugin_deactivation");
508
 
@@ -511,7 +511,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
511
  *
512
  * @since 4.1.2 - deprecated
513
  */
514
- wbcr_factory_448_do_action_deprecated('wbcr/factory/plugin_deactivation', [
515
  $this
516
  ], '4.1.2', "wbcr/factory/before_plugin_deactivation");
517
 
@@ -523,11 +523,11 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
523
  do_action('wbcr/factory/plugin_deactivation', $this);
524
 
525
  /**
526
- * wbcr_factory_448_plugin_deactivation_ . $this->plugin_name
527
  *
528
  * @since 4.1.1 - deprecated
529
  */
530
- wbcr_factory_448_do_action_deprecated('wbcr_factory_448_plugin_deactivation_' . $this->plugin_name, [
531
  $this
532
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
533
 
@@ -536,7 +536,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
536
  *
537
  * @since 4.1.2 - deprecated
538
  */
539
- wbcr_factory_448_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_deactivation", [
540
  $this
541
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
542
 
@@ -574,8 +574,8 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
574
  */
575
  public function getPluginPageUrl($page_id, $args = [])
576
  {
577
- if( !class_exists('Wbcr_FactoryPages447') ) {
578
- throw new Exception('The factory_pages_447 module is not included.');
579
  }
580
 
581
  if( !is_admin() ) {
@@ -584,7 +584,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
584
  return null;
585
  }
586
 
587
- return Wbcr_FactoryPages447::getPageUrl($this, $page_id, $args);
588
  }
589
 
590
  /**
@@ -594,13 +594,13 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
594
  * @param $slug
595
  * param $premium
596
  *
597
- * @return \WBCR\Factory_448\Components\Install_Button
598
  */
599
  public function get_install_component_button($component_type, $slug)
600
  {
601
- require_once FACTORY_448_DIR . '/includes/components/class-install-component-button.php';
602
 
603
- return new \WBCR\Factory_448\Components\Install_Button($this, $component_type, $slug);
604
  }
605
 
606
  /**
@@ -609,13 +609,13 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
609
  * @param $component_type
610
  * @param $slug
611
  *
612
- * @return \WBCR\Factory_448\Components\Delete_Button
613
  */
614
  public function get_delete_component_button($component_type, $slug)
615
  {
616
- require_once FACTORY_448_DIR . '/includes/components/class-delete-component-button.php';
617
 
618
- return new WBCR\Factory_448\Components\Delete_Button($this, $component_type, $slug);
619
  }
620
 
621
  /**
@@ -798,12 +798,12 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
798
  /**
799
  * @since 4.1.1 - deprecated
800
  */
801
- wbcr_factory_448_do_action_deprecated('wbcr_factory_448_core_modules_loaded-' . $this->plugin_name, [], '4.1.1', "wbcr/factory_448/modules_loaded-" . $this->plugin_name);
802
 
803
  /**
804
  * @since 4.1.1 - add
805
  */
806
- do_action('wbcr/factory_448/modules_loaded-' . $this->plugin_name);
807
  }
808
 
809
 
@@ -830,7 +830,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
830
  });
831
 
832
  if( is_admin() ) {
833
- add_filter('wbcr_factory_448_core_admin_allow_multisite', '__return_true');
834
 
835
  register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
836
  register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
@@ -846,7 +846,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
846
  */
847
  protected function init_plugin_migrations()
848
  {
849
- new WBCR\Factory_448\Migrations($this);
850
  }
851
 
852
  /**
@@ -857,7 +857,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
857
  */
858
  protected function init_plugin_notices()
859
  {
860
- new Wbcr\Factory_448\Notices($this);
861
  }
862
 
863
  /**
@@ -873,7 +873,7 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
873
  protected function init_plugin_updates()
874
  {
875
  if( $this->has_updates ) {
876
- new WBCR\Factory_448\Updates\Upgrader($this);
877
  }
878
  }
879
 
@@ -896,11 +896,11 @@ abstract class Wbcr_Factory448_Plugin extends Wbcr_Factory448_Base {
896
  }
897
 
898
  // Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
899
- $this->premium = WBCR\Factory_448\Premium\Manager::instance($this, $this->license_settings);
900
 
901
  // Подключаем премиум апгрейдер
902
  if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
903
- new WBCR\Factory_448\Updates\Premium_Upgrader($this);
904
  }
905
  }
906
  }
24
  * @package factory-core
25
  *
26
  */
27
+ abstract class Wbcr_Factory449_Plugin extends Wbcr_Factory449_Base {
28
 
29
  /**
30
+ * Instance class Wbcr_Factory449_Request, required manages http requests
31
  *
32
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/390561806
33
+ * @var Wbcr_Factory449_Request
34
  */
35
  public $request;
36
 
37
  /**
38
  * @see https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/393936924
39
+ * @var \WBCR\Factory_449\Premium\Provider
40
  */
41
  public $premium;
42
 
43
  /**
44
  * The Bootstrap Manager class
45
  *
46
+ * @var Wbcr_FactoryBootstrap449_Manager
47
  */
48
  public $bootstrap;
49
 
50
  /**
51
  * The Bootstrap Manager class
52
  *
53
+ * @var Wbcr_FactoryForms446_Manager
54
  */
55
  public $forms;
56
 
57
  /**
58
+ * Простой массив со списком зарегистрированных классов унаследованных от Wbcr_Factory449_Activator.
59
  * Классы активации используются для упаковки набора функций, которые нужно выполнить во время
60
  * активации плагина.
61
  *
62
+ * @var array[] Wbcr_Factory449_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_127\Base
90
  */
91
  private $adverts;
92
 
95
  *
96
  * @author Artem Prihodko <webtemyk@yandex.ru>
97
  * @since 4.3.7
98
+ * @var WBCR\Factory_Logger_114\Logger
99
  */
100
  public $logger;
101
 
115
 
116
  parent::__construct($plugin_path, $data);
117
 
118
+ $this->request = new Wbcr_Factory449_Request();
119
+ //$this->route = new Wbcr_Factory449_Route();
120
 
121
  // INIT PLUGIN FRAMEWORK MODULES
122
  // Framework modules should always be loaded first,
144
  $this->init_plugin_components();
145
 
146
  if( wp_doing_ajax() && isset($_REQUEST['action']) ) {
147
+ if( "wfactory-449-intall-component" == $_REQUEST['action'] ) {
148
+ add_action('wp_ajax_wfactory-449-intall-component', [$this, 'ajax_handler_install_components']);
149
  }
150
 
151
+ if( "wfactory-449-prepare-component" == $_REQUEST['action'] ) {
152
+ add_action('wp_ajax_wfactory-449-prepare-component', [$this, 'ajax_handler_prepare_component']);
153
  }
154
+ if( "wfactory-449-creativemotion-install-plugin" == $_REQUEST['action'] ) {
155
+ add_action('wp_ajax_wfactory-449-creativemotion-install-plugin', [
156
  $this,
157
  'ajax_handler_install_creativemotion_plugins'
158
  ]);
165
 
166
  public function ajax_handler_install_components()
167
  {
168
+ require_once FACTORY_449_DIR . '/ajax/install-addons.php';
169
+ wfactory_449_install_components($this);
170
  }
171
 
172
  public function ajax_handler_prepare_component()
173
  {
174
+ require_once FACTORY_449_DIR . '/ajax/install-addons.php';
175
+ wfactory_449_prepare_component($this);
176
  }
177
 
178
  public function ajax_handler_install_creativemotion_plugins()
179
  {
180
+ require_once FACTORY_449_DIR . '/ajax/install-addons.php';
181
+ wfactory_449_creativemotion_install_plugin($this);
182
  }
183
  // --------------------------------------------------------
184
 
186
  * Устанавливает класс менеджер, которому плагин будет делегировать подключение ресурсов (картинок,
187
  * скриптов, стилей) фреймворка.
188
  *
189
+ * @param Wbcr_FactoryBootstrap449_Manager $bootstrap
190
  */
191
+ public function setBootstap(Wbcr_FactoryBootstrap449_Manager $bootstrap)
192
  {
193
  $this->bootstrap = $bootstrap;
194
  }
196
  /**
197
  * Устанавливает класс менеджер, которому будет делегирована работа с html формами фреймворка.
198
  *
199
+ * @param Wbcr_FactoryForms446_Manager $forms
200
  */
201
+ public function setForms(Wbcr_FactoryForms446_Manager $forms)
202
  {
203
  $this->forms = $forms;
204
  }
246
  */
247
  public function set_license_provider($name, $class_name)
248
  {
249
+ if( !isset(WBCR\Factory_449\Premium\Manager::$providers[$name]) ) {
250
+ WBCR\Factory_449\Premium\Manager::$providers[$name] = $class_name;
251
  }
252
  }
253
 
265
  */
266
  public function set_update_repository($name, $class_name)
267
  {
268
+ if( !isset(WBCR\Factory_449\Updates\Upgrader::$repositories[$name]) ) {
269
+ WBCR\Factory_449\Updates\Upgrader::$repositories[$name] = $class_name;
270
  }
271
  }
272
 
276
  * Доступен глобально через метод app(), чаще всего используется для создания точек для ротации
277
  * рекламных объявлений.
278
  *
279
+ * @return \WBCR\Factory_Adverts_127\Base
280
  * @since 1.1
281
  * @author Alexander Kovalev <alex.kovalevv@gmail.com>
282
  */
312
 
313
  public function newScriptList()
314
  {
315
+ return new Wbcr_Factory449_ScriptList($this);
316
  }
317
 
318
  public function newStyleList()
319
  {
320
+ return new Wbcr_Factory449_StyleList($this);
321
  }
322
 
323
  /**
324
  * Все страницы плагина создаются через специальную обертку, за которую отвечает модуль
325
  * фреймворка pages. Разработчик создает собственный класс, унаследованный от
326
+ * Wbcr_FactoryPages448_AdminPage, а затем регистрирует его через этот метод.
327
  * Метод выполняет подключение класса страницы и регистрирует его в модуле фреймворка
328
  * pages.
329
  *
333
  * @see https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/222887949 - документация по созданию страниц
334
  *
335
  * @param string $class_name Имя регистрируемого класса страницы. Пример: WCL_Page_Name.
336
+ * Регистрируемый класс должен быть унаследован от класса Wbcr_FactoryPages448_AdminPage.
337
  * @param string $file_path Абсолютный путь к файлу с классом страницы.
338
  *
339
  * @throws Exception
355
  throw new Exception('A class with this name {' . $class_name . '} does not exist.');
356
  }
357
 
358
+ if( !class_exists('Wbcr_FactoryPages448') ) {
359
+ throw new Exception('The factory_pages_448 module is not included.');
360
  }
361
 
362
+ Wbcr_FactoryPages448::register($this, $class_name);
363
  }
364
 
365
  /**
409
  /**
410
  * @since 4.1.1 - change hook name
411
  */
412
+ if( apply_filters("wbcr/factory_449/cancel_plugin_activation_{$this->plugin_name}", false) ) {
413
  return;
414
  }
415
 
416
  /**
417
+ * wbcr_factory_449_plugin_activation
418
  *
419
  * @since 4.1.1 - deprecated
420
  */
421
+ wbcr_factory_449_do_action_deprecated('wbcr_factory_449_plugin_activation', [
422
  $this
423
  ], '4.1.1', "wbcr/factory/plugin_activation");
424
 
427
  *
428
  * @since 4.1.2 - deprecated
429
  */
430
+ wbcr_factory_449_do_action_deprecated('wbcr/factory/plugin_activation', [
431
  $this
432
  ], '4.1.2', "wbcr/factory/before_plugin_activation");
433
 
443
  *
444
  * @since 4.1.2 - deprecated
445
  */
446
+ wbcr_factory_449_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_activation", [
447
  $this
448
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
449
 
450
  /**
451
+ * wbcr_factory_449_plugin_activation_' . $this->plugin_name
452
  *
453
  * @since 4.1.1 - deprecated
454
  */
455
+ wbcr_factory_449_do_action_deprecated('wbcr_factory_449_plugin_activation_' . $this->plugin_name, [
456
  $this
457
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_activation");
458
 
493
  /**
494
  * @since 4.1.1 - change hook name
495
  */
496
+ if( apply_filters("wbcr/factory_449/cancel_plugin_deactivation_{$this->plugin_name}", false) ) {
497
  return;
498
  }
499
 
500
  /**
501
+ * wbcr_factory_449_plugin_deactivation
502
  *
503
  * @since 4.1.1 - deprecated
504
  */
505
+ wbcr_factory_449_do_action_deprecated('wbcr_factory_449_plugin_deactivation', [
506
  $this
507
  ], '4.1.1', "wbcr/factory/plugin_deactivation");
508
 
511
  *
512
  * @since 4.1.2 - deprecated
513
  */
514
+ wbcr_factory_449_do_action_deprecated('wbcr/factory/plugin_deactivation', [
515
  $this
516
  ], '4.1.2', "wbcr/factory/before_plugin_deactivation");
517
 
523
  do_action('wbcr/factory/plugin_deactivation', $this);
524
 
525
  /**
526
+ * wbcr_factory_449_plugin_deactivation_ . $this->plugin_name
527
  *
528
  * @since 4.1.1 - deprecated
529
  */
530
+ wbcr_factory_449_do_action_deprecated('wbcr_factory_449_plugin_deactivation_' . $this->plugin_name, [
531
  $this
532
  ], '4.1.1', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
533
 
536
  *
537
  * @since 4.1.2 - deprecated
538
  */
539
+ wbcr_factory_449_do_action_deprecated("wbcr/factory/plugin_{$this->plugin_name}_deactivation", [
540
  $this
541
  ], '4.1.2', "wbcr/factory/before_plugin_{$this->plugin_name}_deactivation");
542
 
574
  */
575
  public function getPluginPageUrl($page_id, $args = [])
576
  {
577
+ if( !class_exists('Wbcr_FactoryPages448') ) {
578
+ throw new Exception('The factory_pages_448 module is not included.');
579
  }
580
 
581
  if( !is_admin() ) {
584
  return null;
585
  }
586
 
587
+ return Wbcr_FactoryPages448::getPageUrl($this, $page_id, $args);
588
  }
589
 
590
  /**
594
  * @param $slug
595
  * param $premium
596
  *
597
+ * @return \WBCR\Factory_449\Components\Install_Button
598
  */
599
  public function get_install_component_button($component_type, $slug)
600
  {
601
+ require_once FACTORY_449_DIR . '/includes/components/class-install-component-button.php';
602
 
603
+ return new \WBCR\Factory_449\Components\Install_Button($this, $component_type, $slug);
604
  }
605
 
606
  /**
609
  * @param $component_type
610
  * @param $slug
611
  *
612
+ * @return \WBCR\Factory_449\Components\Delete_Button
613
  */
614
  public function get_delete_component_button($component_type, $slug)
615
  {
616
+ require_once FACTORY_449_DIR . '/includes/components/class-delete-component-button.php';
617
 
618
+ return new WBCR\Factory_449\Components\Delete_Button($this, $component_type, $slug);
619
  }
620
 
621
  /**
798
  /**
799
  * @since 4.1.1 - deprecated
800
  */
801
+ wbcr_factory_449_do_action_deprecated('wbcr_factory_449_core_modules_loaded-' . $this->plugin_name, [], '4.1.1', "wbcr/factory_449/modules_loaded-" . $this->plugin_name);
802
 
803
  /**
804
  * @since 4.1.1 - add
805
  */
806
+ do_action('wbcr/factory_449/modules_loaded-' . $this->plugin_name);
807
  }
808
 
809
 
830
  });
831
 
832
  if( is_admin() ) {
833
+ add_filter('wbcr_factory_449_core_admin_allow_multisite', '__return_true');
834
 
835
  register_activation_hook($this->get_paths()->main_file, [$this, 'activation_hook']);
836
  register_deactivation_hook($this->get_paths()->main_file, [$this, 'deactivation_hook']);
846
  */
847
  protected function init_plugin_migrations()
848
  {
849
+ new WBCR\Factory_449\Migrations($this);
850
  }
851
 
852
  /**
857
  */
858
  protected function init_plugin_notices()
859
  {
860
+ new Wbcr\Factory_449\Notices($this);
861
  }
862
 
863
  /**
873
  protected function init_plugin_updates()
874
  {
875
  if( $this->has_updates ) {
876
+ new WBCR\Factory_449\Updates\Upgrader($this);
877
  }
878
  }
879
 
896
  }
897
 
898
  // Создаем экземляр премиум менеджера, мы сможем к нему обращаться глобально.
899
+ $this->premium = WBCR\Factory_449\Premium\Manager::instance($this, $this->license_settings);
900
 
901
  // Подключаем премиум апгрейдер
902
  if( isset($this->license_settings['has_updates']) && $this->license_settings['has_updates'] ) {
903
+ new WBCR\Factory_449\Updates\Premium_Upgrader($this);
904
  }
905
  }
906
  }
libs/factory/core/includes/class-factory-plugin-base.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
  exit;
5
  }
6
 
7
  /**
8
- * Базовый класс для создания нового плагина. Полную реализацию класса смотрите в Wbcr_Factory448_Plugin
9
  *
10
  * Документация по классу: https://webcraftic.atlassian.net/wiki/spaces/FFD/pages/392724484
11
  * Документация по созданию плагина: https://webcraftic.atlassian.net/wiki/spaces/CNCFC/pages/327828
@@ -17,9 +17,9 @@ if ( ! defined( 'ABSPATH' ) ) {
17
  * @since 1.0.0
18
  * @package factory-core
19
  */
20
- class Wbcr_Factory448_Base {
21
 
22
- use WBCR\Factory_448\Options;
23
 
24
  /**
25
  * Обязательное свойство. Префикс, используется для создания пространство имен.
@@ -81,7 +81,7 @@ class Wbcr_Factory448_Base {
81
  * https://robin-image-optimizer.webcraftic.com/premium-features.
82
  *
83
  * Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
84
- * экземпляр класса \WBCR\Factory_448\Entities\Support, для получения информации о сайте плагина.
85
  * Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
86
  * можете изменить все ссылки в одном месте.
87
  *
@@ -127,7 +127,7 @@ class Wbcr_Factory448_Base {
127
  * к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
128
  * взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
129
  * индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
130
- * WBCR\Factory_448\Premium\Provider > WBCR\Factory_Freemius_136\Premium\Provider
131
  *
132
  * На текущий момент существует только реализация для freemius провайдера.
133
  *
@@ -177,9 +177,9 @@ class Wbcr_Factory448_Base {
177
  * }
178
  */
179
  protected $load_factory_modules = [
180
- [ 'libs/factory/bootstrap', 'factory_bootstrap_448', 'admin' ],
181
- [ 'libs/factory/forms', 'factory_forms_445', 'admin' ],
182
- [ 'libs/factory/pages', 'factory_pages_447', 'admin' ],
183
  ];
184
 
185
  /**
@@ -209,20 +209,20 @@ class Wbcr_Factory448_Base {
209
 
210
 
211
  /**
212
- * Экземпляр класса \WBCR\Factory_448\Entities\Support используется для получения информации
213
  * о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
214
  * ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
215
  *
216
- * @var \WBCR\Factory_448\Entities\Support
217
  */
218
  protected $support;
219
 
220
  /**
221
- * Экземпляр класса \WBCR\Factory_448\Entities\Paths используется для получения информации о
222
  * путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
223
  * или его входного файла.
224
  *
225
- * @var \WBCR\Factory_448\Entities\Paths
226
  */
227
  protected $paths;
228
 
@@ -247,34 +247,35 @@ class Wbcr_Factory448_Base {
247
  * - Выполняет проверку на обязательные настройки
248
  * - Инициализирует сущности support и paths
249
  *
250
- * @since 4.1.1 - добавил две сущности support, paths. Удалил свойства, plugin_build
251
- * plugin_assembly, main_file, plugin_root, relative_path, plugin_url
252
- * @since 4.0.8 - добавлена дополнительная логика
253
- *
254
  * @param string $plugin_file
255
- * @param array $data
256
  *
257
  * @throws Exception
 
 
 
 
258
  */
259
- public function __construct( $plugin_file, $data ) {
 
260
  $this->plugin_file = $plugin_file;
261
  $this->plugin_data = $data;
262
 
263
- foreach ( (array) $data as $option_name => $option_value ) {
264
- if ( property_exists( $this, $option_name ) ) {
265
  $this->$option_name = $option_value;
266
  }
267
  }
268
 
269
- if ( empty( $this->prefix ) || empty( $this->plugin_name ) || empty( $this->plugin_title ) || empty( $this->plugin_version ) || empty( $this->plugin_text_domain ) ) {
270
- throw new Exception( 'One of the required attributes has not been passed (prefix, plugin_title, plugin_name, plugin_version, plugin_text_domain).' );
271
  }
272
 
273
- $this->support = new \WBCR\Factory_448\Entities\Support( $this->support_details );
274
- $this->paths = new \WBCR\Factory_448\Entities\Paths( $plugin_file );
275
 
276
  // used only in the module 'updates'
277
- $this->plugin_slug = ! empty( $this->plugin_name ) ? $this->plugin_name : basename( $plugin_file );
278
  }
279
 
280
  /**
@@ -283,11 +284,12 @@ class Wbcr_Factory448_Base {
283
  * добавляем совместимость со старыми плагинами, но при этом выводим предупреждение, что нужно
284
  * обновить некоторые свойства.
285
  *
286
- * @param string $name Имя свойства класса.
287
  *
288
  * @return mixed
289
  */
290
- public function __get( $name ) {
 
291
 
292
  $deprecated_props = [
293
  'plugin_build',
@@ -298,13 +300,13 @@ class Wbcr_Factory448_Base {
298
  'plugin_url'
299
  ];
300
 
301
- if ( in_array( $name, $deprecated_props ) ) {
302
  $deprecated_message = 'In version 4.1.1 of the Factory framework, the class properties ';
303
- $deprecated_message .= '(' . implode( ',', $deprecated_props ) . ')';
304
  $deprecated_message .= 'have been removed. To get plugin paths, use the new paths property.' . PHP_EOL;
305
 
306
  $backtrace = debug_backtrace();
307
- if ( ! empty( $backtrace ) && isset( $backtrace[1] ) ) {
308
  $deprecated_message .= 'BACKTRACE:(';
309
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
310
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
@@ -312,9 +314,9 @@ class Wbcr_Factory448_Base {
312
  $deprecated_message .= ')';
313
  }
314
 
315
- _deprecated_argument( __METHOD__, '4.1.1', $deprecated_message );
316
 
317
- switch ( $name ) {
318
  case 'plugin_build':
319
  return null;
320
  break;
@@ -344,13 +346,14 @@ class Wbcr_Factory448_Base {
344
  * по прежнему используют удаленные методы. С помощью этого магического метода мы добавляем совместимость
345
  * со старыми плагинами, но при этом выводим предупреждение, что нужно обновить некоторые методы.
346
  *
347
- * @param string $name Имя метода класса.
348
- * @param array $arguments Массив аргументов метода класса.
349
  *
350
  * @return stdClass|null
351
  * @throws Exception
352
  */
353
- public function __call( $name, $arguments ) {
 
354
 
355
  $deprecated_methods = [
356
  'getPluginBuild',
@@ -358,11 +361,11 @@ class Wbcr_Factory448_Base {
358
  'getPluginPathInfo'
359
  ];
360
 
361
- if ( in_array( $name, $deprecated_methods ) ) {
362
- $deprecated_message = 'In version 4.1.1 of the Factory framework, methods (' . implode( ',', $deprecated_methods ) . ') have been removed.';
363
 
364
  $backtrace = debug_backtrace();
365
- if ( ! empty( $backtrace ) && isset( $backtrace[1] ) ) {
366
  $deprecated_message .= 'BACKTRACE:(';
367
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
368
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
@@ -370,77 +373,83 @@ class Wbcr_Factory448_Base {
370
  $deprecated_message .= ')';
371
  }
372
 
373
- _deprecated_argument( __METHOD__, '4.1.1', $deprecated_message );
374
 
375
- if ( 'getPluginPathInfo' == $name ) {
376
  $object = new stdClass;
377
 
378
- $object->main_file = $this->get_paths()->main_file;
379
- $object->plugin_root = $this->get_paths()->absolute;
380
  $object->relative_path = $this->get_paths()->basename;
381
- $object->plugin_url = $this->get_paths()->url;
382
 
383
  return $object;
384
  }
385
  }
386
 
387
- throw new Exception( "Method {$name} does not exist" );
388
  }
389
 
390
  /**
391
  * Проверяет, включен ли премиум для этого плагина или нет.
392
  *
393
  * @return bool Возвращает true, если премиум пакет включен для этого плагина.
394
- * См. Wbcr_Factory448_Base::has_premium
395
  */
396
- public function has_premium() {
 
397
  return $this->has_premium;
398
  }
399
 
400
  /**
401
  * Позволяет получить заголовок плагина.
402
  *
403
- * @return string Возвращает заголовок плагина. См. Wbcr_Factory448_Base::plugin_title
404
  */
405
- public function getPluginTitle() {
406
- return $this->plugin_title;
 
407
  }
408
 
409
  /**
410
  * Позволяет получить префикс плагина.
411
  *
412
- * @return string Возвращает префикс плагина.См. Wbcr_Factory448_Base::prefix
413
  */
414
- public function getPrefix() {
 
415
  return $this->prefix;
416
  }
417
 
418
  /**
419
  * Позволяет получить имя плагина.
420
  *
421
- * @return string Возвращает имя плагина. См. Wbcr_Factory448_Base::plugin_name
422
  */
423
- public function getPluginName() {
 
424
  return $this->plugin_name;
425
  }
426
 
427
  /**
428
  * Позволяет получить версию плагина.
429
  *
430
- * @return string Возвращает версию плагина. См. Wbcr_Factory448_Base::plugin_version
431
  */
432
- public function getPluginVersion() {
 
433
  return $this->plugin_version;
434
  }
435
 
436
  /**
437
  * Позволяет получить список подключаемых к плагином компонентов
438
  *
439
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
440
- * @since 4.2.0
441
  * @return array
 
 
442
  */
443
- public function get_load_plugin_components() {
 
444
  return $this->load_plugin_components;
445
  }
446
 
@@ -448,92 +457,99 @@ class Wbcr_Factory448_Base {
448
  * Предоставляет доступ к сырым данным плагина. Может быть полезен, если вы хотите получить
449
  * какие-то данные не описанные в интерфейсе этого плагина.
450
  *
451
- * @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
452
- * Wbcr_Factory448_Base::plugin_data
453
  *
454
  * @return null
455
  */
456
- public function getPluginInfoAttr( $attr_name ) {
457
- if ( isset( $this->plugin_data[ $attr_name ] ) ) {
458
- return $this->plugin_data[ $attr_name ];
 
459
  }
460
 
461
  return null;
462
  }
463
 
464
  /**
465
- * Предоставляет доступ к экземпляру класса \WBCR\Factory_448\Entities\Support.
466
  *
467
- * @return \WBCR\Factory_448\Entities\Support
468
  */
469
- public function get_support() {
 
470
  return $this->support;
471
  }
472
 
473
  /**
474
- * Предоставляет доступ к экземпляру класса \WBCR\Factory_448\Entities\Paths.
475
  *
476
- * @return \WBCR\Factory_448\Entities\Paths
477
  */
478
- public function get_paths() {
 
479
  return $this->paths;
480
  }
481
 
482
  /**
483
  * Позволяет получить сырые данные плагина в виде объекта StdClass.
484
  *
485
- * @return object Возвращает объект с сырыми данными плагина. См. Wbcr_Factory448_Base::plugin_data
486
  */
487
- public function getPluginInfo() {
488
- return (object) $this->plugin_data;
 
489
  }
490
 
491
  /**
492
  * Проверяет права пользователя
493
  *
494
- * @author Alexander Kovalev <alex.kovalevv@gmail.com>
495
- * @since 4.2.0 Добавлен
496
  * @return bool
 
 
497
  */
498
- public function current_user_can( $capability = 'manage_options' ) {
 
499
  // Просмотр страниц: read_pages
500
  // Просмотр уведомлений: read_notices
501
  // Редактирование: edit_forms
502
 
503
- if ( 'manage_options' == $capability && is_multisite() && $this->isNetworkActive() ) {
504
  $capability = 'manage_network';
505
  }
506
 
507
- return current_user_can( $capability );
508
  }
509
 
510
  /**
511
  * Проверят, находится ли пользователь в панели усправления сетью сайтов
512
  *
 
513
  * @since 4.0.8 Добавлен
514
  *
515
- * @return bool
516
  */
517
- public function isNetworkAdmin() {
 
518
  return is_multisite() && is_network_admin();
519
  }
520
 
521
  /**
522
  * Проверяет активирован ли плагин для сети. Если проект работает в режиме мультисайтов..
523
  *
524
- * @since 4.0.8 Добавлен
525
  * @return bool Если true, плагин активирован для сети или в текущий момент активируется для сети.
 
526
  */
527
- public function isNetworkActive() {
 
528
  // Makes sure the plugin is defined before trying to use it
529
- if ( ! function_exists( 'is_plugin_active_for_network' ) ) {
530
- require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
531
  }
532
 
533
- $activate = is_plugin_active_for_network( $this->get_paths()->basename );
534
 
535
- if ( ! $activate && $this->isNetworkAdmin() && isset( $_GET['action'] ) && $_GET['action'] == 'activate' ) {
536
- return isset( $_GET['networkwide'] ) && 1 == (int) $_GET['networkwide'];
537
  }
538
 
539
  return $activate;
@@ -542,29 +558,30 @@ class Wbcr_Factory448_Base {
542
  /**
543
  * Позволяет получить все активные сайты сети. Если проект работает в режиме мультисайтов.
544
  *
545
- * @since 4.0.8
546
  * @return array|int
 
547
  */
548
- public function getActiveSites( $args = [ 'archived' => 0, 'mature' => 0, 'spam' => 0, 'deleted' => 0 ] ) {
 
549
  global $wp_version;
550
 
551
- if ( version_compare( $wp_version, '4.6', '>=' ) ) {
552
- return get_sites( $args );
553
  } else {
554
  $converted_array = [];
555
 
556
- $sites = wp_get_sites( $args );
557
 
558
- if ( empty( $sites ) ) {
559
  return $converted_array;
560
  }
561
 
562
- foreach ( (array) $sites as $key => $site ) {
563
  $obj = new stdClass();
564
- foreach ( $site as $attr => $value ) {
565
  $obj->$attr = $value;
566
  }
567
- $converted_array[ $key ] = $obj;
568
  }
569
 
570
  return $converted_array;
1
  <?php
2
  // Exit if accessed directly
3
+ if( !defined('ABSPATH') ) {
4
  exit;
5
  }
6
 
7
  /**
8
+ * Базовый класс для создания нового плагина. Полную реализацию класса смотрите в Wbcr_Factory449_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_Factory449_Base {
21
 
22
+ use WBCR\Factory_449\Options;
23
 
24
  /**
25
  * Обязательное свойство. Префикс, используется для создания пространство имен.
81
  * https://robin-image-optimizer.webcraftic.com/premium-features.
82
  *
83
  * Это свойство заполняется для того, чтобы в процессе разработки вы могли использовать
84
+ * экземпляр класса \WBCR\Factory_449\Entities\Support, для получения информации о сайте плагина.
85
  * Тем самым вы избавляете себя от жесткого прописывания ссылок на лендинг плагина и
86
  * можете изменить все ссылки в одном месте.
87
  *
127
  * к примеру: freemius, codecanyon, templatemonster, вам нужно указать только настройки для
128
  * взаимодействия с выбранным вами провайдером. Каждая реализация провайдера лицензий может иметь
129
  * индивидуальный настройки, в этом примере приведены настройки для freemius провайдера
130
+ * WBCR\Factory_449\Premium\Provider > WBCR\Factory_Freemius_137\Premium\Provider
131
  *
132
  * На текущий момент существует только реализация для freemius провайдера.
133
  *
177
  * }
178
  */
179
  protected $load_factory_modules = [
180
+ ['libs/factory/bootstrap', 'factory_bootstrap_449', 'admin'],
181
+ ['libs/factory/forms', 'factory_forms_446', 'admin'],
182
+ ['libs/factory/pages', 'factory_pages_448', 'admin'],
183
  ];
184
 
185
  /**
209
 
210
 
211
  /**
212
+ * Экземпляр класса \WBCR\Factory_449\Entities\Support используется для получения информации
213
  * о сайте плагина. Чаще всего используется для получения ссылки на страницу с тарифами или
214
  * ссылки на форму обратной связи. Встроен механизм отслеживания по utm меткам.
215
  *
216
+ * @var \WBCR\Factory_449\Entities\Support
217
  */
218
  protected $support;
219
 
220
  /**
221
+ * Экземпляр класса \WBCR\Factory_449\Entities\Paths используется для получения информации о
222
  * путях плагина. Часто используется для получения путей или ссылок на место хранения плагина
223
  * или его входного файла.
224
  *
225
+ * @var \WBCR\Factory_449\Entities\Paths
226
  */
227
  protected $paths;
228
 
247
  * - Выполняет проверку на обязательные настройки
248
  * - Инициализирует сущности support и paths
249
  *
 
 
 
 
250
  * @param string $plugin_file
251
+ * @param array $data
252
  *
253
  * @throws Exception
254
+ * @since 4.0.8 - добавлена дополнительная логика
255
+ *
256
+ * @since 4.1.1 - добавил две сущности support, paths. Удалил свойства, plugin_build
257
+ * plugin_assembly, main_file, plugin_root, relative_path, plugin_url
258
  */
259
+ public function __construct($plugin_file, $data)
260
+ {
261
  $this->plugin_file = $plugin_file;
262
  $this->plugin_data = $data;
263
 
264
+ foreach((array)$data as $option_name => $option_value) {
265
+ if( property_exists($this, $option_name) ) {
266
  $this->$option_name = $option_value;
267
  }
268
  }
269
 
270
+ if( empty($this->prefix) || empty($this->plugin_name) || empty($this->plugin_title) || empty($this->plugin_version) || empty($this->plugin_text_domain) ) {
271
+ throw new Exception('One of the required attributes has not been passed (prefix, plugin_title, plugin_name, plugin_version, plugin_text_domain).');
272
  }
273
 
274
+ $this->support = new \WBCR\Factory_449\Entities\Support($this->support_details);
275
+ $this->paths = new \WBCR\Factory_449\Entities\Paths($plugin_file);
276
 
277
  // used only in the module 'updates'
278
+ $this->plugin_slug = !empty($this->plugin_name) ? $this->plugin_name : basename($plugin_file);
279
  }
280
 
281
  /**
284
  * добавляем совместимость со старыми плагинами, но при этом выводим предупреждение, что нужно
285
  * обновить некоторые свойства.
286
  *
287
+ * @param string $name Имя свойства класса.
288
  *
289
  * @return mixed
290
  */
291
+ public function __get($name)
292
+ {
293
 
294
  $deprecated_props = [
295
  'plugin_build',
300
  'plugin_url'
301
  ];
302
 
303
+ if( in_array($name, $deprecated_props) ) {
304
  $deprecated_message = 'In version 4.1.1 of the Factory framework, the class properties ';
305
+ $deprecated_message .= '(' . implode(',', $deprecated_props) . ')';
306
  $deprecated_message .= 'have been removed. To get plugin paths, use the new paths property.' . PHP_EOL;
307
 
308
  $backtrace = debug_backtrace();
309
+ if( !empty($backtrace) && isset($backtrace[1]) ) {
310
  $deprecated_message .= 'BACKTRACE:(';
311
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
312
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
314
  $deprecated_message .= ')';
315
  }
316
 
317
+ _deprecated_argument(__METHOD__, '4.1.1', $deprecated_message);
318
 
319
+ switch( $name ) {
320
  case 'plugin_build':
321
  return null;
322
  break;
346
  * по прежнему используют удаленные методы. С помощью этого магического метода мы добавляем совместимость
347
  * со старыми плагинами, но при этом выводим предупреждение, что нужно обновить некоторые методы.
348
  *
349
+ * @param string $name Имя метода класса.
350
+ * @param array $arguments Массив аргументов метода класса.
351
  *
352
  * @return stdClass|null
353
  * @throws Exception
354
  */
355
+ public function __call($name, $arguments)
356
+ {
357
 
358
  $deprecated_methods = [
359
  'getPluginBuild',
361
  'getPluginPathInfo'
362
  ];
363
 
364
+ if( in_array($name, $deprecated_methods) ) {
365
+ $deprecated_message = 'In version 4.1.1 of the Factory framework, methods (' . implode(',', $deprecated_methods) . ') have been removed.';
366
 
367
  $backtrace = debug_backtrace();
368
+ if( !empty($backtrace) && isset($backtrace[1]) ) {
369
  $deprecated_message .= 'BACKTRACE:(';
370
  $deprecated_message .= 'File: ' . $backtrace[1]['file'];
371
  $deprecated_message .= 'Function: ' . $backtrace[1]['function'];
373
  $deprecated_message .= ')';
374
  }
375
 
376
+ _deprecated_argument(__METHOD__, '4.1.1', $deprecated_message);
377
 
378
+ if( 'getPluginPathInfo' == $name ) {
379
  $object = new stdClass;
380
 
381
+ $object->main_file = $this->get_paths()->main_file;
382
+ $object->plugin_root = $this->get_paths()->absolute;
383
  $object->relative_path = $this->get_paths()->basename;
384
+ $object->plugin_url = $this->get_paths()->url;
385
 
386
  return $object;
387
  }
388
  }
389
 
390
+ throw new Exception("Method {$name} does not exist");
391
  }
392
 
393
  /**
394
  * Проверяет, включен ли премиум для этого плагина или нет.
395
  *
396
  * @return bool Возвращает true, если премиум пакет включен для этого плагина.
397
+ * См. Wbcr_Factory449_Base::has_premium
398
  */
399
+ public function has_premium()
400
+ {
401
  return $this->has_premium;
402
  }
403
 
404
  /**
405
  * Позволяет получить заголовок плагина.
406
  *
407
+ * @return string Возвращает заголовок плагина. См. Wbcr_Factory449_Base::plugin_title
408
  */
409
+ public function getPluginTitle()
410
+ {
411
+ return apply_filters('wbcr/factory/plugin_title', $this->plugin_title, $this->getPluginName());
412
  }
413
 
414
  /**
415
  * Позволяет получить префикс плагина.
416
  *
417
+ * @return string Возвращает префикс плагина.См. Wbcr_Factory449_Base::prefix
418
  */
419
+ public function getPrefix()
420
+ {
421
  return $this->prefix;
422
  }
423
 
424
  /**
425
  * Позволяет получить имя плагина.
426
  *
427
+ * @return string Возвращает имя плагина. См. Wbcr_Factory449_Base::plugin_name
428
  */
429
+ public function getPluginName()
430
+ {
431
  return $this->plugin_name;
432
  }
433
 
434
  /**
435
  * Позволяет получить версию плагина.
436
  *
437
+ * @return string Возвращает версию плагина. См. Wbcr_Factory449_Base::plugin_version
438
  */
439
+ public function getPluginVersion()
440
+ {
441
  return $this->plugin_version;
442
  }
443
 
444
  /**
445
  * Позволяет получить список подключаемых к плагином компонентов
446
  *
 
 
447
  * @return array
448
+ * @since 4.2.0
449
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
450
  */
451
+ public function get_load_plugin_components()
452
+ {
453
  return $this->load_plugin_components;
454
  }
455
 
457
  * Предоставляет доступ к сырым данным плагина. Может быть полезен, если вы хотите получить
458
  * какие-то данные не описанные в интерфейсе этого плагина.
459
  *
460
+ * @param string $attr_name Имя атрибута, который нужно получить. Идентично ключу в массиве
461
+ * Wbcr_Factory449_Base::plugin_data
462
  *
463
  * @return null
464
  */
465
+ public function getPluginInfoAttr($attr_name)
466
+ {
467
+ if( isset($this->plugin_data[$attr_name]) ) {
468
+ return $this->plugin_data[$attr_name];
469
  }
470
 
471
  return null;
472
  }
473
 
474
  /**
475
+ * Предоставляет доступ к экземпляру класса \WBCR\Factory_449\Entities\Support.
476
  *
477
+ * @return \WBCR\Factory_449\Entities\Support
478
  */
479
+ public function get_support()
480
+ {
481
  return $this->support;
482
  }
483
 
484
  /**
485
+ * Предоставляет доступ к экземпляру класса \WBCR\Factory_449\Entities\Paths.
486
  *
487
+ * @return \WBCR\Factory_449\Entities\Paths
488
  */
489
+ public function get_paths()
490
+ {
491
  return $this->paths;
492
  }
493
 
494
  /**
495
  * Позволяет получить сырые данные плагина в виде объекта StdClass.
496
  *
497
+ * @return object Возвращает объект с сырыми данными плагина. См. Wbcr_Factory449_Base::plugin_data
498
  */
499
+ public function getPluginInfo()
500
+ {
501
+ return (object)$this->plugin_data;
502
  }
503
 
504
  /**
505
  * Проверяет права пользователя
506
  *
 
 
507
  * @return bool
508
+ * @since 4.2.0 Добавлен
509
+ * @author Alexander Kovalev <alex.kovalevv@gmail.com>
510
  */
511
+ public function current_user_can($capability = 'manage_options')
512
+ {
513
  // Просмотр страниц: read_pages
514
  // Просмотр уведомлений: read_notices
515
  // Редактирование: edit_forms
516
 
517
+ if( 'manage_options' == $capability && is_multisite() && $this->isNetworkActive() ) {
518
  $capability = 'manage_network';
519
  }
520
 
521
+ return current_user_can($capability);
522
  }
523
 
524
  /**
525
  * Проверят, находится ли пользователь в панели усправления сетью сайтов
526
  *
527
+ * @return bool
528
  * @since 4.0.8 Добавлен
529
  *
 
530
  */
531
+ public function isNetworkAdmin()
532
+ {
533
  return is_multisite() && is_network_admin();
534
  }
535
 
536
  /**
537
  * Проверяет активирован ли плагин для сети. Если проект работает в режиме мультисайтов..
538
  *
 
539
  * @return bool Если true, плагин активирован для сети или в текущий момент активируется для сети.
540
+ * @since 4.0.8 Добавлен
541
  */
542
+ public function isNetworkActive()
543
+ {
544
  // Makes sure the plugin is defined before trying to use it
545
+ if( !function_exists('is_plugin_active_for_network') ) {
546
+ require_once(ABSPATH . '/wp-admin/includes/plugin.php');
547
  }
548
 
549
+ $activate = is_plugin_active_for_network($this->get_paths()->basename);
550
 
551
+ if( !$activate && $this->isNetworkAdmin() && isset($_GET['action']) && $_GET['action'] == 'activate' ) {
552
+ return isset($_GET['networkwide']) && 1 == (int)$_GET['networkwide'];
553
  }
554
 
555
  return $activate;
558
  /**
559
  * Позволяет получить все активные сайты сети. Если проект работает в режиме мультисайтов.
560
  *
 
561
  * @return array|int
562
+ * @since 4.0.8
563
  */
564
+ public function getActiveSites($args = ['archived' => 0, 'mature' => 0, 'spam' => 0, 'deleted' => 0])
565
+ {
566
  global $wp_version;
567
 
568
+ if( version_compare($wp_version, '4.6', '>=') ) {
569
+ return get_sites($args);
570
  } else {
571
  $converted_array = [];
572
 
573
+ $sites = wp_get_sites($args);
574
 
575
+ if( empty($sites) ) {
576
  return $converted_array;
577
  }
578
 
579
+ foreach((array)$sites as $key => $site) {
580
  $obj = new stdClass();
581
+ foreach($site as $attr => $value) {
582
  $obj->$attr = $value;
583
  }
584
+ $converted_array[$key] = $obj;
585
  }
586
 
587
  return $converted_array;
libs/factory/core/includes/class-factory-requests.php CHANGED
@@ -11,7 +11,7 @@ if ( ! defined( 'ABSPATH' ) ) {
11
  * @package factory-core
12
  */
13
 
14
- class Wbcr_Factory448_Request {
15
 
16
  /**
17
  * @param null $param
11
  * @package factory-core
12
  */
13
 
14
+ class Wbcr_Factory449_Request {
15
 
16
  /**
17
  * @param null $param
libs/factory/core/includes/class-factory-requirements.php CHANGED
@@ -12,8 +12,8 @@
12
  * @since 4.0.9
13
  */
14
  // @formatter:off
15
- if ( ! class_exists( 'Wbcr_Factory448_Requirements' ) ) {
16
- class Wbcr_Factory448_Requirements {
17
 
18
  /**
19
  * Factory framework version
@@ -242,7 +242,7 @@ if ( ! class_exists( 'Wbcr_Factory448_Requirements' ) ) {
242
  $notice_text = $notice_default_text = '';
243
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
244
 
245
- $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_clearfy_240' ), $this->plugin_title ) . ' ';
246
  $notice_default_text .= __( 'Possible reasons:', '' ) . ' <br>';
247
 
248
  $has_one = false;
@@ -273,21 +273,21 @@ if ( ! class_exists( 'Wbcr_Factory448_Requirements' ) ) {
273
  * @return string
274
  */
275
  protected function get_php_incompat_text() {
276
- return sprintf( __( 'You need to update the PHP version to %s or higher!', 'wbcr_factory_448' ), $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_448' ), $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_448' ), $this->plugin_title );
291
  }
292
  }
293
  }
12
  * @since 4.0.9
13
  */
14
  // @formatter:off
15
+ if ( ! class_exists( 'Wbcr_Factory449_Requirements' ) ) {
16
+ class Wbcr_Factory449_Requirements {
17
 
18
  /**
19
  * Factory framework version
242
  $notice_text = $notice_default_text = '';
243
  $notice_default_text .= '<b>' . $this->plugin_title . ' ' . __( 'warning', '' ) . ':</b>' . '<br>';
244
 
245
+ $notice_default_text .= sprintf( __( 'The %s plugin has stopped.', 'wbcr_factory_templates_101' ), $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_449' ), $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_449' ), $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_449' ), $this->plugin_title );
291
  }
292
  }
293
  }
libs/factory/core/includes/components/class-delete-component-button.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
libs/factory/core/includes/components/class-install-component-button.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
@@ -22,7 +22,7 @@ class Install_Button {
22
 
23
  protected $classes = [
24
  'button',
25
- 'wfactory-448-process-button'
26
  ];
27
  protected $data = [];
28
  protected $base_path;
@@ -37,7 +37,7 @@ class Install_Button {
37
  * @throws \Exception
38
  * @since 4.3.3
39
  */
40
- public function __construct(\Wbcr_Factory448_Plugin $plugin, $type, $plugin_slug)
41
  {
42
  if( empty($type) || !is_string($plugin_slug) ) {
43
  throw new \Exception('Empty type or plugin_slug attribute.');
@@ -67,7 +67,7 @@ class Install_Button {
67
 
68
  // Set default data
69
  $this->add_data('storage', $this->type);
70
- $this->add_data('i18n', \WbcrFactoryClearfy240_Helpers::getEscapeJson($this->get_i18n()));
71
  $this->add_data('wpnonce', wp_create_nonce('updates'));
72
  }
73
 
@@ -420,13 +420,13 @@ class Install_Button {
420
  protected function get_i18n()
421
  {
422
  return [
423
- 'activate' => __('Activate', 'wbcr_factory_448'),
424
- 'install' => __('Install', 'wbcr_factory_448'),
425
- 'deactivate' => __('Deactivate', 'wbcr_factory_448'),
426
- 'delete' => __('Delete', 'wbcr_factory_448'),
427
- 'loading' => __('Please wait...', 'wbcr_factory_448'),
428
- 'preparation' => __('Preparation...', 'wbcr_factory_448'),
429
- 'read' => __('Read more', 'wbcr_factory_448')
430
  ];
431
  }
432
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Components;
4
 
5
  /**
6
  * This file groups the settings for quick setup
22
 
23
  protected $classes = [
24
  'button',
25
+ 'wfactory-449-process-button'
26
  ];
27
  protected $data = [];
28
  protected $base_path;
37
  * @throws \Exception
38
  * @since 4.3.3
39
  */
40
+ public function __construct(\Wbcr_Factory449_Plugin $plugin, $type, $plugin_slug)
41
  {
42
  if( empty($type) || !is_string($plugin_slug) ) {
43
  throw new \Exception('Empty type or plugin_slug attribute.');
67
 
68
  // Set default data
69
  $this->add_data('storage', $this->type);
70
+ $this->add_data('i18n', \WBCR\Factory_Templates_101\Helpers::getEscapeJson($this->get_i18n()));
71
  $this->add_data('wpnonce', wp_create_nonce('updates'));
72
  }
73
 
420
  protected function get_i18n()
421
  {
422
  return [
423
+ 'activate' => __('Activate', 'wbcr_factory_449'),
424
+ 'install' => __('Install', 'wbcr_factory_449'),
425
+ 'deactivate' => __('Deactivate', 'wbcr_factory_449'),
426
+ 'delete' => __('Delete', 'wbcr_factory_449'),
427
+ 'loading' => __('Please wait...', 'wbcr_factory_449'),
428
+ 'preparation' => __('Preparation...', 'wbcr_factory_449'),
429
+ 'read' => __('Read more', 'wbcr_factory_449')
430
  ];
431
  }
432
 
libs/factory/core/includes/entities/class-factory-paths.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
libs/factory/core/includes/entities/class-factory-support.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
libs/factory/core/includes/functions.php CHANGED
@@ -53,17 +53,17 @@ if ( ! function_exists( 'get_user_locale' ) ) {
53
  * @param string $message Optional. A message regarding the change.
54
  *
55
  * @return mixed
56
- * @see wbcr_factory_448_deprecated_hook()
57
  *
58
  */
59
- function wbcr_factory_448_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_448_deprecated_hook( $tag, $version, $replacement, $message );
67
 
68
  return apply_filters_ref_array( $tag, $args );
69
  }
@@ -89,7 +89,7 @@ function wbcr_factory_448_apply_filters_deprecated( $tag, $args, $version, $repl
89
  * @see _deprecated_hook()
90
  *
91
  */
92
- function wbcr_factory_448_do_action_deprecated( $tag, $args, $version, $replacement = false, $message = null ) {
93
  if ( function_exists( 'do_action_deprecated' ) ) {
94
  do_action_deprecated( $tag, $args, $version, $replacement, $message );
95
 
@@ -98,14 +98,14 @@ function wbcr_factory_448_do_action_deprecated( $tag, $args, $version, $replacem
98
  if ( ! has_action( $tag ) ) {
99
  return;
100
  }
101
- wbcr_factory_448_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_448_deprecated_hook_run' action to get the backtrace describing where the
109
  * deprecated hook was called.
110
  *
111
  * Default behavior is to trigger a user error if WP_DEBUG is true.
@@ -123,7 +123,7 @@ function wbcr_factory_448_do_action_deprecated( $tag, $args, $version, $replacem
123
  * @param string $replacement Optional. The hook that should have been used.
124
  * @param string $message Optional. A message regarding the change.
125
  */
126
- function wbcr_factory_448_deprecated_hook( $hook, $version, $replacement = null, $message = null ) {
127
  /**
128
  * Fires when a deprecated hook is called.
129
  *
53
  * @param string $message Optional. A message regarding the change.
54
  *
55
  * @return mixed
56
+ * @see wbcr_factory_449_deprecated_hook()
57
  *
58
  */
59
+ function wbcr_factory_449_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_449_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_449_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_449_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_449_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_449_deprecated_hook( $hook, $version, $replacement = null, $message = null ) {
127
  /**
128
  * Fires when a deprecated hook is called.
129
  *
libs/factory/core/includes/premium/class-factory-license-interface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Premium\Interfaces;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Premium\Interfaces;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
libs/factory/core/includes/premium/class-factory-manager.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Premium;
4
 
5
  use Exception;
6
- use Wbcr_Factory448_Plugin;
7
 
8
  // Exit if accessed directly
9
  if ( ! defined( 'ABSPATH' ) ) {
@@ -24,7 +24,7 @@ class Manager {
24
  public static $providers;
25
 
26
  /**
27
- * @var Wbcr_Factory448_Plugin
28
  */
29
  protected $plugin;
30
 
@@ -36,24 +36,24 @@ class Manager {
36
  /**
37
  * Manager constructor.
38
  *
39
- * @param Wbcr_Factory448_Plugin $plugin
40
  * @param array $settings
41
  *
42
  * @throws Exception
43
  */
44
- public function __construct( Wbcr_Factory448_Plugin $plugin, array $settings ) {
45
  $this->plugin = $plugin;
46
  $this->settings = $settings;
47
  }
48
 
49
  /**
50
- * @param Wbcr_Factory448_Plugin $plugin
51
  * @param array $settings
52
  *
53
- * @return \WBCR\Factory_Freemius_136\Premium\Provider
54
  * @throws Exception
55
  */
56
- public static function instance( Wbcr_Factory448_Plugin $plugin, array $settings ) {
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\Factory_Freemius_136\Premium\Provider
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\Factory_448\Premium\Provider interface!" );
74
  }
75
 
76
  return new self::$providers[ $provider_name ]( $this->plugin, $this->settings );
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Premium;
4
 
5
  use Exception;
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  // Exit if accessed directly
9
  if ( ! defined( 'ABSPATH' ) ) {
24
  public static $providers;
25
 
26
  /**
27
+ * @var Wbcr_Factory449_Plugin
28
  */
29
  protected $plugin;
30
 
36
  /**
37
  * Manager constructor.
38
  *
39
+ * @param Wbcr_Factory449_Plugin $plugin
40
  * @param array $settings
41
  *
42
  * @throws Exception
43
  */
44
+ public function __construct( Wbcr_Factory449_Plugin $plugin, array $settings ) {
45
  $this->plugin = $plugin;
46
  $this->settings = $settings;
47
  }
48
 
49
  /**
50
+ * @param Wbcr_Factory449_Plugin $plugin
51
  * @param array $settings
52
  *
53
+ * @return \WBCR\Factory_Freemius_137\Premium\Provider
54
  * @throws Exception
55
  */
56
+ public static function instance( Wbcr_Factory449_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_137\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_449\Premium\Provider interface!" );
74
  }
75
 
76
  return new self::$providers[ $provider_name ]( $this->plugin, $this->settings );
libs/factory/core/includes/premium/class-factory-provider-abstract.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Premium;
4
 
5
  use Exception;
6
- use Wbcr_Factory448_Plugin;
7
 
8
  // Exit if accessed directly
9
  if( !defined('ABSPATH') ) {
@@ -21,7 +21,7 @@ if( !defined('ABSPATH') ) {
21
  abstract class Provider {
22
 
23
  /**
24
- * @var Wbcr_Factory448_Plugin
25
  */
26
  protected $plugin;
27
 
@@ -38,10 +38,10 @@ abstract class Provider {
38
  /**
39
  * Provider constructor.
40
  *
41
- * @param Wbcr_Factory448_Plugin $plugin
42
  * @param array $settings
43
  */
44
- public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings)
45
  {
46
  $this->plugin = $plugin;
47
  $this->settings = $settings;
@@ -244,7 +244,7 @@ abstract class Provider {
244
  abstract public function get_billing_cycle();
245
 
246
  /**
247
- * @return \WBCR\Factory_448\Premium\Interfaces\License
248
  */
249
  abstract public function get_license();
250
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Premium;
4
 
5
  use Exception;
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  // Exit if accessed directly
9
  if( !defined('ABSPATH') ) {
21
  abstract class Provider {
22
 
23
  /**
24
+ * @var Wbcr_Factory449_Plugin
25
  */
26
  protected $plugin;
27
 
38
  /**
39
  * Provider constructor.
40
  *
41
+ * @param Wbcr_Factory449_Plugin $plugin
42
  * @param array $settings
43
  */
44
+ public function __construct(Wbcr_Factory449_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_449\Premium\Interfaces\License
248
  */
249
  abstract public function get_license();
250
 
libs/factory/core/includes/updates/class-factory-premium-upgrader.php CHANGED
@@ -1,12 +1,12 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Updates;
4
 
5
  use Exception;
6
  use Plugin_Installer_Skin;
7
  use Plugin_Upgrader;
8
- use Wbcr_Factory448_Plugin;
9
- use Wbcr_FactoryPages447_ImpressiveThemplate;
10
  use WP_Filesystem_Base;
11
  use WP_Upgrader;
12
  use WP_Upgrader_Skin;
@@ -45,13 +45,13 @@ class Premium_Upgrader extends Upgrader {
45
  * @param $args
46
  * @param bool $is_premium
47
  *
48
- * @param Wbcr_Factory448_Plugin $plugin
49
  *
50
  * @throws Exception
51
  * @since 4.1.1
52
  *
53
  */
54
- public function __construct(Wbcr_Factory448_Plugin $plugin)
55
  {
56
  parent::__construct($plugin);
57
 
@@ -242,9 +242,9 @@ class Premium_Upgrader extends Upgrader {
242
  /**
243
  * Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
244
  *
245
- * @param Wbcr_FactoryPages447_ImpressiveThemplate $obj
246
  *
247
- * @param Wbcr_Factory448_Plugin $plugin
248
  *
249
  * @return void
250
  * @since 4.1.1
@@ -809,12 +809,12 @@ class Premium_Upgrader extends Upgrader {
809
  $cancel_license_url = $this->get_action_url('cancel_license');
810
 
811
  $texts = [
812
- 'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', 'wbcr_factory_448'),
813
- 'need_renew_license' => __('Your license has expired. You can no longer get premium plugin updates, premium support and your access to Webcraftic services has been suspended.', 'wbcr_factory_448'),
814
  'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
815
- <a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_448'), $upgrade_url, $cancel_license_url),
816
  'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
817
- <a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_448'), $activate_plugin_url, $cancel_license_url)
818
  ];
819
 
820
  if( isset($texts[$type]) ) {
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Updates;
4
 
5
  use Exception;
6
  use Plugin_Installer_Skin;
7
  use Plugin_Upgrader;
8
+ use Wbcr_Factory449_Plugin;
9
+ use Wbcr_FactoryPages448_ImpressiveThemplate;
10
  use WP_Filesystem_Base;
11
  use WP_Upgrader;
12
  use WP_Upgrader_Skin;
45
  * @param $args
46
  * @param bool $is_premium
47
  *
48
+ * @param Wbcr_Factory449_Plugin $plugin
49
  *
50
  * @throws Exception
51
  * @since 4.1.1
52
  *
53
  */
54
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
55
  {
56
  parent::__construct($plugin);
57
 
242
  /**
243
  * Выводит уведомление внутри интерфейса плагина, на всех страницах плагина.
244
  *
245
+ * @param Wbcr_FactoryPages448_ImpressiveThemplate $obj
246
  *
247
+ * @param Wbcr_Factory449_Plugin $plugin
248
  *
249
  * @return void
250
  * @since 4.1.1
809
  $cancel_license_url = $this->get_action_url('cancel_license');
810
 
811
  $texts = [
812
+ 'need_activate_license' => __('License activation required. A license is required to get premium plugin updates, as well as to get additional services.', 'wbcr_factory_449'),
813
+ 'need_renew_license' => __('Your license has expired. You can no longer get premium plugin updates, premium support and your access to Webcraftic services has been suspended.', 'wbcr_factory_449'),
814
  'please_install_premium' => sprintf(__('Congratulations, you have activated a premium license! Please install premium add-on to use pro features now.
815
+ <a href="%s">Install</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_449'), $upgrade_url, $cancel_license_url),
816
  'please_activate_premium' => sprintf(__('Congratulations, you have activated a premium license! Please activate premium add-on to use pro features now.
817
+ <a href="%s">Activate</a> premium add-on or <a href="%s">cancel</a> license.', 'wbcr_factory_449'), $activate_plugin_url, $cancel_license_url)
818
  ];
819
 
820
  if( isset($texts[$type]) ) {
libs/factory/core/includes/updates/class-factory-upgrader.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Updates;
4
 
5
  use Exception;
6
  use stdClass;
7
- use Wbcr_Factory448_Plugin;
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\Factory_Freemius_136\Updates\Freemius_Repository',
32
- * 'freemius' => '\WBCR\Factory_448\Updates\Wordpress_Repository'
33
  * ]
34
  */
35
  public static $repositories = [];
@@ -42,7 +42,7 @@ class Upgrader {
42
  protected $type = 'default';
43
 
44
  /**
45
- * @var Wbcr_Factory448_Plugin
46
  */
47
  protected $plugin;
48
 
@@ -88,7 +88,7 @@ class Upgrader {
88
  /**
89
  * Manager constructor.
90
  *
91
- * @param Wbcr_Factory448_Plugin $plugin
92
  * @param $args
93
  * @param bool $is_premium
94
  *
@@ -96,7 +96,7 @@ class Upgrader {
96
  * @since 4.1.1
97
  *
98
  */
99
- public function __construct(Wbcr_Factory448_Plugin $plugin)
100
  {
101
 
102
  $this->plugin = $plugin;
@@ -107,8 +107,8 @@ class Upgrader {
107
  $this->is_debug = defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG;
108
 
109
  # Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
110
- self::$repositories['wordpress'] = '\WBCR\Factory_448\Updates\Wordpress_Repository';
111
- self::$repositories['github'] = '\WBCR\Factory_448\Updates\Github_Repository';
112
 
113
  $settings = $this->get_settings();
114
 
@@ -298,7 +298,7 @@ class Upgrader {
298
 
299
  if( isset(self::$repositories[$repository_name]) && class_exists(self::$repositories[$repository_name]) ) {
300
  if( self::$repositories[$repository_name] instanceof Repository ) {
301
- throw new Exception("Repository {$repository_name} must extend the class WBCR\Factory_448\Updates\Repository interface!");
302
  }
303
 
304
  return new self::$repositories[$repository_name]($this->plugin, $this->get_settings());
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Updates;
4
 
5
  use Exception;
6
  use stdClass;
7
+ use Wbcr_Factory449_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_137\Updates\Freemius_Repository',
32
+ * 'freemius' => '\WBCR\Factory_449\Updates\Wordpress_Repository'
33
  * ]
34
  */
35
  public static $repositories = [];
42
  protected $type = 'default';
43
 
44
  /**
45
+ * @var Wbcr_Factory449_Plugin
46
  */
47
  protected $plugin;
48
 
88
  /**
89
  * Manager constructor.
90
  *
91
+ * @param Wbcr_Factory449_Plugin $plugin
92
  * @param $args
93
  * @param bool $is_premium
94
  *
96
  * @since 4.1.1
97
  *
98
  */
99
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
100
  {
101
 
102
  $this->plugin = $plugin;
107
  $this->is_debug = defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG;
108
 
109
  # Добавляем Wordpress репозиторий в список доступных репозиториев по умолчанию
110
+ self::$repositories['wordpress'] = '\WBCR\Factory_449\Updates\Wordpress_Repository';
111
+ self::$repositories['github'] = '\WBCR\Factory_449\Updates\Github_Repository';
112
 
113
  $settings = $this->get_settings();
114
 
298
 
299
  if( isset(self::$repositories[$repository_name]) && class_exists(self::$repositories[$repository_name]) ) {
300
  if( self::$repositories[$repository_name] instanceof Repository ) {
301
+ throw new Exception("Repository {$repository_name} must extend the class WBCR\Factory_449\Updates\Repository interface!");
302
  }
303
 
304
  return new self::$repositories[$repository_name]($this->plugin, $this->get_settings());
libs/factory/core/includes/updates/repositories/class-factory-github.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory448_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -57,11 +57,11 @@ class Github_Repository extends Repository {
57
  /**
58
  * Wordpress constructor.
59
  *
60
- * @param Wbcr_Factory448_Plugin $plugin
61
  * @param bool $is_premium
62
  * @since 4.4.1
63
  */
64
- public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings = [])
65
  {
66
  $settings = wp_parse_args($settings, [
67
  'github_username' => '',
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
57
  /**
58
  * Wordpress constructor.
59
  *
60
+ * @param Wbcr_Factory449_Plugin $plugin
61
  * @param bool $is_premium
62
  * @since 4.4.1
63
  */
64
+ public function __construct(Wbcr_Factory449_Plugin $plugin, array $settings = [])
65
  {
66
  $settings = wp_parse_args($settings, [
67
  'github_username' => '',
libs/factory/core/includes/updates/repositories/class-factory-repository-abstract.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory448_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -23,17 +23,17 @@ abstract class Repository {
23
  protected $initialized = false;
24
 
25
  /**
26
- * @var Wbcr_Factory448_Plugin
27
  */
28
  protected $plugin;
29
 
30
  /**
31
  * Repository constructor.
32
  *
33
- * @param Wbcr_Factory448_Plugin $plugin
34
  * @param array $settings
35
  */
36
- abstract public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings = []);
37
 
38
  /**
39
  * @return void
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
23
  protected $initialized = false;
24
 
25
  /**
26
+ * @var Wbcr_Factory449_Plugin
27
  */
28
  protected $plugin;
29
 
30
  /**
31
  * Repository constructor.
32
  *
33
+ * @param Wbcr_Factory449_Plugin $plugin
34
  * @param array $settings
35
  */
36
+ abstract public function __construct(Wbcr_Factory449_Plugin $plugin, array $settings = []);
37
 
38
  /**
39
  * @return void
libs/factory/core/includes/updates/repositories/class-factory-wordpress.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_448\Updates;
4
 
5
  // Exit if accessed directly
6
- use Wbcr_Factory448_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
@@ -20,10 +20,10 @@ class Wordpress_Repository extends Repository {
20
  /**
21
  * Wordpress constructor.
22
  *
23
- * @param Wbcr_Factory448_Plugin $plugin
24
  * @param array $settings
25
  */
26
- public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings = [])
27
  {
28
  $this->plugin = $plugin;
29
  }
1
  <?php
2
 
3
+ namespace WBCR\Factory_449\Updates;
4
 
5
  // Exit if accessed directly
6
+ use Wbcr_Factory449_Plugin;
7
 
8
  if( !defined('ABSPATH') ) {
9
  exit;
20
  /**
21
  * Wordpress constructor.
22
  *
23
+ * @param Wbcr_Factory449_Plugin $plugin
24
  * @param array $settings
25
  */
26
+ public function __construct(Wbcr_Factory449_Plugin $plugin, array $settings = [])
27
  {
28
  $this->plugin = $plugin;
29
  }
libs/factory/core/langs/{wbcr_factory_448-ru_RU.mo → wbcr_factory_449-ru_RU.mo} RENAMED
File without changes
libs/factory/core/langs/{wbcr_factory_448-ru_RU.po → wbcr_factory_449-ru_RU.po} RENAMED
File without changes
libs/factory/forms/boot.php CHANGED
@@ -22,175 +22,175 @@ if( !is_admin() ) {
22
 
23
  // checks if the module is already loaded in order to
24
  // prevent loading the same version of the module twice.
25
- if( defined('FACTORY_FORMS_445_LOADED') ) {
26
  return;
27
  }
28
 
29
- define('FACTORY_FORMS_445_LOADED', true);
30
 
31
- define('FACTORY_FORMS_445_VERSION', '4.4.5');
32
 
33
  // absolute path and URL to the files and resources of the module.
34
- define('FACTORY_FORMS_445_DIR', dirname(__FILE__));
35
- define('FACTORY_FORMS_445_URL', plugins_url(null, __FILE__));
36
 
37
  #comp merge
38
- require_once(FACTORY_FORMS_445_DIR . '/includes/providers/value-provider.interface.php');
39
- require_once(FACTORY_FORMS_445_DIR . '/includes/providers/meta-value-provider.class.php');
40
- require_once(FACTORY_FORMS_445_DIR . '/includes/providers/options-value-provider.class.php');
41
 
42
- require_once(FACTORY_FORMS_445_DIR . '/includes/form.class.php');
43
  #endcomp
44
 
45
- load_plugin_textdomain('wbcr_factory_forms_445', 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_445_register_controls' hook
53
  *
54
  */
55
- if( !function_exists('wbcr_factory_forms_445_register_default_controls') ) {
56
 
57
  /**
58
- * @param Wbcr_Factory448_Plugin $plugin
59
  *
60
  * @throws Exception
61
  */
62
- function wbcr_factory_forms_445_register_default_controls(Wbcr_Factory448_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_445_DIR . '/includes/html-builder.class.php');
70
- require_once(FACTORY_FORMS_445_DIR . '/includes/form-element.class.php');
71
- require_once(FACTORY_FORMS_445_DIR . '/includes/control.class.php');
72
- require_once(FACTORY_FORMS_445_DIR . '/includes/complex-control.class.php');
73
- require_once(FACTORY_FORMS_445_DIR . '/includes/holder.class.php');
74
- require_once(FACTORY_FORMS_445_DIR . '/includes/control-holder.class.php');
75
- require_once(FACTORY_FORMS_445_DIR . '/includes/custom-element.class.php');
76
- require_once(FACTORY_FORMS_445_DIR . '/includes/form-layout.class.php');
77
 
78
  // registration of controls
79
  $plugin->forms->registerControls([
80
  [
81
  'type' => 'checkbox',
82
- 'class' => 'Wbcr_FactoryForms445_CheckboxControl',
83
- 'include' => FACTORY_FORMS_445_DIR . '/controls/checkbox.php'
84
  ],
85
  [
86
  'type' => 'list',
87
- 'class' => 'Wbcr_FactoryForms445_ListControl',
88
- 'include' => FACTORY_FORMS_445_DIR . '/controls/list.php'
89
  ],
90
  [
91
  'type' => 'dropdown',
92
- 'class' => 'Wbcr_FactoryForms445_DropdownControl',
93
- 'include' => FACTORY_FORMS_445_DIR . '/controls/dropdown.php'
94
  ],
95
  [
96
  'type' => 'dropdown-and-colors',
97
- 'class' => 'Wbcr_FactoryForms445_DropdownAndColorsControl',
98
- 'include' => FACTORY_FORMS_445_DIR . '/controls/dropdown-and-colors.php'
99
  ],
100
  [
101
  'type' => 'hidden',
102
- 'class' => 'Wbcr_FactoryForms445_HiddenControl',
103
- 'include' => FACTORY_FORMS_445_DIR . '/controls/hidden.php'
104
  ],
105
  [
106
  'type' => 'hidden',
107
- 'class' => 'Wbcr_FactoryForms445_HiddenControl',
108
- 'include' => FACTORY_FORMS_445_DIR . '/controls/hidden.php'
109
  ],
110
  [
111
  'type' => 'radio',
112
- 'class' => 'Wbcr_FactoryForms445_RadioControl',
113
- 'include' => FACTORY_FORMS_445_DIR . '/controls/radio.php'
114
  ],
115
  [
116
  'type' => 'radio-colors',
117
- 'class' => 'Wbcr_FactoryForms445_RadioColorsControl',
118
- 'include' => FACTORY_FORMS_445_DIR . '/controls/radio-colors.php'
119
  ],
120
  [
121
  'type' => 'textarea',
122
- 'class' => 'Wbcr_FactoryForms445_TextareaControl',
123
- 'include' => FACTORY_FORMS_445_DIR . '/controls/textarea.php'
124
  ],
125
  [
126
  'type' => 'textbox',
127
- 'class' => 'Wbcr_FactoryForms445_TextboxControl',
128
- 'include' => FACTORY_FORMS_445_DIR . '/controls/textbox.php'
129
  ],
130
  [
131
  'type' => 'multiple-textbox',
132
- 'class' => 'Wbcr_FactoryForms445_MultipleTextboxControl',
133
- 'include' => FACTORY_FORMS_445_DIR . '/controls/multiple-textbox.php'
134
  ],
135
  [
136
  'type' => 'datetimepicker-range',
137
- 'class' => 'Wbcr_FactoryForms445_DatepickerRangeControl',
138
- 'include' => FACTORY_FORMS_445_DIR . '/controls/datepicker-range.php'
139
  ],
140
  [
141
  'type' => 'url',
142
- 'class' => 'Wbcr_FactoryForms445_UrlControl',
143
- 'include' => FACTORY_FORMS_445_DIR . '/controls/url.php'
144
  ],
145
  [
146
  'type' => 'wp-editor',
147
- 'class' => 'Wbcr_FactoryForms445_WpEditorControl',
148
- 'include' => FACTORY_FORMS_445_DIR . '/controls/wp-editor.php'
149
  ],
150
  [
151
  'type' => 'color',
152
- 'class' => 'Wbcr_FactoryForms445_ColorControl',
153
- 'include' => FACTORY_FORMS_445_DIR . '/controls/color.php'
154
  ],
155
  [
156
  'type' => 'color-and-opacity',
157
- 'class' => 'Wbcr_FactoryForms445_ColorAndOpacityControl',
158
- 'include' => FACTORY_FORMS_445_DIR . '/controls/color-and-opacity.php'
159
  ],
160
  [
161
  'type' => 'gradient',
162
- 'class' => 'Wbcr_FactoryForms445_GradientControl',
163
- 'include' => FACTORY_FORMS_445_DIR . '/controls/gradient.php'
164
  ],
165
  [
166
  'type' => 'font',
167
- 'class' => 'Wbcr_FactoryForms445_FontControl',
168
- 'include' => FACTORY_FORMS_445_DIR . '/controls/font.php'
169
  ],
170
  [
171
  'type' => 'google-font',
172
- 'class' => 'Wbcr_FactoryForms445_GoogleFontControl',
173
- 'include' => FACTORY_FORMS_445_DIR . '/controls/google-font.php'
174
  ],
175
  [
176
  'type' => 'pattern',
177
- 'class' => 'Wbcr_FactoryForms445_PatternControl',
178
- 'include' => FACTORY_FORMS_445_DIR . '/controls/pattern.php'
179
  ],
180
  [
181
  'type' => 'integer',
182
- 'class' => 'Wbcr_FactoryForms445_IntegerControl',
183
- 'include' => FACTORY_FORMS_445_DIR . '/controls/integer.php'
184
  ],
185
  [
186
  'type' => 'control-group',
187
- 'class' => 'Wbcr_FactoryForms445_ControlGroupHolder',
188
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/control-group.php'
189
  ],
190
  [
191
  'type' => 'paddings-editor',
192
- 'class' => 'Wbcr_FactoryForms445_PaddingsEditorControl',
193
- 'include' => FACTORY_FORMS_445_DIR . '/controls/paddings-editor.php'
194
  ],
195
  ]);
196
 
@@ -198,53 +198,53 @@ if( !function_exists('wbcr_factory_forms_445_register_default_controls') ) {
198
  $plugin->forms->registerHolders([
199
  [
200
  'type' => 'tab',
201
- 'class' => 'Wbcr_FactoryForms445_TabHolder',
202
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/tab.php'
203
  ],
204
  [
205
  'type' => 'tab-item',
206
- 'class' => 'Wbcr_FactoryForms445_TabItemHolder',
207
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/tab-item.php'
208
  ],
209
  [
210
  'type' => 'accordion',
211
- 'class' => 'Wbcr_FactoryForms445_AccordionHolder',
212
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/accordion.php'
213
  ],
214
  [
215
  'type' => 'accordion-item',
216
- 'class' => 'Wbcr_FactoryForms445_AccordionItemHolder',
217
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/accordion-item.php'
218
  ],
219
  [
220
  'type' => 'control-group',
221
- 'class' => 'Wbcr_FactoryForms445_ControlGroupHolder',
222
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/control-group.php'
223
  ],
224
  [
225
  'type' => 'control-group-item',
226
- 'class' => 'Wbcr_FactoryForms445_ControlGroupItem',
227
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/control-group-item.php'
228
  ],
229
  [
230
  'type' => 'form-group',
231
- 'class' => 'Wbcr_FactoryForms445_FormGroupHolder',
232
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/form-group.php'
233
  ],
234
  [
235
  'type' => 'more-link',
236
- 'class' => 'Wbcr_FactoryForms445_MoreLinkHolder',
237
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/more-link.php'
238
  ],
239
  [
240
  'type' => 'div',
241
- 'class' => 'Wbcr_FactoryForms445_DivHolder',
242
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/div.php'
243
  ],
244
  [
245
  'type' => 'columns',
246
- 'class' => 'Wbcr_FactoryForms445_ColumnsHolder',
247
- 'include' => FACTORY_FORMS_445_DIR . '/controls/holders/columns.php'
248
  ]
249
  ]);
250
 
@@ -252,23 +252,23 @@ if( !function_exists('wbcr_factory_forms_445_register_default_controls') ) {
252
  $plugin->forms->registerCustomElements([
253
  [
254
  'type' => 'html',
255
- 'class' => 'Wbcr_FactoryForms445_Html',
256
- 'include' => FACTORY_FORMS_445_DIR . '/controls/customs/html.php',
257
  ],
258
  [
259
  'type' => 'separator',
260
- 'class' => 'Wbcr_FactoryForms445_Separator',
261
- 'include' => FACTORY_FORMS_445_DIR . '/controls/customs/separator.php',
262
  ],
263
  ]);
264
 
265
  // registration of form layouts
266
  $plugin->forms->registerFormLayout([
267
  'name' => 'bootstrap-3',
268
- 'class' => 'Wbcr_FactoryForms445_Bootstrap3FormLayout',
269
- 'include' => FACTORY_FORMS_445_DIR . '/layouts/bootstrap-3/bootstrap-3.php'
270
  ]);
271
  }
272
 
273
- add_action('wbcr_factory_forms_445_register_controls', 'wbcr_factory_forms_445_register_default_controls');
274
  }
22
 
23
  // checks if the module is already loaded in order to
24
  // prevent loading the same version of the module twice.
25
+ if( defined('FACTORY_FORMS_446_LOADED') ) {
26
  return;
27
  }
28
 
29
+ define('FACTORY_FORMS_446_LOADED', true);
30
 
31
+ define('FACTORY_FORMS_446_VERSION', '4.4.6');
32
 
33
  // absolute path and URL to the files and resources of the module.
34
+ define('FACTORY_FORMS_446_DIR', dirname(__FILE__));
35
+ define('FACTORY_FORMS_446_URL', plugins_url(null, __FILE__));
36
 
37
  #comp merge
38
+ require_once(FACTORY_FORMS_446_DIR . '/includes/providers/value-provider.interface.php');
39
+ require_once(FACTORY_FORMS_446_DIR . '/includes/providers/meta-value-provider.class.php');
40
+ require_once(FACTORY_FORMS_446_DIR . '/includes/providers/options-value-provider.class.php');
41
 
42
+ require_once(FACTORY_FORMS_446_DIR . '/includes/form.class.php');
43
  #endcomp
44
 
45
+ load_plugin_textdomain('wbcr_factory_forms_446', 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_446_register_controls' hook
53
  *
54
  */
55
+ if( !function_exists('wbcr_factory_forms_446_register_default_controls') ) {
56
 
57
  /**
58
+ * @param Wbcr_Factory449_Plugin $plugin
59
  *
60
  * @throws Exception
61
  */
62
+ function wbcr_factory_forms_446_register_default_controls(Wbcr_Factory449_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_446_DIR . '/includes/html-builder.class.php');
70
+ require_once(FACTORY_FORMS_446_DIR . '/includes/form-element.class.php');
71
+ require_once(FACTORY_FORMS_446_DIR . '/includes/control.class.php');
72
+ require_once(FACTORY_FORMS_446_DIR . '/includes/complex-control.class.php');
73
+ require_once(FACTORY_FORMS_446_DIR . '/includes/holder.class.php');
74
+ require_once(FACTORY_FORMS_446_DIR . '/includes/control-holder.class.php');
75
+ require_once(FACTORY_FORMS_446_DIR . '/includes/custom-element.class.php');
76
+ require_once(FACTORY_FORMS_446_DIR . '/includes/form-layout.class.php');
77
 
78
  // registration of controls
79
  $plugin->forms->registerControls([
80
  [
81
  'type' => 'checkbox',
82
+ 'class' => 'Wbcr_FactoryForms446_CheckboxControl',
83
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/checkbox.php'
84
  ],
85
  [
86
  'type' => 'list',
87
+ 'class' => 'Wbcr_FactoryForms446_ListControl',
88
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/list.php'
89
  ],
90
  [
91
  'type' => 'dropdown',
92
+ 'class' => 'Wbcr_FactoryForms446_DropdownControl',
93
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/dropdown.php'
94
  ],
95
  [
96
  'type' => 'dropdown-and-colors',
97
+ 'class' => 'Wbcr_FactoryForms446_DropdownAndColorsControl',
98
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/dropdown-and-colors.php'
99
  ],
100
  [
101
  'type' => 'hidden',
102
+ 'class' => 'Wbcr_FactoryForms446_HiddenControl',
103
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/hidden.php'
104
  ],
105
  [
106
  'type' => 'hidden',
107
+ 'class' => 'Wbcr_FactoryForms446_HiddenControl',
108
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/hidden.php'
109
  ],
110
  [
111
  'type' => 'radio',
112
+ 'class' => 'Wbcr_FactoryForms446_RadioControl',
113
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/radio.php'
114
  ],
115
  [
116
  'type' => 'radio-colors',
117
+ 'class' => 'Wbcr_FactoryForms446_RadioColorsControl',
118
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/radio-colors.php'
119
  ],
120
  [
121
  'type' => 'textarea',
122
+ 'class' => 'Wbcr_FactoryForms446_TextareaControl',
123
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/textarea.php'
124
  ],
125
  [
126
  'type' => 'textbox',
127
+ 'class' => 'Wbcr_FactoryForms446_TextboxControl',
128
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/textbox.php'
129
  ],
130
  [
131
  'type' => 'multiple-textbox',
132
+ 'class' => 'Wbcr_FactoryForms446_MultipleTextboxControl',
133
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/multiple-textbox.php'
134
  ],
135
  [
136
  'type' => 'datetimepicker-range',
137
+ 'class' => 'Wbcr_FactoryForms446_DatepickerRangeControl',
138
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/datepicker-range.php'
139
  ],
140
  [
141
  'type' => 'url',
142
+ 'class' => 'Wbcr_FactoryForms446_UrlControl',
143
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/url.php'
144
  ],
145
  [
146
  'type' => 'wp-editor',
147
+ 'class' => 'Wbcr_FactoryForms446_WpEditorControl',
148
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/wp-editor.php'
149
  ],
150
  [
151
  'type' => 'color',
152
+ 'class' => 'Wbcr_FactoryForms446_ColorControl',
153
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/color.php'
154
  ],
155
  [
156
  'type' => 'color-and-opacity',
157
+ 'class' => 'Wbcr_FactoryForms446_ColorAndOpacityControl',
158
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/color-and-opacity.php'
159
  ],
160
  [
161
  'type' => 'gradient',
162
+ 'class' => 'Wbcr_FactoryForms446_GradientControl',
163
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/gradient.php'
164
  ],
165
  [
166
  'type' => 'font',
167
+ 'class' => 'Wbcr_FactoryForms446_FontControl',
168
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/font.php'
169
  ],
170
  [
171
  'type' => 'google-font',
172
+ 'class' => 'Wbcr_FactoryForms446_GoogleFontControl',
173
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/google-font.php'
174
  ],
175
  [
176
  'type' => 'pattern',
177
+ 'class' => 'Wbcr_FactoryForms446_PatternControl',
178
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/pattern.php'
179
  ],
180
  [
181
  'type' => 'integer',
182
+ 'class' => 'Wbcr_FactoryForms446_IntegerControl',
183
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/integer.php'
184
  ],
185
  [
186
  'type' => 'control-group',
187
+ 'class' => 'Wbcr_FactoryForms446_ControlGroupHolder',
188
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/control-group.php'
189
  ],
190
  [
191
  'type' => 'paddings-editor',
192
+ 'class' => 'Wbcr_FactoryForms446_PaddingsEditorControl',
193
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/paddings-editor.php'
194
  ],
195
  ]);
196
 
198
  $plugin->forms->registerHolders([
199
  [
200
  'type' => 'tab',
201
+ 'class' => 'Wbcr_FactoryForms446_TabHolder',
202
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/tab.php'
203
  ],
204
  [
205
  'type' => 'tab-item',
206
+ 'class' => 'Wbcr_FactoryForms446_TabItemHolder',
207
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/tab-item.php'
208
  ],
209
  [
210
  'type' => 'accordion',
211
+ 'class' => 'Wbcr_FactoryForms446_AccordionHolder',
212
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/accordion.php'
213
  ],
214
  [
215
  'type' => 'accordion-item',
216
+ 'class' => 'Wbcr_FactoryForms446_AccordionItemHolder',
217
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/accordion-item.php'
218
  ],
219
  [
220
  'type' => 'control-group',
221
+ 'class' => 'Wbcr_FactoryForms446_ControlGroupHolder',
222
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/control-group.php'
223
  ],
224
  [
225
  'type' => 'control-group-item',
226
+ 'class' => 'Wbcr_FactoryForms446_ControlGroupItem',
227
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/control-group-item.php'
228
  ],
229
  [
230
  'type' => 'form-group',
231
+ 'class' => 'Wbcr_FactoryForms446_FormGroupHolder',
232
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/form-group.php'
233
  ],
234
  [
235
  'type' => 'more-link',
236
+ 'class' => 'Wbcr_FactoryForms446_MoreLinkHolder',
237
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/more-link.php'
238
  ],
239
  [
240
  'type' => 'div',
241
+ 'class' => 'Wbcr_FactoryForms446_DivHolder',
242
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/div.php'
243
  ],
244
  [
245
  'type' => 'columns',
246
+ 'class' => 'Wbcr_FactoryForms446_ColumnsHolder',
247
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/holders/columns.php'
248
  ]
249
  ]);
250
 
252
  $plugin->forms->registerCustomElements([
253
  [
254
  'type' => 'html',
255
+ 'class' => 'Wbcr_FactoryForms446_Html',
256
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/customs/html.php',
257
  ],
258
  [
259
  'type' => 'separator',
260
+ 'class' => 'Wbcr_FactoryForms446_Separator',
261
+ 'include' => FACTORY_FORMS_446_DIR . '/controls/customs/separator.php',
262
  ],
263
  ]);
264
 
265
  // registration of form layouts
266
  $plugin->forms->registerFormLayout([
267
  'name' => 'bootstrap-3',
268
+ 'class' => 'Wbcr_FactoryForms446_Bootstrap3FormLayout',
269
+ 'include' => FACTORY_FORMS_446_DIR . '/layouts/bootstrap-3/bootstrap-3.php'
270
  ]);
271
  }
272
 
273
+ add_action('wbcr_factory_forms_446_register_controls', 'wbcr_factory_forms_446_register_default_controls');
274
  }
libs/factory/forms/controls/checkbox.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms445_CheckboxControl') ) {
24
 
25
- class Wbcr_FactoryForms445_CheckboxControl extends Wbcr_FactoryForms445_Control {
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', 'wbcr_factory_forms_445') ?></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_445') ?></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
  } ?>" />
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms446_CheckboxControl') ) {
24
 
25
+ class Wbcr_FactoryForms446_CheckboxControl extends Wbcr_FactoryForms446_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_446') ?></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_446') ?></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('Wbcr_FactoryForms445_ColorAndOpacityControl') ) {
24
  }
25
 
26
- class Wbcr_FactoryForms445_ColorAndOpacityControl extends Wbcr_FactoryForms445_ComplexControl {
27
 
28
  public $type = 'color-and-opacity';
29
 
@@ -57,8 +57,8 @@
57
  'way' => 'slider'
58
  ));
59
 
60
- $this->color = new Wbcr_FactoryForms445_ColorControl($options['color'], $form, $provider);
61
- $this->opacity = new Wbcr_FactoryForms445_IntegerControl($options['opacity'], $form, $provider);
62
 
63
  $this->innerControls = array($this->color, $this->opacity);
64
  }
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms446_ColorAndOpacityControl') ) {
24
  }
25
 
26
+ class Wbcr_FactoryForms446_ColorAndOpacityControl extends Wbcr_FactoryForms446_ComplexControl {
27
 
28
  public $type = 'color-and-opacity';
29
 
57
  'way' => 'slider'
58
  ));
59
 
60
+ $this->color = new Wbcr_FactoryForms446_ColorControl($options['color'], $form, $provider);
61
+ $this->opacity = new Wbcr_FactoryForms446_IntegerControl($options['opacity'], $form, $provider);
62
 
63
  $this->innerControls = array($this->color, $this->opacity);
64
  }
libs/factory/forms/controls/color.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms445_ColorControl') ) {
24
 
25
- class Wbcr_FactoryForms445_ColorControl extends Wbcr_FactoryForms445_Control {
26
 
27
  public $type = 'color';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms446_ColorControl') ) {
24
 
25
+ class Wbcr_FactoryForms446_ColorControl extends Wbcr_FactoryForms446_Control {
26
 
27
  public $type = 'color';
28
 
libs/factory/forms/controls/customs/html.php CHANGED
@@ -14,9 +14,9 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_Html') ) {
18
 
19
- class Wbcr_FactoryForms445_Html extends Wbcr_FactoryForms445_CustomElement {
20
 
21
  public $type = 'html';
22
 
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_Html') ) {
18
 
19
+ class Wbcr_FactoryForms446_Html extends Wbcr_FactoryForms446_CustomElement {
20
 
21
  public $type = 'html';
22
 
libs/factory/forms/controls/customs/separator.php CHANGED
@@ -14,8 +14,8 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_Separator') ) {
18
- class Wbcr_FactoryForms445_Separator extends Wbcr_FactoryForms445_CustomElement {
19
 
20
  public $type = 'separator';
21
 
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_Separator') ) {
18
+ class Wbcr_FactoryForms446_Separator extends Wbcr_FactoryForms446_CustomElement {
19
 
20
  public $type = 'separator';
21
 
libs/factory/forms/controls/datepicker-range.php CHANGED
@@ -29,9 +29,9 @@
29
  exit;
30
  }
31
 
32
- if( !class_exists('Wbcr_FactoryForms445_DatepickerRangeControl') ) {
33
 
34
- class Wbcr_FactoryForms445_DatepickerRangeControl extends Wbcr_FactoryForms445_ComplexControl {
35
 
36
  public $type = 'datetimepicker-range';
37
 
@@ -65,8 +65,8 @@
65
  'default' => date('Y/m/d H:i', strtotime("+1 month"))
66
  ), $options['range_2']);
67
 
68
- $this->range_1 = new Wbcr_FactoryForms445_TextboxControl($options['range_1'], $form, $provider);
69
- $this->range_2 = new Wbcr_FactoryForms445_TextboxControl($options['range_2'], $form, $provider);
70
  $this->inner_controls = array($this->range_1, $this->range_2);
71
 
72
  foreach($this->inner_controls as $key => $control) {
29
  exit;
30
  }
31
 
32
+ if( !class_exists('Wbcr_FactoryForms446_DatepickerRangeControl') ) {
33
 
34
+ class Wbcr_FactoryForms446_DatepickerRangeControl extends Wbcr_FactoryForms446_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_FactoryForms446_TextboxControl($options['range_1'], $form, $provider);
69
+ $this->range_2 = new Wbcr_FactoryForms446_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 FactoryForms445_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 FactoryForms445_RadioColorsControl
16
  * 'colors' => array(
17
  * // a callback to return items or an array of items to select
18
  * 'data' => array(
@@ -37,9 +37,9 @@
37
  exit;
38
  }
39
 
40
- if( !class_exists('Wbcr_FactoryForms445_DropdownAndColorsControl') ) {
41
 
42
- class Wbcr_FactoryForms445_DropdownAndColorsControl extends Wbcr_FactoryForms445_ComplexControl {
43
 
44
  public $type = 'dropdown-and-colors';
45
 
@@ -69,8 +69,8 @@
69
  'name' => $this->options['name'] . '__colors',
70
  ));
71
 
72
- $this->dropdown = new Wbcr_FactoryForms445_DropdownControl($options['dropdown'], $form, $provider);
73
- $this->colors = new Wbcr_FactoryForms445_RadioColorsControl($options['colors'], $form, $provider);
74
  $this->inner_controls = array($this->dropdown, $this->colors);
75
 
76
  $colors = $this->colors->getOption('data');
5
  *
6
  * Main options:
7
  * name => a name of the control
8
+ * // see FactoryForms446_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 FactoryForms446_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_FactoryForms446_DropdownAndColorsControl') ) {
41
 
42
+ class Wbcr_FactoryForms446_DropdownAndColorsControl extends Wbcr_FactoryForms446_ComplexControl {
43
 
44
  public $type = 'dropdown-and-colors';
45
 
69
  'name' => $this->options['name'] . '__colors',
70
  ));
71
 
72
+ $this->dropdown = new Wbcr_FactoryForms446_DropdownControl($options['dropdown'], $form, $provider);
73
+ $this->colors = new Wbcr_FactoryForms446_RadioColorsControl($options['colors'], $form, $provider);
74
  $this->inner_controls = array($this->dropdown, $this->colors);
75
 
76
  $colors = $this->colors->getOption('data');
libs/factory/forms/controls/dropdown.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if ( ! class_exists( 'Wbcr_FactoryForms445_DropdownControl' ) ) {
25
 
26
- class Wbcr_FactoryForms445_DropdownControl extends Wbcr_FactoryForms445_Control {
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.', 'wbcr_factory_forms_445' ) ) ?>'
127
  };
128
  </script>
129
  <?php
@@ -268,7 +268,7 @@
268
  }
269
 
270
  $is_empty = $this->isAjax() || empty( $items );
271
- $empty_list = $this->getOption( 'empty', __( '- empty -', 'wbcr_factory_forms_445' ) );
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 -', 'wbcr_factory_forms_445' );
353
 
354
  $data = isset( $item['data'] ) ? $item['data'] : null;
355
  } else {
21
  exit;
22
  }
23
 
24
+ if ( ! class_exists( 'Wbcr_FactoryForms446_DropdownControl' ) ) {
25
 
26
+ class Wbcr_FactoryForms446_DropdownControl extends Wbcr_FactoryForms446_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_446' ) ) ?>'
127
  };
128
  </script>
129
  <?php
268
  }
269
 
270
  $is_empty = $this->isAjax() || empty( $items );
271
+ $empty_list = $this->getOption( 'empty', __( '- empty -', 'wbcr_factory_forms_446' ) );
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_446' );
353
 
354
  $data = isset( $item['data'] ) ? $item['data'] : null;
355
  } else {
libs/factory/forms/controls/font.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms445_FontControl') ) {
24
 
25
- class Wbcr_FactoryForms445_FontControl extends Wbcr_FactoryForms445_ComplexControl {
26
 
27
  public $type = 'font';
28
 
@@ -54,9 +54,9 @@
54
  'pickerTarget' => '.factory-control-' . $this->options['name'] . ' .factory-picker-target'
55
  );
56
 
57
- $this->size = new Wbcr_FactoryForms445_IntegerControl($option_font_size, $form, $provider);
58
- $this->family = new Wbcr_FactoryForms445_DropdownControl($option_font_family, $form, $provider);
59
- $this->color = new Wbcr_FactoryForms445_ColorControl($optionFontColor, $form, $provider);
60
 
61
  $this->innerControls = array($this->family, $this->size, $this->color);
62
  }
@@ -66,8 +66,8 @@
66
 
67
  $fonts = $this->getDefaultFonts();
68
 
69
- $fonts = apply_filters('wbcr_factory_forms_445_fonts', $fonts);
70
- $fonts = apply_filters('wbcr_factory_forms_445_fonts-' . $this->options['name'], $fonts);
71
 
72
  return $fonts;
73
  }
@@ -77,10 +77,10 @@
77
 
78
  $fonts = array(
79
 
80
- array('inherit', __('(use default website font)', 'wbcr_factory_forms_445')),
81
  array(
82
  'group',
83
- __('Sans Serif:', 'wbcr_factory_forms_445'),
84
  array(
85
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
86
  array('"Arial Black", "Arial Bold", Gadget, sans-serif', 'Arial Black'),
@@ -131,7 +131,7 @@
131
  ),
132
  array(
133
  'group',
134
- __('Serif:', 'wbcr_factory_forms_445'),
135
  array(
136
  array(
137
  'Baskerville, "Baskerville Old Face", "Hoefler Text", Garamond, "Times New Roman", serif',
@@ -187,7 +187,7 @@
187
  ),
188
  array(
189
  'group',
190
- __('Monospaced:', 'wbcr_factory_forms_445'),
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_FactoryForms446_FontControl') ) {
24
 
25
+ class Wbcr_FactoryForms446_FontControl extends Wbcr_FactoryForms446_ComplexControl {
26
 
27
  public $type = 'font';
28
 
54
  'pickerTarget' => '.factory-control-' . $this->options['name'] . ' .factory-picker-target'
55
  );
56
 
57
+ $this->size = new Wbcr_FactoryForms446_IntegerControl($option_font_size, $form, $provider);
58
+ $this->family = new Wbcr_FactoryForms446_DropdownControl($option_font_family, $form, $provider);
59
+ $this->color = new Wbcr_FactoryForms446_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_446_fonts', $fonts);
70
+ $fonts = apply_filters('wbcr_factory_forms_446_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_446')),
81
  array(
82
  'group',
83
+ __('Sans Serif:', 'wbcr_factory_forms_446'),
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_446'),
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_446'),
191
  array(
192
  array('"Andale Mono", AndaleMono, monospace', 'Andale Mono'),
193
  array('Consolas, monaco, monospace', 'Consolas'),
libs/factory/forms/controls/google-font.php CHANGED
@@ -15,7 +15,7 @@
15
  * @package core
16
  * @since 1.0.0
17
  */
18
- class Wbcr_FactoryForms445_GoogleFontControl extends Wbcr_FactoryForms445_FontControl {
19
 
20
  public $type = 'google-font';
21
  const APIKEY = 'AIzaSyB-3vazYv7Q-5QZA04bmSKFrWcw_VhC40w';
@@ -30,7 +30,7 @@
30
  'cssClass' => 'factory-google-font-data'
31
  );
32
 
33
- $this->google_font_data = new Wbcr_FactoryForms445_HiddenControl($option_google_font_data, $form, $provider);
34
  $this->inner_controls[] = $this->google_font_data;
35
  }
36
 
@@ -49,12 +49,12 @@
49
  $google_fonts = $this->getGoogleFonts();
50
 
51
  $fonts = array(
52
- array('inherit', __('(use default website font)', 'wbcr_factory_forms_445'))
53
  );
54
 
55
  $fontsCommon = array(
56
  'group',
57
- __('Standard:', 'wbcr_factory_forms_445'),
58
  array(
59
 
60
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
@@ -65,7 +65,7 @@
65
  )
66
  );
67
 
68
- $fontsGoogleFonts = array('group', __('Google Fonts:', 'wbcr_factory_forms_445'), array());
69
 
70
  foreach($google_fonts->items as $item) {
71
 
@@ -115,7 +115,7 @@
115
 
116
  if( is_wp_error($response) ) {
117
 
118
- $this->error = __('Unable to retrieve the list of Google Fonts.', 'wbcr_factory_forms_445');
119
  $this->defailed_error = $response->get_error_message();
120
 
121
  return $body;
@@ -123,7 +123,7 @@
123
 
124
  if( !isset($response['body']) ) {
125
 
126
- $this->error = __('Invalide response from the Google Fonts API.', 'wbcr_factory_forms_445');
127
  $this->defailed_error = $response['body'];
128
 
129
  return $body;
@@ -133,7 +133,7 @@
133
 
134
  if( empty($body->items) ) {
135
 
136
- $this->error = __('Unexpected error. The list of Google Fonts are empty.', 'wbcr_factory_forms_445');
137
 
138
  return $body;
139
  }
15
  * @package core
16
  * @since 1.0.0
17
  */
18
+ class Wbcr_FactoryForms446_GoogleFontControl extends Wbcr_FactoryForms446_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_FactoryForms446_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_446'))
53
  );
54
 
55
  $fontsCommon = array(
56
  'group',
57
+ __('Standard:', 'wbcr_factory_forms_446'),
58
  array(
59
 
60
  array('Arial, "Helvetica Neue", Helvetica, sans-serif', 'Arial'),
65
  )
66
  );
67
 
68
+ $fontsGoogleFonts = array('group', __('Google Fonts:', 'wbcr_factory_forms_446'), 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_446');
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_446');
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_446');
137
 
138
  return $body;
139
  }
libs/factory/forms/controls/gradient.php CHANGED
@@ -25,8 +25,8 @@
25
  exit;
26
  }
27
 
28
- if( !class_exists('Wbcr_FactoryForms445_GradientControl') ) {
29
- class Wbcr_FactoryForms445_GradientControl extends Wbcr_FactoryForms445_Control {
30
 
31
  public $type = 'gradient';
32
 
@@ -66,8 +66,8 @@
66
  if( !window.factory.res ) {
67
  window.factory.res = {};
68
  }
69
- factory.res.resVertical = '<?php _e( 'vertical', 'wbcr_factory_forms_445' ) ?>';
70
- factory.res.resHorizontal = '<?php _e( 'horizontal', 'wbcr_factory_forms_445' ) ?>';
71
  </script>
72
  <div <?php $this->attrs() ?>>
73
  <div class="factory-gradient-picker">
25
  exit;
26
  }
27
 
28
+ if( !class_exists('Wbcr_FactoryForms446_GradientControl') ) {
29
+ class Wbcr_FactoryForms446_GradientControl extends Wbcr_FactoryForms446_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_446' ) ?>';
70
+ factory.res.resHorizontal = '<?php _e( 'horizontal', 'wbcr_factory_forms_446' ) ?>';
71
  </script>
72
  <div <?php $this->attrs() ?>>
73
  <div class="factory-gradient-picker">
libs/factory/forms/controls/hidden.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms445_HiddenControl') ) {
24
 
25
- class Wbcr_FactoryForms445_HiddenControl extends Wbcr_FactoryForms445_Control {
26
 
27
  public $type = 'hidden';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms446_HiddenControl') ) {
24
 
25
+ class Wbcr_FactoryForms446_HiddenControl extends Wbcr_FactoryForms446_Control {
26
 
27
  public $type = 'hidden';
28
 
libs/factory/forms/controls/holders/accordion-item.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_AccordionItemHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms445_AccordionItemHolder extends Wbcr_FactoryForms445_Holder {
25
 
26
  /**
27
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_AccordionItemHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms446_AccordionItemHolder extends Wbcr_FactoryForms446_Holder {
25
 
26
  /**
27
  * A holder type.
libs/factory/forms/controls/holders/accordion.php CHANGED
@@ -13,13 +13,13 @@
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
- if( !class_exists('Wbcr_FactoryForms445_AccordionHolder') ) {
17
  /**
18
  * Tab Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_FactoryForms445_AccordionHolder extends Wbcr_FactoryForms445_Holder {
23
 
24
  /**
25
  * A holder type.
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
+ if( !class_exists('Wbcr_FactoryForms446_AccordionHolder') ) {
17
  /**
18
  * Tab Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_FactoryForms446_AccordionHolder extends Wbcr_FactoryForms446_Holder {
23
 
24
  /**
25
  * A holder type.
libs/factory/forms/controls/holders/columns.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_ColumnsHolder') ) {
18
  /**
19
  * Columns Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms445_ColumnsHolder extends Wbcr_FactoryForms445_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_ColumnsHolder') ) {
18
  /**
19
  * Columns Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms446_ColumnsHolder extends Wbcr_FactoryForms446_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/control-group-item.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_ControlGroupItem') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms445_ControlGroupItem extends Wbcr_FactoryForms445_Holder {
25
 
26
  /**
27
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_ControlGroupItem') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms446_ControlGroupItem extends Wbcr_FactoryForms446_Holder {
25
 
26
  /**
27
  * A holder type.
libs/factory/forms/controls/holders/control-group.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_ControlGroupHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms445_ControlGroupHolder extends Wbcr_FactoryForms445_ControlHolder {
25
 
26
  /**
27
  * A holder type.
@@ -61,7 +61,7 @@
61
  continue;
62
  }
63
 
64
- $builder = new Wbcr_FactoryForms445_HtmlAttributeBuilder();
65
 
66
  $builder->addCssClass('factory-control-group-nav-label');
67
  $builder->addCssClass('factory-control-group-nav-label-' . $element->getOption('name'));
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_ControlGroupHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms446_ControlGroupHolder extends Wbcr_FactoryForms446_ControlHolder {
25
 
26
  /**
27
  * A holder type.
61
  continue;
62
  }
63
 
64
+ $builder = new Wbcr_FactoryForms446_HtmlAttributeBuilder();
65
 
66
  $builder->addCssClass('factory-control-group-nav-label');
67
  $builder->addCssClass('factory-control-group-nav-label-' . $element->getOption('name'));
libs/factory/forms/controls/holders/div.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_DivHolder') ) {
18
  /**
19
  * Div Control Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms445_DivHolder extends Wbcr_FactoryForms445_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_DivHolder') ) {
18
  /**
19
  * Div Control Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms446_DivHolder extends Wbcr_FactoryForms446_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/form-group.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_FormGroupHolder') ) {
18
  /**
19
  * Group Holder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms445_FormGroupHolder extends Wbcr_FactoryForms445_Holder {
24
 
25
  /**
26
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_FormGroupHolder') ) {
18
  /**
19
  * Group Holder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms446_FormGroupHolder extends Wbcr_FactoryForms446_Holder {
24
 
25
  /**
26
  * A holder type.
libs/factory/forms/controls/holders/more-link.php CHANGED
@@ -14,14 +14,14 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_MoreLinkHolder') ) {
18
 
19
  /**
20
  * Collapsed Group Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms445_MoreLinkHolder extends Wbcr_FactoryForms445_Holder {
25
 
26
  /**
27
  * A holder type.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_MoreLinkHolder') ) {
18
 
19
  /**
20
  * Collapsed Group Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms446_MoreLinkHolder extends Wbcr_FactoryForms446_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('Wbcr_FactoryForms445_TabItemHolder') ) {
17
  /**
18
  * Tab Item Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
- class Wbcr_FactoryForms445_TabItemHolder extends Wbcr_FactoryForms445_Holder {
23
 
24
  /**
25
  * A holder type.
13
  exit;
14
  }
15
 
16
+ if( !class_exists('Wbcr_FactoryForms446_TabItemHolder') ) {
17
  /**
18
  * Tab Item Control Holder
19
  *
20
  * @since 1.0.0
21
  */
22
+ class Wbcr_FactoryForms446_TabItemHolder extends Wbcr_FactoryForms446_Holder {
23
 
24
  /**
25
  * A holder type.
libs/factory/forms/controls/holders/tab.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_TabHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
- class Wbcr_FactoryForms445_TabHolder extends Wbcr_FactoryForms445_Holder {
25
 
26
  /**
27
  * A holder type.
@@ -44,7 +44,7 @@
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
- * @param FactoryForms445_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
@@ -88,7 +88,7 @@
88
  $tab_icon = $element->options['icon'];
89
  }
90
 
91
- $builder = new Wbcr_FactoryForms445_HtmlAttributeBuilder();
92
 
93
  $builder->addCssClass('factory-tab-item-header');
94
  $builder->addCssClass('factory-tab-item-header-' . $element->getName());
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_TabHolder') ) {
18
 
19
  /**
20
  * Tab Control Holder
21
  *
22
  * @since 1.0.0
23
  */
24
+ class Wbcr_FactoryForms446_TabHolder extends Wbcr_FactoryForms446_Holder {
25
 
26
  /**
27
  * A holder type.
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
+ * @param FactoryForms446_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_FactoryForms446_HtmlAttributeBuilder();
92
 
93
  $builder->addCssClass('factory-tab-item-header');
94
  $builder->addCssClass('factory-tab-item-header-' . $element->getName());
libs/factory/forms/controls/integer.php CHANGED
@@ -32,9 +32,9 @@
32
  exit;
33
  }
34
 
35
- if( !class_exists('Wbcr_FactoryForms445_IntegerControl') ) {
36
 
37
- class Wbcr_FactoryForms445_IntegerControl extends Wbcr_FactoryForms445_Control {
38
 
39
  public $type = 'integer';
40
 
32
  exit;
33
  }
34
 
35
+ if( !class_exists('Wbcr_FactoryForms446_IntegerControl') ) {
36
 
37
+ class Wbcr_FactoryForms446_IntegerControl extends Wbcr_FactoryForms446_Control {
38
 
39
  public $type = 'integer';
40
 
libs/factory/forms/controls/list.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if( !class_exists('Wbcr_FactoryForms445_ListControl') ) {
25
 
26
- class Wbcr_FactoryForms445_ListControl extends Wbcr_FactoryForms445_Control {
27
 
28
  public $type = 'list';
29
 
@@ -93,7 +93,7 @@
93
  'url': '<?php echo $data['url'] ?>',
94
  'data': <?php echo json_encode( $data['data'] ) ?>,
95
  'selected': <?php echo json_encode( $value ) ?>,
96
- 'emptyList': '<?php echo $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_445') ) ?>'
97
  };
98
  </script>
99
  <?php
@@ -136,7 +136,7 @@
136
  : array();
137
 
138
  $is_empty = $this->isAjax() || empty($items);
139
- $emptyList = $this->getOption('empty', __('The list is empty.', 'wbcr_factory_forms_445'));
140
 
141
  if( $is_empty ) {
142
  $this->addCssClass('factory-empty');
21
  exit;
22
  }
23
 
24
+ if( !class_exists('Wbcr_FactoryForms446_ListControl') ) {
25
 
26
+ class Wbcr_FactoryForms446_ListControl extends Wbcr_FactoryForms446_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_446') ) ?>'
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_446'));
140
 
141
  if( $is_empty ) {
142
  $this->addCssClass('factory-empty');
libs/factory/forms/controls/multiple-textbox.php CHANGED
@@ -15,9 +15,9 @@
15
  exit;
16
  }
17
 
18
- if( !class_exists('Wbcr_FactoryForms445_MultipleTextboxControl') ) {
19
 
20
- class Wbcr_FactoryForms445_MultipleTextboxControl extends Wbcr_FactoryForms445_Control {
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', 'wbcr_factory_forms_445') ?>
90
  </button>
91
  </div>
92
 
15
  exit;
16
  }
17
 
18
+ if( !class_exists('Wbcr_FactoryForms446_MultipleTextboxControl') ) {
19
 
20
+ class Wbcr_FactoryForms446_MultipleTextboxControl extends Wbcr_FactoryForms446_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_446') ?>
90
  </button>
91
  </div>
92
 
libs/factory/forms/controls/paddings-editor.php CHANGED
@@ -14,9 +14,9 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_PaddingsEditorControl') ) {
18
 
19
- class Wbcr_FactoryForms445_PaddingsEditorControl extends Wbcr_FactoryForms445_Control {
20
 
21
  public $type = 'paddings-editor';
22
 
@@ -67,7 +67,7 @@
67
  </div>
68
  <div class="factory-slider-container">
69
  <label class="factory-title">
70
- <?php _e('Select a side and move the slider to set up:', 'wbcr_factory_forms_445') ?>
71
  </label>
72
 
73
  <div class="factory-slider">
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_PaddingsEditorControl') ) {
18
 
19
+ class Wbcr_FactoryForms446_PaddingsEditorControl extends Wbcr_FactoryForms446_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_446') ?>
71
  </label>
72
 
73
  <div class="factory-slider">
libs/factory/forms/controls/pattern.php CHANGED
@@ -15,9 +15,9 @@
15
  exit;
16
  }
17
 
18
- if( !class_exists('Wbcr_FactoryForms445_PatternControl') ) {
19
 
20
- class Wbcr_FactoryForms445_PatternControl extends Wbcr_FactoryForms445_Control {
21
 
22
  public $type = 'pattern';
23
 
@@ -52,12 +52,12 @@
52
  $name = $this->getOption('name');
53
 
54
  // filters to get available patterns for the given background contols
55
- $this->patterns = apply_filters('wbcr_factory_forms_445_patterns', array());
56
- $this->patterns = apply_filters('wbcr_factory_forms_445_patterns-' . $name, $this->patterns);
57
 
58
  $this->custom_patterns = $this->getOption('patterns', array());
59
 
60
- $this->color = new Wbcr_FactoryForms445_ColorControl($options['color'], $form, $provider);
61
  }
62
 
63
  /**
@@ -102,19 +102,19 @@
102
  </div>
103
  <a href="#" class="button button-default factory-button factory-change-color-btn <?php if( $hasColor ) {
104
  echo 'button-active';
105
- } ?>" title="<?php _e('Change color', 'wbcr_factory_forms_445') ?>">
106
  <i class="fa fa-flask"></i>
107
- <span><?php _e('re-color', 'wbcr_factory_forms_445') ?></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_445') ?></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_445') ?></i>
118
  </div>
119
  </div>
120
  <div class="factory-picker-target"></div>
15
  exit;
16
  }
17
 
18
+ if( !class_exists('Wbcr_FactoryForms446_PatternControl') ) {
19
 
20
+ class Wbcr_FactoryForms446_PatternControl extends Wbcr_FactoryForms446_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_446_patterns', array());
56
+ $this->patterns = apply_filters('wbcr_factory_forms_446_patterns-' . $name, $this->patterns);
57
 
58
  $this->custom_patterns = $this->getOption('patterns', array());
59
 
60
+ $this->color = new Wbcr_FactoryForms446_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_446') ?>">
106
  <i class="fa fa-flask"></i>
107
+ <span><?php _e('re-color', 'wbcr_factory_forms_446') ?></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_446') ?></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_446') ?></i>
118
  </div>
119
  </div>
120
  <div class="factory-picker-target"></div>
libs/factory/forms/controls/radio-colors.php CHANGED
@@ -27,9 +27,9 @@
27
  exit;
28
  }
29
 
30
- if( !class_exists('Wbcr_FactoryForms445_RadioColorsControl') ) {
31
 
32
- class Wbcr_FactoryForms445_RadioColorsControl extends Wbcr_FactoryForms445_Control {
33
 
34
  public $type = 'radio-color';
35
 
27
  exit;
28
  }
29
 
30
+ if( !class_exists('Wbcr_FactoryForms446_RadioColorsControl') ) {
31
 
32
+ class Wbcr_FactoryForms446_RadioColorsControl extends Wbcr_FactoryForms446_Control {
33
 
34
  public $type = 'radio-color';
35
 
libs/factory/forms/controls/radio.php CHANGED
@@ -21,9 +21,9 @@
21
  exit;
22
  }
23
 
24
- if( !class_exists('Wbcr_FactoryForms445_RadioControl') ) {
25
 
26
- class Wbcr_FactoryForms445_RadioControl extends Wbcr_FactoryForms445_Control {
27
 
28
  public $type = 'radio';
29
 
21
  exit;
22
  }
23
 
24
+ if( !class_exists('Wbcr_FactoryForms446_RadioControl') ) {
25
 
26
+ class Wbcr_FactoryForms446_RadioControl extends Wbcr_FactoryForms446_Control {
27
 
28
  public $type = 'radio';
29
 
libs/factory/forms/controls/textarea.php CHANGED
@@ -20,9 +20,9 @@
20
  exit;
21
  }
22
 
23
- if( !class_exists('Wbcr_FactoryForms445_TextareaControl') ) {
24
 
25
- class Wbcr_FactoryForms445_TextareaControl extends Wbcr_FactoryForms445_Control {
26
 
27
  public $type = 'textarea';
28
 
20
  exit;
21
  }
22
 
23
+ if( !class_exists('Wbcr_FactoryForms446_TextareaControl') ) {
24
 
25
+ class Wbcr_FactoryForms446_TextareaControl extends Wbcr_FactoryForms446_Control {
26
 
27
  public $type = 'textarea';
28
 
libs/factory/forms/controls/textbox.php CHANGED
@@ -29,9 +29,9 @@
29
  exit;
30
  }
31
 
32
- if( !class_exists('Wbcr_FactoryForms445_TextboxControl') ) {
33
 
34
- class Wbcr_FactoryForms445_TextboxControl extends Wbcr_FactoryForms445_Control {
35
 
36
  public $type = 'textbox';
37
 
29
  exit;
30
  }
31
 
32
+ if( !class_exists('Wbcr_FactoryForms446_TextboxControl') ) {
33
 
34
+ class Wbcr_FactoryForms446_TextboxControl extends Wbcr_FactoryForms446_Control {
35
 
36
  public $type = 'textbox';
37
 
libs/factory/forms/controls/url.php CHANGED
@@ -4,7 +4,7 @@
4
  * Url Control
5
  *
6
  * Main options:
7
- * @see FactoryForms445_TextboxControl
8
  *
9
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
10
  * @copyright (c) 2018, Webcraftic Ltd
@@ -18,9 +18,9 @@
18
  exit;
19
  }
20
 
21
- if( !class_exists('Wbcr_FactoryForms445_UrlControl') ) {
22
 
23
- class Wbcr_FactoryForms445_UrlControl extends Wbcr_FactoryForms445_TextboxControl {
24
 
25
  public $type = 'url';
26
 
4
  * Url Control
5
  *
6
  * Main options:
7
+ * @see FactoryForms446_TextboxControl
8
  *
9
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
10
  * @copyright (c) 2018, Webcraftic Ltd
18
  exit;
19
  }
20
 
21
+ if( !class_exists('Wbcr_FactoryForms446_UrlControl') ) {
22
 
23
+ class Wbcr_FactoryForms446_UrlControl extends Wbcr_FactoryForms446_TextboxControl {
24
 
25
  public $type = 'url';
26
 
libs/factory/forms/controls/wp-editor.php CHANGED
@@ -22,9 +22,9 @@
22
  exit;
23
  }
24
 
25
- if( !class_exists('Wbcr_FactoryForms445_WpEditorControl') ) {
26
 
27
- class Wbcr_FactoryForms445_WpEditorControl extends Wbcr_FactoryForms445_Control {
28
 
29
  public $type = 'wp-editor';
30
 
@@ -42,7 +42,7 @@
42
  }
43
 
44
  if( !isset($this->options['tinymce']['content_css']) ) {
45
- $this->options['tinymce']['content_css'] = FACTORY_FORMS_445_URL . '/assets/css/editor.css';
46
  }
47
  }
48
 
@@ -64,7 +64,9 @@
64
  'textarea_name' => $name_on_form,
65
  'wpautop' => false,
66
  'teeny' => true,
67
- 'tinymce' => $this->getOption('tinymce', array())
 
 
68
  )); ?>
69
  </div>
70
  <?php
22
  exit;
23
  }
24
 
25
+ if( !class_exists('Wbcr_FactoryForms446_WpEditorControl') ) {
26
 
27
+ class Wbcr_FactoryForms446_WpEditorControl extends Wbcr_FactoryForms446_Control {
28
 
29
  public $type = 'wp-editor';
30
 
42
  }
43
 
44
  if( !isset($this->options['tinymce']['content_css']) ) {
45
+ $this->options['tinymce']['content_css'] = FACTORY_FORMS_446_URL . '/assets/css/editor.css';
46
  }
47
  }
48
 
64
  'textarea_name' => $name_on_form,
65
  'wpautop' => false,
66
  'teeny' => true,
67
+ 'tinymce' => $this->getOption('tinymce', array()),
68
+ 'editor_height' => 213, // In pixels, takes precedence and has no default value
69
+ 'textarea_rows' => 10, // Has no visible effect if editor_height is set, default is 20
70
  )); ?>
71
  </div>
72
  <?php
libs/factory/forms/includes/complex-control.class.php CHANGED
@@ -13,13 +13,13 @@
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
- if( !class_exists('Wbcr_FactoryForms445_ComplexControl') ) {
17
  /**
18
  * The base class for all controls.
19
  *
20
  * @since 1.0.0
21
  */
22
- abstract class Wbcr_FactoryForms445_ComplexControl extends Wbcr_FactoryForms445_Control {
23
 
24
  /**
25
  * Is this element a complex control?
@@ -33,7 +33,7 @@
33
  * Contains a set of internal controls.
34
  *
35
  * @since 1.0.0
36
- * @var Wbcr_FactoryForms445_Control[]
37
  */
38
  public $inner_controls = array();
39
 
@@ -41,7 +41,7 @@
41
  * Sets a provider for the control.
42
  *
43
  * @since 1.0.0
44
- * @param Wbcr_IFactoryForms445_ValueProvider $provider
45
  * @return void
46
  */
47
  public function setProvider($provider)
13
  if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
+ if( !class_exists('Wbcr_FactoryForms446_ComplexControl') ) {
17
  /**
18
  * The base class for all controls.
19
  *
20
  * @since 1.0.0
21
  */
22
+ abstract class Wbcr_FactoryForms446_ComplexControl extends Wbcr_FactoryForms446_Control {
23
 
24
  /**
25
  * Is this element a complex control?
33
  * Contains a set of internal controls.
34
  *
35
  * @since 1.0.0
36
+ * @var Wbcr_FactoryForms446_Control[]
37
  */
38
  public $inner_controls = array();
39
 
41
  * Sets a provider for the control.
42
  *
43
  * @since 1.0.0
44
+ * @param Wbcr_IFactoryForms446_ValueProvider $provider
45
  * @return void
46
  */
47
  public function setProvider($provider)
libs/factory/forms/includes/control-holder.class.php CHANGED
@@ -14,19 +14,19 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_ControlHolder') ) {
18
  /**
19
  * The base class for control holders.
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_FactoryForms445_ControlHolder extends Wbcr_FactoryForms445_Control {
24
 
25
  /**
26
  * Holder Elements.
27
  *
28
  * @since 1.0.0
29
- * @var Wbcr_FactoryForms445_Control[]
30
  */
31
  protected $elements = array();
32
 
@@ -43,7 +43,7 @@
43
  *
44
  * @since 1.0.0
45
  * @param mixed[] $options A holder options.
46
- * @param Wbcr_FactoryForms445_Form $form A parent form.
47
  */
48
  public function __construct($options, $form)
49
  {
@@ -60,7 +60,7 @@
60
  * Returns holder elements.
61
  *
62
  * @since 1.0.0
63
- * @return Wbcr_FactoryForms445_FormElement[].
64
  */
65
  public function getElements()
66
  {
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_ControlHolder') ) {
18
  /**
19
  * The base class for control holders.
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_FactoryForms446_ControlHolder extends Wbcr_FactoryForms446_Control {
24
 
25
  /**
26
  * Holder Elements.
27
  *
28
  * @since 1.0.0
29
+ * @var Wbcr_FactoryForms446_Control[]
30
  */
31
  protected $elements = array();
32
 
43
  *
44
  * @since 1.0.0
45
  * @param mixed[] $options A holder options.
46
+ * @param Wbcr_FactoryForms446_Form $form A parent form.
47
  */
48
  public function __construct($options, $form)
49
  {
60
  * Returns holder elements.
61
  *
62
  * @since 1.0.0
63
+ * @return Wbcr_FactoryForms446_FormElement[].
64
  */
65
  public function getElements()
66
  {
libs/factory/forms/includes/control.class.php CHANGED
@@ -14,14 +14,14 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_Control') ) {
18
 
19
  /**
20
  * The base class for all controls.
21
  *
22
  * @since 1.0.0
23
  */
24
- abstract class Wbcr_FactoryForms445_Control extends Wbcr_FactoryForms445_FormElement {
25
 
26
  /**
27
  * Is this element a control?
@@ -43,7 +43,7 @@
43
  * A provider that is used to get values.
44
  *
45
  * @since 1.0.0
46
- * @var Wbcr_IFactoryForms445_ValueProvider
47
  */
48
  protected $provider = null;
49
 
@@ -51,7 +51,7 @@
51
  * Create a new instance of the control.
52
  *
53
  * @param mixed[] $options
54
- * @param FactoryForms445_Form $form
55
  * @param null $provider
56
  * @since 1.0.0
57
  * @return void
@@ -66,7 +66,7 @@
66
  * Sets a provider for the control.
67
  *
68
  * @since 1.0.0
69
- * @param IFactoryForms445_ValueProvider $provider
70
  * @return void
71
  */
72
  public function setProvider($provider)
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_Control') ) {
18
 
19
  /**
20
  * The base class for all controls.
21
  *
22
  * @since 1.0.0
23
  */
24
+ abstract class Wbcr_FactoryForms446_Control extends Wbcr_FactoryForms446_FormElement {
25
 
26
  /**
27
  * Is this element a control?
43
  * A provider that is used to get values.
44
  *
45
  * @since 1.0.0
46
+ * @var Wbcr_IFactoryForms446_ValueProvider
47
  */
48
  protected $provider = null;
49
 
51
  * Create a new instance of the control.
52
  *
53
  * @param mixed[] $options
54
+ * @param FactoryForms446_Form $form
55
  * @param null $provider
56
  * @since 1.0.0
57
  * @return void
66
  * Sets a provider for the control.
67
  *
68
  * @since 1.0.0
69
+ * @param IFactoryForms446_ValueProvider $provider
70
  * @return void
71
  */
72
  public function setProvider($provider)
libs/factory/forms/includes/custom-element.class.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_CustomElement') ) {
18
  /**
19
  * The base class for all controls.
20
  *
21
  * @since 1.0.0
22
  */
23
- abstract class Wbcr_FactoryForms445_CustomElement extends Wbcr_FactoryForms445_FormElement {
24
 
25
  /**
26
  * Is this element a custom form element?
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_CustomElement') ) {
18
  /**
19
  * The base class for all controls.
20
  *
21
  * @since 1.0.0
22
  */
23
+ abstract class Wbcr_FactoryForms446_CustomElement extends Wbcr_FactoryForms446_FormElement {
24
 
25
  /**
26
  * Is this element a custom form element?
libs/factory/forms/includes/form-element.class.php CHANGED
@@ -14,7 +14,7 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_FormElement') ) {
18
 
19
  /**
20
  * The base class for all form element (controls, holders).
@@ -23,7 +23,7 @@
23
  *
24
  * @since 1.0.0
25
  */
26
- abstract class Wbcr_FactoryForms445_FormElement {
27
 
28
  /**
29
  * A type of an elemnt.
@@ -37,7 +37,7 @@
37
  * An html attribute builder.
38
  *
39
  * @since 1.0.0
40
- * @var Wbcr_FactoryForms445_HtmlAttributeBuilder
41
  */
42
  private $html_builder;
43
 
@@ -53,7 +53,7 @@
53
  * A parent form.
54
  *
55
  * @since 1.0.0
56
- * @var Wbcr_FactoryForms445_Form
57
  */
58
  protected $form;
59
 
@@ -61,7 +61,7 @@
61
  * A form layout.
62
  *
63
  * @since 1.0.0
64
- * @var Wbcr_FactoryForms445_FormLayout
65
  */
66
  protected $layout;
67
 
@@ -94,7 +94,7 @@
94
  *
95
  * @since 1.0.0
96
  * @param mixed[] $options A holder options.
97
- * @param Wbcr_FactoryForms445_Form $form A parent form.
98
  */
99
  public function __construct($options, $form)
100
  {
@@ -102,7 +102,7 @@
102
  $this->form = $form;
103
  $this->layout = $form->layout;
104
 
105
- $this->html_builder = new Wbcr_FactoryForms445_HtmlAttributeBuilder();
106
 
107
  if( isset($this->options['cssClass']) ) {
108
  $this->html_builder->addCssClass($this->options['cssClass']);
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_FormElement') ) {
18
 
19
  /**
20
  * The base class for all form element (controls, holders).
23
  *
24
  * @since 1.0.0
25
  */
26
+ abstract class Wbcr_FactoryForms446_FormElement {
27
 
28
  /**
29
  * A type of an elemnt.
37
  * An html attribute builder.
38
  *
39
  * @since 1.0.0
40
+ * @var Wbcr_FactoryForms446_HtmlAttributeBuilder
41
  */
42
  private $html_builder;
43
 
53
  * A parent form.
54
  *
55
  * @since 1.0.0
56
+ * @var Wbcr_FactoryForms446_Form
57
  */
58
  protected $form;
59
 
61
  * A form layout.
62
  *
63
  * @since 1.0.0
64
+ * @var Wbcr_FactoryForms446_FormLayout
65
  */
66
  protected $layout;
67
 
94
  *
95
  * @since 1.0.0
96
  * @param mixed[] $options A holder options.
97
+ * @param Wbcr_FactoryForms446_Form $form A parent form.
98
  */
99
  public function __construct($options, $form)
100
  {
102
  $this->form = $form;
103
  $this->layout = $form->layout;
104
 
105
+ $this->html_builder = new Wbcr_FactoryForms446_HtmlAttributeBuilder();
106
 
107
  if( isset($this->options['cssClass']) ) {
108
  $this->html_builder->addCssClass($this->options['cssClass']);
libs/factory/forms/includes/form-layout.class.php CHANGED
@@ -14,12 +14,12 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_FormLayout') ) {
18
 
19
  /**
20
  * The base class for all form layouts.
21
  */
22
- abstract class Wbcr_FactoryForms445_FormLayout extends Wbcr_FactoryForms445_Holder {
23
 
24
  /**
25
  * A form layout name.
@@ -42,7 +42,7 @@
42
  *
43
  * @since 1.0.0
44
  * @param mixed[] $options A holder options.
45
- * @param Wbcr_FactoryForms445_Form $form A parent form.
46
  */
47
  public function __construct($options, $form)
48
  {
@@ -52,8 +52,8 @@
52
 
53
  parent::__construct($options, $form);
54
 
55
- $this->addCssClass('factory-forms-445-' . $this->type);
56
- $this->addCssClass('factory-forms-445-' . $this->name);
57
  }
58
 
59
  /**
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_FormLayout') ) {
18
 
19
  /**
20
  * The base class for all form layouts.
21
  */
22
+ abstract class Wbcr_FactoryForms446_FormLayout extends Wbcr_FactoryForms446_Holder {
23
 
24
  /**
25
  * A form layout name.
42
  *
43
  * @since 1.0.0
44
  * @param mixed[] $options A holder options.
45
+ * @param Wbcr_FactoryForms446_Form $form A parent form.
46
  */
47
  public function __construct($options, $form)
48
  {
52
 
53
  parent::__construct($options, $form);
54
 
55
+ $this->addCssClass('factory-forms-446-' . $this->type);
56
+ $this->addCssClass('factory-forms-446-' . $this->name);
57
  }
58
 
59
  /**
libs/factory/forms/includes/form.class.php CHANGED
@@ -15,16 +15,16 @@
15
  }
16
 
17
  // creating a license manager for each plugin created via the factory
18
- add_action('wbcr_factory_forms_445_plugin_created', 'wbcr_factory_forms_445_plugin_created');
19
 
20
- function wbcr_factory_forms_445_plugin_created($plugin)
21
  {
22
- $plugin->forms = new Wbcr_FactoryForms445_Manager($plugin);
23
  }
24
 
25
- if( !class_exists('Wbcr_FactoryForms445_Manager') ) {
26
 
27
- class Wbcr_FactoryForms445_Manager {
28
 
29
  // ----------------------------------------------------
30
  // Static fields and methods
@@ -57,7 +57,7 @@
57
  /**
58
  * Registers a set of new controls.
59
  *
60
- * @see FactoryForms445_Form::registerControl()
61
  *
62
  * @since 1.0.0
63
  * @return void
@@ -95,7 +95,7 @@
95
  /**
96
  * Registers a set of new holder controls.
97
  *
98
- * @see FactoryForms445_Form::registerHolder()
99
  *
100
  * @since 1.0.0
101
  * @return void
@@ -129,7 +129,7 @@
129
  /**
130
  * Registers a set of new custom form elements.
131
  *
132
- * @see FactoryForms445_Form::registerCustomElement()
133
  *
134
  * @since 1.0.0
135
  * @return void
@@ -180,11 +180,11 @@
180
  public static $controls_registered = false;
181
  }
182
  }
183
- if( !class_exists('Wbcr_FactoryForms445_Form') ) {
184
  /**
185
  * An abstraction for forms.
186
  */
187
- class Wbcr_FactoryForms445_Form {
188
 
189
  // ----------------------------------------------------
190
  // Object fields and methods
@@ -194,7 +194,7 @@
194
  * A value provider of the form that is used to save and load values.
195
  *
196
  * @since 1.0.0
197
- * @var Wbcr_IFactoryForms445_ValueProvider
198
  */
199
  private $provider;
200
 
@@ -245,7 +245,7 @@
245
  * A current form layout used to render a form.
246
  *
247
  * @since 1.0.0
248
- * @var Wbcr_FactoryForms445_FormLayout
249
  */
250
  public $layout;
251
 
@@ -261,20 +261,20 @@
261
  *
262
  * @since 1.0.0
263
  * @param array $options
264
- * @param Wbcr_Factory448_Plugin $plugin
265
  */
266
- public function __construct(array $options, Wbcr_Factory448_Plugin $plugin)
267
  {
268
  // register controls once, when the first form is created
269
- if( !Wbcr_FactoryForms445_Manager::$controls_registered ) {
270
 
271
- do_action('wbcr_factory_forms_445_register_controls', $plugin);
272
 
273
  //if( !empty($plugin) ) {
274
- do_action('wbcr_factory_forms_445_register_controls_' . $plugin->getPluginName(), $plugin);
275
  //}
276
 
277
- Wbcr_FactoryForms445_Manager::$controls_registered = true;
278
  }
279
 
280
  $this->scope = isset($options['scope']) ? $options['scope'] : null;
@@ -289,14 +289,14 @@
289
  $this->form_layout = 'bootstrap-3';
290
  }
291
 
292
- Wbcr_FactoryForms445_Manager::$temper = 'flat';
293
  }
294
 
295
  /**
296
  * Sets a provider for the control.
297
  *
298
  * @since 1.0.0
299
- * @param Wbcr_IFactoryForms445_ValueProvider $provider
300
  * @return void
301
  */
302
  public function setProvider($provider)
@@ -332,14 +332,14 @@
332
  */
333
  public function getItems()
334
  {
335
- return apply_filters('wbcr_factory_448_form_items', $this->items, $this->name);
336
  }
337
 
338
  /**
339
  * Returns form controls (control objects).
340
  *
341
  * @since 1.0.0
342
- * @return Wbcr_FactoryForms445_Control[]
343
  */
344
  public function getControls()
345
  {
@@ -355,7 +355,7 @@
355
  * Builds a form items to the control objects ready to use.
356
  *
357
  * @param null $holder
358
- * @return Wbcr_FactoryForms445_Control[]
359
  */
360
 
361
  public function createControls($holder = null)
@@ -395,7 +395,7 @@
395
  *
396
  * @since 1.0.0
397
  * @param array $item Item data.
398
- * @return Wbcr_FactoryForms445_FormElement|null A form element.
399
  */
400
  public function createElement($item)
401
  {
@@ -417,7 +417,7 @@
417
  *
418
  * @since 1.0.0
419
  * @param mixed[] $item Data of items.
420
- * @return Wbcr_FactoryForms445_FormElement[] Created elements.
421
  */
422
  public function createElements($items = array())
423
  {
@@ -433,7 +433,7 @@
433
  *
434
  * @since 1.0.0
435
  * @param array $item Item data.
436
- * @return Wbcr_FactoryForms445_Control A control object.
437
  */
438
  public function createControl($item)
439
  {
@@ -441,7 +441,7 @@
441
 
442
  if( is_array($item) ) {
443
 
444
- $control_data = Wbcr_FactoryForms445_Manager::$registered_controls[$item['type']];
445
 
446
  require_once($control_data['include']);
447
 
@@ -465,7 +465,7 @@
465
  *
466
  * @since 1.0.0
467
  * @param array $item Item data.
468
- * @return Wbcr_FactoryForms445_Holder A control holder object.
469
  */
470
  public function createHolder($item)
471
  {
@@ -473,7 +473,7 @@
473
 
474
  if( is_array($item) ) {
475
 
476
- $holderData = Wbcr_FactoryForms445_Manager::$registered_holders[$item['type']];
477
  require_once($holderData['include']);
478
 
479
  $object = new $holderData['class']($item, $this);
@@ -491,7 +491,7 @@
491
  *
492
  * @since 1.0.0
493
  * @param mixed $item Item data.
494
- * @return Wbcr_FactoryForms445_FormElement A custom form element object.
495
  */
496
  public function createCustomElement($item)
497
  {
@@ -499,7 +499,7 @@
499
 
500
  if( is_array($item) ) {
501
 
502
- $data = Wbcr_FactoryForms445_Manager::$registered_custom_elements[$item['type']];
503
  require_once($data['include']);
504
 
505
  $options = $item;
@@ -523,12 +523,12 @@
523
  public function html($options = array())
524
  {
525
 
526
- if( !isset(Wbcr_FactoryForms445_Manager::$form_layouts[$this->form_layout]) ) {
527
  die(sprintf('[ERROR] The form layout %s was not found.', $this->form_layout));
528
  }
529
 
530
  // include a render code
531
- $layout_data = Wbcr_FactoryForms445_Manager::$form_layouts[$this->form_layout];
532
  require_once($layout_data['include']);
533
 
534
  $this->connectAssets();
@@ -552,7 +552,7 @@
552
  {
553
 
554
  $this->connectAssetsForItems();
555
- $layout_data = Wbcr_FactoryForms445_Manager::$form_layouts[$this->form_layout];
556
 
557
  if( $layout_data['name'] == 'default' ) {
558
  if( isset($layout_data['style']) ) {
@@ -602,9 +602,9 @@
602
 
603
  $haystack = array();
604
  if( self::isControl($type) ) {
605
- $haystack = Wbcr_FactoryForms445_Manager::$registered_controls;
606
  } elseif( self::isControlHolder($type) ) {
607
- $haystack = Wbcr_FactoryForms445_Manager::$registered_holders;
608
  }
609
 
610
  if( isset($haystack[$type]) ) {
@@ -660,7 +660,7 @@
660
  */
661
  public static function isControl($item)
662
  {
663
- return isset(Wbcr_FactoryForms445_Manager::$registered_controls[$item['type']]);
664
  }
665
 
666
  /**
@@ -672,7 +672,7 @@
672
  */
673
  public static function isControlHolder($item)
674
  {
675
- return isset(Wbcr_FactoryForms445_Manager::$registered_holders[$item['type']]);
676
  }
677
 
678
  /**
@@ -684,7 +684,7 @@
684
  */
685
  public static function isCustomElement($item)
686
  {
687
- return isset(Wbcr_FactoryForms445_Manager::$registered_custom_elements[$item['type']]);
688
  }
689
  }
690
  }
15
  }
16
 
17
  // creating a license manager for each plugin created via the factory
18
+ add_action('wbcr_factory_forms_446_plugin_created', 'wbcr_factory_forms_446_plugin_created');
19
 
20
+ function wbcr_factory_forms_446_plugin_created($plugin)
21
  {
22
+ $plugin->forms = new Wbcr_FactoryForms446_Manager($plugin);
23
  }
24
 
25
+ if( !class_exists('Wbcr_FactoryForms446_Manager') ) {
26
 
27
+ class Wbcr_FactoryForms446_Manager {
28
 
29
  // ----------------------------------------------------
30
  // Static fields and methods
57
  /**
58
  * Registers a set of new controls.
59
  *
60
+ * @see FactoryForms446_Form::registerControl()
61
  *
62
  * @since 1.0.0
63
  * @return void
95
  /**
96
  * Registers a set of new holder controls.
97
  *
98
+ * @see FactoryForms446_Form::registerHolder()
99
  *
100
  * @since 1.0.0
101
  * @return void
129
  /**
130
  * Registers a set of new custom form elements.
131
  *
132
+ * @see FactoryForms446_Form::registerCustomElement()
133
  *
134
  * @since 1.0.0
135
  * @return void
180
  public static $controls_registered = false;
181
  }
182
  }
183
+ if( !class_exists('Wbcr_FactoryForms446_Form') ) {
184
  /**
185
  * An abstraction for forms.
186
  */
187
+ class Wbcr_FactoryForms446_Form {
188
 
189
  // ----------------------------------------------------
190
  // Object fields and methods
194
  * A value provider of the form that is used to save and load values.
195
  *
196
  * @since 1.0.0
197
+ * @var Wbcr_IFactoryForms446_ValueProvider
198
  */
199
  private $provider;
200
 
245
  * A current form layout used to render a form.
246
  *
247
  * @since 1.0.0
248
+ * @var Wbcr_FactoryForms446_FormLayout
249
  */
250
  public $layout;
251
 
261
  *
262
  * @since 1.0.0
263
  * @param array $options
264
+ * @param Wbcr_Factory449_Plugin $plugin
265
  */
266
+ public function __construct(array $options, Wbcr_Factory449_Plugin $plugin)
267
  {
268
  // register controls once, when the first form is created
269
+ if( !Wbcr_FactoryForms446_Manager::$controls_registered ) {
270
 
271
+ do_action('wbcr_factory_forms_446_register_controls', $plugin);
272
 
273
  //if( !empty($plugin) ) {
274
+ do_action('wbcr_factory_forms_446_register_controls_' . $plugin->getPluginName(), $plugin);
275
  //}
276
 
277
+ Wbcr_FactoryForms446_Manager::$controls_registered = true;
278
  }
279
 
280
  $this->scope = isset($options['scope']) ? $options['scope'] : null;
289
  $this->form_layout = 'bootstrap-3';
290
  }
291
 
292
+ Wbcr_FactoryForms446_Manager::$temper = 'flat';
293
  }
294
 
295
  /**
296
  * Sets a provider for the control.
297
  *
298
  * @since 1.0.0
299
+ * @param Wbcr_IFactoryForms446_ValueProvider $provider
300
  * @return void
301
  */
302
  public function setProvider($provider)
332
  */
333
  public function getItems()
334
  {
335
+ return apply_filters('wbcr_factory_449_form_items', $this->items, $this->name);
336
  }
337
 
338
  /**
339
  * Returns form controls (control objects).
340
  *
341
  * @since 1.0.0
342
+ * @return Wbcr_FactoryForms446_Control[]
343
  */
344
  public function getControls()
345
  {
355
  * Builds a form items to the control objects ready to use.
356
  *
357
  * @param null $holder
358
+ * @return Wbcr_FactoryForms446_Control[]
359
  */
360
 
361
  public function createControls($holder = null)
395
  *
396
  * @since 1.0.0
397
  * @param array $item Item data.
398
+ * @return Wbcr_FactoryForms446_FormElement|null A form element.
399
  */
400
  public function createElement($item)
401
  {
417
  *
418
  * @since 1.0.0
419
  * @param mixed[] $item Data of items.
420
+ * @return Wbcr_FactoryForms446_FormElement[] Created elements.
421
  */
422
  public function createElements($items = array())
423
  {
433
  *
434
  * @since 1.0.0
435
  * @param array $item Item data.
436
+ * @return Wbcr_FactoryForms446_Control A control object.
437
  */
438
  public function createControl($item)
439
  {
441
 
442
  if( is_array($item) ) {
443
 
444
+ $control_data = Wbcr_FactoryForms446_Manager::$registered_controls[$item['type']];
445
 
446
  require_once($control_data['include']);
447
 
465
  *
466
  * @since 1.0.0
467
  * @param array $item Item data.
468
+ * @return Wbcr_FactoryForms446_Holder A control holder object.
469
  */
470
  public function createHolder($item)
471
  {
473
 
474
  if( is_array($item) ) {
475
 
476
+ $holderData = Wbcr_FactoryForms446_Manager::$registered_holders[$item['type']];
477
  require_once($holderData['include']);
478
 
479
  $object = new $holderData['class']($item, $this);
491
  *
492
  * @since 1.0.0
493
  * @param mixed $item Item data.
494
+ * @return Wbcr_FactoryForms446_FormElement A custom form element object.
495
  */
496
  public function createCustomElement($item)
497
  {
499
 
500
  if( is_array($item) ) {
501
 
502
+ $data = Wbcr_FactoryForms446_Manager::$registered_custom_elements[$item['type']];
503
  require_once($data['include']);
504
 
505
  $options = $item;
523
  public function html($options = array())
524
  {
525
 
526
+ if( !isset(Wbcr_FactoryForms446_Manager::$form_layouts[$this->form_layout]) ) {
527
  die(sprintf('[ERROR] The form layout %s was not found.', $this->form_layout));
528
  }
529
 
530
  // include a render code
531
+ $layout_data = Wbcr_FactoryForms446_Manager::$form_layouts[$this->form_layout];
532
  require_once($layout_data['include']);
533
 
534
  $this->connectAssets();
552
  {
553
 
554
  $this->connectAssetsForItems();
555
+ $layout_data = Wbcr_FactoryForms446_Manager::$form_layouts[$this->form_layout];
556
 
557
  if( $layout_data['name'] == 'default' ) {
558
  if( isset($layout_data['style']) ) {
602
 
603
  $haystack = array();
604
  if( self::isControl($type) ) {
605
+ $haystack = Wbcr_FactoryForms446_Manager::$registered_controls;
606
  } elseif( self::isControlHolder($type) ) {
607
+ $haystack = Wbcr_FactoryForms446_Manager::$registered_holders;
608
  }
609
 
610
  if( isset($haystack[$type]) ) {
660
  */
661
  public static function isControl($item)
662
  {
663
+ return isset(Wbcr_FactoryForms446_Manager::$registered_controls[$item['type']]);
664
  }
665
 
666
  /**
672
  */
673
  public static function isControlHolder($item)
674
  {
675
+ return isset(Wbcr_FactoryForms446_Manager::$registered_holders[$item['type']]);
676
  }
677
 
678
  /**
684
  */
685
  public static function isCustomElement($item)
686
  {
687
+ return isset(Wbcr_FactoryForms446_Manager::$registered_custom_elements[$item['type']]);
688
  }
689
  }
690
  }
libs/factory/forms/includes/holder.class.php CHANGED
@@ -14,20 +14,20 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_Holder') ) {
18
 
19
  /**
20
  * The base class for control holders.
21
  *
22
  * @since 1.0.0
23
  */
24
- abstract class Wbcr_FactoryForms445_Holder extends Wbcr_FactoryForms445_FormElement {
25
 
26
  /**
27
  * Holder Elements.
28
  *
29
  * @since 1.0.0
30
- * @var Wbcr_FactoryForms445_Control[]
31
  */
32
  protected $elements = array();
33
 
@@ -44,7 +44,7 @@
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
- * @param Wbcr_FactoryForms445_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
@@ -56,7 +56,7 @@
56
  * Returns holder elements.
57
  *
58
  * @since 1.0.0
59
- * @return Wbcr_FactoryForms445_Control[].
60
  */
61
  public function getElements()
62
  {
@@ -84,7 +84,7 @@
84
  $is_first_item = false;
85
  }
86
 
87
- do_action('wbcr_factory_448_form_before_element_' . $element->getOption('name'));
88
 
89
  // if a current item is a control holder
90
  if( $element->is_holder ) {
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_Holder') ) {
18
 
19
  /**
20
  * The base class for control holders.
21
  *
22
  * @since 1.0.0
23
  */
24
+ abstract class Wbcr_FactoryForms446_Holder extends Wbcr_FactoryForms446_FormElement {
25
 
26
  /**
27
  * Holder Elements.
28
  *
29
  * @since 1.0.0
30
+ * @var Wbcr_FactoryForms446_Control[]
31
  */
32
  protected $elements = array();
33
 
44
  *
45
  * @since 1.0.0
46
  * @param mixed[] $options A holder options.
47
+ * @param Wbcr_FactoryForms446_Form $form A parent form.
48
  */
49
  public function __construct($options, $form)
50
  {
56
  * Returns holder elements.
57
  *
58
  * @since 1.0.0
59
+ * @return Wbcr_FactoryForms446_Control[].
60
  */
61
  public function getElements()
62
  {
84
  $is_first_item = false;
85
  }
86
 
87
+ do_action('wbcr_factory_449_form_before_element_' . $element->getOption('name'));
88
 
89
  // if a current item is a control holder
90
  if( $element->is_holder ) {
libs/factory/forms/includes/html-builder.class.php CHANGED
@@ -14,13 +14,13 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_HtmlAttributeBuilder') ) {
18
  /**
19
  * Html Attribute Builder
20
  *
21
  * @since 1.0.0
22
  */
23
- class Wbcr_FactoryForms445_HtmlAttributeBuilder {
24
 
25
  /**
26
  * An array to store css classes.
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_HtmlAttributeBuilder') ) {
18
  /**
19
  * Html Attribute Builder
20
  *
21
  * @since 1.0.0
22
  */
23
+ class Wbcr_FactoryForms446_HtmlAttributeBuilder {
24
 
25
  /**
26
  * An array to store css classes.
libs/factory/forms/includes/providers/meta-value-provider.class.php CHANGED
@@ -14,7 +14,7 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_OptionsValueProvider') ) {
18
 
19
  /**
20
  * Factory Meta Value Provider
@@ -24,7 +24,7 @@
24
  *
25
  * @since 1.0.0
26
  */
27
- class Wbcr_FactoryForms445_MetaValueProvider implements Wbcr_IFactoryForms445_ValueProvider {
28
 
29
 
30
  public $scope;
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_OptionsValueProvider') ) {
18
 
19
  /**
20
  * Factory Meta Value Provider
24
  *
25
  * @since 1.0.0
26
  */
27
+ class Wbcr_FactoryForms446_MetaValueProvider implements Wbcr_IFactoryForms446_ValueProvider {
28
 
29
 
30
  public $scope;
libs/factory/forms/includes/providers/options-value-provider.class.php CHANGED
@@ -13,7 +13,7 @@
13
  exit;
14
  }
15
 
16
- if( !class_exists('Wbcr_FactoryForms445_OptionsValueProvider') ) {
17
 
18
  /**
19
  * Factory Options Value Provider
@@ -22,7 +22,7 @@
22
  *
23
  * @since 1.0.0
24
  */
25
- class Wbcr_FactoryForms445_OptionsValueProvider implements Wbcr_IFactoryForms445_ValueProvider {
26
 
27
  /**
28
  * A prefix that will be added to all option names.
@@ -43,7 +43,7 @@
43
  /**
44
  * Creates a new instance of an options value provider.
45
  */
46
- public function __construct(Wbcr_Factory448_Plugin $plugin)
47
  {
48
  $this->plugin = $plugin;
49
  }
13
  exit;
14
  }
15
 
16
+ if( !class_exists('Wbcr_FactoryForms446_OptionsValueProvider') ) {
17
 
18
  /**
19
  * Factory Options Value Provider
22
  *
23
  * @since 1.0.0
24
  */
25
+ class Wbcr_FactoryForms446_OptionsValueProvider implements Wbcr_IFactoryForms446_ValueProvider {
26
 
27
  /**
28
  * A prefix that will be added to all option names.
43
  /**
44
  * Creates a new instance of an options value provider.
45
  */
46
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
47
  {
48
  $this->plugin = $plugin;
49
  }
libs/factory/forms/includes/providers/value-provider.interface.php CHANGED
@@ -14,13 +14,13 @@
14
  if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
- if( !class_exists('Wbcr_IFactoryForms445_ValueProvider') ) {
18
  /**
19
  * The interface for all value provides.
20
  *
21
  * @since 1.0.0
22
  */
23
- interface Wbcr_IFactoryForms445_ValueProvider {
24
 
25
  /**
26
  * Inits a form a provider to get data from a storage.
14
  if( !defined('ABSPATH') ) {
15
  exit;
16
  }
17
+ if( !class_exists('Wbcr_IFactoryForms446_ValueProvider') ) {
18
  /**
19
  * The interface for all value provides.
20
  *
21
  * @since 1.0.0
22
  */
23
+ interface Wbcr_IFactoryForms446_ValueProvider {
24
 
25
  /**
26
  * Inits a form a provider to get data from a storage.
libs/factory/forms/langs/{wbcr_factory_forms_445-ru_RU.mo → wbcr_factory_forms_446-ru_RU.mo} RENAMED
File without changes
libs/factory/forms/langs/{wbcr_factory_forms_445-ru_RU.po → wbcr_factory_forms_446-ru_RU.po} RENAMED
File without changes
libs/factory/forms/layouts/bootstrap-3/bootstrap-3.php CHANGED
@@ -14,11 +14,11 @@
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryForms445_Bootstrap3FormLayout') ) {
18
  /**
19
  * A form layout based on Twitter Bootstrap 3
20
  */
21
- class Wbcr_FactoryForms445_Bootstrap3FormLayout extends Wbcr_FactoryForms445_FormLayout {
22
 
23
  public $name = 'default';
24
 
@@ -27,7 +27,7 @@
27
  *
28
  * @since 1.0.0
29
  * @param array $options A holder options.
30
- * @param Wbcr_FactoryForms445_Form $form A parent form.
31
  */
32
  public function __construct($options, $form)
33
  {
@@ -68,7 +68,7 @@
68
  }
69
 
70
  /**
71
- * @param Wbcr_FactoryForms445_Control $control
72
  */
73
  public function beforeControl($control)
74
  {
@@ -116,7 +116,7 @@
116
  }
117
 
118
  /**
119
- * @param Wbcr_FactoryForms445_Control $control
120
  */
121
  public function afterControl($control)
122
  {
@@ -168,7 +168,7 @@
168
  }
169
 
170
  /**
171
- * @param Wbcr_FactoryForms445_Control $control
172
  * @param int $index
173
  * @param int $total
174
  */
@@ -193,7 +193,7 @@
193
  }
194
 
195
  /**
196
- * @param Wbcr_FactoryForms445_Control $control
197
  * @param int $index
198
  * @param int $total
199
  */
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryForms446_Bootstrap3FormLayout') ) {
18
  /**
19
  * A form layout based on Twitter Bootstrap 3
20
  */
21
+ class Wbcr_FactoryForms446_Bootstrap3FormLayout extends Wbcr_FactoryForms446_FormLayout {
22
 
23
  public $name = 'default';
24
 
27
  *
28
  * @since 1.0.0
29
  * @param array $options A holder options.
30
+ * @param Wbcr_FactoryForms446_Form $form A parent form.
31
  */
32
  public function __construct($options, $form)
33
  {
68
  }
69
 
70
  /**
71
+ * @param Wbcr_FactoryForms446_Control $control
72
  */
73
  public function beforeControl($control)
74
  {
116
  }
117
 
118
  /**
119
+ * @param Wbcr_FactoryForms446_Control $control
120
  */
121
  public function afterControl($control)
122
  {
168
  }
169
 
170
  /**
171
+ * @param Wbcr_FactoryForms446_Control $control
172
  * @param int $index
173
  * @param int $total
174
  */
193
  }
194
 
195
  /**
196
+ * @param Wbcr_FactoryForms446_Control $control
197
  * @param int $index
198
  * @param int $total
199
  */
libs/factory/freemius/boot.php CHANGED
@@ -14,39 +14,39 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( defined('FACTORY_FREEMIUS_136_LOADED') ) {
18
  return;
19
  }
20
 
21
- define('FACTORY_FREEMIUS_136_VERSION', '1.3.6');
22
 
23
- define('FACTORY_FREEMIUS_136_LOADED', true);
24
- define('FACTORY_FREEMIUS_136_DIR', dirname(__FILE__));
25
- define('FACTORY_FREEMIUS_136_URL', plugins_url(null, __FILE__));
26
 
27
  #comp merge
28
  // Freemius
29
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/entities/class-freemius-entity.php');
30
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/entities/class-freemius-scope.php');
31
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/entities/class-freemius-user.php');
32
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/entities/class-freemius-site.php');
33
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/entities/class-freemius-license.php');
34
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/licensing/class-freemius-provider.php');
35
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/updates/class-freemius-repository.php');
36
 
37
  if( !class_exists('Freemius_Api_WordPress') ) {
38
- require_once FACTORY_FREEMIUS_136_DIR . '/includes/sdk/FreemiusWordPress.php';
39
  }
40
 
41
- require_once(FACTORY_FREEMIUS_136_DIR . '/includes/class-freemius-api.php');
42
 
43
  /**
44
- * @param Wbcr_Factory448_Plugin $plugin
45
  */
46
- add_action('wbcr_factory_freemius_136_plugin_created', function ($plugin) {
47
  # Устанавливаем класс провайдера лицензий для премиум менеджера
48
- $plugin->set_license_provider('freemius', 'WBCR\Factory_Freemius_136\Premium\Provider');
49
  # Устанавливаем класс репозитория обновлений для менеджера обновлений
50
- $plugin->set_update_repository('freemius', 'WBCR\Factory_Freemius_136\Updates\Freemius_Repository');
51
  });
52
  #endcomp
14
  exit;
15
  }
16
 
17
+ if( defined('FACTORY_FREEMIUS_137_LOADED') ) {
18
  return;
19
  }
20
 
21
+ define('FACTORY_FREEMIUS_137_VERSION', '1.3.7');
22
 
23
+ define('FACTORY_FREEMIUS_137_LOADED', true);
24
+ define('FACTORY_FREEMIUS_137_DIR', dirname(__FILE__));
25
+ define('FACTORY_FREEMIUS_137_URL', plugins_url(null, __FILE__));
26
 
27
  #comp merge
28
  // Freemius
29
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/entities/class-freemius-entity.php');
30
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/entities/class-freemius-scope.php');
31
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/entities/class-freemius-user.php');
32
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/entities/class-freemius-site.php');
33
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/entities/class-freemius-license.php');
34
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/licensing/class-freemius-provider.php');
35
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/updates/class-freemius-repository.php');
36
 
37
  if( !class_exists('Freemius_Api_WordPress') ) {
38
+ require_once FACTORY_FREEMIUS_137_DIR . '/includes/sdk/FreemiusWordPress.php';
39
  }
40
 
41
+ require_once(FACTORY_FREEMIUS_137_DIR . '/includes/class-freemius-api.php');
42
 
43
  /**
44
+ * @param Wbcr_Factory449_Plugin $plugin
45
  */
46
+ add_action('wbcr_factory_freemius_137_plugin_created', function ($plugin) {
47
  # Устанавливаем класс провайдера лицензий для премиум менеджера
48
+ $plugin->set_license_provider('freemius', 'WBCR\Factory_Freemius_137\Premium\Provider');
49
  # Устанавливаем класс репозитория обновлений для менеджера обновлений
50
+ $plugin->set_update_repository('freemius', 'WBCR\Factory_Freemius_137\Updates\Freemius_Repository');
51
  });
52
  #endcomp
libs/factory/freemius/includes/class-freemius-api.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136;
4
 
5
  use Freemius_Api_WordPress;
6
  use Freemius_Exception;
7
- use Wbcr_Factory448_Plugin;
8
 
9
  if ( ! defined( 'ABSPATH' ) ) {
10
  exit;
@@ -33,7 +33,7 @@ final class Api {
33
  private $api;
34
 
35
  /**
36
- * @var Wbcr_Factory448_Plugin
37
  */
38
  private $plugin;
39
 
@@ -48,14 +48,14 @@ final class Api {
48
  private static $clock_diff;
49
 
50
  /**
51
- * @param Wbcr_Factory448_Plugin $slug
52
  * @param string $scope 'app', 'developer', 'user' or 'install'.
53
  * @param number $id Element's id.
54
  * @param string $public_key Public key.
55
  * @param bool|string $secret_key Element's secret key.
56
  * @param bool $is_sandbox
57
  */
58
- private function __construct( Wbcr_Factory448_Plugin $plugin, $scope, $id, $public_key, $secret_key, $is_sandbox ) {
59
  if ( ! class_exists( 'Freemius_Api_WordPress' ) ) {
60
  require_once WP_FS__DIR_SDK . '/FreemiusWordPress.php';
61
  }
@@ -73,7 +73,7 @@ final class Api {
73
  }
74
 
75
  /**
76
- * @param Wbcr_Factory448_Plugin $plugin
77
  * @param string $scope 'app', 'developer', 'user' or 'install'.
78
  * @param number $id Element's id.
79
  * @param string $public_key Public key.
@@ -82,7 +82,7 @@ final class Api {
82
  *
83
  * @return Api
84
  */
85
- public static function instance( Wbcr_Factory448_Plugin $plugin, $scope, $id, $public_key, $is_sandbox, $secret_key = false ) {
86
  $identifier = md5( $plugin->getPluginName() . $scope . $id . $public_key . ( is_string( $secret_key ) ? $secret_key : '' ) . json_encode( $is_sandbox ) );
87
 
88
  if ( ! isset( self::$instances[ $identifier ] ) ) {
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137;
4
 
5
  use Freemius_Api_WordPress;
6
  use Freemius_Exception;
7
+ use Wbcr_Factory449_Plugin;
8
 
9
  if ( ! defined( 'ABSPATH' ) ) {
10
  exit;
33
  private $api;
34
 
35
  /**
36
+ * @var Wbcr_Factory449_Plugin
37
  */
38
  private $plugin;
39
 
48
  private static $clock_diff;
49
 
50
  /**
51
+ * @param Wbcr_Factory449_Plugin $slug
52
  * @param string $scope 'app', 'developer', 'user' or 'install'.
53
  * @param number $id Element's id.
54
  * @param string $public_key Public key.
55
  * @param bool|string $secret_key Element's secret key.
56
  * @param bool $is_sandbox
57
  */
58
+ private function __construct( Wbcr_Factory449_Plugin $plugin, $scope, $id, $public_key, $secret_key, $is_sandbox ) {
59
  if ( ! class_exists( 'Freemius_Api_WordPress' ) ) {
60
  require_once WP_FS__DIR_SDK . '/FreemiusWordPress.php';
61
  }
73
  }
74
 
75
  /**
76
+ * @param Wbcr_Factory449_Plugin $plugin
77
  * @param string $scope 'app', 'developer', 'user' or 'install'.
78
  * @param number $id Element's id.
79
  * @param string $public_key Public key.
82
  *
83
  * @return Api
84
  */
85
+ public static function instance( Wbcr_Factory449_Plugin $plugin, $scope, $id, $public_key, $is_sandbox, $secret_key = false ) {
86
  $identifier = md5( $plugin->getPluginName() . $scope . $id . $public_key . ( is_string( $secret_key ) ? $secret_key : '' ) . json_encode( $is_sandbox ) );
87
 
88
  if ( ! isset( self::$instances[ $identifier ] ) ) {
libs/factory/freemius/includes/entities/class-freemius-entity.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  use stdClass;
6
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  use stdClass;
6
 
libs/factory/freemius/includes/entities/class-freemius-license.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  use stdClass;
6
 
@@ -14,7 +14,7 @@
14
  * @copyright (c) 2018 Webraftic Ltd, Freemius, Inc.
15
  * @version 1.0
16
  */
17
- class License extends Entity implements \WBCR\Factory_448\Premium\Interfaces\License {
18
 
19
  /**
20
  * @var number
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  use stdClass;
6
 
14
  * @copyright (c) 2018 Webraftic Ltd, Freemius, Inc.
15
  * @version 1.0
16
  */
17
+ class License extends Entity implements \WBCR\Factory_449\Premium\Interfaces\License {
18
 
19
  /**
20
  * @var number
libs/factory/freemius/includes/entities/class-freemius-plugin.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  use stdClass;
6
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  use stdClass;
6
 
libs/factory/freemius/includes/entities/class-freemius-scope.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  use stdClass;
6
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  use stdClass;
6
 
libs/factory/freemius/includes/entities/class-freemius-site.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  use stdClass;
6
 
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  use stdClass;
6
 
libs/factory/freemius/includes/entities/class-freemius-user.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Entities;
4
 
5
  if ( ! defined( 'ABSPATH' ) ) {
6
  exit;
libs/factory/freemius/includes/licensing/class-freemius-provider.php CHANGED
@@ -1,14 +1,14 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Premium;
4
-
5
- use WBCR\Factory_Freemius_136\Entities\License;
6
- use WBCR\Factory_Freemius_136\Entities\Plugin;
7
- use WBCR\Factory_Freemius_136\Entities\Site;
8
- use WBCR\Factory_Freemius_136\Entities\User;
9
- use WBCR\Factory_448\Premium\Provider as License_Provider;
10
- use Wbcr_Factory448_Plugin;
11
- use WBCR\Factory_Freemius_136\Api;
12
  use WP_Error;
13
  use Exception;
14
 
@@ -40,17 +40,17 @@ final class Provider extends License_Provider {
40
  private $slug;
41
 
42
  /**
43
- * @var \WBCR\Factory_Freemius_136\Api
44
  */
45
  private $site_api;
46
 
47
  /**
48
- * @var \WBCR\Factory_Freemius_136\Api
49
  */
50
  private $plugin_api;
51
 
52
  /**
53
- * @var \WBCR\Factory_Freemius_136\Api
54
  */
55
  private $user_api;
56
 
@@ -82,11 +82,11 @@ final class Provider extends License_Provider {
82
  /**
83
  * Manager constructor.
84
  *
85
- * @param Wbcr_Factory448_Plugin $plugin
86
  *
87
  * @throws Exception
88
  */
89
- public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings)
90
  {
91
  parent::__construct($plugin, $settings);
92
 
@@ -150,7 +150,7 @@ final class Provider extends License_Provider {
150
  }
151
 
152
  /**
153
- * @return \WBCR\Factory_Freemius_136\Entities\License|null
154
  * @throws Exception
155
  */
156
  public function get_license()
@@ -180,7 +180,7 @@ final class Provider extends License_Provider {
180
  try {
181
  return $this->get_api_site_scope($this->license_site)->get_signed_url($endpoint);
182
  } catch( \Freemius_Exception $e ) {
183
- throw new Exception($e->getMessage(), $e->getCode());
184
  }
185
  }
186
 
@@ -208,7 +208,7 @@ final class Provider extends License_Provider {
208
  throw new Exception("Freemius API ERROR:" . $error);
209
  }
210
  } catch( \Freemius_Exception $e ) {
211
- throw new Exception($e->getMessage(), $e->getCode());
212
  }
213
 
214
  return $latest;
@@ -234,7 +234,7 @@ final class Provider extends License_Provider {
234
  throw new Exception($updates->error);
235
  }
236
  } catch( \Freemius_Exception $e ) {
237
- throw new Exception($e->getMessage(), $e->getCode());
238
  }
239
 
240
  return $updates;
@@ -613,7 +613,7 @@ final class Provider extends License_Provider {
613
  /**
614
  * @param bool $flush
615
  *
616
- * @return \WBCR\Factory_Freemius_136\Api
617
  * @throws Exception
618
  */
619
  private function get_api_user_scope(User $user, $flush = false)
@@ -628,7 +628,7 @@ final class Provider extends License_Provider {
628
  /**
629
  * @param bool $flush
630
  *
631
- * @return \WBCR\Factory_Freemius_136\Api
632
  * @throws Exception
633
  */
634
  private function get_api_site_scope(Site $site, $flush = false)
@@ -643,7 +643,7 @@ final class Provider extends License_Provider {
643
  /**
644
  * Get plugin public API scope.
645
  *
646
- * @return \WBCR\Factory_Freemius_136\Api
647
  * @throws Exception
648
  */
649
  private function get_api_plugin_scope()
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Premium;
4
+
5
+ use WBCR\Factory_Freemius_137\Entities\License;
6
+ use WBCR\Factory_Freemius_137\Entities\Plugin;
7
+ use WBCR\Factory_Freemius_137\Entities\Site;
8
+ use WBCR\Factory_Freemius_137\Entities\User;
9
+ use WBCR\Factory_449\Premium\Provider as License_Provider;
10
+ use Wbcr_Factory449_Plugin;
11
+ use WBCR\Factory_Freemius_137\Api;
12
  use WP_Error;
13
  use Exception;
14
 
40
  private $slug;
41
 
42
  /**
43
+ * @var \WBCR\Factory_Freemius_137\Api
44
  */
45
  private $site_api;
46
 
47
  /**
48
+ * @var \WBCR\Factory_Freemius_137\Api
49
  */
50
  private $plugin_api;
51
 
52
  /**
53
+ * @var \WBCR\Factory_Freemius_137\Api
54
  */
55
  private $user_api;
56
 
82
  /**
83
  * Manager constructor.
84
  *
85
+ * @param Wbcr_Factory449_Plugin $plugin
86
  *
87
  * @throws Exception
88
  */
89
+ public function __construct(Wbcr_Factory449_Plugin $plugin, array $settings)
90
  {
91
  parent::__construct($plugin, $settings);
92
 
150
  }
151
 
152
  /**
153
+ * @return \WBCR\Factory_Freemius_137\Entities\License|null
154
  * @throws Exception
155
  */
156
  public function get_license()
180
  try {
181
  return $this->get_api_site_scope($this->license_site)->get_signed_url($endpoint);
182
  } catch( \Freemius_Exception $e ) {
183
+ throw new Exception($e->getMessage());
184
  }
185
  }
186
 
208
  throw new Exception("Freemius API ERROR:" . $error);
209
  }
210
  } catch( \Freemius_Exception $e ) {
211
+ throw new Exception($e->getMessage());
212
  }
213
 
214
  return $latest;
234
  throw new Exception($updates->error);
235
  }
236
  } catch( \Freemius_Exception $e ) {
237
+ throw new Exception($e->getMessage());
238
  }
239
 
240
  return $updates;
613
  /**
614
  * @param bool $flush
615
  *
616
+ * @return \WBCR\Factory_Freemius_137\Api
617
  * @throws Exception
618
  */
619
  private function get_api_user_scope(User $user, $flush = false)
628
  /**
629
  * @param bool $flush
630
  *
631
+ * @return \WBCR\Factory_Freemius_137\Api
632
  * @throws Exception
633
  */
634
  private function get_api_site_scope(Site $site, $flush = false)
643
  /**
644
  * Get plugin public API scope.
645
  *
646
+ * @return \WBCR\Factory_Freemius_137\Api
647
  * @throws Exception
648
  */
649
  private function get_api_plugin_scope()
libs/factory/freemius/includes/updates/class-freemius-repository.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Freemius_136\Updates;
4
 
5
  // Exit if accessed directly
6
  use Exception;
7
- use Wbcr_Factory448_Plugin;
8
- use WBCR\Factory_448\Updates\Repository;
9
 
10
  if( !defined('ABSPATH') ) {
11
  exit;
@@ -20,19 +20,19 @@ if( !defined('ABSPATH') ) {
20
  class Freemius_Repository extends Repository {
21
 
22
  /**
23
- * @var \WBCR\Factory_Freemius_136\Premium\Provider
24
  */
25
  private $premium;
26
 
27
  /**
28
  * Freemius constructor.
29
- * @param Wbcr_Factory448_Plugin $plugin
30
  *
31
  * @throws Exception
32
  * @since 4.0.0
33
  *
34
  */
35
- public function __construct(Wbcr_Factory448_Plugin $plugin, array $settings = [])
36
  {
37
  $this->plugin = $plugin;
38
  $this->premium = $this->plugin->premium;
@@ -43,7 +43,7 @@ class Freemius_Repository extends Repository {
43
  */
44
  public function init()
45
  {
46
- if( !$this->premium instanceof \WBCR\Factory_Freemius_136\Premium\Provider ) {
47
  throw new Exception("This repository type requires Freemius premium provider.");
48
  }
49
 
@@ -98,7 +98,7 @@ class Freemius_Repository extends Repository {
98
  }
99
  } catch( Exception $e ) {
100
  if( defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG ) {
101
- throw new Exception($e->getMessage(), $e->getCode());
102
  }
103
 
104
  return null;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Freemius_137\Updates;
4
 
5
  // Exit if accessed directly
6
  use Exception;
7
+ use Wbcr_Factory449_Plugin;
8
+ use WBCR\Factory_449\Updates\Repository;
9
 
10
  if( !defined('ABSPATH') ) {
11
  exit;
20
  class Freemius_Repository extends Repository {
21
 
22
  /**
23
+ * @var \WBCR\Factory_Freemius_137\Premium\Provider
24
  */
25
  private $premium;
26
 
27
  /**
28
  * Freemius constructor.
29
+ * @param Wbcr_Factory449_Plugin $plugin
30
  *
31
  * @throws Exception
32
  * @since 4.0.0
33
  *
34
  */
35
+ public function __construct(Wbcr_Factory449_Plugin $plugin, array $settings = [])
36
  {
37
  $this->plugin = $plugin;
38
  $this->premium = $this->plugin->premium;
43
  */
44
  public function init()
45
  {
46
+ if( !$this->premium instanceof \WBCR\Factory_Freemius_137\Premium\Provider ) {
47
  throw new Exception("This repository type requires Freemius premium provider.");
48
  }
49
 
98
  }
99
  } catch( Exception $e ) {
100
  if( defined('FACTORY_UPDATES_DEBUG') && FACTORY_UPDATES_DEBUG ) {
101
+ throw new Exception($e->getMessage());
102
  }
103
 
104
  return null;
libs/factory/logger/assets/js/logger.js CHANGED
@@ -1,4 +1,4 @@
1
- function wbcr_factory_logger_113_LogCleanup(element) {
2
  var btn = jQuery(element),
3
  currentBtnText = btn.html();
4
 
@@ -10,18 +10,18 @@ function wbcr_factory_logger_113_LogCleanup(element) {
10
  url: ajaxurl,
11
  method: 'post',
12
  data: {
13
- action: 'wbcr_factory_logger_113_logs_cleanup',
14
- nonce: wbcr_factory_logger_113.clean_logs_nonce
15
  },
16
  success: function (data) {
17
  btn.html(currentBtnText);
18
 
19
  jQuery('#wbcr-log-viewer').html('');
20
  jQuery('#wbcr-log-size').text('0B');
21
- jQuery.wbcr_factory_clearfy_240.app.showNotice(data.message, data.type);
22
  },
23
  error: function (jqXHR, textStatus, errorThrown) {
24
- jQuery.wbcr_factory_clearfy_240.app.showNotice('Error: ' + errorThrown + ', status: ' + textStatus, 'danger');
25
  btn.html(currentBtnText);
26
  }
27
  });
1
+ function wbcr_factory_logger_114_LogCleanup(element) {
2
  var btn = jQuery(element),
3
  currentBtnText = btn.html();
4
 
10
  url: ajaxurl,
11
  method: 'post',
12
  data: {
13
+ action: 'wbcr_factory_logger_114_logs_cleanup',
14
+ nonce: wbcr_factory_logger_114.clean_logs_nonce
15
  },
16
  success: function (data) {
17
  btn.html(currentBtnText);
18
 
19
  jQuery('#wbcr-log-viewer').html('');
20
  jQuery('#wbcr-log-size').text('0B');
21
+ jQuery.wbcr_factory_templates_101.app.showNotice(data.message, data.type);
22
  },
23
  error: function (jqXHR, textStatus, errorThrown) {
24
+ jQuery.wbcr_factory_templates_101.app.showNotice('Error: ' + errorThrown + ', status: ' + textStatus, 'danger');
25
  btn.html(currentBtnText);
26
  }
27
  });
libs/factory/logger/boot.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- use WBCR\Factory_Logger_113\Logger;
4
 
5
  /**
6
  * Factory Logger
@@ -11,7 +11,7 @@ use WBCR\Factory_Logger_113\Logger;
11
  * @package factory-logger
12
  * @copyright (c) 2020, Webcraftic Ltd
13
  *
14
- * @version 1.1.1
15
  */
16
 
17
  // Exit if accessed directly
@@ -19,30 +19,31 @@ if( !defined('ABSPATH') ) {
19
  exit;
20
  }
21
 
22
- if( defined('FACTORY_LOGGER_113_LOADED') || (defined('FACTORY_LOGGER_STOP') && FACTORY_LOGGER_STOP) ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_LOGGER_113_LOADED', true);
27
- define('FACTORY_LOGGER_113_VERSION', '1.1.3');
28
- define('FACTORY_LOGGER_113_DIR', dirname(__FILE__));
29
- define('FACTORY_LOGGER_113_URL', plugins_url(null, __FILE__));
30
 
31
- load_plugin_textdomain('wbcr_factory_logger_113', false, dirname(plugin_basename(__FILE__)) . '/langs');
32
 
33
- require_once(FACTORY_LOGGER_113_DIR . '/includes/class-logger.php');
34
 
35
  if( is_admin() ) {
36
- require_once(FACTORY_LOGGER_113_DIR . '/includes/class-log-export.php');
37
- require_once(FACTORY_LOGGER_113_DIR . '/pages/class-logger-impressive-page.php');
38
- require_once(FACTORY_LOGGER_113_DIR . '/pages/class-logger-admin-page.php');
 
39
  }
40
 
41
  /**
42
- * @param Wbcr_Factory448_Plugin $plugin
43
  */
44
- add_action('wbcr_factory_logger_113_plugin_created', function ($plugin) {
45
- /* @var Wbcr_Factory448_Plugin $plugin */
46
 
47
  /* Settings of Logger
48
  $settings = [
@@ -53,7 +54,7 @@ add_action('wbcr_factory_logger_113_plugin_created', function ($plugin) {
53
  'rotate_limit' => 3,
54
  ];
55
 
56
- $plugin->set_logger( "WBCR\Factory_Logger_113\Logger", $settings );
57
  */
58
- $plugin->set_logger("WBCR\Factory_Logger_113\Logger");
59
  });
1
  <?php
2
 
3
+ use WBCR\Factory_Logger_114\Logger;
4
 
5
  /**
6
  * Factory Logger
11
  * @package factory-logger
12
  * @copyright (c) 2020, Webcraftic Ltd
13
  *
14
+ * @version 1.1.4
15
  */
16
 
17
  // Exit if accessed directly
19
  exit;
20
  }
21
 
22
+ if( defined('FACTORY_LOGGER_114_LOADED') || (defined('FACTORY_LOGGER_STOP') && FACTORY_LOGGER_STOP) ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_LOGGER_114_LOADED', true);
27
+ define('FACTORY_LOGGER_114_VERSION', '1.1.4');
28
+ define('FACTORY_LOGGER_114_DIR', dirname(__FILE__));
29
+ define('FACTORY_LOGGER_114_URL', plugins_url(null, __FILE__));
30
 
31
+ load_plugin_textdomain('wbcr_factory_logger_114', false, dirname(plugin_basename(__FILE__)) . '/langs');
32
 
33
+ require_once(FACTORY_LOGGER_114_DIR . '/includes/class-logger.php');
34
 
35
  if( is_admin() ) {
36
+ require_once(FACTORY_LOGGER_114_DIR . '/includes/class-log-export.php');
37
+ require_once(FACTORY_LOGGER_114_DIR . '/pages/class-logger-impressive-page.php');
38
+ require_once(FACTORY_LOGGER_114_DIR . '/pages/class-logger-impressive-lite.php');
39
+ require_once(FACTORY_LOGGER_114_DIR . '/pages/class-logger-admin-page.php');
40
  }
41
 
42
  /**
43
+ * @param Wbcr_Factory449_Plugin $plugin
44
  */
45
+ add_action('wbcr_factory_logger_114_plugin_created', function ($plugin) {
46
+ /* @var Wbcr_Factory449_Plugin $plugin */
47
 
48
  /* Settings of Logger
49
  $settings = [
54
  'rotate_limit' => 3,
55
  ];
56
 
57
+ $plugin->set_logger( "WBCR\Factory_Logger_114\Logger", $settings );
58
  */
59
+ $plugin->set_logger("WBCR\Factory_Logger_114\Logger");
60
  });
libs/factory/logger/includes/class-log-export.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Logger_113;
4
 
5
  /**
6
  * Prepares export files, ZIPs them and allows to download the package.
1
  <?php
2
 
3
+ namespace WBCR\Factory_Logger_114;
4
 
5
  /**
6
  * Prepares export files, ZIPs them and allows to download the package.
libs/factory/logger/includes/class-logger.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Logger_113;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
@@ -48,7 +48,7 @@ class Logger {
48
  const LEVEL_DEBUG = 'debug';
49
 
50
  /**
51
- * @var \Wbcr_Factory448_Plugin Plugin class.
52
  */
53
  public $plugin;
54
 
@@ -92,7 +92,7 @@ class Logger {
92
  /**
93
  * Logger constructor.
94
  *
95
- * @param \Wbcr_Factory448_Plugin $plugin
96
  * @param array $settings
97
  */
98
  public function __construct( $plugin, $settings = [] ) {
@@ -357,7 +357,7 @@ class Logger {
357
  /**
358
  * Get Export object.
359
  *
360
- * @return bool|string
361
  */
362
  public function get_export() {
363
  return new Log_Export( $this, "{$this->plugin->plugin_slug}_log_export-{datetime}.zip" );
@@ -381,7 +381,7 @@ class Logger {
381
  //}
382
  //}
383
 
384
- $this->_logs[] = $this->get_format( $level, $message );
385
 
386
  if ( count( $this->_logs ) >= $this->flush_interval ) {
387
  $this->flush();
@@ -453,6 +453,7 @@ class Logger {
453
  $content = $this->get_content();
454
  $replace = "<div class='wbcr-log-row wbcr_logger_level_$4'><strong>$1 $2</strong> [$3]<div class='wbcr_logger_level'>$4</div>$5</div>";
455
 
 
456
  $content = preg_replace( "/^(\S+)\s*(\S+)\s*\[(.+)\]\s*\[(.+)\]\s*(.*)$/m", $replace, $content );
457
 
458
  return $content;
1
  <?php
2
 
3
+ namespace WBCR\Factory_Logger_114;
4
 
5
  // Exit if accessed directly
6
  if ( ! defined( 'ABSPATH' ) ) {
48
  const LEVEL_DEBUG = 'debug';
49
 
50
  /**
51
+ * @var \Wbcr_Factory449_Plugin Plugin class.
52
  */
53
  public $plugin;
54
 
92
  /**
93
  * Logger constructor.
94
  *
95
+ * @param \Wbcr_Factory449_Plugin $plugin
96
  * @param array $settings
97
  */
98
  public function __construct( $plugin, $settings = [] ) {
357
  /**
358
  * Get Export object.
359
  *
360
+ * @return bool|Log_Export
361
  */
362
  public function get_export() {
363
  return new Log_Export( $this, "{$this->plugin->plugin_slug}_log_export-{datetime}.zip" );
381
  //}
382
  //}
383
 
384
+ $this->_logs[] = $this->get_format( $level, htmlspecialchars( $message ) );
385
 
386
  if ( count( $this->_logs ) >= $this->flush_interval ) {
387
  $this->flush();
453
  $content = $this->get_content();
454
  $replace = "<div class='wbcr-log-row wbcr_logger_level_$4'><strong>$1 $2</strong> [$3]<div class='wbcr_logger_level'>$4</div>$5</div>";
455
 
456
+ $content = str_replace( [ "\n", "\r<br>" ], [ "<br>", "\r\n" ], $content );
457
  $content = preg_replace( "/^(\S+)\s*(\S+)\s*\[(.+)\]\s*\[(.+)\]\s*(.*)$/m", $replace, $content );
458
 
459
  return $content;
libs/factory/logger/langs/{wbcr_factory_logger_113-ru_RU.mo → wbcr_factory_logger_114-ru_RU.mo} RENAMED
File without changes
libs/factory/logger/langs/{wbcr_factory_logger_113-ru_RU.po → wbcr_factory_logger_114-ru_RU.po} RENAMED
File without changes
libs/factory/logger/pages/class-logger-admin-page.php CHANGED
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  * @copyright (c) 2020, Webcraftic
13
  * @version 1.0
14
  */
15
- class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
16
 
17
  /**
18
  * {@inheritdoc}
@@ -30,16 +30,16 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
30
  public $type = 'page';
31
 
32
  /**
33
- * @param Wbcr_Factory448_Plugin $plugin
34
  */
35
  public function __construct( $plugin ) {
36
  $this->id = $plugin->getPrefix() . "logger";
37
 
38
- $this->menu_title = __( 'Plugin Log', 'wbcr_factory_logger_113' );
39
- $this->page_title = __( 'Plugin log', 'wbcr_factory_logger_113' );
40
  $this->capabilitiy = "manage_options";
41
 
42
- add_action( 'wp_ajax_wbcr_factory_logger_113_logs_cleanup', [ $this, 'ajax_cleanup' ] );
43
 
44
  parent::__construct( $plugin );
45
  }
@@ -53,10 +53,10 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
53
  public function assets( $scripts, $styles ) {
54
  parent::assets( $scripts, $styles );
55
 
56
- $this->styles->add( FACTORY_LOGGER_113_URL . '/assets/css/logger.css' );
57
- $this->scripts->add( FACTORY_LOGGER_113_URL . '/assets/js/logger.js', [ 'jquery' ], 'wbcr_factory_logger_113', FACTORY_LOGGER_113_VERSION );
58
- wp_localize_script( 'wbcr_factory_logger_113', 'wbcr_factory_logger_113', [
59
- 'clean_logs_nonce' => wp_create_nonce( 'wbcr_factory_logger_113_clean_logs' ),
60
  ] );
61
  }
62
 
@@ -64,7 +64,7 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
64
  * {@inheritdoc}
65
  */
66
  public function getMenuTitle() {
67
- return __( 'Plugin Log', 'wbcr_factory_logger_113' );
68
  }
69
 
70
  /**
@@ -81,22 +81,22 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
81
  $buttons = "
82
  <div class='wbcr_factory_logger_buttons'>
83
  <a href='" . wp_nonce_url( $this->getActionUrl( 'export' ) ) . "'
84
- class='button button-primary'>" . __( 'Export Debug Information', 'wbcr_factory_logger_113' ) . "</a>
85
  <a href='#'
86
  class='button button-secondary'
87
- onclick='wbcr_factory_logger_113_LogCleanup(this);return false;'
88
- data-working='" . __( 'Working...', 'wbcr_factory_logger_113' ) . "'>" .
89
- sprintf( __( 'Clean-up Logs (<span id="wbcr-log-size">%s</span>)', 'wbcr_factory_logger_113' ), $this->get_log_size_formatted() ) . "
90
  </a>
91
  </div>";
92
 
93
  ?>
94
  <div class="wbcr_factory_logger_container">
95
  <div class="wbcr_factory_logger_page_title">
96
- <h1><?php _e( 'Logs of the', 'wbcr_factory_logger_113' ) ?>
97
  &nbsp;<?php echo $this->plugin->getPluginTitle() . " " . $this->plugin->getPluginVersion(); ?></h1>
98
  <p>
99
- <?php _e( 'In this section, you can track how the plugin works. Sending this log to the developer will help you resolve possible issues.', 'wbcr_factory_logger_113' ) ?>
100
  </p>
101
  </div>
102
  <?= $buttons; ?>
@@ -109,7 +109,7 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
109
  }
110
 
111
  public function ajax_cleanup() {
112
- check_admin_referer( 'wbcr_factory_logger_113_clean_logs', 'nonce' );
113
 
114
  if ( ! current_user_can( 'manage_options' ) ) {
115
  wp_die( - 1 );
@@ -117,13 +117,13 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
117
 
118
  if ( ! $this->plugin->logger->clean_up() ) {
119
  wp_send_json_error( [
120
- 'message' => esc_html__( 'Failed to clean-up logs. Please try again later.', 'wbcr_factory_logger_113' ),
121
  'type' => 'danger',
122
  ] );
123
  }
124
 
125
  wp_send_json( [
126
- 'message' => esc_html__( 'Logs clean-up successfully', 'wbcr_factory_logger_113' ),
127
  'type' => 'success',
128
  ] );
129
  }
@@ -132,7 +132,7 @@ class Wbcr_FactoryLogger113_AdminPage extends Wbcr_FactoryPages447_AdminPage {
132
  * Processing log export action in form of ZIP archive.
133
  */
134
  public function exportAction() {
135
- $export = new WBCR\Factory_Logger_113\Log_Export( $this->plugin->logger );
136
 
137
  if ( $export->prepare() ) {
138
  $export->download( true );
12
  * @copyright (c) 2020, Webcraftic
13
  * @version 1.0
14
  */
15
+ class Wbcr_FactoryLogger114_AdminPage extends Wbcr_FactoryPages448_AdminPage {
16
 
17
  /**
18
  * {@inheritdoc}
30
  public $type = 'page';
31
 
32
  /**
33
+ * @param Wbcr_Factory449_Plugin $plugin
34
  */
35
  public function __construct( $plugin ) {
36
  $this->id = $plugin->getPrefix() . "logger";
37
 
38
+ $this->menu_title = __( 'Plugin Log', 'wbcr_factory_logger_114' );
39
+ $this->page_title = __( 'Plugin log', 'wbcr_factory_logger_114' );
40
  $this->capabilitiy = "manage_options";
41
 
42
+ add_action( 'wp_ajax_wbcr_factory_logger_114_logs_cleanup', [ $this, 'ajax_cleanup' ] );
43
 
44
  parent::__construct( $plugin );
45
  }
53
  public function assets( $scripts, $styles ) {
54
  parent::assets( $scripts, $styles );
55
 
56
+ $this->styles->add( FACTORY_LOGGER_114_URL . '/assets/css/logger.css' );
57
+ $this->scripts->add( FACTORY_LOGGER_114_URL . '/assets/js/logger.js', [ 'jquery' ], 'wbcr_factory_logger_114', FACTORY_LOGGER_114_VERSION );
58
+ wp_localize_script( 'wbcr_factory_logger_114', 'wbcr_factory_logger_114', [
59
+ 'clean_logs_nonce' => wp_create_nonce( 'wbcr_factory_logger_114_clean_logs' ),
60
  ] );
61
  }
62
 
64
  * {@inheritdoc}
65
  */
66
  public function getMenuTitle() {
67
+ return __( 'Plugin Log', 'wbcr_factory_logger_114' );
68
  }
69
 
70
  /**
81
  $buttons = "
82
  <div class='wbcr_factory_logger_buttons'>
83
  <a href='" . wp_nonce_url( $this->getActionUrl( 'export' ) ) . "'
84
+ class='button button-primary'>" . __( 'Export Debug Information', 'wbcr_factory_logger_114' ) . "</a>
85
  <a href='#'
86
  class='button button-secondary'
87
+ onclick='wbcr_factory_logger_114_LogCleanup(this);return false;'
88
+ data-working='" . __( 'Working...', 'wbcr_factory_logger_114' ) . "'>" .
89
+ sprintf( __( 'Clean-up Logs (<span id="wbcr-log-size">%s</span>)', 'wbcr_factory_logger_114' ), $this->get_log_size_formatted() ) . "
90
  </a>
91
  </div>";
92
 
93
  ?>
94
  <div class="wbcr_factory_logger_container">
95
  <div class="wbcr_factory_logger_page_title">
96
+ <h1><?php _e( 'Logs of the', 'wbcr_factory_logger_114' ) ?>
97
  &nbsp;<?php echo $this->plugin->getPluginTitle() . " " . $this->plugin->getPluginVersion(); ?></h1>
98
  <p>
99
+ <?php _e( 'In this section, you can track how the plugin works. Sending this log to the developer will help you resolve possible issues.', 'wbcr_factory_logger_114' ) ?>
100
  </p>
101
  </div>
102
  <?= $buttons; ?>
109
  }
110
 
111
  public function ajax_cleanup() {
112
+ check_admin_referer( 'wbcr_factory_logger_114_clean_logs', 'nonce' );
113
 
114
  if ( ! current_user_can( 'manage_options' ) ) {
115
  wp_die( - 1 );
117
 
118
  if ( ! $this->plugin->logger->clean_up() ) {
119
  wp_send_json_error( [
120
+ 'message' => esc_html__( 'Failed to clean-up logs. Please try again later.', 'wbcr_factory_logger_114' ),
121
  'type' => 'danger',
122
  ] );
123
  }
124
 
125
  wp_send_json( [
126
+ 'message' => esc_html__( 'Logs clean-up successfully', 'wbcr_factory_logger_114' ),
127
  'type' => 'success',
128
  ] );
129
  }
132
  * Processing log export action in form of ZIP archive.
133
  */
134
  public function exportAction() {
135
+ $export = new WBCR\Factory_Logger_114\Log_Export( $this->plugin->logger );
136
 
137
  if ( $export->prepare() ) {
138
  $export->download( true );
libs/factory/logger/pages/class-logger-impressive-lite.php ADDED
@@ -0,0 +1,145 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Exit if accessed directly
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ /**
9
+ * The class is responsible for the operation of the logs page for a lite interface
10
+ *
11
+ * @author Artem Prihodko <webtemyk@yandex.ru>
12
+ * @copyright (c) 2020, Webcraftic
13
+ * @version 1.0
14
+ */
15
+ class Wbcr_FactoryLogger114_Lite extends \WBCR\Factory_Templates_101\ImpressiveLite {
16
+
17
+ /**
18
+ * {@inheritdoc}
19
+ */
20
+ public $id;
21
+
22
+ /**
23
+ * {@inheritdoc}
24
+ */
25
+ public $page_menu_dashicon = 'dashicons-admin-tools';
26
+
27
+ /**
28
+ * {@inheritdoc}
29
+ */
30
+ public $type = 'page';
31
+
32
+ /**
33
+ * @param Wbcr_Factory449_Plugin $plugin
34
+ */
35
+ public function __construct( $plugin ) {
36
+ $this->id = $plugin->getPrefix() . "logger";
37
+
38
+ $this->page_menu_short_description = __( 'Plugin debug report', 'wbcr_factory_logger_114' );
39
+
40
+ add_action( 'wp_ajax_wbcr_factory_logger_114_logs_cleanup', [ $this, 'ajax_cleanup' ] );
41
+
42
+ parent::__construct( $plugin );
43
+ }
44
+
45
+ /**
46
+ * {@inheritdoc}
47
+ *
48
+ * @return void
49
+ * @since 1.0.0
50
+ */
51
+ public function assets( $scripts, $styles ) {
52
+ parent::assets( $scripts, $styles );
53
+
54
+ $this->styles->add( FACTORY_LOGGER_114_URL . '/assets/css/logger.css' );
55
+ $this->scripts->add( FACTORY_LOGGER_114_URL . '/assets/js/logger.js', [ 'jquery' ], 'wbcr_factory_logger_114', FACTORY_LOGGER_114_VERSION );
56
+ $this->scripts->localize( 'wbcr_factory_logger_114', [
57
+ 'clean_logs_nonce' => wp_create_nonce( 'wbcr_factory_logger_114_clean_logs' ),
58
+ ] );
59
+ }
60
+
61
+ /**
62
+ * {@inheritdoc}
63
+ */
64
+ public function getMenuTitle() {
65
+ return __( 'Plugin Log', 'wbcr_factory_logger_114' );
66
+ }
67
+
68
+ /**
69
+ * {@inheritdoc}
70
+ */
71
+ public function showPageContent() {
72
+ $buttons = "
73
+ <div class='btn-group'>
74
+ <a href='" . wp_nonce_url( $this->getActionUrl( 'export' ) ) . "'
75
+ class='button button-primary'>" . __( 'Export Debug Information', 'wbcr_factory_logger_114' ) . "</a>
76
+ <a href='#'
77
+ class='button button-secondary'
78
+ onclick='wbcr_factory_logger_114_LogCleanup(this);return false;'
79
+ data-working='" . __( 'Working...', 'wbcr_factory_logger_114' ) . "'>" . sprintf( __( 'Clean-up Logs (<span id="wbcr-log-size">%s</span>)', 'wbcr_factory_logger_114' ), $this->get_log_size_formatted() ) . "
80
+ </a>
81
+ </div>";
82
+ ?>
83
+ <div class="wbcr-factory-page-group-header" style="margin-top:0;">
84
+ <strong><?php _e( 'Plugin Log', 'wbcr_factory_logger_114' ) ?></strong>
85
+ <p>
86
+ <?php _e( 'In this section, you can track how the plugin works. Sending this log to the developer will help you resolve possible issues.', 'wbcr_factory_logger_114' ) ?>
87
+ </p>
88
+ </div>
89
+ <div class="wbcr-factory-page-group-body" style="padding: 0 20px">
90
+ <?= $buttons; ?>
91
+ <div class="wbcr-log-viewer" id="wbcr-log-viewer">
92
+ <?php echo $this->plugin->logger->prettify() ?>
93
+ </div>
94
+ <?= $buttons; ?>
95
+ </div>
96
+ <?php
97
+ }
98
+
99
+ public function ajax_cleanup() {
100
+ check_admin_referer( 'wbcr_factory_logger_114_clean_logs', 'nonce' );
101
+
102
+ if ( ! current_user_can( 'manage_options' ) ) {
103
+ wp_die( - 1 );
104
+ }
105
+
106
+ if ( ! $this->plugin->logger->clean_up() ) {
107
+ wp_send_json_error( [
108
+ 'message' => esc_html__( 'Failed to clean-up logs. Please try again later.', 'wbcr_factory_logger_114' ),
109
+ 'type' => 'danger',
110
+ ] );
111
+ }
112
+
113
+ wp_send_json( [
114
+ 'message' => esc_html__( 'Logs clean-up successfully', 'wbcr_factory_logger_114' ),
115
+ 'type' => 'success',
116
+ ] );
117
+ }
118
+
119
+ /**
120
+ * Processing log export action in form of ZIP archive.
121
+ */
122
+ public function exportAction() {
123
+ $export = new WBCR\Factory_Logger_114\Log_Export( $this->plugin->logger );
124
+
125
+ if ( $export->prepare() ) {
126
+ $export->download( true );
127
+ }
128
+ }
129
+
130
+ /**
131
+ * Get log size formatted.
132
+ *
133
+ * @return false|string
134
+ */
135
+ private function get_log_size_formatted() {
136
+
137
+ try {
138
+ return size_format( $this->plugin->logger->get_total_size() );
139
+ } catch ( \Exception $exception ) {
140
+ $this->plugin->logger->error( sprintf( 'Failed to get total log size as exception was thrown: %s', $exception->getMessage() ) );
141
+ }
142
+
143
+ return '';
144
+ }
145
+ }
libs/factory/logger/pages/class-logger-impressive-page.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
 
3
  // Exit if accessed directly
4
- if ( ! defined( 'ABSPATH' ) ) {
5
  exit;
6
  }
7
 
@@ -12,7 +12,7 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  * @copyright (c) 2020, Webcraftic
13
  * @version 1.0
14
  */
15
- class Wbcr_FactoryLogger113_PageBase extends Wbcr_FactoryClearfy240_PageBase {
16
 
17
  /**
18
  * {@inheritdoc}
@@ -30,17 +30,18 @@ class Wbcr_FactoryLogger113_PageBase extends Wbcr_FactoryClearfy240_PageBase {
30
  public $type = 'page';
31
 
32
  /**
33
- * @param Wbcr_Factory448_Plugin $plugin
34
  */
35
- public function __construct( $plugin ) {
 
36
  $this->id = $plugin->getPrefix() . "logger";
37
 
38
- $this->menu_title = __( 'Plugin Log', 'wbcr_factory_logger_113' );
39
- $this->page_menu_short_description = __( 'Plugin debug report', 'wbcr_factory_logger_113' );
40
 
41
- add_action( 'wp_ajax_wbcr_factory_logger_113_logs_cleanup', [ $this, 'ajax_cleanup' ] );
42
 
43
- parent::__construct( $plugin );
44
  }
45
 
46
  /**
@@ -49,82 +50,87 @@ class Wbcr_FactoryLogger113_PageBase extends Wbcr_FactoryClearfy240_PageBase {
49
  * @return void
50
  * @since 1.0.0
51
  */
52
- public function assets( $scripts, $styles ) {
53
- parent::assets( $scripts, $styles );
54
-
55
- $this->styles->add( FACTORY_LOGGER_113_URL . '/assets/css/logger.css' );
56
- $this->scripts->add( FACTORY_LOGGER_113_URL . '/assets/js/logger.js', [ 'jquery' ], 'wbcr_factory_logger_113', FACTORY_LOGGER_113_VERSION );
57
- $this->scripts->localize( 'wbcr_factory_logger_113', [
58
- 'clean_logs_nonce' => wp_create_nonce( 'wbcr_factory_logger_113_clean_logs' ),
59
- ] );
 
60
  }
61
 
62
  /**
63
  * {@inheritdoc}
64
  */
65
- public function getMenuTitle() {
66
- return __( 'Plugin Log', 'wbcr_factory_logger_113' );
 
67
  }
68
 
69
  /**
70
  * {@inheritdoc}
71
  */
72
- public function showPageContent() {
 
73
  $buttons = "
74
  <div class='btn-group'>
75
- <a href='" . wp_nonce_url( $this->getActionUrl( 'export' ) ) . "'
76
- class='button button-primary'>" . __( 'Export Debug Information', 'wbcr_factory_logger_113' ) . "</a>
77
  <a href='#'
78
  class='button button-secondary'
79
- onclick='wbcr_factory_logger_113_LogCleanup(this);return false;'
80
- data-working='" . __( 'Working...', 'wbcr_factory_logger_113' ) . "'>" . sprintf( __( 'Clean-up Logs (<span id="wbcr-log-size">%s</span>)', 'wbcr_factory_logger_113' ), $this->get_log_size_formatted() ) . "
81
  </a>
82
  </div>";
83
  ?>
84
- <div class="wbcr-factory-page-group-header" style="margin-top:0;">
85
- <strong><?php _e( 'Plugin Log', 'wbcr_factory_logger_113' ) ?></strong>
86
- <p>
87
- <?php _e( 'In this section, you can track how the plugin works. Sending this log to the developer will help you resolve possible issues.', 'wbcr_factory_logger_113' ) ?>
88
- </p>
89
- </div>
90
- <div class="wbcr-factory-page-group-body" style="padding: 0 20px">
91
  <?= $buttons; ?>
92
- <div class="wbcr-log-viewer" id="wbcr-log-viewer">
93
  <?php echo $this->plugin->logger->prettify() ?>
94
- </div>
95
  <?= $buttons; ?>
96
- </div>
97
  <?php
98
  }
99
 
100
- public function ajax_cleanup() {
101
- check_admin_referer( 'wbcr_factory_logger_113_clean_logs', 'nonce' );
 
102
 
103
- if ( ! current_user_can( 'manage_options' ) ) {
104
- wp_die( - 1 );
105
  }
106
 
107
- if ( ! $this->plugin->logger->clean_up() ) {
108
- wp_send_json_error( [
109
- 'message' => esc_html__( 'Failed to clean-up logs. Please try again later.', 'wbcr_factory_logger_113' ),
110
- 'type' => 'danger',
111
- ] );
112
  }
113
 
114
- wp_send_json( [
115
- 'message' => esc_html__( 'Logs clean-up successfully', 'wbcr_factory_logger_113' ),
116
- 'type' => 'success',
117
- ] );
118
  }
119
 
120
  /**
121
  * Processing log export action in form of ZIP archive.
122
  */
123
- public function exportAction() {
124
- $export = new WBCR\Factory_Logger_113\Log_Export( $this->plugin->logger );
 
125
 
126
- if ( $export->prepare() ) {
127
- $export->download( true );
128
  }
129
  }
130
 
@@ -133,12 +139,13 @@ class Wbcr_FactoryLogger113_PageBase extends Wbcr_FactoryClearfy240_PageBase {
133
  *
134
  * @return false|string
135
  */
136
- private function get_log_size_formatted() {
 
137
 
138
  try {
139
- return size_format( $this->plugin->logger->get_total_size() );
140
- } catch ( \Exception $exception ) {
141
- $this->plugin->logger->error( sprintf( 'Failed to get total log size as exception was thrown: %s', $exception->getMessage() ) );
142
  }
143
 
144
  return '';
1
  <?php
2
 
3
  // Exit if accessed directly
4
+ if( !defined('ABSPATH') ) {
5
  exit;
6
  }
7
 
12
  * @copyright (c) 2020, Webcraftic
13
  * @version 1.0
14
  */
15
+ class Wbcr_FactoryLogger114_PageBase extends \WBCR\Factory_Templates_101\Pages\PageBase {
16
 
17
  /**
18
  * {@inheritdoc}
30
  public $type = 'page';
31
 
32
  /**
33
+ * @param Wbcr_Factory449_Plugin $plugin
34
  */
35
+ public function __construct($plugin)
36
+ {
37
  $this->id = $plugin->getPrefix() . "logger";
38
 
39
+ $this->menu_title = __('Plugin Log', 'wbcr_factory_logger_114');
40
+ $this->page_menu_short_description = __('Plugin debug report', 'wbcr_factory_logger_114');
41
 
42
+ add_action('wp_ajax_wbcr_factory_logger_114_logs_cleanup', [$this, 'ajax_cleanup']);
43
 
44
+ parent::__construct($plugin);
45
  }
46
 
47
  /**
50
  * @return void
51
  * @since 1.0.0
52
  */
53
+ public function assets($scripts, $styles)
54
+ {
55
+ parent::assets($scripts, $styles);
56
+
57
+ $this->styles->add(FACTORY_LOGGER_114_URL . '/assets/css/logger.css');
58
+ $this->scripts->add(FACTORY_LOGGER_114_URL . '/assets/js/logger.js', ['jquery'], 'wbcr_factory_logger_114', FACTORY_LOGGER_114_VERSION);
59
+ $this->scripts->localize('wbcr_factory_logger_114', [
60
+ 'clean_logs_nonce' => wp_create_nonce('wbcr_factory_logger_114_clean_logs'),
61
+ ]);
62
  }
63
 
64
  /**
65
  * {@inheritdoc}
66
  */
67
+ public function getMenuTitle()
68
+ {
69
+ return __('Plugin Log', 'wbcr_factory_logger_114');
70
  }
71
 
72
  /**
73
  * {@inheritdoc}
74
  */
75
+ public function showPageContent()
76
+ {
77
  $buttons = "
78
  <div class='btn-group'>
79
+ <a href='" . wp_nonce_url($this->getActionUrl('export')) . "'
80
+ class='button button-primary'>" . __('Export Debug Information', 'wbcr_factory_logger_114') . "</a>
81
  <a href='#'
82
  class='button button-secondary'
83
+ onclick='wbcr_factory_logger_114_LogCleanup(this);return false;'
84
+ data-working='" . __('Working...', 'wbcr_factory_logger_114') . "'>" . sprintf(__('Clean-up Logs (<span id="wbcr-log-size">%s</span>)', 'wbcr_factory_logger_114'), $this->get_log_size_formatted()) . "
85
  </a>
86
  </div>";
87
  ?>
88
+ <div class="wbcr-factory-page-group-header" style="margin-top:0;">
89
+ <strong><?php _e('Plugin Log', 'wbcr_factory_logger_114') ?></strong>
90
+ <p>
91
+ <?php _e('In this section, you can track how the plugin works. Sending this log to the developer will help you resolve possible issues.', 'wbcr_factory_logger_114') ?>
92
+ </p>
93
+ </div>
94
+ <div class="wbcr-factory-page-group-body" style="padding: 0 20px">
95
  <?= $buttons; ?>
96
+ <div class="wbcr-log-viewer" id="wbcr-log-viewer">
97
  <?php echo $this->plugin->logger->prettify() ?>
98
+ </div>
99
  <?= $buttons; ?>
100
+ </div>
101
  <?php
102
  }
103
 
104
+ public function ajax_cleanup()
105
+ {
106
+ check_admin_referer('wbcr_factory_logger_114_clean_logs', 'nonce');
107
 
108
+ if( !current_user_can('manage_options') ) {
109
+ wp_die(-1);
110
  }
111
 
112
+ if( !$this->plugin->logger->clean_up() ) {
113
+ wp_send_json_error([
114
+ 'message' => esc_html__('Failed to clean-up logs. Please try again later.', 'wbcr_factory_logger_114'),
115
+ 'type' => 'danger',
116
+ ]);
117
  }
118
 
119
+ wp_send_json([
120
+ 'message' => esc_html__('Logs clean-up successfully', 'wbcr_factory_logger_114'),
121
+ 'type' => 'success',
122
+ ]);
123
  }
124
 
125
  /**
126
  * Processing log export action in form of ZIP archive.
127
  */
128
+ public function exportAction()
129
+ {
130
+ $export = new WBCR\Factory_Logger_114\Log_Export($this->plugin->logger);
131
 
132
+ if( $export->prepare() ) {
133
+ $export->download(true);
134
  }
135
  }
136
 
139
  *
140
  * @return false|string
141
  */
142
+ private function get_log_size_formatted()
143
+ {
144
 
145
  try {
146
+ return size_format($this->plugin->logger->get_total_size());
147
+ } catch( \Exception $exception ) {
148
+ $this->plugin->logger->error(sprintf('Failed to get total log size as exception was thrown: %s', $exception->getMessage()));
149
  }
150
 
151
  return '';
libs/factory/pages/boot.php CHANGED
@@ -19,26 +19,25 @@ if( !is_admin() ) {
19
  return;
20
  }
21
 
22
- if( defined('FACTORY_PAGES_447_LOADED') ) {
23
  return;
24
  }
25
 
26
- define('FACTORY_PAGES_447_LOADED', true);
27
 
28
- define( 'FACTORY_PAGES_447_VERSION', '4.4.7' );
29
 
30
- define('FACTORY_PAGES_447_DIR', dirname(__FILE__));
31
- define('FACTORY_PAGES_447_URL', plugins_url(null, __FILE__));
32
 
33
- if ( ! defined( 'FACTORY_FLAT_ADMIN' ) ) {
34
- define( 'FACTORY_FLAT_ADMIN', true );
35
  }
36
 
37
- load_plugin_textdomain( 'wbcr_factory_pages_447', false, dirname( plugin_basename( __FILE__ ) ) . '/langs' );
 
 
 
 
38
 
39
- require( FACTORY_PAGES_447_DIR . '/pages.php' );
40
- require( FACTORY_PAGES_447_DIR . '/includes/page.class.php' );
41
- require( FACTORY_PAGES_447_DIR . '/includes/admin-page.class.php' );
42
- require( FACTORY_PAGES_447_DIR . '/templates/impressive/impressive-page.class.php' );
43
- require( FACTORY_PAGES_447_DIR . '/templates/impressive-lite/impressive-lite-page.class.php' );
44
 
19
  return;
20
  }
21
 
22
+ if( defined('FACTORY_PAGES_448_LOADED') ) {
23
  return;
24
  }
25
 
26
+ define('FACTORY_PAGES_448_LOADED', true);
27
 
28
+ define('FACTORY_PAGES_448_VERSION', '4.4.8');
29
 
30
+ define('FACTORY_PAGES_448_DIR', dirname(__FILE__));
31
+ define('FACTORY_PAGES_448_URL', plugins_url(null, __FILE__));
32
 
33
+ if( !defined('FACTORY_FLAT_ADMIN') ) {
34
+ define('FACTORY_FLAT_ADMIN', true);
35
  }
36
 
37
+ load_plugin_textdomain('wbcr_factory_pages_448', false, dirname(plugin_basename(__FILE__)) . '/langs');
38
+
39
+ require(FACTORY_PAGES_448_DIR . '/pages.php');
40
+ require(FACTORY_PAGES_448_DIR . '/includes/page.class.php');
41
+ require(FACTORY_PAGES_448_DIR . '/includes/admin-page.class.php');
42
 
 
 
 
 
 
43
 
libs/factory/pages/includes/admin-page.class.php CHANGED
@@ -14,9 +14,9 @@ if( !defined('ABSPATH') ) {
14
  exit;
15
  }
16
 
17
- if( !class_exists('Wbcr_FactoryPages447_AdminPage') ) {
18
 
19
- class Wbcr_FactoryPages447_AdminPage extends Wbcr_FactoryPages447_Page {
20
 
21
  /**
22
  * Visible page title.
@@ -209,7 +209,7 @@ if( !class_exists('Wbcr_FactoryPages447_AdminPage') ) {
209
  */
210
  public $add_link_to_plugin_actions = false;
211
 
212
- public function __construct(Wbcr_Factory448_Plugin $plugin)
213
  {
214
  parent::__construct($plugin);
215
  $this->configure();
@@ -325,13 +325,13 @@ if( !class_exists('Wbcr_FactoryPages447_AdminPage') ) {
325
  {
326
  $result_id = $this->getResultId();
327
 
328
- $this->hidden = apply_filters('wbcr_factory_448_page_is_hidden_' . $result_id, $this->hidden);
329
 
330
  if( $this->hidden ) {
331
  return;
332
  }
333
 
334
- $this->internal = apply_filters('wbcr_factory_448_page_is_internal_' . $result_id, $this->internal);
335
 
336
  if( $this->internal ) {
337
  $this->menu_target = null;
@@ -370,7 +370,7 @@ if( !class_exists('Wbcr_FactoryPages447_AdminPage') ) {
370
  $this->assets($this->scripts, $this->styles);
371
 
372
  if( !$this->scripts->isEmpty('bootstrap') || !$this->styles->isEmpty('bootstrap') ) {
373
- add_action('wbcr_factory_448_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), [
374
  $this,
375
  'actionAdminBootstrapScripts'
376
  ]);
14
  exit;
15
  }
16
 
17
+ if( !class_exists('Wbcr_FactoryPages448_AdminPage') ) {
18
 
19
+ class Wbcr_FactoryPages448_AdminPage extends Wbcr_FactoryPages448_Page {
20
 
21
  /**
22
  * Visible page title.
209
  */
210
  public $add_link_to_plugin_actions = false;
211
 
212
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
213
  {
214
  parent::__construct($plugin);
215
  $this->configure();
325
  {
326
  $result_id = $this->getResultId();
327
 
328
+ $this->hidden = apply_filters('wbcr_factory_449_page_is_hidden_' . $result_id, $this->hidden);
329
 
330
  if( $this->hidden ) {
331
  return;
332
  }
333
 
334
+ $this->internal = apply_filters('wbcr_factory_449_page_is_internal_' . $result_id, $this->internal);
335
 
336
  if( $this->internal ) {
337
  $this->menu_target = null;
370
  $this->assets($this->scripts, $this->styles);
371
 
372
  if( !$this->scripts->isEmpty('bootstrap') || !$this->styles->isEmpty('bootstrap') ) {
373
+ add_action('wbcr_factory_449_bootstrap_enqueue_scripts_' . $this->plugin->getPluginName(), [
374
  $this,
375
  'actionAdminBootstrapScripts'
376
  ]);
libs/factory/pages/includes/page.class.php CHANGED
@@ -14,9 +14,9 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  exit;
15
  }
16
 
17
- if ( ! class_exists( 'Wbcr_FactoryPages447_Page' ) ) {
18
 
19
- class Wbcr_FactoryPages447_Page {
20
 
21
 
22
  /**
@@ -30,7 +30,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages447_Page' ) ) {
30
  * Чтобы не было конфликтов с другими плагинами, используйте префиксы.
31
  *
32
  * @since 1.0.0
33
- * @see FactoryPages447_AdminPage
34
  *
35
  * @var string
36
  */
@@ -39,7 +39,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages447_Page' ) ) {
39
  /**
40
  * Current Factory Plugin.
41
  *
42
- * @var Wbcr_Factory448_Plugin
43
  */
44
  public $plugin;
45
 
@@ -51,11 +51,11 @@ if ( ! class_exists( 'Wbcr_FactoryPages447_Page' ) ) {
51
  //private $default_actions = array();
52
 
53
  /**
54
- * @param Wbcr_Factory448_Plugin $plugin
55
  *
56
  * @throws Exception
57
  */
58
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
59
  $this->plugin = $plugin;
60
 
61
  if ( $plugin ) {
@@ -111,7 +111,7 @@ if ( ! class_exists( 'Wbcr_FactoryPages447_Page' ) ) {
111
 
112
  if ( ! method_exists( $this, $actionFunction ) ) {
113
  // todo: продумать и доработать выполнение произвольных и глобальных дейтсвия для всех страниц
114
- /*$custom_actions = apply_filters('wbcr/factory_pages_447/custom_actions', array(), $raw_action_name);
115
 
116
  if(isset($custom_actions[$raw_action_name])) {
117
  $custom_actions[$raw_action_name]();
14
  exit;
15
  }
16
 
17
+ if ( ! class_exists( 'Wbcr_FactoryPages448_Page' ) ) {
18
 
19
+ class Wbcr_FactoryPages448_Page {
20
 
21
 
22
  /**
30
  * Чтобы не было конфликтов с другими плагинами, используйте префиксы.
31
  *
32
  * @since 1.0.0
33
+ * @see FactoryPages448_AdminPage
34
  *
35
  * @var string
36
  */
39
  /**
40
  * Current Factory Plugin.
41
  *
42
+ * @var Wbcr_Factory449_Plugin
43
  */
44
  public $plugin;
45
 
51
  //private $default_actions = array();
52
 
53
  /**
54
+ * @param Wbcr_Factory449_Plugin $plugin
55
  *
56
  * @throws Exception
57
  */
58
+ public function __construct( Wbcr_Factory449_Plugin $plugin ) {
59
  $this->plugin = $plugin;
60
 
61
  if ( $plugin ) {
111
 
112
  if ( ! method_exists( $this, $actionFunction ) ) {
113
  // todo: продумать и доработать выполнение произвольных и глобальных дейтсвия для всех страниц
114
+ /*$custom_actions = apply_filters('wbcr/factory_pages_448/custom_actions', array(), $raw_action_name);
115
 
116
  if(isset($custom_actions[$raw_action_name])) {
117
  $custom_actions[$raw_action_name]();
libs/factory/pages/langs/{wbcr_factory_pages_447-fr_FR.mo → wbcr_factory_pages_448-fr_FR.mo} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_447-fr_FR.po → wbcr_factory_pages_448-fr_FR.po} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_447-ru_RU.mo → wbcr_factory_pages_448-ru_RU.mo} RENAMED
File without changes
libs/factory/pages/langs/{wbcr_factory_pages_447-ru_RU.po → wbcr_factory_pages_448-ru_RU.po} RENAMED
File without changes
libs/factory/pages/pages.php CHANGED
@@ -14,24 +14,24 @@
14
  exit;
15
  }
16
 
17
- add_action('admin_menu', 'Wbcr_FactoryPages447::actionAdminMenu');
18
- add_action('network_admin_menu', 'Wbcr_FactoryPages447::actionAdminMenu');
19
 
20
- if( !class_exists('Wbcr_FactoryPages447') ) {
21
  /**
22
  * A base class to manage pages.
23
  *
24
  * @since 1.0.0
25
  */
26
- class Wbcr_FactoryPages447 {
27
 
28
  /**
29
- * @var Wbcr_FactoryPages447_Page[]
30
  */
31
  private static $pages = array();
32
 
33
  /**
34
- * @param Wbcr_Factory448_Plugin $plugin
35
  * @param $class_name
36
  */
37
  public static function register($plugin, $class_name)
@@ -59,7 +59,7 @@
59
  }
60
  }
61
 
62
- public static function getPageUrl(Wbcr_Factory448_Plugin $plugin, $page_id, $args = array())
63
  {
64
  if( isset(self::$pages[$plugin->getPluginName()]) ) {
65
  $pages = self::$pages[$plugin->getPluginName()];
@@ -75,7 +75,7 @@
75
  }
76
 
77
  /**
78
- * @param Wbcr_Factory448_Plugin $plugin
79
  * @return array
80
  */
81
  public static function getIds($plugin)
@@ -93,14 +93,14 @@
93
  }
94
  }
95
 
96
- if( !function_exists('wbcr_factory_pages_447_get_page_id') ) {
97
  /**
98
  *
99
- * @param Wbcr_Factory448_Plugin $plugin
100
  * @param string $page_id
101
  * @return string
102
  */
103
- function wbcr_factory_pages_447_get_page_id($plugin, $page_id)
104
  {
105
  return $page_id . '-' . $plugin->getPluginName();
106
  }
14
  exit;
15
  }
16
 
17
+ add_action('admin_menu', 'Wbcr_FactoryPages448::actionAdminMenu');
18
+ add_action('network_admin_menu', 'Wbcr_FactoryPages448::actionAdminMenu');
19
 
20
+ if( !class_exists('Wbcr_FactoryPages448') ) {
21
  /**
22
  * A base class to manage pages.
23
  *
24
  * @since 1.0.0
25
  */
26
+ class Wbcr_FactoryPages448 {
27
 
28
  /**
29
+ * @var Wbcr_FactoryPages448_Page[]
30
  */
31
  private static $pages = array();
32
 
33
  /**
34
+ * @param Wbcr_Factory449_Plugin $plugin
35
  * @param $class_name
36
  */
37
  public static function register($plugin, $class_name)
59
  }
60
  }
61
 
62
+ public static function getPageUrl(Wbcr_Factory449_Plugin $plugin, $page_id, $args = array())
63
  {
64
  if( isset(self::$pages[$plugin->getPluginName()]) ) {
65
  $pages = self::$pages[$plugin->getPluginName()];
75
  }
76
 
77
  /**
78
+ * @param Wbcr_Factory449_Plugin $plugin
79
  * @return array
80
  */
81
  public static function getIds($plugin)
93
  }
94
  }
95
 
96
+ if( !function_exists('wbcr_factory_pages_448_get_page_id') ) {
97
  /**
98
  *
99
+ * @param Wbcr_Factory449_Plugin $plugin
100
  * @param string $page_id
101
  * @return string
102
  */
103
+ function wbcr_factory_pages_448_get_page_id($plugin, $page_id)
104
  {
105
  return $page_id . '-' . $plugin->getPluginName();
106
  }
libs/factory/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css DELETED
@@ -1,552 +0,0 @@
1
- /**
2
- * General styles
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
- #WBCR .updated,
7
- #WBCR .notice,
8
- #WBCR .error,
9
- #WBCR .wdan-notices-compact-panel {
10
- display: none !important;
11
- }
12
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template {
13
- position: relative;
14
- /**
15
- Content sections
16
- */
17
- /**
18
- Widget in the sidebar of the plugin
19
- */
20
- }
21
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-color-grey {
22
- color: #9a9a9a;
23
- }
24
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-orange-color {
25
- color: #ffc107;
26
- }
27
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-light-orange-color {
28
- color: #ffeb3b;
29
- }
30
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .form-group {
31
- padding: 0 20px;
32
- }
33
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .form-group label {
34
- font-weight: normal;
35
- }
36
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .form-horizontal .control-label {
37
- max-width: 300px;
38
- }
39
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .factory-control-buttons {
40
- text-align: right;
41
- padding-right: 20px;
42
- }
43
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .factory-from-control-list label span {
44
- display: inline-block;
45
- vertical-align: bottom;
46
- }
47
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"],
48
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
49
- outline: none;
50
- }
51
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert {
52
- font-weight: bold;
53
- margin: 0 !important;
54
- border: 0;
55
- border-radius: 0;
56
- padding: 15px;
57
- }
58
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert + .wbcr-factory-page-group-header {
59
- margin-top: 0 !important;
60
- }
61
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-warning {
62
- background: #fff3d0;
63
- }
64
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-warning:nth-child(2n+1) {
65
- background: #fffde9;
66
- }
67
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-danger {
68
- background: #de716d;
69
- }
70
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-danger:nth-child(2n+1) {
71
- background: #ec8c89;
72
- }
73
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-success {
74
- background: #d0ecc4;
75
- }
76
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .alert.alert-success:nth-child(2n+1) {
77
- background: #e0eadb;
78
- }
79
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-header {
80
- padding: 20px 20px 40px;
81
- }
82
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-recomended-text {
83
- display: block;
84
- font-size: 11px;
85
- font-weight: lighter;
86
- color: #179347;
87
- }
88
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-options,
89
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page {
90
- position: relative;
91
- background: #e6e6e6;
92
- overflow: hidden;
93
- }
94
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-options:after,
95
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page:after {
96
- display: block;
97
- content: '';
98
- clear: both;
99
- }
100
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-group-header {
101
- background: #efefef;
102
- padding: 20px 0 10px 20px;
103
- margin: 30px 0;
104
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
105
- }
106
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-group-header:first-child {
107
- margin-top: 0;
108
- }
109
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-group-header strong {
110
- font-size: 15px;
111
- }
112
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-group-header p {
113
- color: #8c8888;
114
- font-size: 12px;
115
- }
116
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap {
117
- margin-left: 230px;
118
- padding: 80px 0 0 0;
119
- vertical-align: top;
120
- background: #fff;
121
- }
122
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab-wrapper,
123
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap h2.nav-tab-wrapper,
124
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap h1.nav-tab-wrapper {
125
- border: 0;
126
- }
127
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab-active {
128
- background: #efefef !important;
129
- margin-bottom: -2px !important;
130
- border-bottom: 1px solid #efefef !important;
131
- }
132
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab:first-child {
133
- margin: 0;
134
- }
135
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab:hover {
136
- background: #f7f7f7;
137
- }
138
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab {
139
- border: 2px solid #dedede;
140
- border-bottom: 0;
141
- box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
142
- }
143
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab:active,
144
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap .nav-tab:focus {
145
- box-shadow: none;
146
- outline: none;
147
- }
148
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header {
149
- position: absolute;
150
- z-index: 13;
151
- top: 0;
152
- left: 0;
153
- right: 0;
154
- overflow: hidden;
155
- background-color: #32373c;
156
- color: #fff;
157
- border-radius: 5px 5px 0 0;
158
- }
159
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
160
- float: left;
161
- padding: 25px 0;
162
- font-size: 20px;
163
- line-height: 30px;
164
- font-weight: 400;
165
- text-align: center;
166
- background-color: #464b50;
167
- color: #ccc;
168
- padding-left: 25px;
169
- margin-right: 10px;
170
- background: none;
171
- }
172
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
173
- display: inline-block;
174
- vertical-align: middle;
175
- }
176
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
177
- font-size: 18px;
178
- line-height: 30px;
179
- font-weight: 300;
180
- margin-top: 26px;
181
- padding: 0 !important;
182
- overflow: hidden;
183
- white-space: nowrap;
184
- text-overflow: ellipsis;
185
- color: #fff;
186
- }
187
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-control {
188
- position: relative;
189
- float: right;
190
- margin: 12px;
191
- }
192
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button {
193
- display: inline-block;
194
- vertical-align: top;
195
- font-size: 13px;
196
- font-weight: 600;
197
- line-height: 20px;
198
- text-transform: uppercase;
199
- margin: 10px 0 0;
200
- padding: 8px 30px;
201
- cursor: pointer;
202
- position: relative;
203
- overflow: hidden;
204
- border: none;
205
- border-radius: 50px;
206
- box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) inset;
207
- background-color: #f1f1f1;
208
- color: inherit;
209
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
210
- text-align: center;
211
- outline: none;
212
- text-decoration: none;
213
- z-index: 3;
214
- }
215
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save {
216
- box-shadow: none;
217
- min-width: 100px;
218
- background-color: #8bc34a;
219
- color: #fff;
220
- }
221
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:hover {
222
- background: #9dbb7b;
223
- color: #fff;
224
- }
225
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:active {
226
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
227
- }
228
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings {
229
- box-shadow: none;
230
- min-width: 200px;
231
- background-color: #9e9e9e;
232
- color: #fff;
233
- }
234
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:hover {
235
- background: #797979;
236
- color: #fff;
237
- }
238
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:active {
239
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
240
- }
241
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
242
- float: left;
243
- vertical-align: top;
244
- width: 230px;
245
- background: #e6e6e6;
246
- }
247
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul {
248
- padding: 0;
249
- margin-bottom: 0;
250
- margin-top: 80px;
251
- }
252
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
253
- display: block;
254
- background: #efefef;
255
- margin: 1px 0;
256
- }
257
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
258
- display: block;
259
- width: 100%;
260
- padding: 20px 20px;
261
- font-size: 12px;
262
- color: #585858;
263
- text-decoration: none;
264
- text-transform: uppercase;
265
- text-align: left;
266
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
267
- }
268
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
269
- display: block;
270
- font-weight: bold;
271
- }
272
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
273
- display: block;
274
- font-size: 13px;
275
- font-weight: normal;
276
- text-transform: none;
277
- color: #9a9a9a;
278
- }
279
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
280
- float: right;
281
- color: #ccc;
282
- }
283
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
284
- clear: both;
285
- }
286
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
287
- background: #f7f6f6;
288
- }
289
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
290
- color: #9a9a9a;
291
- }
292
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
293
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
294
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
295
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
296
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
297
- outline: 0 !important;
298
- box-shadow: none !important;
299
- }
300
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
301
- background: #fff;
302
- border-left: 5px solid #ff5722;
303
- }
304
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
305
- color: #ff5722;
306
- font-weight: bold;
307
- }
308
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
309
- color: #9a9a9a;
310
- }
311
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
312
- padding: 0;
313
- margin: 0;
314
- }
315
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
316
- margin: 1px 0 0;
317
- padding: 0;
318
- }
319
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
320
- display: block;
321
- font-weight: normal;
322
- color: #222;
323
- border: 0;
324
- margin: 0;
325
- padding: 5px 5px 5px 30px;
326
- background: #f5f5f5;
327
- text-decoration: none;
328
- outline: none;
329
- }
330
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
331
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
332
- outline: 0 !important;
333
- text-shadow: none !important;
334
- }
335
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
336
- color: #9a9a9a;
337
- font-size: 13px;
338
- border: 0;
339
- -moz-transform: scaleX(-1);
340
- -webkit-transform: scaleX(-1);
341
- -o-transform: scaleX(-1);
342
- transform: scaleX(-1);
343
- -ms-filter: fliph;
344
- filter: fliph;
345
- }
346
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
347
- background: #fff;
348
- color: #ff5722;
349
- font-weight: 600;
350
- }
351
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
352
- color: #ff5722;
353
- }
354
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section,
355
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
356
- display: inline-block;
357
- vertical-align: top;
358
- }
359
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section {
360
- width: 74.6%;
361
- }
362
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section.wbcr-fullwidth {
363
- width: 100%;
364
- }
365
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section .nav-tab-wrapper {
366
- margin-top: 15px;
367
- }
368
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content {
369
- background: #f7f7f7;
370
- padding: 0 0 20px 0;
371
- border: 1px solid #dad8d8;
372
- box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
373
- }
374
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
375
- padding-top: 0 !important;
376
- }
377
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
378
- width: 25%;
379
- padding: 10px;
380
- margin: 0 0 -20px;
381
- background-color: #f9f9f9;
382
- box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
383
- }
384
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
385
- margin: 0 0 20px;
386
- }
387
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget {
388
- display: inline-block;
389
- min-height: 230px;
390
- width: 100%;
391
- margin-top: 20px;
392
- background-color: #fff;
393
- padding: 20px 15px;
394
- vertical-align: top;
395
- }
396
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
397
- display: none;
398
- }
399
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
400
- background: #fff4d0;
401
- }
402
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
403
- background: #e2ffc0;
404
- }
405
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
406
- background: #ffebe9;
407
- }
408
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
409
- display: inline-block;
410
- width: 16px;
411
- height: 16px;
412
- line-height: 13px;
413
- padding: 0;
414
- font-size: 11px;
415
- text-align: center;
416
- color: #fff;
417
- background: #E91E63;
418
- border-radius: 3px;
419
- }
420
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
421
- background: #E91E63;
422
- }
423
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
424
- background: #9e9e9e;
425
- }
426
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
427
- background: #8bc34a;
428
- }
429
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
430
- display: block;
431
- width: 80px;
432
- height: 17px;
433
- background: url('../img/5-stars22.png') no-repeat;
434
- vertical-align: middle;
435
- margin-bottom: 5px;
436
- }
437
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
438
- display: block;
439
- margin: 30px auto 0;
440
- outline: none;
441
- }
442
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
443
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
444
- box-shadow: none;
445
- }
446
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
447
- font-size: 50px;
448
- margin-top: 30px;
449
- text-align: center;
450
- font-weight: 600;
451
- color: #8BC34A;
452
- }
453
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
454
- min-height: 240px;
455
- margin-bottom: 20px;
456
- text-align: center;
457
- background: #fdfcf7;
458
- padding: 30px;
459
- border: 1px solid #f3f1e7;
460
- }
461
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
462
- width: 50px;
463
- height: 50px;
464
- font-size: 50px;
465
- color: #FFC107;
466
- line-height: normal;
467
- }
468
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
469
- color: #7b6111;
470
- }
471
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
472
- color: #9e9e9e;
473
- }
474
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
475
- margin-top: 20px;
476
- text-align: center;
477
- }
478
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
479
- display: inline-block;
480
- padding: 20px 60px;
481
- background-color: #FFC107;
482
- color: #866605;
483
- text-decoration: none;
484
- text-transform: uppercase;
485
- font-weight: bold;
486
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
487
- }
488
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
489
- background-color: #ffce3a;
490
- }
491
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog {
492
- padding: 20px;
493
- background: #ffffff;
494
- }
495
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog .updated,
496
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog .alert {
497
- display: none;
498
- }
499
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog h2 {
500
- font-size: 18px;
501
- margin-top: 10px;
502
- }
503
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
504
- padding: 10px;
505
- background: #ffedeb;
506
- border: 1px solid #ffdfdc;
507
- margin: 15px 0;
508
- }
509
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
510
- margin-bottom: 15px;
511
- color: #7b7b7b;
512
- }
513
- @media screen and (max-width: 1367px) {
514
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section {
515
- width: 69.6%;
516
- }
517
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
518
- width: 30%;
519
- }
520
- }
521
- @media screen and (max-width: 1320px) {
522
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-content-section {
523
- width: 100%;
524
- }
525
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-right-sidebar-section {
526
- display: none !important;
527
- }
528
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-header-logo .dash {
529
- display: none !important;
530
- }
531
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-header-title {
532
- display: none !important;
533
- }
534
- }
535
- @media screen and (max-width: 950px) {
536
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
537
- width: 70px;
538
- }
539
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
540
- font-size: 0;
541
- }
542
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
543
- font-size: 0;
544
- }
545
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
546
- display: none !important;
547
- }
548
- #WBCR .wbcr-factory-pages-447-impressive-lite-page-template .wbcr-factory-page-inner-wrap {
549
- margin-left: 70px;
550
- }
551
- }
552
- /*# sourceMappingURL=impressive-lite.page.template.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["impressive-lite.page.template.less"],"names":[],"mappings":";;;;;AAMA,KACE;AADF,KACY;AADZ,KACqB;AADrB,KAC6B;EACzB,wBAAA;;AAFJ,KAKE;EACE,kBAAA;;;;;;;;AANJ,KAKE,sDAGE;EACE,cAAA;;AATN,KAKE,sDAOE;EACE,cAAA;;AAbN,KAKE,sDAWE;EACE,cAAA;;AAjBN,KAKE,sDAeE;EACE,eAAA;;AArBN,KAKE,sDAeE,YAGE;EACE,mBAAA;;AAxBR,KAKE,sDAuBE,iBAAiB;EACf,gBAAA;;AA7BN,KAKE,sDA2BE;EACE,iBAAA;EACA,mBAAA;;AAlCN,KAKE,sDAgCE,2BACE,MACE;EACE,qBAAA;EACA,sBAAA;;AAzCV,KAKE,sDAgCE,2BACE,MACE,KAIE,MAAK;AA3Cf,KAKE,sDAgCE,2BACE,MACE,KAI0B,MAAK,iBAAiB;EAC5C,aAAA;;AA5CZ,KAKE,sDA6CE;EACE,iBAAA;EACA,oBAAA;EACA,SAAA;EACA,gBAAA;EACA,aAAA;;AAEA,KApDJ,sDA6CE,OAOI;EACA,wBAAA;;AAGF,KAxDJ,sDA6CE,OAWG;EACC,mBAAA;;AAGF,KA5DJ,sDA6CE,OAeG,cAAc,UAAU;EACvB,mBAAA;;AAGF,KAhEJ,sDA6CE,OAmBG;EACC,mBAAA;;AAGF,KApEJ,sDA6CE,OAuBG,aAAa,UAAU;EACtB,mBAAA;;AAGF,KAxEJ,sDA6CE,OA2BG;EACC,mBAAA;;AAGF,KA5EJ,sDA6CE,OA+BG,cAAc,UAAU;EACvB,mBAAA;;AAlFR,KAKE,sDAiFE;EACE,uBAAA;;AAvFN,KAKE,sDAqFE;EACE,cAAA;EACA,eAAA;EACA,oBAAA;EACA,cAAA;;AA9FN,KAKE,sDA4FE;AAjGJ,KAKE,sDA4FyB;EACrB,kBAAA;EACA,mBAAA;EACA,gBAAA;;AASA,KAxGJ,sDA4FE,sBAYG;AAAD,KAxGJ,sDA4FyB,mBAYpB;EACC,cAAA;EACA,SAAS,EAAT;EACA,WAAA;;AAhHR,KAKE,sDA+GE;EACE,mBAAA;EACA,yBAAA;EACA,cAAA;EACA,sCAAA;;AAEA,KArHJ,sDA+GE,gCAMG;EACC,aAAA;;AA3HR,KAKE,sDA+GE,gCAUE;EACE,eAAA;;AA/HR,KAKE,sDA+GE,gCAcE;EACE,cAAA;EACA,eAAA;;AApIR,KAKE,sDAwIE;EAIE,kBAAA;EAEA,mBAAA;EACA,mBAAA;EACA,gBAAA;;AArJN,KAKE,sDAwIE,8BAUE;AAvJN,KAKE,sDAwIE,8BAUoB,GAAE;AAvJ1B,KAKE,sDAwIE,8BAUwC,GAAE;EACtC,SAAA;;AAxJR,KAKE,sDAwIE,8BAcE;EACE,mBAAA;EACA,mBAAA;EACA,gCAAA;;AA9JR,KAKE,sDAwIE,8BAoBE,SAAQ;EACN,SAAA;;AAlKR,KAKE,sDAwIE,8BAwBE,SAAQ;EACN,mBAAA;;AAtKR,KAKE,sDAwIE,8BA4BE;EACE,yBAAA;EACA,gBAAA;EACA,uCAAA;;AAEA,KAzKN,sDAwIE,8BA4BE,SAKG;AAAS,KAzKhB,sDAwIE,8BA4BE,SAKa;EACT,gBAAA;EACA,aAAA;;AAhLV,KAKE,sDAgLE;EACE,kBAAA;EACA,WAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;EACA,0BAAA;;AA9LN,KAKE,sDAgLE,0BAWE;EACE,WAAA;EACA,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EAEA,yBAAA;EACA,WAAA;EACA,kBAAA;EACA,kBAAA;EACA,gBAAA;;AA5MR,KAKE,sDAgLE,0BA0BE;EACE,qBAAA;EACA,sBAAA;;AAjNR,KAKE,sDAgLE,0BA0BE,2BAIE;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,gBAAA;EACA,qBAAA;EAEA,gBAAA;EACA,mBAAA;EACA,uBAAA;EACA,WAAA;;AA7NV,KAKE,sDAgLE,0BA4CE;EACE,kBAAA;EACA,YAAA;EACA,YAAA;;AApOR,KAKE,sDAgLE,0BAkDE;EACE,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,yBAAA;EACA,gBAAA;EACA,iBAAA;EACA,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,8CAAA;EACA,yBAAA;EACA,cAAA;EACA,8EAAA;EACA,kBAAA;EACA,aAAA;EACA,qBAAA;EACA,UAAA;;AAEA,KAzPN,sDAgLE,0BAkDE,qBAuBG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KA/PR,sDAgLE,0BAkDE,qBAuBG,uBAME;EACC,mBAAA;EACA,WAAA;;AAGF,KApQR,sDAgLE,0BAkDE,qBAuBG,uBAWE;EACC,iDAAA;;AAIJ,KAzQN,sDAgLE,0BAkDE,qBAuCG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KA/QR,sDAgLE,0BAkDE,qBAuCG,2BAME;EACC,mBAAA;EACA,WAAA;;AAGF,KApRR,sDAgLE,0BAkDE,qBAuCG,2BAWE;EACC,iDAAA;;AA1RZ,KAKE,sDA2RE;EAEE,WAAA;EACA,mBAAA;EACA,YAAA;EACA,mBAAA;;AArSN,KAKE,sDA2RE,kCAOE;EACE,UAAA;EACA,gBAAA;EACA,gBAAA;;AA1SR,KAKE,sDA2RE,kCAOE,GAKE;EACE,cAAA;EACA,mBAAA;EAEA,aAAA;;AAhTV,KAKE,sDA2RE,kCAOE,GAKE,sBAME;EACE,cAAA;EACA,WAAA;EACA,kBAAA;EACA,eAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,gBAAA;EACA,gDAAgD,oDAAoD,4BAApG;;AA3TZ,KAKE,sDA2RE,kCAOE,GAKE,sBAME,wBAWE;EACE,cAAA;EACA,iBAAA;;AA/Td,KAKE,sDA2RE,kCAOE,GAKE,sBAME,wBAgBE;EACE,cAAA;EACA,eAAA;EACA,mBAAA;EACA,oBAAA;EACA,cAAA;;AAvUd,KAKE,sDA2RE,kCAOE,GAKE,sBAME,wBAwBE;EACE,YAAA;EAEA,WAAA;;AAGF,KA3UV,sDA2RE,kCAOE,GAKE,sBAME,wBA8BG;EACC,WAAA;;AAGF,KA/UV,sDA2RE,kCAOE,GAKE,sBAME,wBAkCG;EACC,mBAAA;;AADF,KA/UV,sDA2RE,kCAOE,GAKE,sBAME,wBAkCG,MAGC;EACE,cAAA;;AAIJ,KAvVV,sDA2RE,kCAOE,GAKE,sBAME;AA0CK,KAvVb,sDA2RE,kCAOE,GAKE,sBAME,wBA0CM;AAAS,KAvVvB,sDA2RE,kCAOE,GAKE,sBAME,wBA0CgB;AAAQ,KAvVhC,sDA2RE,kCAOE,GAKE,sBAME,wBA0CyB;AAAS,KAvV1C,sDA2RE,kCAOE,GAKE,sBAME,wBA0CmC;EAC/B,qBAAA;EACA,2BAAA;;AAKJ,KA9VR,sDA2RE,kCAOE,GAKE,sBAuDG;EACC,gBAAA;EACA,8BAAA;;AAFF,KA9VR,sDA2RE,kCAOE,GAKE,sBAuDG,wBAIC;EACE,cAAA;EACA,iBAAA;;AANJ,KA9VR,sDA2RE,kCAOE,GAKE,sBAuDG,wBAIC,EAKE;EACE,cAAA;;AA7WhB,KAKE,sDA2RE,kCAOE,GAKE,sBAsEE;EACE,UAAA;EACA,SAAA;;AApXZ,KAKE,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE;EACE,eAAA;EACA,UAAA;;AAxXd,KAKE,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE;EACE,cAAA;EACA,mBAAA;EACA,WAAA;EACA,SAAA;EACA,SAAA;EACA,yBAAA;EACA,mBAAA;EACA,qBAAA;EACA,aAAA;;AAEA,KAhYd,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWG;AAAQ,KAhYvB,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWY;EACR,qBAAA;EACA,4BAAA;;AAvYlB,KAKE,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAgBE;EACE,cAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAgB,UAAhB;EACA,mBAAmB,UAAnB;EACA,cAAc,UAAd;EACA,WAAW,UAAX;EACA,iBAAA;EACA,aAAA;;AAGF,KAjZd,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG;EACC,gBAAA;EACA,cAAA;EACA,gBAAA;;AAHF,KAjZd,sDA2RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG,wBAMC;EACE,cAAA;;AA7ZpB,KAKE,sDAsaE;AA3aJ,KAKE,sDAsaiC;EAC7B,qBAAA;EACA,mBAAA;;AA7aN,KAKE,sDA2aE;EACE,YAAA;;AAEA,KA9aJ,sDA2aE,8BAGG;EACC,WAAA;;AApbR,KAKE,sDA2aE,8BAOE;EACE,gBAAA;;AAxbR,KAKE,sDA2aE,8BAWE;EACE,mBAAA;EACA,mBAAA;EACA,yBAAA;EACA,2CAAA;;AAEA,KA5bN,sDA2aE,8BAWE,sBAMI;EACA,yBAAA;;AAlcV,KAKE,sDAkcE;EACE,UAAA;EACA,aAAA;EACA,iBAAA;EACA,yBAAA;EACA,2CAAA;;AA5cN,KAKE,sDAkcE,oCAOE;EACE,gBAAA;;AA/cR,KAKE,sDAkdE;EACE,qBAAA;EACA,iBAAA;EACA,WAAA;EACA,gBAAA;EACA,sBAAA;EACA,kBAAA;EACA,mBAAA;;AAEA,KA3dJ,sDAkdE,6BASG;EACC,aAAA;;AAGF,KA/dJ,sDAkdE,6BAaG;EACC,mBAAA;;AAGF,KAneJ,sDAkdE,6BAiBG;EACC,mBAAA;;AAGF,KAveJ,sDAkdE,6BAqBG;EACC,mBAAA;;AA7eR,KAKE,sDAkdE,6BAyBE;EACE,qBAAA;EACA,WAAA;EACA,YAAA;EACA,iBAAA;EACA,UAAA;EACA,eAAA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,kBAAA;;AA1fR,KAKE,sDAkdE,6BAsCE;EACE,mBAAA;;AA9fR,KAKE,sDAkdE,6BA0CE;EACE,mBAAA;;AAlgBR,KAKE,sDAkdE,6BA8CE;EACE,mBAAA;;AAtgBR,KAKE,sDAkdE,6BAkDE;EACE,cAAA;EACA,WAAA;EACA,YAAA;EACA,gBAAgB,iCAAhB;EACA,sBAAA;EACA,kBAAA;;AA/gBR,KAKE,sDAkdE,6BA2DE,mCACE,MAAK;EACH,cAAA;EACA,mBAAA;EACA,aAAA;;AAthBV,KAKE,sDAkdE,6BA2DE,mCACE,MAAK,cAKH;AAxhBV,KAKE,sDAkdE,6BA2DE,mCACE,MAAK,cAKK;EACN,gBAAA;;AAzhBZ,KAKE,sDAkdE,6BA2DE,mCAWE;EACE,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,cAAA;;AAliBV,KAKE,sDAkiBE,iCACE;EAEE,iBAAA;EACA,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,aAAA;EACA,yBAAA;;AA/iBR,KAKE,sDAkiBE,iCACE,0BASE;EACE,WAAA;EACA,YAAA;EACA,eAAA;EACA,cAAA;EACA,mBAAA;;AAtjBV,KAKE,sDAkiBE,iCACE,0BAiBE;EACE,cAAA;;AA1jBV,KAKE,sDAkiBE,iCACE,0BAqBE;EACE,cAAA;;AA9jBV,KAKE,sDAkiBE,iCA2BE;EACE,gBAAA;EACA,kBAAA;;AApkBR,KAKE,sDAkiBE,iCAgCE;EACE,qBAAA;EACA,kBAAA;EACA,yBAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,iBAAA;EACA,8EAAA;;AAEA,KA5kBN,sDAkiBE,iCAgCE,6BAUG;EACC,yBAAA;;AAllBV,KAKE,sDAklBE;EACE,aAAA;EACA,mBAAA;;AAzlBN,KAKE,sDAklBE,6BAIE;AA3lBN,KAKE,sDAklBE,6BAIY;EACR,aAAA;;AA5lBR,KAKE,sDAklBE,6BAQE;EACE,eAAA;EACA,gBAAA;;AAjmBR,KAKE,sDAklBE,6BAaE;EACE,aAAA;EACA,mBAAA;EACA,yBAAA;EACA,cAAA;;AAxmBR,KAKE,sDAklBE,6BAoBE;EACE,mBAAA;EACA,cAAA;;AAMR,mBAAsC;EACpC,KACE,sDACE;IACE,YAAA;;EAHN,KACE,sDAKE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,sDACE;IACE,WAAA;;EAHN,KACE,sDAKE;IACE,wBAAA;;EAPN,KACE,sDASE,0BACE;IACE,wBAAA;;EAZR,KACE,sDAeE;IACE,wBAAA;;;AAMR,mBAAqC;EACnC,KACE,sDACE;IACE,WAAA;;EAHN,KACE,sDACE,kCAGE,GACE,sBACE;IACE,YAAA;;EARZ,KACE,sDACE,kCAGE,GACE,sBAKE;IACE,YAAA;;EAZZ,KACE,sDACE,kCAGE,GACE,sBASE;IACE,wBAAA;;EAhBZ,KACE,sDAqBE;IACE,iBAAA","file":"impressive-lite.page.template.css"}
 
libs/factory/pages/templates/impressive/assets/css/impressive.page.template.css DELETED
@@ -1,555 +0,0 @@
1
- /**
2
- * General styles
3
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
- * @copyright Alex Kovalev 23.08.2017
5
- */
6
- #WBCR .updated,
7
- #WBCR .notice,
8
- #WBCR .error,
9
- #WBCR .wdan-notices-compact-panel {
10
- display: none !important;
11
- }
12
- #WBCR .wbcr-factory-pages-447-impressive-page-template {
13
- position: relative;
14
- /**
15
- Content sections
16
- */
17
- /**
18
- Widget in the sidebar of the plugin
19
- */
20
- }
21
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-color-grey {
22
- color: #9a9a9a;
23
- }
24
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-orange-color {
25
- color: #ffc107;
26
- }
27
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-red-color {
28
- color: #ee6e65;
29
- }
30
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-light-orange-color {
31
- color: #ffeb3b;
32
- }
33
- #WBCR .wbcr-factory-pages-447-impressive-page-template .form-group {
34
- padding: 0 20px;
35
- }
36
- #WBCR .wbcr-factory-pages-447-impressive-page-template .form-group label {
37
- font-weight: normal;
38
- }
39
- #WBCR .wbcr-factory-pages-447-impressive-page-template .form-horizontal .control-label {
40
- max-width: 300px;
41
- }
42
- #WBCR .wbcr-factory-pages-447-impressive-page-template .factory-control-buttons {
43
- text-align: right;
44
- padding-right: 20px;
45
- }
46
- #WBCR .wbcr-factory-pages-447-impressive-page-template .factory-from-control-list label span {
47
- display: inline-block;
48
- vertical-align: bottom;
49
- }
50
- #WBCR .wbcr-factory-pages-447-impressive-page-template .factory-from-control-list label span input[type="checkbox"],
51
- #WBCR .wbcr-factory-pages-447-impressive-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
52
- outline: none;
53
- }
54
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert {
55
- font-weight: bold;
56
- margin: 0 !important;
57
- border: 0;
58
- border-radius: 0;
59
- padding: 15px;
60
- }
61
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert + .wbcr-factory-page-group-header {
62
- margin-top: 0 !important;
63
- }
64
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-warning {
65
- background: #fff3d0;
66
- }
67
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-warning:nth-child(2n+1) {
68
- background: #fffde9;
69
- }
70
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-danger {
71
- background: #de716d;
72
- }
73
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-danger:nth-child(2n+1) {
74
- background: #ec8c89;
75
- }
76
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-success {
77
- background: #d0ecc4;
78
- }
79
- #WBCR .wbcr-factory-pages-447-impressive-page-template .alert.alert-success:nth-child(2n+1) {
80
- background: #e0eadb;
81
- }
82
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-header {
83
- padding: 20px 20px 40px;
84
- }
85
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-recomended-text {
86
- display: block;
87
- font-size: 11px;
88
- font-weight: lighter;
89
- color: #179347;
90
- }
91
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-options,
92
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page {
93
- position: relative;
94
- background: #e6e6e6;
95
- overflow: hidden;
96
- }
97
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-options:after,
98
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page:after {
99
- display: block;
100
- content: '';
101
- clear: both;
102
- }
103
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-group-header {
104
- background: #efefef;
105
- padding: 20px 0 10px 20px;
106
- margin: 30px 0;
107
- box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
108
- }
109
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-group-header:first-child {
110
- margin-top: 0;
111
- }
112
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-group-header strong {
113
- font-size: 15px;
114
- }
115
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-group-header p {
116
- color: #8c8888;
117
- font-size: 12px;
118
- }
119
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap {
120
- margin-left: 230px;
121
- padding: 80px 0 0 0;
122
- vertical-align: top;
123
- background: #fff;
124
- }
125
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-wrapper,
126
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap h2.nav-tab-wrapper,
127
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap h1.nav-tab-wrapper {
128
- border: 0;
129
- }
130
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab-active {
131
- background: #efefef !important;
132
- margin-bottom: -2px !important;
133
- border-bottom: 1px solid #efefef !important;
134
- }
135
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:first-child {
136
- margin: 0;
137
- }
138
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:hover {
139
- background: #f7f7f7;
140
- }
141
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab {
142
- border: 2px solid #dedede;
143
- border-bottom: 0;
144
- box-shadow: -1px 0 0 rgba(0, 0, 0, 0.1);
145
- }
146
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:active,
147
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap .nav-tab:focus {
148
- box-shadow: none;
149
- outline: none;
150
- }
151
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header {
152
- position: absolute;
153
- z-index: 13;
154
- top: 0;
155
- left: 0;
156
- right: 0;
157
- overflow: hidden;
158
- background-color: #32373c;
159
- color: #fff;
160
- border-radius: 5px 5px 0 0;
161
- }
162
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
163
- float: left;
164
- padding: 25px 0;
165
- font-size: 20px;
166
- line-height: 30px;
167
- font-weight: 400;
168
- text-align: center;
169
- background-color: #464b50;
170
- color: #ccc;
171
- padding-left: 25px;
172
- margin-right: 10px;
173
- background: none;
174
- }
175
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
176
- display: inline-block;
177
- vertical-align: middle;
178
- }
179
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
180
- font-size: 18px;
181
- line-height: 30px;
182
- font-weight: 300;
183
- margin-top: 26px;
184
- padding: 0 !important;
185
- overflow: hidden;
186
- white-space: nowrap;
187
- text-overflow: ellipsis;
188
- color: #fff;
189
- }
190
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-control {
191
- position: relative;
192
- float: right;
193
- margin: 12px;
194
- }
195
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button {
196
- display: inline-block;
197
- vertical-align: top;
198
- font-size: 13px;
199
- font-weight: 600;
200
- line-height: 20px;
201
- text-transform: uppercase;
202
- margin: 10px 0 0;
203
- padding: 8px 30px;
204
- cursor: pointer;
205
- position: relative;
206
- overflow: hidden;
207
- border: none;
208
- border-radius: 50px;
209
- box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.08) inset;
210
- background-color: #f1f1f1;
211
- color: inherit;
212
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
213
- text-align: center;
214
- outline: none;
215
- text-decoration: none;
216
- z-index: 3;
217
- }
218
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save {
219
- box-shadow: none;
220
- min-width: 100px;
221
- background-color: #8bc34a;
222
- color: #fff;
223
- }
224
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:hover {
225
- background: #9dbb7b;
226
- color: #fff;
227
- }
228
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-save:active {
229
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
230
- }
231
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings {
232
- box-shadow: none;
233
- min-width: 200px;
234
- background-color: #9e9e9e;
235
- color: #fff;
236
- }
237
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:hover {
238
- background: #797979;
239
- color: #fff;
240
- }
241
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-header .wbcr-factory-button.wbcr-factory-type-settings:active {
242
- box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.3);
243
- }
244
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar {
245
- float: left;
246
- vertical-align: top;
247
- width: 230px;
248
- background: #e6e6e6;
249
- }
250
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul {
251
- padding: 0;
252
- margin-bottom: 0;
253
- margin-top: 80px;
254
- }
255
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
256
- display: block;
257
- background: #efefef;
258
- margin: 1px 0;
259
- }
260
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
261
- display: block;
262
- width: 100%;
263
- padding: 20px 20px;
264
- font-size: 12px;
265
- color: #585858;
266
- text-decoration: none;
267
- text-transform: uppercase;
268
- text-align: left;
269
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
270
- }
271
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
272
- display: block;
273
- font-weight: bold;
274
- }
275
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
276
- display: block;
277
- font-size: 13px;
278
- font-weight: normal;
279
- text-transform: none;
280
- color: #9a9a9a;
281
- }
282
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
283
- float: right;
284
- color: #ccc;
285
- }
286
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
287
- clear: both;
288
- }
289
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
290
- background: #f7f6f6;
291
- }
292
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
293
- color: #9a9a9a;
294
- }
295
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
296
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
297
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover,
298
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
299
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:focus {
300
- outline: 0 !important;
301
- box-shadow: none !important;
302
- }
303
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab {
304
- background: #fff;
305
- border-left: 5px solid #ff5722;
306
- }
307
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a {
308
- color: #ff5722;
309
- font-weight: bold;
310
- }
311
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab.wbcr-factory-active-tab a .dashicons {
312
- color: #9a9a9a;
313
- }
314
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu {
315
- padding: 0;
316
- margin: 0;
317
- }
318
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li {
319
- margin: 1px 0 0;
320
- padding: 0;
321
- }
322
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a {
323
- display: block;
324
- font-weight: normal;
325
- color: #222;
326
- border: 0;
327
- margin: 0;
328
- padding: 5px 5px 5px 30px;
329
- background: #f5f5f5;
330
- text-decoration: none;
331
- outline: none;
332
- }
333
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:focus,
334
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a:link {
335
- outline: 0 !important;
336
- text-shadow: none !important;
337
- }
338
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a .dashicons {
339
- color: #9a9a9a;
340
- font-size: 13px;
341
- border: 0;
342
- -moz-transform: scaleX(-1);
343
- -webkit-transform: scaleX(-1);
344
- -o-transform: scaleX(-1);
345
- transform: scaleX(-1);
346
- -ms-filter: fliph;
347
- filter: fliph;
348
- }
349
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active {
350
- background: #fff;
351
- color: #ff5722;
352
- font-weight: 600;
353
- }
354
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-submenu li a.wbcr-factory-tab-active .dashicons {
355
- color: #ff5722;
356
- }
357
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section,
358
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section {
359
- display: inline-block;
360
- vertical-align: top;
361
- }
362
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section {
363
- width: 74.6%;
364
- }
365
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section.wbcr-fullwidth {
366
- width: 100%;
367
- }
368
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section .nav-tab-wrapper {
369
- margin-top: 15px;
370
- }
371
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content {
372
- background: #f7f7f7;
373
- padding: 0 0 20px 0;
374
- border: 1px solid #dad8d8;
375
- box-shadow: -1px 0px 1px rgba(0, 0, 0, 0.1);
376
- }
377
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section .wbcr-factory-content > form {
378
- padding-top: 0 !important;
379
- }
380
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section {
381
- width: 25%;
382
- padding: 10px;
383
- margin: 0 0 -20px;
384
- background-color: #f9f9f9;
385
- box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.1);
386
- }
387
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-sidebar-widget {
388
- margin: 0 0 20px;
389
- }
390
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget {
391
- display: inline-block;
392
- min-height: 230px;
393
- width: 100%;
394
- margin-top: 20px;
395
- background-color: #fff;
396
- padding: 20px 15px;
397
- vertical-align: top;
398
- }
399
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-hide {
400
- display: none;
401
- }
402
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-warning {
403
- background: #fff4d0;
404
- }
405
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-danger {
406
- background: #e2ffc0;
407
- }
408
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget.wbcr-factory-success {
409
- background: #ffebe9;
410
- }
411
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-hint-icon-simple {
412
- display: inline-block;
413
- width: 16px;
414
- height: 16px;
415
- line-height: 13px;
416
- padding: 0;
417
- font-size: 11px;
418
- text-align: center;
419
- color: #fff;
420
- background: #E91E63;
421
- border-radius: 3px;
422
- }
423
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-grey {
424
- background: #E91E63;
425
- }
426
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-red {
427
- background: #9e9e9e;
428
- }
429
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-simple-green {
430
- background: #8bc34a;
431
- }
432
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget .wbcr-factory-icon-5stars {
433
- display: block;
434
- width: 80px;
435
- height: 17px;
436
- background: url('../img/5-stars22.png') no-repeat;
437
- vertical-align: middle;
438
- margin-bottom: 5px;
439
- }
440
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] {
441
- display: block;
442
- margin: 30px auto 0;
443
- outline: none;
444
- }
445
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :focus,
446
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form input[type="image"] :active {
447
- box-shadow: none;
448
- }
449
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-sidebar-widget #wbcr-factory-paypal-donation-form .wbcr-factory-donation-price {
450
- font-size: 50px;
451
- margin-top: 30px;
452
- text-align: center;
453
- font-weight: 600;
454
- color: #8BC34A;
455
- }
456
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box {
457
- min-height: 240px;
458
- margin-bottom: 20px;
459
- text-align: center;
460
- background: #fdfcf7;
461
- padding: 30px;
462
- border: 1px solid #f3f1e7;
463
- }
464
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box .dashicons {
465
- width: 50px;
466
- height: 50px;
467
- font-size: 50px;
468
- color: #FFC107;
469
- line-height: normal;
470
- }
471
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box h3 {
472
- color: #7b6111;
473
- }
474
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-feature-box p {
475
- color: #9e9e9e;
476
- }
477
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-buttons-wrap {
478
- margin-top: 20px;
479
- text-align: center;
480
- }
481
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button {
482
- display: inline-block;
483
- padding: 20px 60px;
484
- background-color: #FFC107;
485
- color: #866605;
486
- text-decoration: none;
487
- text-transform: uppercase;
488
- font-weight: bold;
489
- transition: background-color 0.3s, border-color 0.3s, color 0.3s, opacity 0.3s;
490
- }
491
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-more_features .wbcr-factory-premium-button:hover {
492
- background-color: #ffce3a;
493
- }
494
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog {
495
- padding: 20px;
496
- background: #ffffff;
497
- }
498
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog .updated,
499
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog .alert {
500
- display: none;
501
- }
502
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog h2 {
503
- font-size: 18px;
504
- margin-top: 10px;
505
- }
506
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-description {
507
- padding: 10px;
508
- background: #ffedeb;
509
- border: 1px solid #ffdfdc;
510
- margin: 15px 0;
511
- }
512
- #WBCR .wbcr-factory-pages-447-impressive-page-template #wbcr-factory-confirm-dialog .wbcr-factory-confirm-hint {
513
- margin-bottom: 15px;
514
- color: #7b7b7b;
515
- }
516
- @media screen and (max-width: 1367px) {
517
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section {
518
- width: 69.6%;
519
- }
520
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section {
521
- width: 30%;
522
- }
523
- }
524
- @media screen and (max-width: 1320px) {
525
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-content-section {
526
- width: 100%;
527
- }
528
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section {
529
- display: none !important;
530
- }
531
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-header-logo .dash {
532
- display: none !important;
533
- }
534
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-header-title {
535
- display: none !important;
536
- }
537
- }
538
- @media screen and (max-width: 950px) {
539
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar {
540
- width: 70px;
541
- }
542
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab a {
543
- font-size: 0;
544
- }
545
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__title {
546
- font-size: 0;
547
- }
548
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__short-description {
549
- display: none !important;
550
- }
551
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-page-inner-wrap {
552
- margin-left: 70px;
553
- }
554
- }
555
- /*# sourceMappingURL=impressive.page.template.css.map */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/pages/templates/impressive/assets/css/impressive.page.template.css.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["impressive.page.template.less"],"names":[],"mappings":";;;;;AAMA,KACE;AADF,KACY;AADZ,KACqB;AADrB,KAC6B;EACzB,wBAAA;;AAFJ,KAKE;EACE,kBAAA;;;;;;;;AANJ,KAKE,iDAGE;EACE,cAAA;;AATN,KAKE,iDAOE;EACE,cAAA;;AAbN,KAKE,iDAWE;EACE,cAAA;;AAjBN,KAKE,iDAeE;EACE,cAAA;;AArBN,KAKE,iDAmBE;EACE,eAAA;;AAzBN,KAKE,iDAmBE,YAGE;EACE,mBAAA;;AA5BR,KAKE,iDA2BE,iBAAiB;EACf,gBAAA;;AAjCN,KAKE,iDA+BE;EACE,iBAAA;EACA,mBAAA;;AAtCN,KAKE,iDAoCE,2BACE,MACE;EACE,qBAAA;EACA,sBAAA;;AA7CV,KAKE,iDAoCE,2BACE,MACE,KAIE,MAAK;AA/Cf,KAKE,iDAoCE,2BACE,MACE,KAI0B,MAAK,iBAAiB;EAC5C,aAAA;;AAhDZ,KAKE,iDAiDE;EACE,iBAAA;EACA,oBAAA;EACA,SAAA;EACA,gBAAA;EACA,aAAA;;AAEA,KAxDJ,iDAiDE,OAOI;EACA,wBAAA;;AAGF,KA5DJ,iDAiDE,OAWG;EACC,mBAAA;;AAGF,KAhEJ,iDAiDE,OAeG,cAAc,UAAU;EACvB,mBAAA;;AAGF,KApEJ,iDAiDE,OAmBG;EACC,mBAAA;;AAGF,KAxEJ,iDAiDE,OAuBG,aAAa,UAAU;EACtB,mBAAA;;AAGF,KA5EJ,iDAiDE,OA2BG;EACC,mBAAA;;AAGF,KAhFJ,iDAiDE,OA+BG,cAAc,UAAU;EACvB,mBAAA;;AAtFR,KAKE,iDAqFE;EACE,uBAAA;;AA3FN,KAKE,iDAyFE;EACE,cAAA;EACA,eAAA;EACA,oBAAA;EACA,cAAA;;AAlGN,KAKE,iDAgGE;AArGJ,KAKE,iDAgGyB;EACrB,kBAAA;EACA,mBAAA;EACA,gBAAA;;AASA,KA5GJ,iDAgGE,sBAYG;AAAD,KA5GJ,iDAgGyB,mBAYpB;EACC,cAAA;EACA,SAAS,EAAT;EACA,WAAA;;AApHR,KAKE,iDAmHE;EACE,mBAAA;EACA,yBAAA;EACA,cAAA;EACA,sCAAA;;AAEA,KAzHJ,iDAmHE,gCAMG;EACC,aAAA;;AA/HR,KAKE,iDAmHE,gCAUE;EACE,eAAA;;AAnIR,KAKE,iDAmHE,gCAcE;EACE,cAAA;EACA,eAAA;;AAxIR,KAKE,iDA4IE;EAIE,kBAAA;EAEA,mBAAA;EACA,mBAAA;EACA,gBAAA;;AAzJN,KAKE,iDA4IE,8BAUE;AA3JN,KAKE,iDA4IE,8BAUoB,GAAE;AA3J1B,KAKE,iDA4IE,8BAUwC,GAAE;EACtC,SAAA;;AA5JR,KAKE,iDA4IE,8BAcE;EACE,mBAAA;EACA,mBAAA;EACA,gCAAA;;AAlKR,KAKE,iDA4IE,8BAoBE,SAAQ;EACN,SAAA;;AAtKR,KAKE,iDA4IE,8BAwBE,SAAQ;EACN,mBAAA;;AA1KR,KAKE,iDA4IE,8BA4BE;EACE,yBAAA;EACA,gBAAA;EACA,uCAAA;;AAEA,KA7KN,iDA4IE,8BA4BE,SAKG;AAAS,KA7KhB,iDA4IE,8BA4BE,SAKa;EACT,gBAAA;EACA,aAAA;;AApLV,KAKE,iDAoLE;EACE,kBAAA;EACA,WAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;EACA,0BAAA;;AAlMN,KAKE,iDAoLE,0BAWE;EACE,WAAA;EACA,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EAEA,yBAAA;EACA,WAAA;EACA,kBAAA;EACA,kBAAA;EACA,gBAAA;;AAhNR,KAKE,iDAoLE,0BA0BE;EACE,qBAAA;EACA,sBAAA;;AArNR,KAKE,iDAoLE,0BA0BE,2BAIE;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,gBAAA;EACA,qBAAA;EAEA,gBAAA;EACA,mBAAA;EACA,uBAAA;EACA,WAAA;;AAjOV,KAKE,iDAoLE,0BA4CE;EACE,kBAAA;EACA,YAAA;EACA,YAAA;;AAxOR,KAKE,iDAoLE,0BAkDE;EACE,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,yBAAA;EACA,gBAAA;EACA,iBAAA;EACA,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,8CAAA;EACA,yBAAA;EACA,cAAA;EACA,8EAAA;EACA,kBAAA;EACA,aAAA;EACA,qBAAA;EACA,UAAA;;AAEA,KA7PN,iDAoLE,0BAkDE,qBAuBG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KAnQR,iDAoLE,0BAkDE,qBAuBG,uBAME;EACC,mBAAA;EACA,WAAA;;AAGF,KAxQR,iDAoLE,0BAkDE,qBAuBG,uBAWE;EACC,iDAAA;;AAIJ,KA7QN,iDAoLE,0BAkDE,qBAuCG;EACC,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,WAAA;;AAEA,KAnRR,iDAoLE,0BAkDE,qBAuCG,2BAME;EACC,mBAAA;EACA,WAAA;;AAGF,KAxRR,iDAoLE,0BAkDE,qBAuCG,2BAWE;EACC,iDAAA;;AA9RZ,KAKE,iDA+RE;EAEE,WAAA;EACA,mBAAA;EACA,YAAA;EACA,mBAAA;;AAzSN,KAKE,iDA+RE,kCAOE;EACE,UAAA;EACA,gBAAA;EACA,gBAAA;;AA9SR,KAKE,iDA+RE,kCAOE,GAKE;EACE,cAAA;EACA,mBAAA;EAEA,aAAA;;AApTV,KAKE,iDA+RE,kCAOE,GAKE,sBAME;EACE,cAAA;EACA,WAAA;EACA,kBAAA;EACA,eAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,gBAAA;EACA,gDAAgD,oDAAoD,4BAApG;;AA/TZ,KAKE,iDA+RE,kCAOE,GAKE,sBAME,wBAWE;EACE,cAAA;EACA,iBAAA;;AAnUd,KAKE,iDA+RE,kCAOE,GAKE,sBAME,wBAgBE;EACE,cAAA;EACA,eAAA;EACA,mBAAA;EACA,oBAAA;EACA,cAAA;;AA3Ud,KAKE,iDA+RE,kCAOE,GAKE,sBAME,wBAwBE;EACE,YAAA;EAEA,WAAA;;AAGF,KA/UV,iDA+RE,kCAOE,GAKE,sBAME,wBA8BG;EACC,WAAA;;AAGF,KAnVV,iDA+RE,kCAOE,GAKE,sBAME,wBAkCG;EACC,mBAAA;;AADF,KAnVV,iDA+RE,kCAOE,GAKE,sBAME,wBAkCG,MAGC;EACE,cAAA;;AAIJ,KA3VV,iDA+RE,kCAOE,GAKE,sBAME;AA0CK,KA3Vb,iDA+RE,kCAOE,GAKE,sBAME,wBA0CM;AAAS,KA3VvB,iDA+RE,kCAOE,GAKE,sBAME,wBA0CgB;AAAQ,KA3VhC,iDA+RE,kCAOE,GAKE,sBAME,wBA0CyB;AAAS,KA3V1C,iDA+RE,kCAOE,GAKE,sBAME,wBA0CmC;EAC/B,qBAAA;EACA,2BAAA;;AAKJ,KAlWR,iDA+RE,kCAOE,GAKE,sBAuDG;EACC,gBAAA;EACA,8BAAA;;AAFF,KAlWR,iDA+RE,kCAOE,GAKE,sBAuDG,wBAIC;EACE,cAAA;EACA,iBAAA;;AANJ,KAlWR,iDA+RE,kCAOE,GAKE,sBAuDG,wBAIC,EAKE;EACE,cAAA;;AAjXhB,KAKE,iDA+RE,kCAOE,GAKE,sBAsEE;EACE,UAAA;EACA,SAAA;;AAxXZ,KAKE,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE;EACE,eAAA;EACA,UAAA;;AA5Xd,KAKE,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE;EACE,cAAA;EACA,mBAAA;EACA,WAAA;EACA,SAAA;EACA,SAAA;EACA,yBAAA;EACA,mBAAA;EACA,qBAAA;EACA,aAAA;;AAEA,KApYd,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWG;AAAQ,KApYvB,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAWY;EACR,qBAAA;EACA,4BAAA;;AA3YlB,KAKE,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EAgBE;EACE,cAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAgB,UAAhB;EACA,mBAAmB,UAAnB;EACA,cAAc,UAAd;EACA,WAAW,UAAX;EACA,iBAAA;EACA,aAAA;;AAGF,KArZd,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG;EACC,gBAAA;EACA,cAAA;EACA,gBAAA;;AAHF,KArZd,iDA+RE,kCAOE,GAKE,sBAsEE,sBAIE,GAIE,EA4BG,wBAMC;EACE,cAAA;;AAjapB,KAKE,iDA0aE;AA/aJ,KAKE,iDA0aiC;EAC7B,qBAAA;EACA,mBAAA;;AAjbN,KAKE,iDA+aE;EACE,YAAA;;AAEA,KAlbJ,iDA+aE,8BAGG;EACC,WAAA;;AAxbR,KAKE,iDA+aE,8BAOE;EACE,gBAAA;;AA5bR,KAKE,iDA+aE,8BAWE;EACE,mBAAA;EACA,mBAAA;EACA,yBAAA;EACA,2CAAA;;AAEA,KAhcN,iDA+aE,8BAWE,sBAMI;EACA,yBAAA;;AAtcV,KAKE,iDAscE;EACE,UAAA;EACA,aAAA;EACA,iBAAA;EACA,yBAAA;EACA,2CAAA;;AAhdN,KAKE,iDAscE,oCAOE;EACE,gBAAA;;AAndR,KAKE,iDAsdE;EACE,qBAAA;EACA,iBAAA;EACA,WAAA;EACA,gBAAA;EACA,sBAAA;EACA,kBAAA;EACA,mBAAA;;AAEA,KA/dJ,iDAsdE,6BASG;EACC,aAAA;;AAGF,KAneJ,iDAsdE,6BAaG;EACC,mBAAA;;AAGF,KAveJ,iDAsdE,6BAiBG;EACC,mBAAA;;AAGF,KA3eJ,iDAsdE,6BAqBG;EACC,mBAAA;;AAjfR,KAKE,iDAsdE,6BAyBE;EACE,qBAAA;EACA,WAAA;EACA,YAAA;EACA,iBAAA;EACA,UAAA;EACA,eAAA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,kBAAA;;AA9fR,KAKE,iDAsdE,6BAsCE;EACE,mBAAA;;AAlgBR,KAKE,iDAsdE,6BA0CE;EACE,mBAAA;;AAtgBR,KAKE,iDAsdE,6BA8CE;EACE,mBAAA;;AA1gBR,KAKE,iDAsdE,6BAkDE;EACE,cAAA;EACA,WAAA;EACA,YAAA;EACA,gBAAgB,iCAAhB;EACA,sBAAA;EACA,kBAAA;;AAnhBR,KAKE,iDAsdE,6BA2DE,mCACE,MAAK;EACH,cAAA;EACA,mBAAA;EACA,aAAA;;AA1hBV,KAKE,iDAsdE,6BA2DE,mCACE,MAAK,cAKH;AA5hBV,KAKE,iDAsdE,6BA2DE,mCACE,MAAK,cAKK;EACN,gBAAA;;AA7hBZ,KAKE,iDAsdE,6BA2DE,mCAWE;EACE,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,cAAA;;AAtiBV,KAKE,iDAsiBE,iCACE;EAEE,iBAAA;EACA,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,aAAA;EACA,yBAAA;;AAnjBR,KAKE,iDAsiBE,iCACE,0BASE;EACE,WAAA;EACA,YAAA;EACA,eAAA;EACA,cAAA;EACA,mBAAA;;AA1jBV,KAKE,iDAsiBE,iCACE,0BAiBE;EACE,cAAA;;AA9jBV,KAKE,iDAsiBE,iCACE,0BAqBE;EACE,cAAA;;AAlkBV,KAKE,iDAsiBE,iCA2BE;EACE,gBAAA;EACA,kBAAA;;AAxkBR,KAKE,iDAsiBE,iCAgCE;EACE,qBAAA;EACA,kBAAA;EACA,yBAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;EACA,iBAAA;EACA,8EAAA;;AAEA,KAhlBN,iDAsiBE,iCAgCE,6BAUG;EACC,yBAAA;;AAtlBV,KAKE,iDAslBE;EACE,aAAA;EACA,mBAAA;;AA7lBN,KAKE,iDAslBE,6BAIE;AA/lBN,KAKE,iDAslBE,6BAIY;EACR,aAAA;;AAhmBR,KAKE,iDAslBE,6BAQE;EACE,eAAA;EACA,gBAAA;;AArmBR,KAKE,iDAslBE,6BAaE;EACE,aAAA;EACA,mBAAA;EACA,yBAAA;EACA,cAAA;;AA5mBR,KAKE,iDAslBE,6BAoBE;EACE,mBAAA;EACA,cAAA;;AAMR,mBAAsC;EACpC,KACE,iDACE;IACE,YAAA;;EAHN,KACE,iDAKE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,iDACE;IACE,WAAA;;EAHN,KACE,iDAKE;IACE,wBAAA;;EAPN,KACE,iDASE,0BACE;IACE,wBAAA;;EAZR,KACE,iDAeE;IACE,wBAAA;;;AAMR,mBAAqC;EACnC,KACE,iDACE;IACE,WAAA;;EAHN,KACE,iDACE,kCAGE,GACE,sBACE;IACE,YAAA;;EARZ,KACE,iDACE,kCAGE,GACE,sBAKE;IACE,YAAA;;EAZZ,KACE,iDACE,kCAGE,GACE,sBASE;IACE,wBAAA;;EAhBZ,KACE,iDAqBE;IACE,iBAAA","file":"impressive.page.template.css"}
 
libs/factory/pages/templates/impressive/impressive-page.class.php DELETED
@@ -1,908 +0,0 @@
1
- <?php
2
- /**
3
- * Impressive page themplate class
4
- *
5
- * @author Alex Kovalev <alex.kovalevv@gmail.com>
6
- * @since 1.0.0
7
- * @package factory-pages
8
- * @copyright (c) 2018, Webcraftic Ltd
9
- *
10
- */
11
-
12
- // Exit if accessed directly
13
- if( !defined('ABSPATH') ) {
14
- exit;
15
- }
16
-
17
- if( !class_exists('Wbcr_FactoryPages447_ImpressiveThemplate') ) {
18
- /**
19
- * Class Wbcr_FactoryPages447_ImpressiveThemplate
20
- */
21
- abstract class Wbcr_FactoryPages447_ImpressiveThemplate extends Wbcr_FactoryPages447_AdminPage {
22
-
23
- /**
24
- * Тип страницы:
25
- *
26
- * Существует только два типа страниц:
27
- * options - предназначена для создании страниц с набором опций и настроек.
28
- * page - предназначена для произвольного контента, любой html код.
29
- *
30
- * @var string
31
- */
32
- public $type = 'options';
33
-
34
- /**
35
- * ID родительской страницы, если указан, тогда эта страница будет внутренней странтцей
36
- *
37
- * @var string
38
- */
39
- public $page_parent_page;
40
-
41
- /**
42
- * Иконка меню в интерфейсе плагина
43
- *
44
- * Отображается в левом меню интерфейса плагина. Вы должны указать css класс dashicons.
45
- * Иконки можно найти тут: https://developer.wordpress.org/resource/dashicons/#admin-site-alt
46
- *
47
- * @var string
48
- */
49
- public $page_menu_dashicon;
50
-
51
- /**
52
- * Короткое описание пункта меню в интерфейсе плагина
53
- *
54
- * Используется для справки, что содержится в разделе меню. По умолчанию
55
- * описание не используется.
56
- *
57
- * @var string
58
- */
59
- public $page_menu_short_description;
60
-
61
- /**
62
- * Позиция закладки на страницу в главном меню плагина
63
- *
64
- * Может быть полезно, если вы хотите, что закладка на вашу страницу
65
- * была выше всех остальных закладок.
66
- * Вы должны установить число от 0 до 100, чем выше число, тем ниже
67
- * будет расположена закладка в меню.
68
- *
69
- * Пример: 0 - в самом конце, 100 - в самом начале
70
- *
71
- * @var int
72
- */
73
- public $page_menu_position = 10;
74
-
75
- /**
76
- * Показывать заголовок страницы?
77
- *
78
- * Заголовок страницы печатается в шапке интерфейса плагина, по некоторым
79
- * причинам вам может понадобиться его скрыть. Установите false, чтобы скрыть
80
- * заголовок страницы.
81
- *
82
- * @var bool
83
- */
84
- public $show_page_title = true;
85
-
86
- /**
87
- * Показывать правый сайдбар в контенте страницы?
88
- *
89
- * Сайдбар для рекламы, уведомлений, виджетов. Если вы планируете
90
- * например выводить рекламу для покупки премиум версии плагина,
91
- * вы можете включить правый сайдбар и вставить в него виджет с рекламой.
92
- *
93
- * Внимание! Сайбар будет показан только на страницах с типом options.
94
- *
95
- * @var bool
96
- */
97
- public $show_right_sidebar_in_options = false;
98
-
99
- /**
100
- * Показывать нижний сайдбар в контенте страницы?
101
- * Сайдбар для рекламы, уведомлений, виджетов. Если вы планируете
102
- * например выводить рекламу для покупки премиум версии плагина,
103
- * вы можете включить правый сайдбар и вставить в него виджет с рекламой.
104
- *
105
- * @var bool
106
- */
107
- public $show_bottom_sidebar = true;
108
-
109
- /**
110
- * @var array
111
- */
112
- public $page_menu = [];
113
-
114
- /**
115
- * @param Wbcr_Factory448_Plugin $plugin
116
- */
117
- public function __construct(Wbcr_Factory448_Plugin $plugin)
118
- {
119
- $this->menuIcon = FACTORY_PAGES_447_URL . '/templates/impressive/assets/img/webcraftic-plugin-icon.png';
120
- //$allow_multisite = apply_filters('wbcr_factory_448_core_admin_allow_multisite', false);
121
-
122
- if( is_multisite() && $this->available_for_multisite && $plugin->isNetworkActive() ) {
123
- $this->network = true;
124
- $this->menu_target = 'settings.php';
125
- $this->capabilitiy = 'manage_network';
126
- }
127
-
128
- parent::__construct($plugin);
129
-
130
- $this->title_plugin_action_link = __('Settings', 'wbcr_factory_pages_447');
131
-
132
- $this->setPageMenu();
133
- }
134
-
135
- /**
136
- * Requests assets (js and css) for the page.
137
- *
138
- * @return void
139
- * @since 1.0.0
140
- * @see FactoryPages447_AdminPage
141
- *
142
- */
143
- public function assets($scripts, $styles)
144
- {
145
-
146
- $this->scripts->request('jquery');
147
-
148
- $this->scripts->request([
149
- 'control.checkbox',
150
- 'control.dropdown',
151
- 'bootstrap.tooltip',
152
- 'holder.more-link'
153
- ], 'bootstrap');
154
-
155
- $this->styles->request([
156
- 'bootstrap.core',
157
- 'bootstrap.form-group',
158
- 'bootstrap.separator',
159
- 'control.dropdown',
160
- 'control.checkbox',
161
- 'holder.more-link'
162
- ], 'bootstrap');
163
-
164
- $this->styles->add(FACTORY_PAGES_447_URL . '/templates/impressive/assets/css/impressive.page.template.css');
165
- }
166
-
167
- /**
168
- * Получает заголовок плагина (обычно используется для брендинга)
169
- *
170
- * @return string
171
- */
172
- public function getPluginTitle()
173
- {
174
- /**
175
- * @since 4.0.9 - является устаревшим
176
- */
177
- $plugin_title = apply_filters('wbcr/factory/pages/impressive/plugin_title', $this->plugin->getPluginTitle(), $this->plugin->getPluginName());
178
-
179
- return $plugin_title;
180
- }
181
-
182
- /**
183
- * Получает полную ссылку текущей страницы
184
- *
185
- * @return string
186
- */
187
- public function getPageUrl()
188
- {
189
- /**
190
- * @since 4.0.9 - добавлен
191
- */
192
- return apply_filters('wbcr/factory/pages/impressive/base_url', $this->getBaseUrl(), $this->plugin->getPluginName(), $this->id);
193
- }
194
-
195
- /**
196
- * Get options with namespace
197
- *
198
- * @param $option_name
199
- * @param bool $default
200
- *
201
- * @return mixed|void
202
- */
203
- public function getOption($option_name, $default = false)
204
- {
205
- _deprecated_function(__METHOD__, '4.0.9', '$this->plugin->getOption()');
206
-
207
- return $this->plugin->getOption($option_name, $default);
208
- }
209
-
210
- /**
211
- * Shows a page or options
212
- *
213
- * @sinve 1.0.0
214
- * @return void
215
- */
216
- public function indexAction()
217
- {
218
- $page_menu = $this->getPageMenu();
219
- if( 'options' === $page_menu[$this->getResultId()]['type'] ) {
220
- $this->showOptions();
221
- } else {
222
- $this->showPage();
223
- }
224
- }
225
-
226
- /**
227
- * Flush cache and rules
228
- *
229
- * @sinve 4.0.0
230
- * @return void
231
- */
232
- public function flushCacheAndRulesAction()
233
- {
234
- check_admin_referer('wbcr_factory_' . $this->getResultId() . '_flush_action');
235
-
236
- if( class_exists('WbcrFactoryClearfy240_Helpers') ) {
237
- WbcrFactoryClearfy240_Helpers::flushPageCache();
238
- }
239
-
240
- /**
241
- * @since 4.0.1 - добавлен
242
- * @since 4.0.9 - изменено название экшена, без привязки к версии фреймворка
243
- */
244
- do_action('wbcr/factory/pages/impressive/after_form_save', $this->plugin, $this);
245
-
246
- $this->afterFormSave();
247
-
248
- $redirect_args = [
249
- $this->plugin->getPluginName() . '_saved' => 1
250
- ];
251
-
252
- /**
253
- * @since 4.0.1 - добавлен
254
- * @since 4.0.9 - изменено название экшена, без привязки к версии фреймворка
255
- */
256
- $redirect_args = apply_filters('wbcr/factory/pages/impressive/save_redirect_args', $redirect_args);
257
-
258
- $this->redirectToAction('index', $redirect_args);
259
- }
260
-
261
-
262
- /**
263
- * Вызывается всегда при загрузке страницы, перед опциями формы с типом страницы options
264
- */
265
- protected function warningNotice()
266
- {
267
- /*if( WP_CACHE ) {
268
- $this->printWarningNotice(__("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_447'));
269
- }*/
270
- // Метод предназначен для вызова в дочернем классе
271
- }
272
-
273
- /**
274
- * Вызывается всегда при загрузке страницы, перед опциями формы с типом страницы options
275
- *
276
- * @param array $notices
277
- *
278
- * @return array
279
- * @since 4.0.0
280
- *
281
- */
282
- protected function getActionNotices($notices)
283
- {
284
- // Метод предназначен для вызова в дочернем классе
285
- return $notices;
286
- }
287
-
288
- /**
289
- * Вызывается перед сохранением опций формы
290
- *
291
- * @return void
292
- * @since 4.0.0
293
- */
294
- protected function beforeFormSave()
295
- {
296
- // Метод предназначен для вызова в дочернем классе
297
- }
298
-
299
- /**
300
- * Вызывается после сохранением опций формы, когда выполнен сброс кеша и совершен редирект
301
- *
302
- * @return void
303
- * @since 4.0.0
304
- */
305
- protected function afterFormSave()
306
- {
307
- // Метод предназначен для вызова в дочернем классе
308
- }
309
-
310
- /**
311
- * Вызывается в процессе выполнения сохранения, но после сохранения всех опций
312
- *
313
- * @return void
314
- * @since 4.0.0
315
- */
316
- protected function formSaved()
317
- {
318
- // Метод предназначен для вызова в дочернем классе
319
- }
320
-
321
- public function printWarningNotice($message)
322
- {
323
- echo '<div class="alert alert-warning wbcr-factory-warning-notice"><p><span class="dashicons dashicons-warning"></span> ' . $message . '</p></div>';
324
- }
325
-
326
- public function printErrorNotice($message)
327
- {
328
- echo '<div class="alert alert-danger wbcr-factory-warning-notice"><p><span class="dashicons dashicons-dismiss"></span> ' . $message . '</p></div>';
329
- }
330
-
331
- public function printSuccessNotice($message)
332
- {
333
- echo '<div class="alert alert-success wbcr-factory-warning-notice"><p><span class="dashicons dashicons-plus"></span> ' . $message . '</p></div>';
334
- }
335
-
336
- /**
337
- * Печатает все зарегистрированные системные уведомления внутри интерфейса плагина
338
- * Типы уведомлений: предупреждения, ошибки, успешные выполнения задач
339
- */
340
- protected function printAllNotices()
341
- {
342
- $this->warningNotice();
343
- $this->showActionsNotice();
344
-
345
- /**
346
- * @since 4.0.1 - добавлен
347
- * @since 4.0.9 - изменено имя
348
- */
349
- do_action('wbcr/factory/pages/impressive/print_all_notices', $this->plugin, $this);
350
- }
351
-
352
- private function showActionsNotice()
353
- {
354
- $notices = [
355
- [
356
- 'conditions' => [
357
- $this->plugin->getPluginName() . '_saved' => '1'
358
- ],
359
- 'type' => 'success',
360
- 'message' => __('The settings have been updated successfully!', 'wbcr_factory_pages_447') . (WP_CACHE ? '<br>' . __("It seems that a caching/performance plugin is active on this site. Please manually invalidate that plugin's cache after making any changes to the settings below.", 'wbcr_factory_pages_447') : '')
361
- ]
362
- ];
363
-
364
- /**
365
- * @since 4.0.1 - добавлен
366
- * @since 4.0.9 - изменено имя
367
- */
368
- $notices = apply_filters('wbcr/factory/pages/impressive/actions_notice', $notices, $this->plugin, $this->id);
369
-
370
- $notices = $this->getActionNotices($notices);
371
-
372
- foreach($notices as $key => $notice) {
373
- $show_message = true;
374
-
375
- if( isset($notice['conditions']) && !empty($notice['conditions']) ) {
376
- foreach($notice['conditions'] as $condition_name => $value) {
377
- if( !isset($_REQUEST[$condition_name]) || $_REQUEST[$condition_name] != $value ) {
378
- $show_message = false;
379
- }
380
- }
381
- }
382
- if( !$show_message ) {
383
- continue;
384
- }
385
-
386
- $notice_type = isset($notice['type']) ? $notice['type'] : 'success';
387
-
388
- switch( $notice_type ) {
389
- case 'success':
390
- $this->printSuccessNotice($notice['message']);
391
- break;
392
- case 'danger':
393
- $this->printErrorNotice($notice['message']);
394
- break;
395
- default:
396
- $this->printWarningNotice($notice['message']);
397
- break;
398
- }
399
- }
400
- }
401
-
402
- /**
403
- * Set page menu item
404
- */
405
- public function setPageMenu()
406
- {
407
- global $factory_impressive_page_menu;
408
-
409
- $dashicon = (!empty($this->page_menu_dashicon)) ? ' ' . $this->page_menu_dashicon : '';
410
- $short_description = (!empty($this->page_menu_short_description)) ? ' ' . $this->page_menu_short_description : '';
411
-
412
- if( is_multisite() && is_network_admin() && !$this->network ) {
413
- return;
414
- }
415
-
416
- $factory_impressive_page_menu[$this->getMenuScope()][$this->getResultId()] = [
417
- 'type' => $this->type, // page, options
418
- 'url' => $this->getBaseUrl(),
419
- 'title' => $this->getPageTitle() . ' <span class="dashicons' . $dashicon . '"></span>',
420
- 'short_description' => $short_description,
421
- 'position' => $this->page_menu_position,
422
- 'parent' => $this->page_parent_page
423
- ];
424
- }
425
-
426
- /**
427
- * Пространство имен для меню плагина
428
- * Можно приклеить меню к другому плагину, просто перезаписав этот метод в дочернем классе
429
- *
430
- * @return string
431
- */
432
- public function getMenuScope()
433
- {
434
- /**
435
- * @since 4.0.9 - добавлен
436
- */
437
- return apply_filters('wbcr/factory/pages/impressive/menu_scope', $this->plugin->getPluginName(), $this->plugin->getPluginName(), $this->id);
438
- }
439
-
440
- /**
441
- * Get page menu items
442
- *
443
- * @return mixed
444
- */
445
- protected function getPageMenu()
446
- {
447
- global $factory_impressive_page_menu;
448
-
449
- return $factory_impressive_page_menu[$this->getMenuScope()];
450
- }
451
-
452
- protected function getPageSubMenu($current_page = null)
453
- {
454
- $page_menu = $this->getPageMenu();
455
-
456
- $page_submenu = [];
457
- foreach($page_menu as $page_screen => $page) {
458
- if( !empty($page['parent']) ) {
459
- $page_parent_id = $this->getResultId($page['parent']);
460
-
461
- if( isset($page_menu[$page_parent_id]) ) {
462
- $page['title'] = strip_tags($page['title']);
463
- $page_submenu[$page_parent_id][$page_screen] = $page;
464
- }
465
- }
466
- }
467
-
468
- return isset($page_submenu[$current_page]) ? $page_submenu[$current_page] : null;
469
- }
470
-
471
- /**
472
- * @param int $a
473
- * @param int $b
474
- *
475
- * @return bool
476
- */
477
- protected function pageMenuSort($a, $b)
478
- {
479
- return $b['position'] <=> $a['position'];
480
- }
481
-
482
- protected function showPageMenu()
483
- {
484
- $page_menu = $this->getPageMenu();
485
- $self_page_id = $this->getResultId();
486
- $current_page = isset($page_menu[$self_page_id]) ? $page_menu[$self_page_id] : null;
487
-
488
- $parent_page_id = !empty($current_page['parent']) ? $this->getResultId($current_page['parent']) : null;
489
-
490
- uasort($page_menu, [$this, 'pageMenuSort']);
491
-
492
- ?>
493
- <ul>
494
- <?php foreach($page_menu as $page_screen => $page): ?>
495
- <?php
496
- if( !empty($page['parent']) ) {
497
- continue;
498
- }
499
- $active_tab = '';
500
- if( $page_screen == $self_page_id || $page_screen == $parent_page_id ) {
501
- $active_tab = ' wbcr-factory-active-tab';
502
- }
503
- ?>
504
- <li class="wbcr-factory-nav-tab<?php echo esc_attr($active_tab) ?>">
505
- <a href="<?php echo $page['url'] ?>" id="<?php echo esc_attr($page_screen) ?>-tab"
506
- class="wbcr-factory-tab__link js-wbcr-factory-tab__link">
507
- <div class="wbcr-factory-tab__title">
508
- <?php echo $page['title'] ?>
509
- </div>
510
- <?php if( !empty($page['short_description']) ): ?>
511
- <div class="wbcr-factory-tab__short-description">
512
- <?php echo $page['short_description'] ?>
513
- </div>
514
- <?php endif; ?>
515
- </a>
516
-
517
- <?php
518
- $sub_menu = $this->getPageSubMenu($page_screen);
519
- if( !empty($sub_menu) && $page_screen == $self_page_id || $page_screen == $parent_page_id ):
520
- ?>
521
- <ul class="wbcr-factory-submenu">
522
- <?php foreach($sub_menu as $s_menu_page_screen => $s_menu_page): ?>
523
- <?php
524
- $active_tab = '';
525
- if( $s_menu_page_screen == $this->getResultId() ) {
526
- $active_tab = 'wbcr-factory-tab-active';
527
- }
528
- ?>
529
- <li>
530
- <a href="<?php echo $s_menu_page['url'] ?>" id="<?= esc_attr($s_menu_page_screen) ?>-tab"
531
- class="<?= esc_attr($active_tab) ?> js-wbcr-factory-tab__link">
532
- <span class="dashicons dashicons-editor-break"></span><?php echo $s_menu_page['title'] ?>
533
- </a>
534
- </li>
535
- <?php endforeach; ?>
536
- </ul>
537
- <?php endif; ?>
538
- </li>
539
-
540
-
541
- <?php endforeach; ?>
542
- </ul>
543
- <?php
544
- }
545
-
546
-
547
- protected function showPageSubMenu()
548
- {
549
- $self_page_id = $this->getResultId();
550
- $page_menu = $this->getPageMenu();
551
- $current_page = isset($page_menu[$self_page_id]) ? $page_menu[$self_page_id] : null;
552
-
553
- $page_submenu = [];
554
- foreach($page_menu as $page_screen => $page) {
555
- if( !empty($page['parent']) ) {
556
- $page_parent_id = $this->getResultId($page['parent']);
557
-
558
- if( isset($page_menu[$page_parent_id]) ) {
559
- $page['title'] = strip_tags($page['title']);
560
- $page_submenu[$page_parent_id][$page_screen] = $page;
561
- }
562
- }
563
- }
564
-
565
- if( empty($page_submenu) ) {
566
- return;
567
- }
568
-
569
- $get_menu_id = null;
570
- $has_parent = !empty($current_page) && !empty($current_page['parent']);
571
- $parent_page_id = $has_parent ? $this->getResultId($current_page['parent']) : null;
572
-
573
- if( ($has_parent && isset($page_submenu[$parent_page_id])) ) {
574
- $get_menu_id = $parent_page_id;
575
- } else if( !$has_parent && isset($page_submenu[$self_page_id]) ) {
576
- $get_menu_id = $self_page_id;
577
- }
578
-
579
- if( !isset($page_submenu[$get_menu_id]) ) {
580
- return;
581
- }
582
-
583
- $unshift = [];
584
- if( isset($page_menu[$get_menu_id]) ) {
585
- $page_menu[$get_menu_id]['title'] = strip_tags($page_menu[$get_menu_id]['title']);
586
-
587
- $unshift[$get_menu_id][$get_menu_id] = $page_menu[$get_menu_id];
588
- $page_submenu[$get_menu_id] = $unshift[$get_menu_id] + $page_submenu[$get_menu_id];
589
- }
590
-
591
- ?>
592
- <h2 class="nav-tab-wrapper wp-clearfix">
593
- <?php foreach((array)$page_submenu[$get_menu_id] as $page_screen => $page): ?>
594
- <?php
595
- $active_tab = '';
596
- if( $page_screen == $this->getResultId() ) {
597
- $active_tab = ' nav-tab-active';
598
- }
599
- ?>
600
- <a href="<?php echo $page['url'] ?>" id="<?= esc_attr($page_screen) ?>-tab"
601
- class="nav-tab<?= esc_attr($active_tab) ?>">
602
- <?php echo $page['title'] ?>
603
- </a>
604
- <?php endforeach; ?>
605
- </h2>
606
- <?php
607
- }
608
-
609
- protected function showHeader()
610
- {
611
- ?>
612
- <style>
613
- .updated, .notice, .error {
614
- display: none !important;
615
- }
616
- </style>
617
- <div class="wbcr-factory-page-header">
618
- <div class="wbcr-factory-header-logo"><?= $this->getPluginTitle(); ?>
619
- <span class="version"><?= $this->plugin->getPluginVersion() ?> </span>
620
- <?php if( $this->show_page_title ): ?><span class="dash">—</span><?php endif; ?>
621
- </div>
622
- <?php if( $this->show_page_title ): ?>
623
- <div class="wbcr-factory-header-title">
624
- <h2><?php _e('Page') ?>: <?= $this->getPageTitle() ?></h2>
625
- </div>
626
- <?php endif; ?>
627
- <div class="wbcr-factory-control">
628
- <?php do_action('wbcr/factory/pages/impressive/header', $this->plugin->getPluginName()) ?>
629
-
630
- <?php if( $this->type == 'options' ): ?>
631
- <input name="<?= $this->plugin->getPluginName() ?>_save_action"
632
- class="wbcr-factory-button wbcr-factory-type-save" type="submit"
633
- value="<?php _e('Save', 'wbcr_factory_pages_447'); ?>">
634
- <?php wp_nonce_field('wbcr_factory_' . $this->getResultId() . '_save_action'); ?>
635
- <?php endif; ?>
636
- </div>
637
- </div>
638
- <?php
639
- }
640
-
641
- protected function isShowRightSidebar()
642
- {
643
- $widgets = $this->getPageWidgets('right');
644
-
645
- return !empty($widgets) && $this->show_right_sidebar_in_options;
646
- }
647
-
648
- protected function showRightSidebar()
649
- {
650
- $widgets = $this->getPageWidgets('right');
651
-
652
- if( empty($widgets) ) {
653
- return;
654
- }
655
-
656
- foreach($widgets as $widget_content):
657
- echo $widget_content;
658
- endforeach;
659
- }
660
-
661
- protected function showBottomSidebar()
662
- {
663
- $widgets = $this->getPageWidgets('bottom');
664
-
665
- if( empty($widgets) ) {
666
- return;
667
- }
668
- ?>
669
- <div class="row">
670
- <div class="wbcr-factory-top-sidebar">
671
- <?php foreach($widgets as $widget_content): ?>
672
- <div class="col-sm-4">
673
- <?= $widget_content ?>
674
- </div>
675
- <?php endforeach; ?>
676
- </div>
677
- <?php
678
- }
679
-
680
- /**
681
- * @param string $position
682
- *
683
- * @return mixed|void
684
- */
685
- protected function getPageWidgets($position = 'bottom')
686
- {
687
- $widgets = [];
688
-
689
- /**
690
- * @since 4.0.1 - добавлен
691
- * @since 4.0.9 - изменено имя
692
- */
693
- $widgets = apply_filters('wbcr/factory/pages/impressive/widgets', $widgets, $position, $this->plugin, $this);
694
-
695
- return $widgets;
696
- }
697
-
698
- protected function showOptions()
699
- {
700
- $form = new Wbcr_FactoryForms445_Form([
701
- 'scope' => rtrim($this->plugin->getPrefix(), '_'),
702
- 'name' => $this->getResultId() . "-options"
703
- ], $this->plugin);
704
-
705
- $form->setProvider(new Wbcr_FactoryForms445_OptionsValueProvider($this->plugin));
706
-
707
- $options = $this->getPageOptions();
708
-
709
- if( isset($options[0]) && isset($options[0]['items']) && is_array($options[0]['items']) ) {
710
- foreach($options[0]['items'] as $key => $value) {
711
-
712
- if( $value['type'] == 'div' || $value['type'] == 'more-link' ) {
713
- if( isset($options[0]['items'][$key]['items']) && !empty($options[0]['items'][$key]['items']) ) {
714
- foreach($options[0]['items'][$key]['items'] as $group_key => $group_value) {
715
- $options[0]['items'][$key]['items'][$group_key]['layout']['column-left'] = '4';
716
- $options[0]['items'][$key]['items'][$group_key]['layout']['column-right'] = '8';
717
- }
718
-
719
- continue;
720
- }
721
- }
722
-
723
- if( in_array($value['type'], [
724
- 'checkbox',
725
- 'textarea',
726
- 'integer',
727
- 'textbox',
728
- 'dropdown',
729
- 'list',
730
- 'wp-editor'
731
- ]) ) {
732
- $options[0]['items'][$key]['layout']['column-left'] = '4';
733
- $options[0]['items'][$key]['layout']['column-right'] = '8';
734
- }
735
- }
736
- }
737
-
738
- $form->add($options);
739
-
740
- if( isset($_POST[$this->plugin->getPluginName() . '_save_action']) ) {
741
-
742
- check_admin_referer('wbcr_factory_' . $this->getResultId() . '_save_action');
743
-
744
- if( !current_user_can('administrator') && !current_user_can($this->capabilitiy) ) {
745
- wp_die(__('You do not have permission to edit page.', 'wbcr_factory_pages_447'));
746
- }
747
-
748
- /**
749
- * @since 4.0.1 - добавлен
750
- * @since 4.0.9 - изменено имя
751
- */
752
- do_action('wbcr/factory/pages/impressive/before_form_save', $form, $this->plugin, $this);
753
-
754
- $this->beforeFormSave();
755
-
756
- $form->save();
757
-
758
- /**
759
- * @since 4.0.1 - добавлен
760
- * @since 4.0.9 - изменено имя
761
- */
762
- do_action('wbcr/factory/pages/impressive/form_saved', $form, $this->plugin, $this);
763
-
764
- $this->formSaved();
765
-
766
- $this->redirectToAction('flush-cache-and-rules', [
767
- '_wpnonce' => wp_create_nonce('wbcr_factory_' . $this->getResultId() . '_flush_action')
768
- ]);
769
- }
770
-
771
- ?>
772
- <div id="WBCR" class="wrap">
773
- <div class="wbcr-factory-pages-447-impressive-page-template factory-bootstrap-448 factory-fontawesome-000">
774
- <div class="wbcr-factory-options wbcr-factory-options-<?= esc_attr($this->id) ?>">
775
- <div class="wbcr-factory-left-navigation-bar">
776
- <?php $this->showPageMenu() ?>
777
- </div>
778
- <?php
779
- $min_height = 0;
780
- foreach($this->getPageMenu() as $page) {
781
- if( !isset($page['parent']) || empty($page['parent']) ) {
782
- $min_height += 77;
783
- }
784
- }
785
- ?>
786
- <div class="wbcr-factory-page-inner-wrap">
787
- <div class="wbcr-factory-content-section<?php if( !$this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
788
- <?php //$this->showPageSubMenu()
789
- ?>
790
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
791
- <form method="post" class="form-horizontal">
792
- <?php $this->showHeader(); ?>
793
- <?php $this->printAllNotices(); ?>
794
- <?php $form->html(); ?>
795
- </form>
796
- </div>
797
- </div>
798
- <?php if( $this->isShowRightSidebar() ): ?>
799
- <div class="wbcr-factory-right-sidebar-section">
800
- <?php $this->showRightSidebar(); ?>
801
- </div>
802
- <?php endif; ?>
803
- </div>
804
- </div>
805
- <?php
806
- if( $this->show_bottom_sidebar ) {
807
- $this->showBottomSidebar();
808
- }
809
- ?>
810
- <div class="clearfix"></div>
811
- </div>
812
- </div>
813
- </div>
814
- <?php
815
- }
816
-
817
- protected function showPage($content = null)
818
- { ?>
819
- <div id="WBCR" class="wrap">
820
- <div class="wbcr-factory-pages-447-impressive-page-template factory-bootstrap-448 factory-fontawesome-000">
821
- <div class="wbcr-factory-page wbcr-factory-page-<?= $this->id ?>">
822
- <?php $this->showHeader(); ?>
823
- <div class="wbcr-factory-left-navigation-bar">
824
- <?php $this->showPageMenu() ?>
825
- </div>
826
- <?php
827
- $min_height = 0;
828
- foreach($this->getPageMenu() as $page) {
829
- if( !isset($page['parent']) || empty($page['parent']) ) {
830
- $min_height += 77;
831
- }
832
- }
833
- ?>
834
- <div class="wbcr-factory-page-inner-wrap">
835
- <div class="wbcr-factory-content-section<?php if( !$this->isShowRightSidebar() ): echo ' wbcr-fullwidth'; endif ?>">
836
- <?php //$this->showPageSubMenu()
837
- ?>
838
- <div class="wbcr-factory-content" style="min-height:<?= $min_height ?>px">
839
- <?php $this->printAllNotices(); ?>
840
- <?php if( empty($content) ): ?>
841
- <?php $this->showPageContent() ?>
842
- <?php else: ?>
843
- <?php echo $content; ?>
844
- <?php endif; ?>
845
- </div>
846
- </div>
847
- <?php if( $this->isShowRightSidebar() ): ?>
848
- <div class="wbcr-factory-right-sidebar-section" style="min-height:<?= $min_height ?>px">
849
- <?php $this->showRightSidebar(); ?>
850
- </div>
851
- <?php endif; ?>
852
- </div>
853
- </div>
854
- <div class="clearfix"></div>
855
- <?php $this->showBottomSidebar(); ?>
856
- </div>
857
- </div>
858
- <?php
859
- }
860
-
861
- /**
862
- * @return array
863
- */
864
- public function getPageOptions()
865
- {
866
- // используется в классе потомке
867
- }
868
-
869
- /**
870
- * @return void
871
- */
872
- public function showPageContent()
873
- {
874
- // используется в классе потомке
875
- }
876
-
877
- /**
878
- * Shows the html block with a confirmation dialog.
879
- *
880
- * @sinve 1.0.0
881
- * @return void
882
- */
883
- public function confirmPageTemplate($data)
884
- {
885
- ?>
886
- <div id="WBCR" class="wrap">
887
- <div class="wbcr-factory-pages-447-impressive-page-template factory-bootstrap-448 factory-fontawesome-000">
888
- <div id="wbcr-factory-confirm-dialog">
889
- <h2><?php echo $data['title'] ?></h2>
890
- <p class="wbcr-factory-confirm-description"><?php echo $data['description'] ?></p>
891
- <?php if( isset($data['hint']) ): ?>
892
- <p class="wbcr-factory-confirm-hint"><?php echo $data['hint'] ?></p>
893
- <?php endif; ?>
894
- <div class='wbcr-factory-confirm-actions'>
895
- <?php foreach($data['actions'] as $action) { ?>
896
- <a href='<?php echo $action['url'] ?>' class='<?php echo $action['class'] ?>'>
897
- <?php echo $action['title'] ?>
898
- </a>
899
- <?php } ?>
900
- </div>
901
- </div>
902
- </div>
903
- </div>
904
- <?php
905
- }
906
- }
907
- }
908
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
libs/factory/{clearfy → templates}/assets/css/clearfy-base.css RENAMED
@@ -8,7 +8,7 @@
8
  #WBCR {
9
  /* subscribe widget */
10
  }
11
- #WBCR .wbcr-factory-pages-447-impressive-page-template .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
12
  display: inline-block;
13
  position: relative;
14
  content: 'PRO';
@@ -26,18 +26,18 @@
26
  right: auto;
27
  z-index: 11;
28
  }
29
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion {
30
  padding: 30px 80px;
31
  }
32
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion h3 {
33
  margin: 0 0 20px;
34
  }
35
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-inner-contanier {
36
  border: 2px dashed #8bc34a;
37
  background: #fff;
38
  padding: 20px;
39
  }
40
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-activate-premium {
41
  display: inline-block;
42
  cursor: pointer;
43
  line-height: 16px;
@@ -56,16 +56,16 @@
56
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
57
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
58
  }
59
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-activate-premium:active {
60
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
61
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
62
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
63
  }
64
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-activate-premium:focus {
65
  outline: none;
66
  border: 0;
67
  }
68
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-purchase-premium {
69
  display: inline-block;
70
  cursor: pointer;
71
  line-height: 16px;
@@ -84,22 +84,22 @@
84
  -moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
85
  -webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
86
  }
87
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-purchase-premium:active {
88
  box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
89
  -moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
90
  -webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
91
  }
92
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-suggetion .wbcr-factory-purchase-premium:focus {
93
  outline: none;
94
  border: 0;
95
  }
96
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion {
97
  background: #fff;
98
  color: #353535;
99
  font-weight: 600;
100
  border: 2px dashed #8bc34a;
101
  }
102
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion h3 {
103
  margin: 0 0 20px;
104
  padding: 10px 0;
105
  text-align: center;
@@ -110,16 +110,16 @@
110
  vertical-align: middle;
111
  text-transform: uppercase;
112
  }
113
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul {
114
  position: relative;
115
  margin-bottom: 20px;
116
  }
117
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul li {
118
  font-size: 15px;
119
  padding: 7px;
120
  padding-left: 20px;
121
  }
122
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul li:before {
123
  content: " ";
124
  display: inline-block;
125
  width: 0.4em;
@@ -133,7 +133,7 @@
133
  -o-transform: rotate(45deg);
134
  transform: rotate(45deg);
135
  }
136
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion .wbcr-factory-purchase-premium {
137
  display: block;
138
  cursor: pointer;
139
  line-height: 16px;
@@ -152,12 +152,12 @@
152
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
153
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
154
  }
155
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion .wbcr-factory-purchase-premium:active {
156
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
157
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
158
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
159
  }
160
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion .wbcr-factory-purchase-premium:focus {
161
  outline: none;
162
  border: 0;
163
  }
@@ -220,34 +220,34 @@
220
  font-size: 12px;
221
  }
222
  @media screen and (max-width: 1550px) {
223
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-clearfy-240-multisite-pro-suggetion {
224
  padding: 10px 80px;
225
  }
226
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion {
227
  padding: 10px;
228
  }
229
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion h3 {
230
  margin: 0 0 20px;
231
  padding: 10px 0;
232
  font-size: 13px;
233
  font-weight: 600;
234
  }
235
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul {
236
  margin-bottom: 20px;
237
  }
238
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul li {
239
  font-size: 13px;
240
  padding: 2px;
241
  padding-left: 10px;
242
  }
243
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion ul li:before {
244
  width: 0.4em;
245
  height: 0.7em;
246
  border-width: 0 0.2em 0.2em 0;
247
  left: 0;
248
  margin-right: 10px;
249
  }
250
- #WBCR .wbcr-factory-pages-447-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-clearfy-240-pro-suggettion .wbcr-factory-purchase-premium {
251
  font-weight: 700;
252
  line-height: 16px;
253
  font-size: 12px;
8
  #WBCR {
9
  /* subscribe widget */
10
  }
11
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
12
  display: inline-block;
13
  position: relative;
14
  content: 'PRO';
26
  right: auto;
27
  z-index: 11;
28
  }
29
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion {
30
  padding: 30px 80px;
31
  }
32
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion h3 {
33
  margin: 0 0 20px;
34
  }
35
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-inner-contanier {
36
  border: 2px dashed #8bc34a;
37
  background: #fff;
38
  padding: 20px;
39
  }
40
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-activate-premium {
41
  display: inline-block;
42
  cursor: pointer;
43
  line-height: 16px;
56
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
57
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
58
  }
59
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-activate-premium:active {
60
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
61
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
62
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
63
  }
64
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-activate-premium:focus {
65
  outline: none;
66
  border: 0;
67
  }
68
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-purchase-premium {
69
  display: inline-block;
70
  cursor: pointer;
71
  line-height: 16px;
84
  -moz-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
85
  -webkit-box-shadow: 0 1px 0 rgba(60, 45, 2, 0.31);
86
  }
87
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-purchase-premium:active {
88
  box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
89
  -moz-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
90
  -webkit-box-shadow: inset 0 1px 0 rgba(60, 45, 2, 0.31);
91
  }
92
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-suggetion .wbcr-factory-purchase-premium:focus {
93
  outline: none;
94
  border: 0;
95
  }
96
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion {
97
  background: #fff;
98
  color: #353535;
99
  font-weight: 600;
100
  border: 2px dashed #8bc34a;
101
  }
102
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion h3 {
103
  margin: 0 0 20px;
104
  padding: 10px 0;
105
  text-align: center;
110
  vertical-align: middle;
111
  text-transform: uppercase;
112
  }
113
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul {
114
  position: relative;
115
  margin-bottom: 20px;
116
  }
117
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul li {
118
  font-size: 15px;
119
  padding: 7px;
120
  padding-left: 20px;
121
  }
122
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul li:before {
123
  content: " ";
124
  display: inline-block;
125
  width: 0.4em;
133
  -o-transform: rotate(45deg);
134
  transform: rotate(45deg);
135
  }
136
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion .wbcr-factory-purchase-premium {
137
  display: block;
138
  cursor: pointer;
139
  line-height: 16px;
152
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
153
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
154
  }
155
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion .wbcr-factory-purchase-premium:active {
156
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
157
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
158
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
159
  }
160
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion .wbcr-factory-purchase-premium:focus {
161
  outline: none;
162
  border: 0;
163
  }
220
  font-size: 12px;
221
  }
222
  @media screen and (max-width: 1550px) {
223
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-templates-101-multisite-pro-suggetion {
224
  padding: 10px 80px;
225
  }
226
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion {
227
  padding: 10px;
228
  }
229
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion h3 {
230
  margin: 0 0 20px;
231
  padding: 10px 0;
232
  font-size: 13px;
233
  font-weight: 600;
234
  }
235
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul {
236
  margin-bottom: 20px;
237
  }
238
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul li {
239
  font-size: 13px;
240
  padding: 2px;
241
  padding-left: 10px;
242
  }
243
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion ul li:before {
244
  width: 0.4em;
245
  height: 0.7em;
246
  border-width: 0 0.2em 0.2em 0;
247
  left: 0;
248
  margin-right: 10px;
249
  }
250
+ #WBCR .wbcr-factory-templates-101-impressive-page-template .wbcr-factory-right-sidebar-section .wbcr-factory-templates-101-pro-suggettion .wbcr-factory-purchase-premium {
251
  font-weight: 700;
252
  line-height: 16px;
253
  font-size: 12px;
libs/factory/templates/assets/css/clearfy-base.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["clearfy-base.less"],"names":[],"mappings":";;;;;;;AAoCA;;;AAAA,KAoBE,qDACE,kBAAiB,8BAA8B;EAnB/C,qBAAA;EACA,kBAAA;EACA,SAAS,KAAT;EACA,mBAAA;EACA,kBAAA;EACA,WAAA;EACA,eAAA;EACA,cAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;EACA,SAAA;EACA,WAAA;EACA,WAAA;EACA,WAAA;;AAjBJ,KAoBE,qDAKE;EACE,kBAAA;;AA1BN,KAoBE,qDAKE,gDAGE;EACE,gBAAA;;AA7BR,KAoBE,qDAKE,gDAOE;EACE,0BAAA;EACA,gBAAA;EACA,aAAA;;AAnCR,KAoBE,qDAKE,gDAaE;EACE,qBAAA;EAlEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,qDAKE,gDAaE,+BAjDH;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,qDAKE,gDAaE,+BA5CH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,qDAKE,gDAkBE;EACE,qBAAA;EAvEN,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,yCAAA;EACA,8CAAA;EACA,iDAAA;;AACA,KA+BA,qDAKE,gDAkBE,+BAtDH;EACC,+CAAA;EACA,oDAAA;EACA,uDAAA;;AAEF,KA0BA,qDAKE,gDAkBE,+BAjDH;EACC,aAAA;EACA,SAAA;;AAIJ,KAoBE,qDA6BE,oCACE;EACE,gBAAA;EACA,cAAA;EACA,gBAAA;EACA,0BAAA;;AAtDR,KAoBE,qDA6BE,oCACE,2CAME;EACE,gBAAA;EACA,eAAA;EACA,kBAAA;EACA,gCAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,sBAAA;EACA,yBAAA;;AAjEV,KAoBE,qDA6BE,oCACE,2CAkBE;EAEE,kBAAA;EACA,mBAAA;;AAvEV,KAoBE,qDA6BE,oCACE,2CAkBE,GAKE;EACE,eAAA;EACA,YAAA;EACA,kBAAA;;AAKA,KA7DV,qDA6BE,oCACE,2CAkBE,GAKE,GAQG;EACC,SAAS,GAAT;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,qBAAA;EACA,6BAAA;EACA,OAAA;EACA,kBAAA;EACA,mBAAmB,aAAnB;EACA,gBAAgB,aAAhB;EACA,cAAc,aAAd;EACA,WAAW,aAAX;;AA7Fd,KAoBE,qDA6BE,oCACE,2CAiDE;EACE,cAAA;EA/HR,eAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,yBAAA;EACA,kBAAA;EACA,uBAAA;EACA,0BAAA;EACA,cAAA;EACA,mBAAA;EACA,sCAAA;EACA,2CAAA;EACA,8CAAA;;AACA,KA+BA,qDA6BE,oCACE,2CAiDE,+BA9GL;EACC,4CAAA;EACA,iDAAA;EACA,oDAAA;;AAEF,KA0BA,qDA6BE,oCACE,2CAiDE,+BAzGL;EACC,aAAA;EACA,SAAA;;AAIJ,KA6GE;EACE,wBAAA;EACA,oCAAA;EACA,kBAAA;;AAGA,KANF,+BAMG;EACC,iBAAA;EACA,cAAA;EACA,WAAA;EACA,kBAAA;EACA,6BAAA;EACA,kBAAA;EACA,yBAAA;EACA,sBAAA;EACA,cAAA;;AAGF,KAlBF,+BAkBG;EACC,cAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,SAAA;EACA,WAAA;;AAEA,KA7BJ,+BAkBG,QAWE;AAAS,KA7Bd,+BAkBG,QAWY;EACT,mCAAA;EACA,aAAA;;AAIJ,KAnCF,+BAmCG;EACC,iBAAA;;AAGF,KAvCF,+BAuCG;EACC,aAAA;EACA,kBAAA;EACA,gBAAA;;AAIF,KA9CF,+BA8CG;EACC,mBAAA;EACA,cAAA;;AAGF,KAnDF,+BAmDG;EACC,mBAAA;;AAGF,KAvDF,+BAuDG;EACC,mBAAA;;AAGF,KA3DF,+BA2DG;EACC,kBAAA;;AAGF,KA/DF,+BA+DG;EACC,mBAAA;EACA,cAAA;EACA,eAAA;;AAKN,mBAAsC;EACpC,KACE,qDACE;IACE,kBAAA;;EAHN,KACE,qDAKE,oCACE;IACE,aAAA;;EARR,KACE,qDAKE,oCACE,2CAGE;IACE,gBAAA;IACA,eAAA;IACA,eAAA;IACA,gBAAA;;EAdV,KACE,qDAKE,oCACE,2CAUE;IACE,mBAAA;;EAlBV,KACE,qDAKE,oCACE,2CAUE,GAGE;IACE,eAAA;IACA,YAAA;IACA,kBAAA;;EAEA,KAxBV,qDAKE,oCACE,2CAUE,GAGE,GAKG;IACC,YAAA;IACA,aAAA;IACA,6BAAA;IACA,OAAA;IACA,kBAAA;;EA9Bd,KACE,qDAKE,oCACE,2CA4BE;IACE,gBAAA;IACA,iBAAA;IACA,eAAA;IACA,iBAAA;IACA,kBAAA;IACA,uBAAA;IACA,0BAAA","file":"clearfy-base.css"}
libs/factory/{clearfy → templates}/assets/css/clearfy-base.less RENAMED
@@ -54,12 +54,12 @@
54
  z-index: 11;
55
  }
56
 
57
- .wbcr-factory-pages-000-impressive-page-template {
58
  .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
59
  .premium-label();
60
  }
61
 
62
- .wbcr-factory-clearfy-000-multisite-suggetion {
63
  padding: 30px 80px;
64
 
65
  h3 {
@@ -84,7 +84,7 @@
84
  }
85
 
86
  .wbcr-factory-right-sidebar-section {
87
- .wbcr-factory-clearfy-000-pro-suggettion {
88
  background: #fff;
89
  color: #353535;
90
  font-weight: 600;
@@ -216,13 +216,13 @@
216
 
217
  @media screen and (max-width: 1550px) {
218
  #WBCR {
219
- .wbcr-factory-pages-000-impressive-page-template {
220
- .wbcr-factory-clearfy-000-multisite-pro-suggetion {
221
  padding: 10px 80px;
222
  }
223
 
224
  .wbcr-factory-right-sidebar-section {
225
- .wbcr-factory-clearfy-000-pro-suggettion {
226
  padding: 10px;
227
 
228
  h3 {
54
  z-index: 11;
55
  }
56
 
57
+ .wbcr-factory-templates-000-impressive-page-template {
58
  .factory-checkbox.wbcr-factory-clearfy-icon-pro:after {
59
  .premium-label();
60
  }
61
 
62
+ .wbcr-factory-templates-000-multisite-suggetion {
63
  padding: 30px 80px;
64
 
65
  h3 {
84
  }
85
 
86
  .wbcr-factory-right-sidebar-section {
87
+ .wbcr-factory-templates-000-pro-suggettion {
88
  background: #fff;
89
  color: #353535;
90
  font-weight: 600;
216
 
217
  @media screen and (max-width: 1550px) {
218
  #WBCR {
219
+ .wbcr-factory-templates-000-impressive-page-template {
220
+ .wbcr-factory-templates-000-multisite-pro-suggetion {
221
  padding: 10px 80px;
222
  }
223
 
224
  .wbcr-factory-right-sidebar-section {
225
+ .wbcr-factory-templates-000-pro-suggettion {
226
  padding: 10px;
227
 
228
  h3 {
libs/factory/{clearfy → templates}/assets/css/components.css RENAMED
@@ -3,11 +3,11 @@
3
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
  * @copyright Alex Kovalev 30.09.2017
5
  */
6
- #WBCR .wbc-factory-clearfy-240-components {
7
  padding: 0 20px 20px;
8
  text-align: center;
9
  }
10
- #WBCR .wbc-factory-clearfy-240-components .plugin-card {
11
  position: relative;
12
  display: inline-block;
13
  width: 32.7%;
@@ -18,46 +18,46 @@
18
  float: none;
19
  vertical-align: top;
20
  }
21
- #WBCR .wbc-factory-clearfy-240-components .plugin-card:first-child {
22
  margin-left: 0;
23
  }
24
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .plugin-card-bottom {
25
  position: absolute;
26
  bottom: 0;
27
  right: 0;
28
  left: 0;
29
  }
30
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .plugin-card-top {
31
  min-height: 163px;
32
  }
33
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .desc,
34
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .name {
35
  margin-right: 0 !important;
36
  }
37
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .name h3 {
38
  font-size: 17px;
39
  margin-top: 0 !important;
40
  }
41
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .install-now {
42
  float: right;
43
  }
44
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .delete-now {
45
  float: right;
46
  margin-left: 5px;
47
  }
48
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .delete-now .dashicons,
49
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .delete-now .dashicons-before:before {
50
  font-size: 16px !important;
51
  line-height: 1.5 !important;
52
  color: #62696f;
53
  }
54
- #WBCR .wbc-factory-clearfy-240-components .plugin-card a.open-plugin-details-modal {
55
  color: #5c5d5f;
56
  text-decoration: none;
57
  font-weight: 600;
58
  font-size: 15px;
59
  }
60
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .plugin-card-premium-ribbon {
61
  position: absolute;
62
  bottom: 60px;
63
  right: 0;
@@ -73,7 +73,7 @@
73
  text-transform: uppercase;
74
  z-index: 1;
75
  }
76
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .plugin-card-free-ribbon {
77
  position: absolute;
78
  bottom: 60px;
79
  right: 0;
@@ -89,7 +89,7 @@
89
  text-transform: uppercase;
90
  z-index: 1;
91
  }
92
- #WBCR .wbc-factory-clearfy-240-components .plugin-card .plugin-card-freemium-ribbon {
93
  position: absolute;
94
  bottom: 60px;
95
  right: 0;
@@ -105,35 +105,35 @@
105
  text-transform: uppercase;
106
  z-index: 1;
107
  }
108
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.premium {
109
  border-color: #e8d7b2;
110
  background-color: #fff9eb;
111
  }
112
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.plugin-status-deactive {
113
  background-color: #f1f1f1;
114
  }
115
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.plugin-status-deactive a.open-plugin-details-modal {
116
  color: #ababab;
117
  text-decoration: none;
118
  font-weight: 600;
119
  font-size: 15px;
120
  }
121
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.plugin-status-deactive .plugin-icon {
122
  opacity: 0.3;
123
  }
124
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.plugin-status-deactive .desc {
125
  color: #afafaf;
126
  }
127
- #WBCR .wbc-factory-clearfy-240-components .plugin-card.plugin-status-deactive.premium {
128
  background-color: #f9f2f1;
129
  }
130
  @media screen and (max-width: 1750px) {
131
- #WBCR .wbc-factory-clearfy-240-components .plugin-card {
132
  width: 49%;
133
  }
134
  }
135
  @media screen and (max-width: 1350px) {
136
- #WBCR .wbc-factory-clearfy-240-components .plugin-card {
137
  width: 100%;
138
  }
139
  }
3
  * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
  * @copyright Alex Kovalev 30.09.2017
5
  */
6
+ #WBCR .wbc-factory-templates-101-components {
7
  padding: 0 20px 20px;
8
  text-align: center;
9
  }
10
+ #WBCR .wbc-factory-templates-101-components .plugin-card {
11
  position: relative;
12
  display: inline-block;
13
  width: 32.7%;
18
  float: none;
19
  vertical-align: top;
20
  }
21
+ #WBCR .wbc-factory-templates-101-components .plugin-card:first-child {
22
  margin-left: 0;
23
  }
24
+ #WBCR .wbc-factory-templates-101-components .plugin-card .plugin-card-bottom {
25
  position: absolute;
26
  bottom: 0;
27
  right: 0;
28
  left: 0;
29
  }
30
+ #WBCR .wbc-factory-templates-101-components .plugin-card .plugin-card-top {
31
  min-height: 163px;
32
  }
33
+ #WBCR .wbc-factory-templates-101-components .plugin-card .desc,
34
+ #WBCR .wbc-factory-templates-101-components .plugin-card .name {
35
  margin-right: 0 !important;
36
  }
37
+ #WBCR .wbc-factory-templates-101-components .plugin-card .name h3 {
38
  font-size: 17px;
39
  margin-top: 0 !important;
40
  }
41
+ #WBCR .wbc-factory-templates-101-components .plugin-card .install-now {
42
  float: right;
43
  }
44
+ #WBCR .wbc-factory-templates-101-components .plugin-card .delete-now {
45
  float: right;
46
  margin-left: 5px;
47
  }
48
+ #WBCR .wbc-factory-templates-101-components .plugin-card .delete-now .dashicons,
49
+ #WBCR .wbc-factory-templates-101-components .plugin-card .delete-now .dashicons-before:before {
50
  font-size: 16px !important;
51
  line-height: 1.5 !important;
52
  color: #62696f;
53
  }
54
+ #WBCR .wbc-factory-templates-101-components .plugin-card a.open-plugin-details-modal {
55
  color: #5c5d5f;
56
  text-decoration: none;
57
  font-weight: 600;
58
  font-size: 15px;
59
  }
60
+ #WBCR .wbc-factory-templates-101-components .plugin-card .plugin-card-premium-ribbon {
61
  position: absolute;
62
  bottom: 60px;
63
  right: 0;
73
  text-transform: uppercase;
74
  z-index: 1;
75
  }
76
+ #WBCR .wbc-factory-templates-101-components .plugin-card .plugin-card-free-ribbon {
77
  position: absolute;
78
  bottom: 60px;
79
  right: 0;
89
  text-transform: uppercase;
90
  z-index: 1;
91
  }
92
+ #WBCR .wbc-factory-templates-101-components .plugin-card .plugin-card-freemium-ribbon {
93
  position: absolute;
94
  bottom: 60px;
95
  right: 0;
105
  text-transform: uppercase;
106
  z-index: 1;
107
  }
108
+ #WBCR .wbc-factory-templates-101-components .plugin-card.premium {
109
  border-color: #e8d7b2;
110
  background-color: #fff9eb;
111
  }
112
+ #WBCR .wbc-factory-templates-101-components .plugin-card.plugin-status-deactive {
113
  background-color: #f1f1f1;
114
  }
115
+ #WBCR .wbc-factory-templates-101-components .plugin-card.plugin-status-deactive a.open-plugin-details-modal {
116
  color: #ababab;
117
  text-decoration: none;
118
  font-weight: 600;
119
  font-size: 15px;
120
  }
121
+ #WBCR .wbc-factory-templates-101-components .plugin-card.plugin-status-deactive .plugin-icon {
122
  opacity: 0.3;
123
  }
124
+ #WBCR .wbc-factory-templates-101-components .plugin-card.plugin-status-deactive .desc {
125
  color: #afafaf;
126
  }
127
+ #WBCR .wbc-factory-templates-101-components .plugin-card.plugin-status-deactive.premium {
128
  background-color: #f9f2f1;
129
  }
130
  @media screen and (max-width: 1750px) {
131
+ #WBCR .wbc-factory-templates-101-components .plugin-card {
132
  width: 49%;
133
  }
134
  }
135
  @media screen and (max-width: 1350px) {
136
+ #WBCR .wbc-factory-templates-101-components .plugin-card {
137
  width: 100%;
138
  }
139
  }
libs/factory/templates/assets/css/components.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["components.less"],"names":[],"mappings":";;;;;AAMA,KAkBE;EACE,oBAAA;EACA,kBAAA;;AApBJ,KAkBE,sCAIE;EACE,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,aAAA;EACA,cAAA;EACA,eAAA;EACA,gBAAA;EACA,WAAA;EACA,mBAAA;;AAEA,KAfJ,sCAIE,aAWG;EACC,cAAA;;AAlCR,KAkBE,sCAIE,aAeE;EACE,kBAAA;EACA,SAAA;EACA,QAAA;EACA,OAAA;;AAzCR,KAkBE,sCAIE,aAsBE;EACE,iBAAA;;AA7CR,KAkBE,sCAIE,aA0BE;AAhDN,KAkBE,sCAIE,aA0BS;EACL,0BAAA;;AAjDR,KAkBE,sCAIE,aA8BE,MACE;EACE,eAAA;EACA,wBAAA;;AAvDV,KAkBE,sCAIE,aAqCE;EACE,YAAA;;AA5DR,KAkBE,sCAIE,aAyCE;EACE,YAAA;EACA,gBAAA;;AAjER,KAkBE,sCAIE,aAyCE,YAIE;AAnER,KAkBE,sCAIE,aAyCE,YAIc,kBAAiB;EAC3B,0BAAA;EACA,gBAAA;EACA,cAAA;;AAtEV,KAkBE,sCAIE,aAoDE,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AA9ER,KAkBE,sCAIE,aA4DE;EAhFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,sCAIE,aAiEE;EArFF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAfJ,KAkBE,sCAIE,aAsEE;EA1FF,kBAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,YAAA;EACA,0BAAA;EACA,yBAAA;EACA,cAAA;EACA,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;EACA,UAAA;;AAiFE,KA9EJ,sCAIE,aA0EG;EACC,qBAAA;EACA,yBAAA;;AAGF,KAnFJ,sCAIE,aA+EG;EACC,yBAAA;;AADF,KAnFJ,sCAIE,aA+EG,uBAIC,EAAC;EACC,cAAA;EACA,qBAAA;EACA,gBAAA;EACA,eAAA;;AARJ,KAnFJ,sCAIE,aA+EG,uBAWC;EACE,YAAA;;AAZJ,KAnFJ,sCAIE,aA+EG,uBAeC;EACE,cAAA;;AAGF,KAtGN,sCAIE,aA+EG,uBAmBE;EACC,yBAAA;;AAOV,mBAAsC;EACpC,KACE,sCACE;IACE,UAAA;;;AAMR,mBAAsC;EACpC,KACE,sCACE;IACE,WAAA","file":"components.css"}
libs/factory/{clearfy → templates}/assets/css/components.less RENAMED
@@ -22,7 +22,7 @@
22
  z-index: 1;
23
  }
24
 
25
- .wbc-factory-clearfy-000-components {
26
  padding: 0 20px 20px;
27
  text-align: center;
28
 
@@ -134,7 +134,7 @@
134
 
135
  @media screen and (max-width: 1750px) {
136
  #WBCR {
137
- .wbc-factory-clearfy-000-components {
138
  .plugin-card {
139
  width: 49%;
140
  }
@@ -144,7 +144,7 @@
144
 
145
  @media screen and (max-width: 1350px) {
146
  #WBCR {
147
- .wbc-factory-clearfy-000-components {
148
  .plugin-card {
149
  width: 100%;
150
  }
22
  z-index: 1;
23
  }
24
 
25
+ .wbc-factory-templates-000-components {
26
  padding: 0 20px 20px;
27
  text-align: center;
28
 
134
 
135
  @media screen and (max-width: 1750px) {
136
  #WBCR {
137
+ .wbc-factory-templates-000-components {
138
  .plugin-card {
139
  width: 49%;
140
  }
144
 
145
  @media screen and (max-width: 1350px) {
146
  #WBCR {
147
+ .wbc-factory-templates-000-components {
148
  .plugin-card {
149
  width: 100%;
150
  }
libs/factory/templates/assets/css/libs/autocomplete.css ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Styles for plugin options search form
3
+
4
+ * @author Alex Kovlaev <alex.kovalevv@gmail.com>, https://github.com/alexkovalevv
5
+ *
6
+ * @since 2.2.0
7
+ */
8
+ #wbcr-factory-templates-101__search_options_form #wbcr-factory-templates-101__autocomplete {
9
+ width: 100%;
10
+ box-sizing: border-box;
11
+ border-color: #d6d4d4;
12
+ }
13
+ #wbcr-factory-templates-101__search_options_form #wbcr-factory-templates-101__autocomplete::placeholder,
14
+ #wbcr-factory-templates-101__search_options_form #wbcr-factory-templates-101__autocomplete::-moz-placeholder,
15
+ #wbcr-factory-templates-101__search_options_form #wbcr-factory-templates-101__autocomplete::-webkit-input-placeholder {
16
+ color: #eae9e9;
17
+ }
18
+ #wbcr-factory-templates-101__search_options_form.wbcr-factory-templates-101__autocomplete-wrap {
19
+ padding: 10px;
20
+ }
21
+ #wbcr-factory-templates-101__search_options_form .wbcr-factory-templates-101__autocomplete-label {
22
+ display: block !important;
23
+ }
24
+ .wbcr-factory-templates-101__autocomplete-suggestions {
25
+ border: 1px solid #999;
26
+ background: #FFF;
27
+ overflow: auto;
28
+ }
29
+ .wbcr-factory-templates-101__autocomplete-suggestion {
30
+ padding: 2px 5px;
31
+ white-space: nowrap;
32
+ overflow: hidden;
33
+ cursor: pointer;
34
+ }
35
+ .wbcr-factory-templates-101__autocomplete-selected {
36
+ background: #F0F0F0;
37
+ }
38
+ .wbcr-factory-templates-101__autocomplete-suggestions strong {
39
+ font-weight: normal;
40
+ color: #3399FF;
41
+ }
42
+ .wbcr-factory-templates-101__autocomplete-group {
43
+ padding: 2px 5px;
44
+ }
45
+ .wbcr-factory-templates-101__autocomplete-group strong {
46
+ display: block;
47
+ border-bottom: 1px solid #000;
48
+ }
49
+ /*# sourceMappingURL=autocomplete.css.map */
libs/factory/templates/assets/css/libs/autocomplete.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["autocomplete.less"],"names":[],"mappings":";;;;;;;AAUA,gDAVC;EAYG,WAAA;EACA,sBAAA;EACA,qBAAA;;AAEA,gDAhBH,0CAgBI;AAAe,gDAhBnB,0CAgBoB;AAAoB,gDAhBxC,0CAgByC;EACpC,cAAA;;AAjBL,gDAAC;EAsBE,aAAA;;AAZJ,gDAVC;EA0BG,yBAAA;;AA1BH;EA+BC,sBAAA;EACA,gBAAA;EACA,cAAA;;AAjCD;EAqCC,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,eAAA;;AAxCD;EA4CC,mBAAA;;AA5CD,qDAGQ;EA6CP,mBAAA;EACA,cAAA;;AAjDD;EAqDC,gBAAA;;AArDD,+CAGE;EAsDD,cAAA;EACA,6BAAA","file":"autocomplete.css"}
libs/factory/{clearfy → templates}/assets/css/libs/autocomplete.less RENAMED
@@ -6,9 +6,9 @@
6
  * @since 2.2.0
7
  */
8
 
9
- @prefix: ~'wbcr-factory-clearfy-000__';
10
 
11
- #wbcr-factory-clearfy-000__search_options_form {
12
  #@{prefix}autocomplete {
13
  width: 100%;
14
  box-sizing: border-box;
6
  * @since 2.2.0
7
  */
8
 
9
+ @prefix: ~'wbcr-factory-templates-000__';
10
 
11
+ #wbcr-factory-templates-000__search_options_form {
12
  #@{prefix}autocomplete {
13
  width: 100%;
14
  box-sizing: border-box;
libs/factory/{clearfy → templates}/assets/css/license-manager.css RENAMED
File without changes
libs/factory/templates/assets/css/page-setup.css ADDED
@@ -0,0 +1,454 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #WBCR {
2
+ margin: 0;
3
+ padding: 0;
4
+ }
5
+ .w-factory-templates-101__form-buttons {
6
+ text-align: right;
7
+ padding: 10px;
8
+ background: #f7f7f7;
9
+ border-top: 1px solid #e8e8e8;
10
+ }
11
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__skip-button {
12
+ background-color: #e7e7e7;
13
+ border-color: #e7e7e7;
14
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #e7e7e7;
15
+ text-shadow: 0 -1px 1px #e7e7e7, 1px 0 1px #e7e7e7, 0 1px 1px #e7e7e7, -1px 0 1px #e7e7e7;
16
+ margin: 0;
17
+ color: #8a8a8a;
18
+ }
19
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__skip-button:active,
20
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__skip-button:hover,
21
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__skip-button:focus {
22
+ background: #dddddd;
23
+ border-color: #dddddd;
24
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #dddddd;
25
+ color: #8a8a8a;
26
+ }
27
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__continue-button {
28
+ background-color: #f57d4f;
29
+ border-color: #f77d50;
30
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
31
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
32
+ margin: 0;
33
+ }
34
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__continue-button:active,
35
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__continue-button:hover,
36
+ .w-factory-templates-101__form-buttons .w-factory-templates-101__continue-button:focus {
37
+ background: #f86b3b;
38
+ border-color: #f86b3b;
39
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f86b3b;
40
+ }
41
+ .w-factory-templates-101-setup {
42
+ text-align: center;
43
+ max-width: 900px;
44
+ margin: 65px auto 24px;
45
+ box-shadow: none;
46
+ background: #f1f1f1;
47
+ padding: 0;
48
+ }
49
+ .w-factory-templates-101-setup__inner-wrap,
50
+ .w-factory-templates-101__setup-form .factory-form-layout {
51
+ padding: 30px;
52
+ }
53
+ .w-factory-templates-101-setup-steps {
54
+ padding: 0 0 24px;
55
+ margin: 0;
56
+ list-style: none outside;
57
+ overflow: hidden;
58
+ color: #ccc;
59
+ width: 100%;
60
+ display: -webkit-inline-box;
61
+ display: inline-flex;
62
+ }
63
+ .w-factory-templates-101-setup-steps li {
64
+ width: 100%;
65
+ float: left;
66
+ padding: 0 0 0.8em;
67
+ margin: 0;
68
+ text-align: center;
69
+ position: relative;
70
+ border-bottom: 4px solid #ccc;
71
+ line-height: 1.4;
72
+ }
73
+ .w-factory-templates-101-setup-steps li::before {
74
+ content: "";
75
+ border: 4px solid #ccc;
76
+ border-radius: 100%;
77
+ width: 4px;
78
+ height: 4px;
79
+ position: absolute;
80
+ bottom: 0;
81
+ left: 50%;
82
+ margin-left: -6px;
83
+ margin-bottom: -8px;
84
+ background: #fff;
85
+ }
86
+ .w-factory-templates-101-setup-steps li.active {
87
+ border-color: #ff1c40 !important;
88
+ color: #222;
89
+ font-weight: 700;
90
+ }
91
+ .w-factory-templates-101-setup-steps li.active::before {
92
+ border-color: #ff1c40 !important;
93
+ }
94
+ .w-factory-templates-101-setup-steps li a {
95
+ color: #a16696;
96
+ text-decoration: none;
97
+ padding: 1.5em;
98
+ margin: -1.5em;
99
+ position: relative;
100
+ z-index: 1;
101
+ }
102
+ .w-factory-templates-101-setup-steps li a:focus,
103
+ .w-factory-templates-101-setup-steps li a:hover {
104
+ color: #111;
105
+ text-decoration: underline;
106
+ }
107
+ /*.w-factory-templates-101-setup-steps li.done {
108
+ border-color: #f57d4f;
109
+ color: #f57d4f
110
+ }
111
+
112
+ .w-factory-templates-101-setup-steps li.done::before {
113
+ border-color: #f57d4f;
114
+ background: #f57d4f
115
+ }*/
116
+ .w-factory-templates-101-setup .w-factory-templates-101-setup-actions {
117
+ overflow: hidden;
118
+ margin: 20px 0 0;
119
+ position: relative;
120
+ }
121
+ .w-factory-templates-101-setup-content p:last-child {
122
+ margin-bottom: 0;
123
+ }
124
+ .w-factory-templates-101-setup-content p.store-setup {
125
+ margin-top: 0;
126
+ }
127
+ .w-factory-templates-101-setup-footer-links {
128
+ font-size: 0.85em;
129
+ color: #7b7b7b;
130
+ margin: 1.18em auto;
131
+ display: inline-block;
132
+ text-align: center;
133
+ }
134
+ .w-factory-templates-101-logo {
135
+ text-align: center;
136
+ }
137
+ .w-factory-templates-101-logo img {
138
+ max-width: 250px;
139
+ }
140
+ .w-factory-templates-101-setup-content {
141
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.13);
142
+ margin: 0 0 20px;
143
+ background: #fff;
144
+ zoom: 1;
145
+ text-align: left;
146
+ }
147
+ .w-factory-templates-101-setup-content table {
148
+ font-size: 1em;
149
+ line-height: 1.75;
150
+ color: #666;
151
+ }
152
+ .w-factory-templates-101-setup-content table thead {
153
+ background: #f1f1f1;
154
+ }
155
+ .w-factory-templates-101-setup-content table th,
156
+ .w-factory-templates-101-setup-content table td {
157
+ padding: 10px 15px;
158
+ }
159
+ .w-factory-templates-101-setup-content h1,
160
+ .w-factory-templates-101-setup-content h2,
161
+ .w-factory-templates-101-setup-content h3,
162
+ .w-factory-templates-101-setup-content table {
163
+ margin: 0 0 20px;
164
+ border: 0;
165
+ padding: 0;
166
+ color: #666;
167
+ clear: none;
168
+ font-weight: 500;
169
+ }
170
+ .w-factory-templates-101-setup-content p {
171
+ margin: 20px 0;
172
+ font-size: 1.15em;
173
+ line-height: 1.75;
174
+ color: #666;
175
+ text-align: center;
176
+ }
177
+ .w-factory-templates-101-setup-step__new_onboarding-welcome {
178
+ font-size: 22px !important;
179
+ }
180
+ .w-factory-templates-101-setup-content a {
181
+ color: #f57d4f;
182
+ }
183
+ .w-factory-templates-101-setup-content a:focus,
184
+ .w-factory-templates-101-setup-content a:hover {
185
+ color: #111;
186
+ }
187
+ .w-factory-templates-101-setup-content table.tax-rates {
188
+ width: 100%;
189
+ font-size: 0.92em;
190
+ }
191
+ .w-factory-templates-101-setup-content table.tax-rates th {
192
+ padding: 0;
193
+ text-align: center;
194
+ width: auto;
195
+ vertical-align: middle;
196
+ }
197
+ .w-factory-templates-101-setup-content table.tax-rates td {
198
+ border: 1px solid #f5f5f5;
199
+ padding: 6px;
200
+ text-align: center;
201
+ vertical-align: middle;
202
+ }
203
+ .w-factory-templates-101-setup-content table.tax-rates td input {
204
+ outline: 0;
205
+ border: 0;
206
+ padding: 0;
207
+ box-shadow: none;
208
+ text-align: center;
209
+ width: 100%;
210
+ }
211
+ .w-factory-templates-101-setup-content table.tax-rates td.sort {
212
+ cursor: move;
213
+ color: #ccc;
214
+ }
215
+ .w-factory-templates-101-setup-content table.tax-rates td.sort::before {
216
+ content: "\f333";
217
+ font-family: dashicons;
218
+ }
219
+ .w-factory-templates-101-setup-content table.tax-rates td.readonly {
220
+ background: #f5f5f5;
221
+ }
222
+ .w-factory-templates-101-setup-content table.tax-rates .add {
223
+ padding: 1em 0 0 1em;
224
+ line-height: 1;
225
+ font-size: 1em;
226
+ width: 0;
227
+ margin: 6px 0 0;
228
+ height: 0;
229
+ overflow: hidden;
230
+ position: relative;
231
+ display: inline-block;
232
+ }
233
+ .w-factory-templates-101-setup-content table.tax-rates .add::before {
234
+ content: "\f502";
235
+ font-family: dashicons;
236
+ position: absolute;
237
+ left: 0;
238
+ top: 0;
239
+ }
240
+ .w-factory-templates-101-setup-content table.tax-rates .remove {
241
+ padding: 1em 0 0 1em;
242
+ line-height: 1;
243
+ font-size: 1em;
244
+ width: 0;
245
+ margin: 0;
246
+ height: 0;
247
+ overflow: hidden;
248
+ position: relative;
249
+ display: inline-block;
250
+ }
251
+ .w-factory-templates-101-setup-content table.tax-rates .remove::before {
252
+ content: "\f182";
253
+ font-family: dashicons;
254
+ position: absolute;
255
+ left: 0;
256
+ top: 0;
257
+ }
258
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages {
259
+ width: 100%;
260
+ border-top: 1px solid #eee;
261
+ }
262
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages thead th {
263
+ display: none;
264
+ }
265
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages .page-name {
266
+ width: 30%;
267
+ font-weight: 700;
268
+ }
269
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages td,
270
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages th {
271
+ padding: 14px 0;
272
+ border-bottom: 1px solid #eee;
273
+ }
274
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages td:first-child,
275
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages th:first-child {
276
+ padding-right: 9px;
277
+ }
278
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages th {
279
+ padding-top: 0;
280
+ }
281
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages .page-options p {
282
+ color: #777;
283
+ margin: 6px 0 0 24px;
284
+ line-height: 1.75;
285
+ }
286
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages .page-options p input {
287
+ vertical-align: middle;
288
+ margin: 1px 0 0;
289
+ height: 1.75em;
290
+ width: 1.75em;
291
+ line-height: 1.75;
292
+ }
293
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-pages .page-options p label {
294
+ line-height: 1;
295
+ }
296
+ @media screen and (max-width: 782px) {
297
+ .w-factory-templates-101-setup-content .form-table tbody th {
298
+ width: auto;
299
+ }
300
+ }
301
+ .w-factory-templates-101-setup-content .twitter-share-button {
302
+ float: right;
303
+ }
304
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps {
305
+ overflow: hidden;
306
+ margin: 0 0 24px;
307
+ padding-bottom: 2px;
308
+ }
309
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps h2 {
310
+ margin-bottom: 12px;
311
+ }
312
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps .w-factory-templates-101-setup-next-steps-first {
313
+ float: left;
314
+ width: 50%;
315
+ box-sizing: border-box;
316
+ }
317
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps .w-factory-templates-101-setup-next-steps-last {
318
+ float: right;
319
+ width: 50%;
320
+ box-sizing: border-box;
321
+ }
322
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul {
323
+ padding: 0 2em 0 0;
324
+ list-style: none outside;
325
+ margin: 0;
326
+ }
327
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul li a {
328
+ display: block;
329
+ padding: 0 0 0.75em;
330
+ }
331
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button {
332
+ background-color: #f7f7f7;
333
+ border-color: #ccc;
334
+ color: #23282d;
335
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #ccc;
336
+ text-shadow: 1px 0 1px #eee, 0 1px 1px #eee;
337
+ font-size: 1em;
338
+ height: auto;
339
+ line-height: 1.75;
340
+ margin: 0 0 0.75em;
341
+ opacity: 1;
342
+ padding: 1em;
343
+ text-align: center;
344
+ }
345
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button:active,
346
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button:focus,
347
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button:hover {
348
+ background: #f5f5f5;
349
+ border-color: #aaa;
350
+ }
351
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button-primary {
352
+ color: #fff;
353
+ background-color: #f19570;
354
+ border-color: #f77d50;
355
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
356
+ text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50;
357
+ }
358
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button-primary:active,
359
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button-primary:focus,
360
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .setup-product a.button-primary:hover {
361
+ color: #fff;
362
+ background: #f77d50;
363
+ border-color: #f77d50;
364
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 #f77d50;
365
+ }
366
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul li a::before {
367
+ color: #82878c;
368
+ font: 400 20px/1 dashicons;
369
+ speak: none;
370
+ display: inline-block;
371
+ padding: 0 10px 0 0;
372
+ top: 1px;
373
+ position: relative;
374
+ text-decoration: none !important;
375
+ vertical-align: top;
376
+ }
377
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .learn-more a::before {
378
+ content: "\f105";
379
+ }
380
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .video-walkthrough a::before {
381
+ content: "\f126";
382
+ }
383
+ .w-factory-templates-101-setup-content .w-factory-templates-101-setup-next-steps ul .newsletter a::before {
384
+ content: "\f465";
385
+ }
386
+ .w-factory-templates-101-setup-content .updated,
387
+ .w-factory-templates-101-setup-content .woocommerce-newsletter {
388
+ padding: 24px 24px 0;
389
+ margin: 0 0 24px;
390
+ overflow: hidden;
391
+ background: #f5f5f5;
392
+ }
393
+ .w-factory-templates-101-setup-content .updated p,
394
+ .w-factory-templates-101-setup-content .woocommerce-newsletter p {
395
+ padding: 0;
396
+ margin: 0 0 12px;
397
+ }
398
+ .w-factory-templates-101-setup-content .updated form,
399
+ .w-factory-templates-101-setup-content .updated p:last-child,
400
+ .w-factory-templates-101-setup-content .woocommerce-newsletter form,
401
+ .w-factory-templates-101-setup-content .woocommerce-newsletter p:last-child {
402
+ margin: 0 0 24px;
403
+ }
404
+ .w-factory-templates-101-setup-content .checkbox input[type=checkbox] {
405
+ opacity: 0;
406
+ position: absolute;
407
+ left: -9999px;
408
+ }
409
+ .w-factory-templates-101-setup-content .checkbox label {
410
+ position: relative;
411
+ display: inline-block;
412
+ padding-left: 28px;
413
+ }
414
+ .w-factory-templates-101-setup-content .checkbox label::after,
415
+ .w-factory-templates-101-setup-content .checkbox label::before {
416
+ position: absolute;
417
+ content: "";
418
+ display: inline-block;
419
+ }
420
+ .w-factory-templates-101-setup-content .checkbox label::before {
421
+ height: 16px;
422
+ width: 16px;
423
+ left: 0;
424
+ top: 3px;
425
+ border: 1px solid #aaa;
426
+ background-color: #fff;
427
+ border-radius: 3px;
428
+ }
429
+ .w-factory-templates-101-setup-content .checkbox label::after {
430
+ height: 5px;
431
+ width: 9px;
432
+ border-left: 2px solid;
433
+ border-bottom: 2px solid;
434
+ -webkit-transform: rotate(-45deg);
435
+ -ms-transform: rotate(-45deg);
436
+ transform: rotate(-45deg);
437
+ left: 4px;
438
+ top: 7px;
439
+ color: #fff;
440
+ }
441
+ .w-factory-templates-101-setup-content .checkbox input[type=checkbox] + label::after {
442
+ content: none;
443
+ }
444
+ .w-factory-templates-101-setup-content .checkbox input[type=checkbox]:checked + label::after {
445
+ content: "";
446
+ }
447
+ .w-factory-templates-101-setup-content .checkbox input[type=checkbox]:focus + label::before {
448
+ outline: #3b99fc auto 5px;
449
+ }
450
+ .w-factory-templates-101-setup-content .checkbox input[type=checkbox]:checked + label::before {
451
+ background: #935687;
452
+ border-color: #935687;
453
+ }
454
+ /*# sourceMappingURL=page-setup.css.map */
libs/factory/templates/assets/css/page-setup.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["page-setup.less"],"names":[],"mappings":"AAAA;EACE,SAAA;EACA,UAAA;;AAGF;EACE,iBAAA;EACA,aAAA;EACA,mBAAA;EAEA,6BAAA;;AALF,sCAOE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;EACA,cAAA;;AAEA,sCARF,sCAQG;AAAS,sCARZ,sCAQa;AAAQ,sCARrB,sCAQsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;EACA,cAAA;;AAnBN,sCAuBE;EACE,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;EACA,SAAA;;AAEA,sCAPF,0CAOG;AAAS,sCAPZ,0CAOa;AAAQ,sCAPrB,0CAOsB;EAClB,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAKN;EACE,kBAAA;EACA,gBAAA;EACA,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,UAAA;;AAGF;AAA4C,oCAAqC;EAC/E,aAAA;;AAGF;EACE,iBAAA;EACA,SAAA;EACA,wBAAA;EACA,gBAAA;EACA,WAAA;EACA,WAAA;EACA,2BAAA;EACA,oBAAA;;AAGF,oCAAqC;EACnC,WAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,kBAAA;EACA,kBAAA;EACA,6BAAA;EACA,gBAAA;;AAEA,oCAVmC,GAUlC;EACC,SAAS,EAAT;EACA,sBAAA;EACA,mBAAA;EACA,UAAA;EACA,WAAA;EACA,kBAAA;EACA,SAAA;EACA,SAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;;AAGF,oCAxBmC,GAwBlC;EACC,qBAAA;EACA,WAAA;EACA,gBAAA;;AAEA,oCA7BiC,GAwBlC,OAKE;EACC,qBAAA;;AAKN,oCAAqC,GAAG;EACtC,cAAA;EACA,qBAAA;EACA,cAAA;EACA,cAAA;EACA,kBAAA;EACA,UAAA;;AAGF,oCAAqC,GAAG,EAAC;AAAQ,oCAAqC,GAAG,EAAC;EACxF,WAAA;EACA,0BAAA;;;;;;;;;;;AAcF,8BAA+B;EAC7B,gBAAA;EACA,gBAAA;EACA,kBAAA;;AAGF,sCAAuC,EAAC;EACtC,gBAAA;;AAGF,sCAAuC,EAAC;EACtC,aAAA;;AAGF;EACE,iBAAA;EACA,cAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF;EACE,kBAAA;;AADF,6BAGE;EACE,gBAAA;;AAKJ;EACE,yCAAA;EAEA,gBAAA;EACA,gBAAA;EAEA,OAAA;EACA,gBAAA;;AAEA,sCAAE;EACA,cAAA;EACA,iBAAA;EACA,WAAA;;AAHF,sCAAE,MAKA;EACE,mBAAA;;AANJ,sCAAE,MASA;AATF,sCAAE,MASI;EACF,kBAAA;;AAKN,sCAAuC;AAAI,sCAAuC;AAAI,sCAAuC;AAAI,sCAAuC;EACtK,gBAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;EACA,WAAA;EACA,gBAAA;;AAGF,sCAAuC;EACrC,cAAA;EACA,iBAAA;EACA,iBAAA;EACA,WAAA;EACA,kBAAA;;AAGF;EACE,0BAAA;;AAIF,sCAAuC;EACrC,cAAA;;AAGF,sCAAuC,EAAC;AAAQ,sCAAuC,EAAC;EACtF,WAAA;;AAIF,sCAAuC,MAAK;EAC1C,WAAA;EACA,iBAAA;;AAGF,sCAAuC,MAAK,UAAW;EACrD,UAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;;AAGF,sCAAuC,MAAK,UAAW;EACrD,yBAAA;EACA,YAAA;EACA,kBAAA;EACA,sBAAA;;AAGF,sCAAuC,MAAK,UAAW,GAAG;EACxD,UAAA;EACA,SAAA;EACA,UAAA;EACA,gBAAA;EACA,kBAAA;EACA,WAAA;;AAGF,sCAAuC,MAAK,UAAW,GAAE;EACvD,YAAA;EACA,WAAA;;AAGF,sCAAuC,MAAK,UAAW,GAAE,KAAK;EAC5D,SAAS,OAAT;EACA,sBAAA;;AAGF,sCAAuC,MAAK,UAAW,GAAE;EACvD,mBAAA;;AAGF,sCAAuC,MAAK,UAAW;EACrD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,eAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,sCAAuC,MAAK,UAAW,KAAI;EACzD,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,sCAAuC,MAAK,UAAW;EACrD,oBAAA;EACA,cAAA;EACA,cAAA;EACA,QAAA;EACA,SAAA;EACA,SAAA;EACA,gBAAA;EACA,kBAAA;EACA,qBAAA;;AAGF,sCAAuC,MAAK,UAAW,QAAO;EAC5D,SAAS,OAAT;EACA,sBAAA;EACA,kBAAA;EACA,OAAA;EACA,MAAA;;AAGF,sCAAuC;EACrC,WAAA;EACA,0BAAA;;AAGF,sCAAuC,qCAAqC,MAAM;EAChF,aAAA;;AAGF,sCAAuC,qCAAqC;EAC1E,UAAA;EACA,gBAAA;;AAGF,sCAAuC,qCAAqC;AAAI,sCAAuC,qCAAqC;EAC1J,eAAA;EACA,6BAAA;;AAGF,sCAAuC,qCAAqC,GAAE;AAAc,sCAAuC,qCAAqC,GAAE;EACxK,kBAAA;;AAGF,sCAAuC,qCAAqC;EAC1E,cAAA;;AAGF,sCAAuC,qCAAqC,cAAc;EACxF,WAAA;EACA,oBAAA;EACA,iBAAA;;AAGF,sCAAuC,qCAAqC,cAAc,EAAE;EAC1F,sBAAA;EACA,eAAA;EACA,cAAA;EACA,aAAA;EACA,iBAAA;;AAGF,sCAAuC,qCAAqC,cAAc,EAAE;EAC1F,cAAA;;AAGF,mBAAqC;EACnC,sCAAuC,YAAY,MAAM;IACvD,WAAA;;;AAIJ,sCAAuC;EACrC,YAAA;;AAGF,sCAAuC;EACrC,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,sCAAuC,0CAA0C;EAC/E,mBAAA;;AAGF,sCAAuC,0CAA0C;EAC/E,WAAA;EACA,UAAA;EACA,sBAAA;;AAGF,sCAAuC,0CAA0C;EAC/E,YAAA;EACA,UAAA;EACA,sBAAA;;AAGF,sCAAuC,0CAA0C;EAC/E,kBAAA;EACA,wBAAA;EACA,SAAA;;AAGF,sCAAuC,0CAA0C,GAAG,GAAG;EACrF,cAAA;EACA,mBAAA;;AAGF,sCAAuC,0CAA0C,GAAG,eAAe,EAAC;EAClG,yBAAA;EACA,kBAAA;EACA,cAAA;EACA,iEAAA;EACA,2CAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,kBAAA;EACA,UAAA;EACA,YAAA;EACA,kBAAA;;AAGF,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,OAAO;AAAS,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,OAAO;AAAQ,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,OAAO;EAChV,mBAAA;EACA,kBAAA;;AAGF,sCAAuC,0CAA0C,GAAG,eAAe,EAAC;EAClG,WAAA;EACA,yBAAA;EACA,qBAAA;EACA,oEAAA;EACA,yFAAA;;AAGF,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,eAAe;AAAS,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,eAAe;AAAQ,sCAAuC,0CAA0C,GAAG,eAAe,EAAC,eAAe;EACxW,WAAA;EACA,mBAAA;EACA,qBAAA;EACA,oEAAA;;AAGF,sCAAuC,0CAA0C,GAAG,GAAG,EAAC;EACtF,cAAA;EACA,0BAAA;EACA,WAAA;EACA,qBAAA;EACA,mBAAA;EACA,QAAA;EACA,kBAAA;EACA,gCAAA;EACA,mBAAA;;AAGF,sCAAuC,0CAA0C,GAAG,YAAY,EAAC;EAC/F,SAAS,OAAT;;AAGF,sCAAuC,0CAA0C,GAAG,mBAAmB,EAAC;EACtG,SAAS,OAAT;;AAGF,sCAAuC,0CAA0C,GAAG,YAAY,EAAC;EAC/F,SAAS,OAAT;;AAGF,sCAAuC;AAAU,sCAAuC;EACtF,oBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;;AAGF,sCAAuC,SAAS;AAAG,sCAAuC,wBAAwB;EAChH,UAAA;EACA,gBAAA;;AAGF,sCAAuC,SAAS;AAAM,sCAAuC,SAAS,EAAC;AAAa,sCAAuC,wBAAwB;AAAM,sCAAuC,wBAAwB,EAAC;EACvP,gBAAA;;AAGF,sCAAuC,UAAU,MAAK;EACpD,UAAA;EACA,kBAAA;EACA,aAAA;;AAGF,sCAAuC,UAAU;EAC/C,kBAAA;EACA,qBAAA;EACA,kBAAA;;AAGF,sCAAuC,UAAU,MAAK;AAAS,sCAAuC,UAAU,MAAK;EACnH,kBAAA;EACA,SAAS,EAAT;EACA,qBAAA;;AAGF,sCAAuC,UAAU,MAAK;EACpD,YAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA;EACA,sBAAA;EACA,sBAAA;EACA,kBAAA;;AAGF,sCAAuC,UAAU,MAAK;EACpD,WAAA;EACA,UAAA;EACA,sBAAA;EACA,wBAAA;EACA,mBAAmB,cAAnB;EACA,eAAe,cAAf;EACA,WAAW,cAAX;EACA,SAAA;EACA,QAAA;EACA,WAAA;;AAGF,sCAAuC,UAAU,MAAK,eAAgB,QAAO;EAC3E,aAAA;;AAGF,sCAAuC,UAAU,MAAK,eAAe,QAAS,QAAO;EACnF,SAAS,EAAT;;AAGF,sCAAuC,UAAU,MAAK,eAAe,MAAO,QAAO;EACjF,yBAAA;;AAGF,sCAAuC,UAAU,MAAK,eAAe,QAAS,QAAO;EACnF,mBAAA;EACA,qBAAA","file":"page-setup.css"}
libs/factory/{clearfy → templates}/assets/css/page-setup.less RENAMED
@@ -3,14 +3,14 @@
3
  padding: 0;
4
  }
5
 
6
- .w-factory-clearfy-000__form-buttons {
7
  text-align: right;
8
  padding: 10px;
9
  background: #f7f7f7;
10
 
11
  border-top: 1px solid #e8e8e8;
12
 
13
- .w-factory-clearfy-000__skip-button {
14
  background-color: #e7e7e7;
15
  border-color: #e7e7e7;
16
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #e7e7e7;
@@ -26,7 +26,7 @@
26
  }
27
  }
28
 
29
- .w-factory-clearfy-000__continue-button {
30
  background-color: #f57d4f;
31
  border-color: #f77d50;
32
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50;
@@ -41,7 +41,7 @@
41
  }
42
  }
43
 
44
- .w-factory-clearfy-000-setup {
45
  text-align: center;
46
  max-width: 900px;
47
  margin: 65px auto 24px;
@@ -50,11 +50,11 @@
50
  padding: 0;
51
  }
52
 
53
- .w-factory-clearfy-000-setup__inner-wrap, .w-factory-clearfy-000__setup-form .factory-form-layout {
54
  padding: 30px;
55
  }
56
 
57
- .w-factory-clearfy-000-setup-steps {
58
  padding: 0 0 24px;
59
  margin: 0;
60
  list-style: none outside;
@@ -65,7 +65,7 @@
65
  display: inline-flex;
66
  }
67
 
68
- .w-factory-clearfy-000-setup-steps li {
69
  width: 100%;
70
  float: left;
71
  padding: 0 0 .8em;
@@ -100,7 +100,7 @@
100
  }
101
  }
102
 
103
- .w-factory-clearfy-000-setup-steps li a {
104
  color: #a16696;
105
  text-decoration: none;
106
  padding: 1.5em;
@@ -109,37 +109,37 @@
109
  z-index: 1
110
  }
111
 
112
- .w-factory-clearfy-000-setup-steps li a:focus, .w-factory-clearfy-000-setup-steps li a:hover {
113
  color: #111;
114
  text-decoration: underline
115
  }
116
 
117
 
118
- /*.w-factory-clearfy-000-setup-steps li.done {
119
  border-color: #f57d4f;
120
  color: #f57d4f
121
  }
122
 
123
- .w-factory-clearfy-000-setup-steps li.done::before {
124
  border-color: #f57d4f;
125
  background: #f57d4f
126
  }*/
127
 
128
- .w-factory-clearfy-000-setup .w-factory-clearfy-000-setup-actions {
129
  overflow: hidden;
130
  margin: 20px 0 0;
131
  position: relative
132
  }
133
 
134
- .w-factory-clearfy-000-setup-content p:last-child {
135
  margin-bottom: 0
136
  }
137
 
138
- .w-factory-clearfy-000-setup-content p.store-setup {
139
  margin-top: 0
140
  }
141
 
142
- .w-factory-clearfy-000-setup-footer-links {
143
  font-size: .85em;
144
  color: #7b7b7b;
145
  margin: 1.18em auto;
@@ -147,7 +147,7 @@
147
  text-align: center
148
  }
149
 
150
- .w-factory-clearfy-000-logo {
151
  text-align: center;
152
 
153
  img {
@@ -156,7 +156,7 @@
156
  }
157
 
158
 
159
- .w-factory-clearfy-000-setup-content {
160
  box-shadow: 0 1px 3px rgba(0, 0, 0, .13);
161
  //padding: 2em;
162
  margin: 0 0 20px;
@@ -180,7 +180,7 @@
180
  }
181
  }
182
 
183
- .w-factory-clearfy-000-setup-content h1, .w-factory-clearfy-000-setup-content h2, .w-factory-clearfy-000-setup-content h3, .w-factory-clearfy-000-setup-content table {
184
  margin: 0 0 20px;
185
  border: 0;
186
  padding: 0;
@@ -189,7 +189,7 @@
189
  font-weight: 500
190
  }
191
 
192
- .w-factory-clearfy-000-setup-content p {
193
  margin: 20px 0;
194
  font-size: 1.15em;
195
  line-height: 1.75;
@@ -197,40 +197,40 @@
197
  text-align: center;
198
  }
199
 
200
- .w-factory-clearfy-000-setup-step__new_onboarding-welcome {
201
  font-size: 22px !important;
202
  }
203
 
204
 
205
- .w-factory-clearfy-000-setup-content a {
206
  color: #f57d4f
207
  }
208
 
209
- .w-factory-clearfy-000-setup-content a:focus, .w-factory-clearfy-000-setup-content a:hover {
210
  color: #111
211
  }
212
 
213
 
214
- .w-factory-clearfy-000-setup-content table.tax-rates {
215
  width: 100%;
216
  font-size: .92em
217
  }
218
 
219
- .w-factory-clearfy-000-setup-content table.tax-rates th {
220
  padding: 0;
221
  text-align: center;
222
  width: auto;
223
  vertical-align: middle
224
  }
225
 
226
- .w-factory-clearfy-000-setup-content table.tax-rates td {
227
  border: 1px solid #f5f5f5;
228
  padding: 6px;
229
  text-align: center;
230
  vertical-align: middle
231
  }
232
 
233
- .w-factory-clearfy-000-setup-content table.tax-rates td input {
234
  outline: 0;
235
  border: 0;
236
  padding: 0;
@@ -239,21 +239,21 @@
239
  width: 100%
240
  }
241
 
242
- .w-factory-clearfy-000-setup-content table.tax-rates td.sort {
243
  cursor: move;
244
  color: #ccc
245
  }
246
 
247
- .w-factory-clearfy-000-setup-content table.tax-rates td.sort::before {
248
  content: "\f333";
249
  font-family: dashicons
250
  }
251
 
252
- .w-factory-clearfy-000-setup-content table.tax-rates td.readonly {
253
  background: #f5f5f5
254
  }
255
 
256
- .w-factory-clearfy-000-setup-content table.tax-rates .add {
257
  padding: 1em 0 0 1em;
258
  line-height: 1;
259
  font-size: 1em;
@@ -265,7 +265,7 @@
265
  display: inline-block
266
  }
267
 
268
- .w-factory-clearfy-000-setup-content table.tax-rates .add::before {
269
  content: "\f502";
270
  font-family: dashicons;
271
  position: absolute;
@@ -273,7 +273,7 @@
273
  top: 0
274
  }
275
 
276
- .w-factory-clearfy-000-setup-content table.tax-rates .remove {
277
  padding: 1em 0 0 1em;
278
  line-height: 1;
279
  font-size: 1em;
@@ -285,7 +285,7 @@
285
  display: inline-block
286
  }
287
 
288
- .w-factory-clearfy-000-setup-content table.tax-rates .remove::before {
289
  content: "\f182";
290
  font-family: dashicons;
291
  position: absolute;
@@ -293,40 +293,40 @@
293
  top: 0
294
  }
295
 
296
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages {
297
  width: 100%;
298
  border-top: 1px solid #eee
299
  }
300
 
301
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages thead th {
302
  display: none
303
  }
304
 
305
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-name {
306
  width: 30%;
307
  font-weight: 700
308
  }
309
 
310
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages td, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th {
311
  padding: 14px 0;
312
  border-bottom: 1px solid #eee
313
  }
314
 
315
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages td:first-child, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th:first-child {
316
  padding-right: 9px
317
  }
318
 
319
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages th {
320
  padding-top: 0
321
  }
322
 
323
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p {
324
  color: #777;
325
  margin: 6px 0 0 24px;
326
  line-height: 1.75
327
  }
328
 
329
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p input {
330
  vertical-align: middle;
331
  margin: 1px 0 0;
332
  height: 1.75em;
@@ -334,54 +334,54 @@
334
  line-height: 1.75
335
  }
336
 
337
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-pages .page-options p label {
338
  line-height: 1
339
  }
340
 
341
  @media screen and (max-width: 782px) {
342
- .w-factory-clearfy-000-setup-content .form-table tbody th {
343
  width: auto
344
  }
345
  }
346
 
347
- .w-factory-clearfy-000-setup-content .twitter-share-button {
348
  float: right
349
  }
350
 
351
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps {
352
  overflow: hidden;
353
  margin: 0 0 24px;
354
  padding-bottom: 2px
355
  }
356
 
357
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps h2 {
358
  margin-bottom: 12px
359
  }
360
 
361
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps .w-factory-clearfy-000-setup-next-steps-first {
362
  float: left;
363
  width: 50%;
364
  box-sizing: border-box
365
  }
366
 
367
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps .w-factory-clearfy-000-setup-next-steps-last {
368
  float: right;
369
  width: 50%;
370
  box-sizing: border-box
371
  }
372
 
373
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul {
374
  padding: 0 2em 0 0;
375
  list-style: none outside;
376
  margin: 0
377
  }
378
 
379
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul li a {
380
  display: block;
381
  padding: 0 0 .75em
382
  }
383
 
384
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button {
385
  background-color: #f7f7f7;
386
  border-color: #ccc;
387
  color: #23282d;
@@ -396,12 +396,12 @@
396
  text-align: center
397
  }
398
 
399
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:active, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:focus, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button:hover {
400
  background: #f5f5f5;
401
  border-color: #aaa
402
  }
403
 
404
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary {
405
  color: #fff;
406
  background-color: #f19570;
407
  border-color: #f77d50;
@@ -409,14 +409,14 @@
409
  text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50
410
  }
411
 
412
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:active, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:focus, .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .setup-product a.button-primary:hover {
413
  color: #fff;
414
  background: #f77d50;
415
  border-color: #f77d50;
416
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50
417
  }
418
 
419
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul li a::before {
420
  color: #82878c;
421
  font: 400 20px/1 dashicons;
422
  speak: none;
@@ -428,53 +428,53 @@
428
  vertical-align: top
429
  }
430
 
431
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .learn-more a::before {
432
  content: "\f105"
433
  }
434
 
435
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .video-walkthrough a::before {
436
  content: "\f126"
437
  }
438
 
439
- .w-factory-clearfy-000-setup-content .w-factory-clearfy-000-setup-next-steps ul .newsletter a::before {
440
  content: "\f465"
441
  }
442
 
443
- .w-factory-clearfy-000-setup-content .updated, .w-factory-clearfy-000-setup-content .woocommerce-newsletter {
444
  padding: 24px 24px 0;
445
  margin: 0 0 24px;
446
  overflow: hidden;
447
  background: #f5f5f5
448
  }
449
 
450
- .w-factory-clearfy-000-setup-content .updated p, .w-factory-clearfy-000-setup-content .woocommerce-newsletter p {
451
  padding: 0;
452
  margin: 0 0 12px
453
  }
454
 
455
- .w-factory-clearfy-000-setup-content .updated form, .w-factory-clearfy-000-setup-content .updated p:last-child, .w-factory-clearfy-000-setup-content .woocommerce-newsletter form, .w-factory-clearfy-000-setup-content .woocommerce-newsletter p:last-child {
456
  margin: 0 0 24px
457
  }
458
 
459
- .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox] {
460
  opacity: 0;
461
  position: absolute;
462
  left: -9999px
463
  }
464
 
465
- .w-factory-clearfy-000-setup-content .checkbox label {
466
  position: relative;
467
  display: inline-block;
468
  padding-left: 28px
469
  }
470
 
471
- .w-factory-clearfy-000-setup-content .checkbox label::after, .w-factory-clearfy-000-setup-content .checkbox label::before {
472
  position: absolute;
473
  content: "";
474
  display: inline-block
475
  }
476
 
477
- .w-factory-clearfy-000-setup-content .checkbox label::before {
478
  height: 16px;
479
  width: 16px;
480
  left: 0;
@@ -484,7 +484,7 @@
484
  border-radius: 3px
485
  }
486
 
487
- .w-factory-clearfy-000-setup-content .checkbox label::after {
488
  height: 5px;
489
  width: 9px;
490
  border-left: 2px solid;
@@ -497,19 +497,19 @@
497
  color: #fff
498
  }
499
 
500
- .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox] + label::after {
501
  content: none
502
  }
503
 
504
- .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:checked + label::after {
505
  content: ""
506
  }
507
 
508
- .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:focus + label::before {
509
  outline: #3b99fc auto 5px
510
  }
511
 
512
- .w-factory-clearfy-000-setup-content .checkbox input[type=checkbox]:checked + label::before {
513
  background: #935687;
514
  border-color: #935687
515
  }
3
  padding: 0;
4
  }
5
 
6
+ .w-factory-templates-000__form-buttons {
7
  text-align: right;
8
  padding: 10px;
9
  background: #f7f7f7;
10
 
11
  border-top: 1px solid #e8e8e8;
12
 
13
+ .w-factory-templates-000__skip-button {
14
  background-color: #e7e7e7;
15
  border-color: #e7e7e7;
16
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #e7e7e7;
26
  }
27
  }
28
 
29
+ .w-factory-templates-000__continue-button {
30
  background-color: #f57d4f;
31
  border-color: #f77d50;
32
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50;
41
  }
42
  }
43
 
44
+ .w-factory-templates-000-setup {
45
  text-align: center;
46
  max-width: 900px;
47
  margin: 65px auto 24px;
50
  padding: 0;
51
  }
52
 
53
+ .w-factory-templates-000-setup__inner-wrap, .w-factory-templates-000__setup-form .factory-form-layout {
54
  padding: 30px;
55
  }
56
 
57
+ .w-factory-templates-000-setup-steps {
58
  padding: 0 0 24px;
59
  margin: 0;
60
  list-style: none outside;
65
  display: inline-flex;
66
  }
67
 
68
+ .w-factory-templates-000-setup-steps li {
69
  width: 100%;
70
  float: left;
71
  padding: 0 0 .8em;
100
  }
101
  }
102
 
103
+ .w-factory-templates-000-setup-steps li a {
104
  color: #a16696;
105
  text-decoration: none;
106
  padding: 1.5em;
109
  z-index: 1
110
  }
111
 
112
+ .w-factory-templates-000-setup-steps li a:focus, .w-factory-templates-000-setup-steps li a:hover {
113
  color: #111;
114
  text-decoration: underline
115
  }
116
 
117
 
118
+ /*.w-factory-templates-000-setup-steps li.done {
119
  border-color: #f57d4f;
120
  color: #f57d4f
121
  }
122
 
123
+ .w-factory-templates-000-setup-steps li.done::before {
124
  border-color: #f57d4f;
125
  background: #f57d4f
126
  }*/
127
 
128
+ .w-factory-templates-000-setup .w-factory-templates-000-setup-actions {
129
  overflow: hidden;
130
  margin: 20px 0 0;
131
  position: relative
132
  }
133
 
134
+ .w-factory-templates-000-setup-content p:last-child {
135
  margin-bottom: 0
136
  }
137
 
138
+ .w-factory-templates-000-setup-content p.store-setup {
139
  margin-top: 0
140
  }
141
 
142
+ .w-factory-templates-000-setup-footer-links {
143
  font-size: .85em;
144
  color: #7b7b7b;
145
  margin: 1.18em auto;
147
  text-align: center
148
  }
149
 
150
+ .w-factory-templates-000-logo {
151
  text-align: center;
152
 
153
  img {
156
  }
157
 
158
 
159
+ .w-factory-templates-000-setup-content {
160
  box-shadow: 0 1px 3px rgba(0, 0, 0, .13);
161
  //padding: 2em;
162
  margin: 0 0 20px;
180
  }
181
  }
182
 
183
+ .w-factory-templates-000-setup-content h1, .w-factory-templates-000-setup-content h2, .w-factory-templates-000-setup-content h3, .w-factory-templates-000-setup-content table {
184
  margin: 0 0 20px;
185
  border: 0;
186
  padding: 0;
189
  font-weight: 500
190
  }
191
 
192
+ .w-factory-templates-000-setup-content p {
193
  margin: 20px 0;
194
  font-size: 1.15em;
195
  line-height: 1.75;
197
  text-align: center;
198
  }
199
 
200
+ .w-factory-templates-000-setup-step__new_onboarding-welcome {
201
  font-size: 22px !important;
202
  }
203
 
204
 
205
+ .w-factory-templates-000-setup-content a {
206
  color: #f57d4f
207
  }
208
 
209
+ .w-factory-templates-000-setup-content a:focus, .w-factory-templates-000-setup-content a:hover {
210
  color: #111
211
  }
212
 
213
 
214
+ .w-factory-templates-000-setup-content table.tax-rates {
215
  width: 100%;
216
  font-size: .92em
217
  }
218
 
219
+ .w-factory-templates-000-setup-content table.tax-rates th {
220
  padding: 0;
221
  text-align: center;
222
  width: auto;
223
  vertical-align: middle
224
  }
225
 
226
+ .w-factory-templates-000-setup-content table.tax-rates td {
227
  border: 1px solid #f5f5f5;
228
  padding: 6px;
229
  text-align: center;
230
  vertical-align: middle
231
  }
232
 
233
+ .w-factory-templates-000-setup-content table.tax-rates td input {
234
  outline: 0;
235
  border: 0;
236
  padding: 0;
239
  width: 100%
240
  }
241
 
242
+ .w-factory-templates-000-setup-content table.tax-rates td.sort {
243
  cursor: move;
244
  color: #ccc
245
  }
246
 
247
+ .w-factory-templates-000-setup-content table.tax-rates td.sort::before {
248
  content: "\f333";
249
  font-family: dashicons
250
  }
251
 
252
+ .w-factory-templates-000-setup-content table.tax-rates td.readonly {
253
  background: #f5f5f5
254
  }
255
 
256
+ .w-factory-templates-000-setup-content table.tax-rates .add {
257
  padding: 1em 0 0 1em;
258
  line-height: 1;
259
  font-size: 1em;
265
  display: inline-block
266
  }
267
 
268
+ .w-factory-templates-000-setup-content table.tax-rates .add::before {
269
  content: "\f502";
270
  font-family: dashicons;
271
  position: absolute;
273
  top: 0
274
  }
275
 
276
+ .w-factory-templates-000-setup-content table.tax-rates .remove {
277
  padding: 1em 0 0 1em;
278
  line-height: 1;
279
  font-size: 1em;
285
  display: inline-block
286
  }
287
 
288
+ .w-factory-templates-000-setup-content table.tax-rates .remove::before {
289
  content: "\f182";
290
  font-family: dashicons;
291
  position: absolute;
293
  top: 0
294
  }
295
 
296
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages {
297
  width: 100%;
298
  border-top: 1px solid #eee
299
  }
300
 
301
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages thead th {
302
  display: none
303
  }
304
 
305
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages .page-name {
306
  width: 30%;
307
  font-weight: 700
308
  }
309
 
310
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages td, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages th {
311
  padding: 14px 0;
312
  border-bottom: 1px solid #eee
313
  }
314
 
315
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages td:first-child, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages th:first-child {
316
  padding-right: 9px
317
  }
318
 
319
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages th {
320
  padding-top: 0
321
  }
322
 
323
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages .page-options p {
324
  color: #777;
325
  margin: 6px 0 0 24px;
326
  line-height: 1.75
327
  }
328
 
329
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages .page-options p input {
330
  vertical-align: middle;
331
  margin: 1px 0 0;
332
  height: 1.75em;
334
  line-height: 1.75
335
  }
336
 
337
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-pages .page-options p label {
338
  line-height: 1
339
  }
340
 
341
  @media screen and (max-width: 782px) {
342
+ .w-factory-templates-000-setup-content .form-table tbody th {
343
  width: auto
344
  }
345
  }
346
 
347
+ .w-factory-templates-000-setup-content .twitter-share-button {
348
  float: right
349
  }
350
 
351
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps {
352
  overflow: hidden;
353
  margin: 0 0 24px;
354
  padding-bottom: 2px
355
  }
356
 
357
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps h2 {
358
  margin-bottom: 12px
359
  }
360
 
361
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps .w-factory-templates-000-setup-next-steps-first {
362
  float: left;
363
  width: 50%;
364
  box-sizing: border-box
365
  }
366
 
367
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps .w-factory-templates-000-setup-next-steps-last {
368
  float: right;
369
  width: 50%;
370
  box-sizing: border-box
371
  }
372
 
373
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul {
374
  padding: 0 2em 0 0;
375
  list-style: none outside;
376
  margin: 0
377
  }
378
 
379
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul li a {
380
  display: block;
381
  padding: 0 0 .75em
382
  }
383
 
384
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button {
385
  background-color: #f7f7f7;
386
  border-color: #ccc;
387
  color: #23282d;
396
  text-align: center
397
  }
398
 
399
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button:active, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button:focus, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button:hover {
400
  background: #f5f5f5;
401
  border-color: #aaa
402
  }
403
 
404
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button-primary {
405
  color: #fff;
406
  background-color: #f19570;
407
  border-color: #f77d50;
409
  text-shadow: 0 -1px 1px #f77d50, 1px 0 1px #f77d50, 0 1px 1px #f77d50, -1px 0 1px #f77d50
410
  }
411
 
412
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button-primary:active, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button-primary:focus, .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .setup-product a.button-primary:hover {
413
  color: #fff;
414
  background: #f77d50;
415
  border-color: #f77d50;
416
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 0 #f77d50
417
  }
418
 
419
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul li a::before {
420
  color: #82878c;
421
  font: 400 20px/1 dashicons;
422
  speak: none;
428
  vertical-align: top
429
  }
430
 
431
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .learn-more a::before {
432
  content: "\f105"
433
  }
434
 
435
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .video-walkthrough a::before {
436
  content: "\f126"
437
  }
438
 
439
+ .w-factory-templates-000-setup-content .w-factory-templates-000-setup-next-steps ul .newsletter a::before {
440
  content: "\f465"
441
  }
442
 
443
+ .w-factory-templates-000-setup-content .updated, .w-factory-templates-000-setup-content .woocommerce-newsletter {
444
  padding: 24px 24px 0;
445
  margin: 0 0 24px;
446
  overflow: hidden;
447
  background: #f5f5f5
448
  }
449
 
450
+ .w-factory-templates-000-setup-content .updated p, .w-factory-templates-000-setup-content .woocommerce-newsletter p {
451
  padding: 0;
452
  margin: 0 0 12px
453
  }
454
 
455
+ .w-factory-templates-000-setup-content .updated form, .w-factory-templates-000-setup-content .updated p:last-child, .w-factory-templates-000-setup-content .woocommerce-newsletter form, .w-factory-templates-000-setup-content .woocommerce-newsletter p:last-child {
456
  margin: 0 0 24px
457
  }
458
 
459
+ .w-factory-templates-000-setup-content .checkbox input[type=checkbox] {
460
  opacity: 0;
461
  position: absolute;
462
  left: -9999px
463
  }
464
 
465
+ .w-factory-templates-000-setup-content .checkbox label {
466
  position: relative;
467
  display: inline-block;
468
  padding-left: 28px
469
  }
470
 
471
+ .w-factory-templates-000-setup-content .checkbox label::after, .w-factory-templates-000-setup-content .checkbox label::before {
472
  position: absolute;
473
  content: "";
474
  display: inline-block
475
  }
476
 
477
+ .w-factory-templates-000-setup-content .checkbox label::before {
478
  height: 16px;
479
  width: 16px;
480
  left: 0;
484
  border-radius: 3px
485
  }
486
 
487
+ .w-factory-templates-000-setup-content .checkbox label::after {
488
  height: 5px;
489
  width: 9px;
490
  border-left: 2px solid;
497
  color: #fff
498
  }
499
 
500
+ .w-factory-templates-000-setup-content .checkbox input[type=checkbox] + label::after {
501
  content: none
502
  }
503
 
504
+ .w-factory-templates-000-setup-content .checkbox input[type=checkbox]:checked + label::after {
505
  content: ""
506
  }
507
 
508
+ .w-factory-templates-000-setup-content .checkbox input[type=checkbox]:focus + label::before {
509
  outline: #3b99fc auto 5px
510
  }
511
 
512
+ .w-factory-templates-000-setup-content .checkbox input[type=checkbox]:checked + label::before {
513
  background: #935687;
514
  border-color: #935687
515
  }
libs/factory/{clearfy → templates}/assets/img/loader.gif RENAMED
File without changes
libs/factory/{clearfy → templates}/assets/js/clearfy-globals.js RENAMED
@@ -2,8 +2,8 @@
2
  * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
  * и самого Clearfy.
4
  *
5
- * $.wbcr_factory_clearfy_240.app - методы для работы с приложением. Скрыть, показать уведомления.
6
- * $.wbcr_factory_clearfy_240.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
  *
8
  * Copyright 2018, Webcraftic, http://webcraftic.com
9
  *
@@ -13,16 +13,16 @@
13
  (function($) {
14
  'use strict';
15
 
16
- if( !$.wbcr_factory_clearfy_240 ) {
17
- $.wbcr_factory_clearfy_240 = {};
18
  }
19
 
20
  //todo: Переопредление для совместимости со старыми версиями плагинов.
21
- $.wbcr_factory_clearfy_240.filters = $.wbcr_factory_clearfy_240.filters || $.wfactory_448.filters;
22
  //todo: Переопредление для совместимости со старыми версиями плагинов.
23
- $.wbcr_factory_clearfy_240.hooks = $.wbcr_factory_clearfy_240.hooks || $.wfactory_448.hooks;
24
 
25
- $.wbcr_factory_clearfy_240.app = $.wbcr_factory_clearfy_240.app || {
26
  /**
27
  * Создает и показывает уведомление внутри интерфейса Clearfy
28
  *
@@ -68,12 +68,12 @@
68
  /**
69
  * Хук выполняет проивольную функцию, после того как уведомление отображено
70
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
- * Пример регистрации хука $.wfactory_448.hooks.add('wbcr/factory_clearfy_240/updated',
72
  * function(noticeId) {});
73
  * @param {string} noticeId - id уведомления
74
  */
75
- $.wfactory_448.hooks.run('wbcr/factory_clearfy_240/showed_notice', [noticeId]);
76
- $.wfactory_448.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
77
  });
78
 
79
  return noticeId;
@@ -98,13 +98,13 @@
98
  /**
99
  * Хук выполняет проивольную функцию, после того как уведомление скрыто
100
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
101
- * Пример регистрации хука $.wfactory_448.hooks.add('wbcr/factory_clearfy_240/updated',
102
  * function(noticeId)
103
  * {});
104
  * @param {string} noticeId - id уведомления
105
  */
106
- $.wfactory_448.hooks.run('wbcr/factory_clearfy_240/hidded_notice', [noticeId]);
107
- $.wfactory_448.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
  });
109
  },
110
 
@@ -121,7 +121,7 @@
121
 
122
  };
123
 
124
- $.wfactory_448.hooks.add('core/components/pre_activate', function(button) {
125
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
  if( !$('#WBCR').length ) {
127
  return false;
@@ -137,7 +137,7 @@
137
  }
138
  });
139
 
140
- $.wfactory_448.hooks.add('core/components/deactivated', function(button, data, response) {
141
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
  if( !$('#WBCR').length ) {
143
  return false;
@@ -156,7 +156,7 @@
156
  }
157
  });
158
 
159
- $.wfactory_448.hooks.add('core/components/deleted', function(button) {
160
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
  if( !$('#WBCR').length ) {
162
  return false;
@@ -175,32 +175,32 @@
175
  }
176
  });
177
 
178
- $.wfactory_448.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
- if( !($('#WBCR').length && $.wbcr_factory_clearfy_240) ) {
181
  return false;
182
  }
183
 
184
  button.closest('.plugin-card').addClass('plugin-status-deactive');
185
 
186
  if( response.data && response.data.error_message ) {
187
- $.wbcr_factory_clearfy_240.app.showNotice(response.data.error_message, 'danger');
188
  }
189
  });
190
 
191
- $.wfactory_448.hooks.add('core/components/update_error', function(button, data, response) {
192
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
- if( !($('#WBCR').length && $.wbcr_factory_clearfy_240) ) {
194
  return false;
195
  }
196
 
197
  if( response.data && response.data.error_message ) {
198
- $.wbcr_factory_clearfy_240.app.showNotice(response.data.error_message, 'danger');
199
  }
200
 
201
  });
202
 
203
- $.wfactory_448.hooks.add('core/components/activated', function(button, data, response) {
204
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
205
  if( !$('#WBCR').length ) {
206
  return false;
@@ -209,13 +209,13 @@
209
  button.closest('.plugin-card').removeClass('plugin-status-deactive');
210
  });
211
 
212
- $.wfactory_448.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
- if( !($('#WBCR').length && $.wbcr_factory_clearfy_240) ) {
215
  return false;
216
  }
217
 
218
- $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
219
  });
220
 
221
  })(jQuery);
2
  * Глобальный JS файл, который регистрирует глобальные переменные с общими методами для всех компонентов Clearfy
3
  * и самого Clearfy.
4
  *
5
+ * $.wbcr_factory_templates_101.app - методы для работы с приложением. Скрыть, показать уведомления.
6
+ * $.wbcr_factory_templates_101.hooks - это иммитация хуков и фильтров аналогично тем, что используются в Wordpress
7
  *
8
  * Copyright 2018, Webcraftic, http://webcraftic.com
9
  *
13
  (function($) {
14
  'use strict';
15
 
16
+ if( !$.wbcr_factory_templates_101 ) {
17
+ $.wbcr_factory_templates_101 = {};
18
  }
19
 
20
  //todo: Переопредление для совместимости со старыми версиями плагинов.
21
+ $.wbcr_factory_templates_101.filters = $.wbcr_factory_templates_101.filters || $.wfactory_449.filters;
22
  //todo: Переопредление для совместимости со старыми версиями плагинов.
23
+ $.wbcr_factory_templates_101.hooks = $.wbcr_factory_templates_101.hooks || $.wfactory_449.hooks;
24
 
25
+ $.wbcr_factory_templates_101.app = $.wbcr_factory_templates_101.app || {
26
  /**
27
  * Создает и показывает уведомление внутри интерфейса Clearfy
28
  *
68
  /**
69
  * Хук выполняет проивольную функцию, после того как уведомление отображено
70
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
71
+ * Пример регистрации хука $.wfactory_449.hooks.add('wbcr/factory_templates_101/updated',
72
  * function(noticeId) {});
73
  * @param {string} noticeId - id уведомления
74
  */
75
+ $.wfactory_449.hooks.run('wbcr/factory_templates_101/showed_notice', [noticeId]);
76
+ $.wfactory_449.hooks.run('wbcr/clearfy/showed_notice', [noticeId]);
77
  });
78
 
79
  return noticeId;
98
  /**
99
  * Хук выполняет проивольную функцию, после того как уведомление скрыто
100
  * Реализация системы фильтров и хуков в файле libs/clearfy/admin/assests/js/global.js
101
+ * Пример регистрации хука $.wfactory_449.hooks.add('wbcr/factory_templates_101/updated',
102
  * function(noticeId)
103
  * {});
104
  * @param {string} noticeId - id уведомления
105
  */
106
+ $.wfactory_449.hooks.run('wbcr/factory_templates_101/hidded_notice', [noticeId]);
107
+ $.wfactory_449.hooks.run('wbcr/clearfy/hidded_notice', [noticeId]);
108
  });
109
  },
110
 
121
 
122
  };
123
 
124
+ $.wfactory_449.hooks.add('core/components/pre_activate', function(button) {
125
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
126
  if( !$('#WBCR').length ) {
127
  return false;
137
  }
138
  });
139
 
140
+ $.wfactory_449.hooks.add('core/components/deactivated', function(button, data, response) {
141
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
142
  if( !$('#WBCR').length ) {
143
  return false;
156
  }
157
  });
158
 
159
+ $.wfactory_449.hooks.add('core/components/deleted', function(button) {
160
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
161
  if( !$('#WBCR').length ) {
162
  return false;
175
  }
176
  });
177
 
178
+ $.wfactory_449.hooks.add('core/components/activation_error', function(plugin, button, response) {
179
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
180
+ if( !($('#WBCR').length && $.wbcr_factory_templates_101) ) {
181
  return false;
182
  }
183
 
184
  button.closest('.plugin-card').addClass('plugin-status-deactive');
185
 
186
  if( response.data && response.data.error_message ) {
187
+ $.wbcr_factory_templates_101.app.showNotice(response.data.error_message, 'danger');
188
  }
189
  });
190
 
191
+ $.wfactory_449.hooks.add('core/components/update_error', function(button, data, response) {
192
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
193
+ if( !($('#WBCR').length && $.wbcr_factory_templates_101) ) {
194
  return false;
195
  }
196
 
197
  if( response.data && response.data.error_message ) {
198
+ $.wbcr_factory_templates_101.app.showNotice(response.data.error_message, 'danger');
199
  }
200
 
201
  });
202
 
203
+ $.wfactory_449.hooks.add('core/components/activated', function(button, data, response) {
204
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
205
  if( !$('#WBCR').length ) {
206
  return false;
209
  button.closest('.plugin-card').removeClass('plugin-status-deactive');
210
  });
211
 
212
+ $.wfactory_449.hooks.add('core/components/ajax_error', function(xhr, ajaxOptions, thrownError) {
213
  // Выполняем код ниже, только на страницах плагина с интерфейсом Clearfy
214
+ if( !($('#WBCR').length && $.wbcr_factory_templates_101) ) {
215
  return false;
216
  }
217
 
218
+ $.wbcr_factory_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
219
  });
220
 
221
  })(jQuery);
libs/factory/{clearfy → templates}/assets/js/clearfy-license-manager.js RENAMED
@@ -20,7 +20,7 @@ jQuery(function($) {
20
  licenseAction = $(this).data('action');
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
- $.wbcr_factory_clearfy_240.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
@@ -53,7 +53,7 @@ jQuery(function($) {
53
 
54
  if( response.data ) {
55
  console.log(response.data.error_message);
56
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
57
  allNotices.push(noticeId);
58
  } else {
59
  console.log(response);
@@ -63,7 +63,7 @@ jQuery(function($) {
63
  }
64
 
65
  if( response.data && response.data.message ) {
66
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice(response.data.message, 'success');
67
  allNotices.push(noticeId);
68
 
69
  // todo: доработать генерацию формы, вместо перезагрузки страницы
@@ -80,7 +80,7 @@ jQuery(function($) {
80
  console.log(xhr.responseText);
81
  console.log(thrownError);
82
 
83
- var noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
20
  licenseAction = $(this).data('action');
21
 
22
  for( i = 0; i < allNotices.length; i++ ) {
23
+ $.wbcr_factory_templates_101.app.hideNotice(allNotices[i]);
24
  }
25
 
26
  $('.wcl-control-btn').hide();
53
 
54
  if( response.data ) {
55
  console.log(response.data.error_message);
56
+ noticeId = $.wbcr_factory_templates_101.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
57
  allNotices.push(noticeId);
58
  } else {
59
  console.log(response);
63
  }
64
 
65
  if( response.data && response.data.message ) {
66
+ noticeId = $.wbcr_factory_templates_101.app.showNotice(response.data.message, 'success');
67
  allNotices.push(noticeId);
68
 
69
  // todo: доработать генерацию формы, вместо перезагрузки страницы
80
  console.log(xhr.responseText);
81
  console.log(thrownError);
82
 
83
+ var noticeId = $.wbcr_factory_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
84
 
85
  allNotices.push(noticeId);
86
  }
libs/factory/{clearfy → templates}/assets/js/clearfy-search-options.js RENAMED
@@ -39,10 +39,10 @@
39
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
40
  }
41
 
42
- $('#wbcr-factory-clearfy-240__autocomplete').wfactory_clearfy_autocomplete({
43
  lookup: wfactory_clearfy_search_options,
44
  onSelect: function(suggestion) {
45
- $('#wbcr-factory-clearfy-240__autocomplete').prop("disabled", true);
46
  window.location.href = suggestion.data.page_url;
47
  }
48
  });
39
  throw new Error('Global var {wfactory_clearfy_search_options} is not declared.');
40
  }
41
 
42
+ $('#wbcr-factory-templates-101__autocomplete').wfactory_clearfy_autocomplete({
43
  lookup: wfactory_clearfy_search_options,
44
  onSelect: function(suggestion) {
45
+ $('#wbcr-factory-templates-101__autocomplete').prop("disabled", true);
46
  window.location.href = suggestion.data.page_url;
47
  }
48
  });
libs/factory/{clearfy → templates}/assets/js/clearfy-widgets.js RENAMED
@@ -25,9 +25,9 @@ jQuery(function($) {
25
  if( !response || !response.success ) {
26
  if( response.data ) {
27
  console.log(response.data.error_message);
28
- noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
29
  setTimeout(function() {
30
- $.wbcr_factory_clearfy_240.app.hideNotice(noticeId);
31
  }, 5000);
32
  } else {
33
  console.log(response);
@@ -52,9 +52,9 @@ jQuery(function($) {
52
  console.log(xhr.responseText);
53
  console.log(thrownError);
54
 
55
- var noticeId = $.wbcr_factory_clearfy_240.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
56
  setTimeout(function() {
57
- $.wbcr_factory_clearfy_240.app.hideNotice(noticeId);
58
  }, 5000);
59
  }
60
  });
25
  if( !response || !response.success ) {
26
  if( response.data ) {
27
  console.log(response.data.error_message);
28
+ noticeId = $.wbcr_factory_templates_101.app.showNotice('Error: [' + response.data.error_message + ']', 'danger');
29
  setTimeout(function() {
30
+ $.wbcr_factory_templates_101.app.hideNotice(noticeId);
31
  }, 5000);
32
  } else {
33
  console.log(response);
52
  console.log(xhr.responseText);
53
  console.log(thrownError);
54
 
55
+ var noticeId = $.wbcr_factory_templates_101.app.showNotice('Error: [' + thrownError + '] Status: [' + xhr.status + '] Error massage: [' + xhr.responseText + ']', 'danger');
56
  setTimeout(function() {
57
+ $.wbcr_factory_templates_101.app.hideNotice(noticeId);
58
  }, 5000);
59
  }
60
  });
libs/factory/templates/assets/js/libs/jquery.autocomplete.min.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Ajax Autocomplete for jQuery, version 1.4.11
3
+ * (c) 2017 Tomas Kirda
4
+ *
5
+ * Ajax Autocomplete for jQuery is freely distributable under the terms of an MIT-style license.
6
+ * For details, see the web site: https://github.com/devbridge/jQuery-Autocomplete
7
+ */
8
+ !function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports&&"function"==typeof require?require("jquery"):jQuery)}(function(a){"use strict";function b(c,d){var e=this;e.element=c,e.el=a(c),e.suggestions=[],e.badQueries=[],e.selectedIndex=-1,e.currentValue=e.element.value,e.timeoutId=null,e.cachedResponse={},e.onChangeTimeout=null,e.onChange=null,e.isLocal=!1,e.suggestionsContainer=null,e.noSuggestionsContainer=null,e.options=a.extend(!0,{},b.defaults,d),e.classes={selected:"wbcr-factory-templates-101__autocomplete-selected",suggestion:"wbcr-factory-templates-101__autocomplete-suggestion"},e.hint=null,e.hintValue="",e.selection=null,e.initialize(),e.setOptions(d)}function c(a,b,c){return a.value.toLowerCase().indexOf(c)!==-1}function d(b){return"string"==typeof b?a.parseJSON(b):b}function e(a,b){if(!b)return a.value;var c="("+g.escapeRegExChars(b)+")";return a.value.replace(new RegExp(c,"gi"),"<strong>$1</strong>").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/&lt;(\/?strong)&gt;/g,"<$1>")}function f(a,b){return'<div class="wbcr-factory-templates-101__autocomplete-group">'+b+"</div>"}var g=function(){return{escapeRegExChars:function(a){return a.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")},createNode:function(a){var b=document.createElement("div");return b.className=a,b.style.position="absolute",b.style.display="none",b}}}(),h={ESC:27,TAB:9,RETURN:13,LEFT:37,UP:38,RIGHT:39,DOWN:40},i=a.noop;b.utils=g,a.Autocomplete=b,b.defaults={ajaxSettings:{},autoSelectFirst:!1,appendTo:"body",serviceUrl:null,lookup:null,onSelect:null,width:"auto",minChars:1,maxHeight:300,deferRequestBy:0,params:{},formatResult:e,formatGroup:f,delimiter:null,zIndex:9999,type:"GET",noCache:!1,onSearchStart:i,onSearchComplete:i,onSearchError:i,preserveInput:!1,containerClass:"wbcr-factory-templates-101__autocomplete-suggestions",tabDisabled:!1,dataType:"text",currentRequest:null,triggerSelectOnValidInput:!0,preventBadQueries:!0,lookupFilter:c,paramName:"query",transformResult:d,showNoSuggestionNotice:!1,noSuggestionNotice:"No results",orientation:"bottom",forceFixPosition:!1},b.prototype={initialize:function(){var c,d=this,e="."+d.classes.suggestion,f=d.classes.selected,g=d.options;d.element.setAttribute("autocomplete","off"),d.noSuggestionsContainer=a('<div class="autocomplete-no-suggestion"></div>').html(this.options.noSuggestionNotice).get(0),d.suggestionsContainer=b.utils.createNode(g.containerClass),c=a(d.suggestionsContainer),c.appendTo(g.appendTo||"body"),"auto"!==g.width&&c.css("width",g.width),c.on("mouseover.autocomplete",e,function(){d.activate(a(this).data("index"))}),c.on("mouseout.autocomplete",function(){d.selectedIndex=-1,c.children("."+f).removeClass(f)}),c.on("click.autocomplete",e,function(){d.select(a(this).data("index"))}),c.on("click.autocomplete",function(){clearTimeout(d.blurTimeoutId)}),d.fixPositionCapture=function(){d.visible&&d.fixPosition()},a(window).on("resize.autocomplete",d.fixPositionCapture),d.el.on("keydown.autocomplete",function(a){d.onKeyPress(a)}),d.el.on("keyup.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("blur.autocomplete",function(){d.onBlur()}),d.el.on("focus.autocomplete",function(){d.onFocus()}),d.el.on("change.autocomplete",function(a){d.onKeyUp(a)}),d.el.on("input.autocomplete",function(a){d.onKeyUp(a)})},onFocus:function(){var a=this;a.disabled||(a.fixPosition(),a.el.val().length>=a.options.minChars&&a.onValueChange())},onBlur:function(){var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);b.blurTimeoutId=setTimeout(function(){b.hide(),b.selection&&b.currentValue!==e&&(c.onInvalidateSelection||a.noop).call(b.element)},200)},abortAjax:function(){var a=this;a.currentRequest&&(a.currentRequest.abort(),a.currentRequest=null)},setOptions:function(b){var c=this,d=a.extend({},c.options,b);c.isLocal=Array.isArray(d.lookup),c.isLocal&&(d.lookup=c.verifySuggestionsFormat(d.lookup)),d.orientation=c.validateOrientation(d.orientation,"bottom"),a(c.suggestionsContainer).css({"max-height":d.maxHeight+"px",width:d.width+"px","z-index":d.zIndex}),this.options=d},clearCache:function(){this.cachedResponse={},this.badQueries=[]},clear:function(){this.clearCache(),this.currentValue="",this.suggestions=[]},disable:function(){var a=this;a.disabled=!0,clearTimeout(a.onChangeTimeout),a.abortAjax()},enable:function(){this.disabled=!1},fixPosition:function(){var b=this,c=a(b.suggestionsContainer),d=c.parent().get(0);if(d===document.body||b.options.forceFixPosition){var e=b.options.orientation,f=c.outerHeight(),g=b.el.outerHeight(),h=b.el.offset(),i={top:h.top,left:h.left};if("auto"===e){var j=a(window).height(),k=a(window).scrollTop(),l=-k+h.top-f,m=k+j-(h.top+g+f);e=Math.max(l,m)===l?"top":"bottom"}if("top"===e?i.top+=-f:i.top+=g,d!==document.body){var n,o=c.css("opacity");b.visible||c.css("opacity",0).show(),n=c.offsetParent().offset(),i.top-=n.top,i.top+=d.scrollTop,i.left-=n.left,b.visible||c.css("opacity",o).hide()}"auto"===b.options.width&&(i.width=b.el.outerWidth()+"px"),c.css(i)}},isCursorAtEnd:function(){var a,b=this,c=b.el.val().length,d=b.element.selectionStart;return"number"==typeof d?d===c:!document.selection||(a=document.selection.createRange(),a.moveStart("character",-c),c===a.text.length)},onKeyPress:function(a){var b=this;if(!b.disabled&&!b.visible&&a.which===h.DOWN&&b.currentValue)return void b.suggest();if(!b.disabled&&b.visible){switch(a.which){case h.ESC:b.el.val(b.currentValue),b.hide();break;case h.RIGHT:if(b.hint&&b.options.onHint&&b.isCursorAtEnd()){b.selectHint();break}return;case h.TAB:if(b.hint&&b.options.onHint)return void b.selectHint();if(b.selectedIndex===-1)return void b.hide();if(b.select(b.selectedIndex),b.options.tabDisabled===!1)return;break;case h.RETURN:if(b.selectedIndex===-1)return void b.hide();b.select(b.selectedIndex);break;case h.UP:b.moveUp();break;case h.DOWN:b.moveDown();break;default:return}a.stopImmediatePropagation(),a.preventDefault()}},onKeyUp:function(a){var b=this;if(!b.disabled){switch(a.which){case h.UP:case h.DOWN:return}clearTimeout(b.onChangeTimeout),b.currentValue!==b.el.val()&&(b.findBestHint(),b.options.deferRequestBy>0?b.onChangeTimeout=setTimeout(function(){b.onValueChange()},b.options.deferRequestBy):b.onValueChange())}},onValueChange:function(){if(this.ignoreValueChange)return void(this.ignoreValueChange=!1);var b=this,c=b.options,d=b.el.val(),e=b.getQuery(d);return b.selection&&b.currentValue!==e&&(b.selection=null,(c.onInvalidateSelection||a.noop).call(b.element)),clearTimeout(b.onChangeTimeout),b.currentValue=d,b.selectedIndex=-1,c.triggerSelectOnValidInput&&b.isExactMatch(e)?void b.select(0):void(e.length<c.minChars?b.hide():b.getSuggestions(e))},isExactMatch:function(a){var b=this.suggestions;return 1===b.length&&b[0].value.toLowerCase()===a.toLowerCase()},getQuery:function(b){var c,d=this.options.delimiter;return d?(c=b.split(d),a.trim(c[c.length-1])):b},getSuggestionsLocal:function(b){var c,d=this,e=d.options,f=b.toLowerCase(),g=e.lookupFilter,h=parseInt(e.lookupLimit,10);return c={suggestions:a.grep(e.lookup,function(a){return g(a,b,f)})},h&&c.suggestions.length>h&&(c.suggestions=c.suggestions.slice(0,h)),c},getSuggestions:function(b){var c,d,e,f,g=this,h=g.options,i=h.serviceUrl;if(h.params[h.paramName]=b,h.onSearchStart.call(g.element,h.params)!==!1){if(d=h.ignoreParams?null:h.params,a.isFunction(h.lookup))return void h.lookup(b,function(a){g.suggestions=a.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,a.suggestions)});g.isLocal?c=g.getSuggestionsLocal(b):(a.isFunction(i)&&(i=i.call(g.element,b)),e=i+"?"+a.param(d||{}),c=g.cachedResponse[e]),c&&Array.isArray(c.suggestions)?(g.suggestions=c.suggestions,g.suggest(),h.onSearchComplete.call(g.element,b,c.suggestions)):g.isBadQuery(b)?h.onSearchComplete.call(g.element,b,[]):(g.abortAjax(),f={url:i,data:d,type:h.type,dataType:h.dataType},a.extend(f,h.ajaxSettings),g.currentRequest=a.ajax(f).done(function(a){var c;g.currentRequest=null,c=h.transformResult(a,b),g.processResponse(c,b,e),h.onSearchComplete.call(g.element,b,c.suggestions)}).fail(function(a,c,d){h.onSearchError.call(g.element,b,a,c,d)}))}},isBadQuery:function(a){if(!this.options.preventBadQueries)return!1;for(var b=this.badQueries,c=b.length;c--;)if(0===a.indexOf(b[c]))return!0;return!1},hide:function(){var b=this,c=a(b.suggestionsContainer);a.isFunction(b.options.onHide)&&b.visible&&b.options.onHide.call(b.element,c),b.visible=!1,b.selectedIndex=-1,clearTimeout(b.onChangeTimeout),a(b.suggestionsContainer).hide(),b.signalHint(null)},suggest:function(){if(!this.suggestions.length)return void(this.options.showNoSuggestionNotice?this.noSuggestions():this.hide());var b,c=this,d=c.options,e=d.groupBy,f=d.formatResult,g=c.getQuery(c.currentValue),h=c.classes.suggestion,i=c.classes.selected,j=a(c.suggestionsContainer),k=a(c.noSuggestionsContainer),l=d.beforeRender,m="",n=function(a,c){var f=a.data[e];return b===f?"":(b=f,d.formatGroup(a,b))};return d.triggerSelectOnValidInput&&c.isExactMatch(g)?void c.select(0):(a.each(c.suggestions,function(a,b){e&&(m+=n(b,g,a)),m+='<div class="'+h+'" data-index="'+a+'">'+f(b,g,a)+"</div>"}),this.adjustContainerWidth(),k.detach(),j.html(m),a.isFunction(l)&&l.call(c.element,j,c.suggestions),c.fixPosition(),j.show(),d.autoSelectFirst&&(c.selectedIndex=0,j.scrollTop(0),j.children("."+h).first().addClass(i)),c.visible=!0,void c.findBestHint())},noSuggestions:function(){var b=this,c=b.options.beforeRender,d=a(b.suggestionsContainer),e=a(b.noSuggestionsContainer);this.adjustContainerWidth(),e.detach(),d.empty(),d.append(e),a.isFunction(c)&&c.call(b.element,d,b.suggestions),b.fixPosition(),d.show(),b.visible=!0},adjustContainerWidth:function(){var b,c=this,d=c.options,e=a(c.suggestionsContainer);"auto"===d.width?(b=c.el.outerWidth(),e.css("width",b>0?b:300)):"flex"===d.width&&e.css("width","")},findBestHint:function(){var b=this,c=b.el.val().toLowerCase(),d=null;c&&(a.each(b.suggestions,function(a,b){var e=0===b.value.toLowerCase().indexOf(c);return e&&(d=b),!e}),b.signalHint(d))},signalHint:function(b){var c="",d=this;b&&(c=d.currentValue+b.value.substr(d.currentValue.length)),d.hintValue!==c&&(d.hintValue=c,d.hint=b,(this.options.onHint||a.noop)(c))},verifySuggestionsFormat:function(b){return b.length&&"string"==typeof b[0]?a.map(b,function(a){return{value:a,data:null}}):b},validateOrientation:function(b,c){return b=a.trim(b||"").toLowerCase(),a.inArray(b,["auto","bottom","top"])===-1&&(b=c),b},processResponse:function(a,b,c){var d=this,e=d.options;a.suggestions=d.verifySuggestionsFormat(a.suggestions),e.noCache||(d.cachedResponse[c]=a,e.preventBadQueries&&!a.suggestions.length&&d.badQueries.push(b)),b===d.getQuery(d.currentValue)&&(d.suggestions=a.suggestions,d.suggest())},activate:function(b){var c,d=this,e=d.classes.selected,f=a(d.suggestionsContainer),g=f.find("."+d.classes.suggestion);return f.find("."+e).removeClass(e),d.selectedIndex=b,d.selectedIndex!==-1&&g.length>d.selectedIndex?(c=g.get(d.selectedIndex),a(c).addClass(e),c):null},selectHint:function(){var b=this,c=a.inArray(b.hint,b.suggestions);b.select(c)},select:function(a){var b=this;b.hide(),b.onSelect(a)},moveUp:function(){var b=this;if(b.selectedIndex!==-1)return 0===b.selectedIndex?(a(b.suggestionsContainer).children("."+b.classes.suggestion).first().removeClass(b.classes.selected),b.selectedIndex=-1,b.ignoreValueChange=!1,b.el.val(b.currentValue),void b.findBestHint()):void b.adjustScroll(b.selectedIndex-1)},moveDown:function(){var a=this;a.selectedIndex!==a.suggestions.length-1&&a.adjustScroll(a.selectedIndex+1)},adjustScroll:function(b){var c=this,d=c.activate(b);if(d){var e,f,g,h=a(d).outerHeight();e=d.offsetTop,f=a(c.suggestionsContainer).scrollTop(),g=f+c.options.maxHeight-h,e<f?a(c.suggestionsContainer).scrollTop(e):e>g&&a(c.suggestionsContainer).scrollTop(e-c.options.maxHeight+h),c.options.preserveInput||(c.ignoreValueChange=!0,c.el.val(c.getValue(c.suggestions[b].value))),c.signalHint(null)}},onSelect:function(b){var c=this,d=c.options.onSelect,e=c.suggestions[b];c.currentValue=c.getValue(e.value),c.currentValue===c.el.val()||c.options.preserveInput||c.el.val(c.currentValue),c.signalHint(null),c.suggestions=[],c.selection=e,a.isFunction(d)&&d.call(c.element,e)},getValue:function(a){var b,c,d=this,e=d.options.delimiter;return e?(b=d.currentValue,c=b.split(e),1===c.length?a:b.substr(0,b.length-c[c.length-1].length)+a):a},dispose:function(){var b=this;b.el.off(".autocomplete").removeData("autocomplete"),a(window).off("resize.autocomplete",b.fixPositionCapture),a(b.suggestionsContainer).remove()}},a.fn.devbridgeAutocomplete=function(c,d){var e="autocomplete";return arguments.length?this.each(function(){var f=a(this),g=f.data(e);"string"==typeof c?g&&"function"==typeof g[c]&&g[c](d):(g&&g.dispose&&g.dispose(),g=new b(this,c),f.data(e,g))}):this.first().data(e)},a.fn.wfactory_clearfy_autocomplete||(a.fn.wfactory_clearfy_autocomplete=a.fn.devbridgeAutocomplete)});
libs/factory/templates/boot.php ADDED
@@ -0,0 +1,92 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Factory Templates
4
+ *
5
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
6
+ * @since 1.0.0
7
+ * @package clearfy
8
+ * @copyright (c) 2018, Webcraftic Ltd
9
+ *
10
+ */
11
+
12
+ // Exit if accessed directly
13
+ if( !defined('ABSPATH') ) {
14
+ exit;
15
+ }
16
+
17
+ if( defined('FACTORY_TEMPLATES_101_LOADED') ) {
18
+ return;
19
+ }
20
+
21
+ define('FACTORY_TEMPLATES_101_LOADED', true);
22
+
23
+ define('FACTORY_TEMPLATES_101', '1.0.1');
24
+
25
+ define('FACTORY_TEMPLATES_101_DIR', dirname(__FILE__));
26
+ define('FACTORY_TEMPLATES_101_URL', plugins_url(null, __FILE__));
27
+
28
+ load_plugin_textdomain('wbcr_factory_templates_101', false, dirname(plugin_basename(__FILE__)) . '/langs');
29
+
30
+ require(FACTORY_TEMPLATES_101_DIR . '/includes/ajax-handlers.php');
31
+ require(FACTORY_TEMPLATES_101_DIR . '/includes/class-helpers.php');
32
+ require(FACTORY_TEMPLATES_101_DIR . '/includes/class-configurate.php');
33
+
34
+ // module provides function only for the admin area
35
+ if( is_admin() ) {
36
+ /**
37
+ * Подключаем скрипты для установки компонентов Clearfy
38
+ * на все страницы админпанели.
39
+ */
40
+ add_action('admin_enqueue_scripts', function ($hook) {
41
+ wp_enqueue_script('wbcr-factory-templates-101-global', FACTORY_TEMPLATES_101_URL . '/assets/js/clearfy-globals.js', [
42
+ 'jquery',
43
+ 'wfactory-449-core-general'
44
+ ], FACTORY_TEMPLATES_101);
45
+
46
+ require_once FACTORY_TEMPLATES_101_DIR . '/includes/class-search-options.php';
47
+ $all_options = \WBCR\Factory_Templates_101\Search_Options::get_all_options();
48
+
49
+ if( empty($all_options) ) {
50
+ return;
51
+ }
52
+
53
+ $allow_print_data = false;
54
+ $formated_options = [];
55
+
56
+ foreach($all_options as $option) {
57
+ //if( !$allow_print_data && isset($_GET['page']) && $option['page_id'] === $_GET['page'] ) {
58
+ //$allow_print_data = true;
59
+ //}
60
+
61
+ $formated_options[] = [
62
+ 'value' => $option['title'],
63
+ 'data' => [
64
+ //'hint' => isset($option['hint']) ? $option['hint'] : '',
65
+ 'page_url' => $option['page_url'],
66
+ 'page_id' => $option['page_id']
67
+ ]
68
+ ];
69
+ }
70
+
71
+ //if( !$allow_print_data ) {
72
+ //return;
73
+ //}
74
+
75
+ wp_localize_script('wbcr-factory-templates-101-global', 'wfactory_clearfy_search_options', $formated_options);
76
+ });
77
+
78
+ if( defined('FACTORY_PAGES_448_LOADED') ) {
79
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/templates/impressive/class-page-template-impressive.php');
80
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/templates/impressive/class-pages.php');
81
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/templates/impressive-lite/class-page-template-impressive-lite.php');
82
+
83
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/class-page-more-features.php');
84
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/class-page-license.php');
85
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/class-pages-components.php');
86
+
87
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/setup-parts/class-step.php');
88
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/setup-parts/class-step-form.php');
89
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/setup-parts/class-step-custom.php');
90
+ require(FACTORY_TEMPLATES_101_DIR . '/pages/class-page-setup.php');
91
+ }
92
+ }
libs/factory/{clearfy → templates}/includes/ajax-handlers.php RENAMED
@@ -15,12 +15,12 @@ if( !defined('ABSPATH') ) {
15
  /**
16
  * Обработчик ajax запросов для виджета подписки на новости
17
  *
18
- * @param Wbcr_Factory448_Plugin $plugin_instance
19
  *
20
  * @since 2.3.0
21
  *
22
  */
23
- function wbcr_factory_clearfy_240_subscribe($plugin_instance)
24
  {
25
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
26
 
@@ -34,11 +34,11 @@ function wbcr_factory_clearfy_240_subscribe($plugin_instance)
34
  check_admin_referer("clearfy_subscribe_for_{$plugin_name}");
35
 
36
  if( empty($email) || !filter_var($email, FILTER_VALIDATE_EMAIL) ) {
37
- wp_send_json_error(['error_message' => __('You did not send your email address or it is incorrect!', 'wbcr_factory_clearfy_240')]);
38
  }
39
 
40
  if( empty($group_id) ) {
41
- wp_send_json_error(['error_message' => __('Group ID is empty!', 'wbcr_factory_clearfy_240')]);
42
  }
43
 
44
  $response = wp_remote_post('https://clearfy.pro/wp-json/mailerlite/v1/subscribe/', [
@@ -63,7 +63,7 @@ function wbcr_factory_clearfy_240_subscribe($plugin_instance)
63
  wp_send_json_success(['subscribed' => $data['subscribed']]);
64
  }
65
 
66
- wp_send_json_error(['error_message' => __('Unknown error while trying to subscribe to newsletter.', 'wbcr_factory_clearfy_240')]);
67
 
68
  die();
69
  }
@@ -71,12 +71,12 @@ function wbcr_factory_clearfy_240_subscribe($plugin_instance)
71
  /**
72
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
73
  *
74
- * @param Wbcr_Factory448_Plugin $plugin_instance
75
  *
76
  * @since 2.0.7
77
  *
78
  */
79
- function wbcr_factory_clearfy_240_check_license($plugin_instance)
80
  {
81
 
82
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
@@ -91,7 +91,7 @@ function wbcr_factory_clearfy_240_check_license($plugin_instance)
91
  check_admin_referer("clearfy_activate_license_for_{$plugin_name}");
92
 
93
  if( empty($action) || !in_array($action, ['activate', 'deactivate', 'sync', 'unsubscribe']) ) {
94
- wp_send_json_error(['error_message' => __('Licensing action not passed or this action is prohibited!', 'wbcr_factory_clearfy_240')]);
95
  die();
96
  }
97
 
@@ -102,23 +102,23 @@ function wbcr_factory_clearfy_240_check_license($plugin_instance)
102
  switch( $action ) {
103
  case 'activate':
104
  if( empty($license_key) || strlen($license_key) > 32 ) {
105
- wp_send_json_error(['error_message' => __('License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_clearfy_240')]);
106
  } else {
107
  $plugin_instance->premium->activate($license_key);
108
- $success_message = __('Your license has been successfully activated', 'wbcr_factory_clearfy_240');
109
  }
110
  break;
111
  case 'deactivate':
112
  $plugin_instance->premium->deactivate();
113
- $success_message = __('The license is deactivated', 'wbcr_factory_clearfy_240');
114
  break;
115
  case 'sync':
116
  $plugin_instance->premium->sync();
117
- $success_message = __('The license has been updated', 'wbcr_factory_clearfy_240');
118
  break;
119
  case 'unsubscribe':
120
  $plugin_instance->premium->cancel_paid_subscription();
121
- $success_message = __('Subscription success cancelled', 'wbcr_factory_clearfy_240');
122
  break;
123
  }
124
  } catch( Exception $e ) {
15
  /**
16
  * Обработчик ajax запросов для виджета подписки на новости
17
  *
18
+ * @param Wbcr_Factory449_Plugin $plugin_instance
19
  *
20
  * @since 2.3.0
21
  *
22
  */
23
+ function wbcr_factory_templates_101_subscribe($plugin_instance)
24
  {
25
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
26
 
34
  check_admin_referer("clearfy_subscribe_for_{$plugin_name}");
35
 
36
  if( empty($email) || !filter_var($email, FILTER_VALIDATE_EMAIL) ) {
37
+ wp_send_json_error(['error_message' => __('You did not send your email address or it is incorrect!', 'wbcr_factory_templates_101')]);
38
  }
39
 
40
  if( empty($group_id) ) {
41
+ wp_send_json_error(['error_message' => __('Group ID is empty!', 'wbcr_factory_templates_101')]);
42
  }
43
 
44
  $response = wp_remote_post('https://clearfy.pro/wp-json/mailerlite/v1/subscribe/', [
63
  wp_send_json_success(['subscribed' => $data['subscribed']]);
64
  }
65
 
66
+ wp_send_json_error(['error_message' => __('Unknown error while trying to subscribe to newsletter.', 'wbcr_factory_templates_101')]);
67
 
68
  die();
69
  }
71
  /**
72
  * Обработчик ajax запросов для проверки, активации, деактивации лицензионного ключа
73
  *
74
+ * @param Wbcr_Factory449_Plugin $plugin_instance
75
  *
76
  * @since 2.0.7
77
  *
78
  */
79
+ function wbcr_factory_templates_101_check_license($plugin_instance)
80
  {
81
 
82
  $plugin_name = $plugin_instance->request->post('plugin_name', null, true);
91
  check_admin_referer("clearfy_activate_license_for_{$plugin_name}");
92
 
93
  if( empty($action) || !in_array($action, ['activate', 'deactivate', 'sync', 'unsubscribe']) ) {
94
+ wp_send_json_error(['error_message' => __('Licensing action not passed or this action is prohibited!', 'wbcr_factory_templates_101')]);
95
  die();
96
  }
97
 
102
  switch( $action ) {
103
  case 'activate':
104
  if( empty($license_key) || strlen($license_key) > 32 ) {
105
+ wp_send_json_error(['error_message' => __('License key is empty or license key too long (license key is 32 characters long)', 'wbcr_factory_templates_101')]);
106
  } else {
107
  $plugin_instance->premium->activate($license_key);
108
+ $success_message = __('Your license has been successfully activated', 'wbcr_factory_templates_101');
109
  }
110
  break;
111
  case 'deactivate':
112
  $plugin_instance->premium->deactivate();
113
+ $success_message = __('The license is deactivated', 'wbcr_factory_templates_101');
114
  break;
115
  case 'sync':
116
  $plugin_instance->premium->sync();
117
+ $success_message = __('The license has been updated', 'wbcr_factory_templates_101');
118
  break;
119
  case 'unsubscribe':
120
  $plugin_instance->premium->cancel_paid_subscription();
121
+ $success_message = __('Subscription success cancelled', 'wbcr_factory_templates_101');
122
  break;
123
  }
124
  } catch( Exception $e ) {
libs/factory/{clearfy → templates}/includes/class-configurate.php RENAMED
@@ -1,6 +1,9 @@
1
  <?php
 
 
 
2
  // Exit if accessed directly
3
- if ( ! defined( 'ABSPATH' ) ) {
4
  exit;
5
  }
6
 
@@ -13,12 +16,13 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  * @copyright (c) 2018, Webcraftic Ltd
14
  *
15
  */
16
- abstract class Wbcr_FactoryClearfy240_Configurate {
17
 
18
  /**
19
- * @param Wbcr_Factory448_Plugin $plugin
20
  */
21
- public function __construct( Wbcr_Factory448_Plugin $plugin ) {
 
22
  $this->plugin = $plugin;
23
  $this->registerActionsAndFilters();
24
  }
@@ -38,8 +42,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
38
  *
39
  * @return mixed|void
40
  */
41
- public function getPopulateOption( $option_name, $default = false ) {
42
- return $this->plugin->getPopulateOption( $option_name, $default );
 
43
  }
44
 
45
  /**
@@ -50,8 +55,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
50
  *
51
  * @return mixed|void
52
  */
53
- public function getOption( $option_name, $default = false ) {
54
- return $this->plugin->getOption( $option_name, $default );
 
55
  }
56
 
57
  /**
@@ -62,8 +68,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
62
  *
63
  * @return mixed|void
64
  */
65
- public function getNetworkOption( $option_name, $default = false ) {
66
- return $this->plugin->getNetworkOption( $option_name, $default );
 
67
  }
68
 
69
  /**
@@ -72,8 +79,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
72
  *
73
  * @return bool
74
  */
75
- public function updatePopulateOption( $option_name, $value ) {
76
- $this->plugin->updatePopulateOption( $option_name, $value );
 
77
  }
78
 
79
  /**
@@ -82,8 +90,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
82
  *
83
  * @return bool
84
  */
85
- public function updateNetworkOption( $option_name, $value ) {
86
- $this->plugin->updateNetworkOption( $option_name, $value );
 
87
  }
88
 
89
  /**
@@ -92,8 +101,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
92
  *
93
  * @return bool
94
  */
95
- public function updateOption( $option_name, $value ) {
96
- $this->plugin->updateOption( $option_name, $value );
 
97
  }
98
 
99
  /**
@@ -101,8 +111,9 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
101
  *
102
  * @return bool
103
  */
104
- public function deletePopulateOption( $option_name ) {
105
- $this->plugin->deletePopulateOption( $option_name );
 
106
  }
107
 
108
  /**
@@ -110,7 +121,8 @@ abstract class Wbcr_FactoryClearfy240_Configurate {
110
  *
111
  * @return bool
112
  */
113
- public function deleteOption( $option_name ) {
114
- $this->plugin->deleteOption( $option_name );
 
115
  }
116
  }
1
  <?php
2
+
3
+ namespace WBCR\Factory_Templates_101;
4
+
5
  // Exit if accessed directly
6
+ if( !defined('ABSPATH') ) {
7
  exit;
8
  }
9
 
16
  * @copyright (c) 2018, Webcraftic Ltd
17
  *
18
  */
19
+ abstract class Configurate {
20
 
21
  /**
22
+ * @param \Wbcr_Factory449_Plugin $plugin
23
  */
24
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
25
+ {
26
  $this->plugin = $plugin;
27
  $this->registerActionsAndFilters();
28
  }
42
  *
43
  * @return mixed|void
44
  */
45
+ public function getPopulateOption($option_name, $default = false)
46
+ {
47
+ return $this->plugin->getPopulateOption($option_name, $default);
48
  }
49
 
50
  /**
55
  *
56
  * @return mixed|void
57
  */
58
+ public function getOption($option_name, $default = false)
59
+ {
60
+ return $this->plugin->getOption($option_name, $default);
61
  }
62
 
63
  /**
68
  *
69
  * @return mixed|void
70
  */
71
+ public function getNetworkOption($option_name, $default = false)
72
+ {
73
+ return $this->plugin->getNetworkOption($option_name, $default);
74
  }
75
 
76
  /**
79
  *
80
  * @return bool
81
  */
82
+ public function updatePopulateOption($option_name, $value)
83
+ {
84
+ $this->plugin->updatePopulateOption($option_name, $value);
85
  }
86
 
87
  /**
90
  *
91
  * @return bool
92
  */
93
+ public function updateNetworkOption($option_name, $value)
94
+ {
95
+ $this->plugin->updateNetworkOption($option_name, $value);
96
  }
97
 
98
  /**
101
  *
102
  * @return bool
103
  */
104
+ public function updateOption($option_name, $value)
105
+ {
106
+ $this->plugin->updateOption($option_name, $value);
107
  }
108
 
109
  /**
111
  *
112
  * @return bool
113
  */
114
+ public function deletePopulateOption($option_name)
115
+ {
116
+ $this->plugin->deletePopulateOption($option_name);
117
  }
118
 
119
  /**
121
  *
122
  * @return bool
123
  */
124
+ public function deleteOption($option_name)
125
+ {
126
+ $this->plugin->deleteOption($option_name);
127
  }
128
  }
libs/factory/{clearfy → templates}/includes/class-helpers.php RENAMED
@@ -1,4 +1,6 @@
1
  <?php
 
 
2
  // Exit if accessed directly
3
  if( !defined('ABSPATH') ) {
4
  exit;
@@ -14,7 +16,7 @@ if( !defined('ABSPATH') ) {
14
  * @copyright (c) 2018, Webcraftic Ltd
15
  *
16
  */
17
- class WbcrFactoryClearfy240_Helpers {
18
 
19
  /**
20
  * Recursive sanitation for an array
@@ -45,7 +47,7 @@ class WbcrFactoryClearfy240_Helpers {
45
  *
46
  * @return bool
47
  * @since 1.0.0
48
- * @global WP_Rewrite $wp_rewrite
49
  */
50
  public static function isPermalink()
51
  {
@@ -233,18 +235,18 @@ class WbcrFactoryClearfy240_Helpers {
233
  w3tc_pgcache_flush();
234
  } else if( function_exists('wp_fast_cache_bulk_delete_all') ) {
235
  wp_fast_cache_bulk_delete_all();
236
- } else if( class_exists('WpFastestCache') ) {
237
- $wpfc = new WpFastestCache();
238
  $wpfc->deleteCache();
239
  } else if( class_exists('c_ws_plugin__qcache_purging_routines') ) {
240
- c_ws_plugin__qcache_purging_routines::purge_cache_dir(); // quick cache
241
  } else if( class_exists('zencache') ) {
242
- zencache::clear();
243
  } else if( class_exists('comet_cache') ) {
244
- comet_cache::clear();
245
- } else if( class_exists('WCL_Cache_Helpers') ) {
246
- WCL_Cache_Helpers::deleteCache();
247
- } else if( class_exists('WpeCommon') ) {
248
  // WPEngine cache purge/flush methods to call by default
249
  $wpe_methods = [
250
  'purge_varnish_cache',
@@ -260,7 +262,7 @@ class WbcrFactoryClearfy240_Helpers {
260
 
261
  foreach($wpe_methods as $wpe_method) {
262
  if( method_exists('WpeCommon', $wpe_method) ) {
263
- WpeCommon::$wpe_method();
264
  }
265
  }
266
  } else if( function_exists('sg_cachepress_purge_cache') ) {
1
  <?php
2
+ namespace WBCR\Factory_Templates_101;
3
+
4
  // Exit if accessed directly
5
  if( !defined('ABSPATH') ) {
6
  exit;
16
  * @copyright (c) 2018, Webcraftic Ltd
17
  *
18
  */
19
+ class Helpers {
20
 
21
  /**
22
  * Recursive sanitation for an array
47
  *
48
  * @return bool
49
  * @since 1.0.0
50
+ * @global \WP_Rewrite $wp_rewrite
51
  */
52
  public static function isPermalink()
53
  {
235
  w3tc_pgcache_flush();
236
  } else if( function_exists('wp_fast_cache_bulk_delete_all') ) {
237
  wp_fast_cache_bulk_delete_all();
238
+ } else if( class_exists('\WpFastestCache') ) {
239
+ $wpfc = new \WpFastestCache();
240
  $wpfc->deleteCache();
241
  } else if( class_exists('c_ws_plugin__qcache_purging_routines') ) {
242
+ \c_ws_plugin__qcache_purging_routines::purge_cache_dir(); // quick cache
243
  } else if( class_exists('zencache') ) {
244
+ \zencache::clear();
245
  } else if( class_exists('comet_cache') ) {
246
+ \comet_cache::clear();
247
+ } else if( class_exists('\WCL_Cache_Helpers') ) {
248
+ \WCL_Cache_Helpers::deleteCache();
249
+ } else if( class_exists('\WpeCommon') ) {
250
  // WPEngine cache purge/flush methods to call by default
251
  $wpe_methods = [
252
  'purge_varnish_cache',
262
 
263
  foreach($wpe_methods as $wpe_method) {
264
  if( method_exists('WpeCommon', $wpe_method) ) {
265
+ \WpeCommon::$wpe_method();
266
  }
267
  }
268
  } else if( function_exists('sg_cachepress_purge_cache') ) {
libs/factory/{clearfy → templates}/includes/class-search-options.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\Factory_Clearfy_240;
4
 
5
  /**
6
  * Class Search options
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101;
4
 
5
  /**
6
  * Class Search options
libs/factory/{clearfy → templates}/includes/index.php RENAMED
File without changes
libs/factory/{clearfy → templates}/index.php RENAMED
File without changes
libs/factory/{clearfy/langs/wbcr_factory_clearfy_240-ru_RU.mo → templates/langs/wbcr_factory_clearfy_000-ru_RU.mo} RENAMED
File without changes
libs/factory/{clearfy/langs/wbcr_factory_clearfy_240-ru_RU.po → templates/langs/wbcr_factory_clearfy_000-ru_RU.po} RENAMED
File without changes
libs/factory/{clearfy → templates}/pages/class-page-license.php RENAMED
@@ -1,5 +1,7 @@
1
  <?php
2
 
 
 
3
  // Exit if accessed directly
4
  if( !defined('ABSPATH') ) {
5
  exit;
@@ -11,7 +13,7 @@ if( !defined('ABSPATH') ) {
11
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
12
  * @since 2.0.7
13
  */
14
- class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase {
15
 
16
  /**
17
  * {@inheritdoc}
@@ -80,7 +82,7 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
80
 
81
  /**
82
  * @since 2.0.7
83
- * @var \WBCR\Factory_448\Premium\Provider
84
  */
85
  protected $premium;
86
 
@@ -98,7 +100,7 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
98
 
99
  /**
100
  * @since 2.0.7
101
- * @var \WBCR\Factory_448\Premium\Interfaces\License
102
  */
103
  protected $premium_license;
104
 
@@ -107,9 +109,9 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
107
 
108
  /**
109
  * {@inheritdoc}
110
- * @param Wbcr_Factory448_Plugin $plugin
111
  */
112
- public function __construct(Wbcr_Factory448_Plugin $plugin)
113
  {
114
  $this->plugin = $plugin;
115
 
@@ -136,8 +138,8 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
136
  {
137
  parent::assets($scripts, $styles);
138
 
139
- $this->styles->add(FACTORY_CLEARFY_240_URL . '/assets/css/license-manager.css');
140
- $this->scripts->add(FACTORY_CLEARFY_240_URL . '/assets/js/clearfy-license-manager.js');
141
  }
142
 
143
  /**
@@ -147,7 +149,7 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
147
  */
148
  public function ajax_handler()
149
  {
150
- wbcr_factory_clearfy_240_check_license($this->plugin);
151
  }
152
 
153
  /**
@@ -157,7 +159,7 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
157
  {
158
  ?>
159
  <div id="wcl-license-wrapper"
160
- data-loader="<?php echo FACTORY_CLEARFY_240_URL . '/assets/img/loader.gif'; ?>"
161
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
162
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
163
  <?php $this->show_license_form(); ?>
@@ -263,11 +265,11 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
263
  if( $this->is_premium ):
264
  ?>
265
  <p style="margin-top: 10px;">
266
- <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_clearfy_240'), $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_240'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
271
  </p>
272
  <?php endif;
273
  }
@@ -279,16 +281,16 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
279
  {
280
  ?>
281
  <div id="license-manager"
282
- class="factory-bootstrap-448 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
283
  <div>
284
- <h3><?php printf(__('Activate %s', 'wbcr_factory_clearfy_240'), $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_240') ?></h4>
292
  </div>
293
  </div>
294
  <?php endif; ?>
@@ -298,20 +300,20 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
298
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
299
  class="purchase-premium" target="_blank" rel="noopener">
300
  <span class="btn btn-gold btn-inner-wrap">
301
- <?php _e('Upgrade to Premium', 'wbcr_factory_clearfy_240') ?>
302
  </span>
303
  </a>
304
- <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_clearfy_240'), $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_240') ?>
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_240') ?>
315
  </a>
316
  <?php endif; ?>
317
  <h3>
@@ -330,19 +332,19 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
330
  <?php endif; ?>
331
  <div class="license-key-description">
332
  <?php if( !$this->is_premium ): ?>
333
- <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_clearfy_240') ?></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_240') ?></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_240') ?>
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_240'), '') ?>
346
  </p>
347
  <?php endif; ?>
348
  </div>
@@ -350,19 +352,19 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
350
  <tr>
351
  <!--<td class="license-param license-param-domain">
352
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
353
- <span class="license-value-name"><?php _e('domain', 'wbcr_factory_clearfy_240') ?></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_240') ?></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_240') ?>
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_240') ?></span>
366
  </td>
367
  <?php endif; ?>
368
  <td class="license-param license-param-version">
@@ -372,8 +374,8 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_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!', 'wbcr_factory_clearfy_240') ?></span>
376
- <span class="license-value-name"><?php _e('please update the key', 'wbcr_factory_clearfy_240') ?></span>
377
  <?php else: ?>
378
  <span class="license-value">
379
  <?php
@@ -383,9 +385,9 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_PageBase
383
  echo $this->get_expiration_days();
384
  }
385
  ?>
386
- <small> <?php _e('day(s)', 'wbcr_factory_clearfy_240') ?></small>
387
  </span>
388
- <span class="license-value-name"><?php _e('remained', 'wbcr_factory_clearfy_240') ?></span>
389
  <?php endif; ?>
390
  </td>
391
  <?php endif; ?>
@@ -396,14 +398,14 @@ class Wbcr_FactoryClearfy240_LicensePage extends Wbcr_FactoryClearfy240_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:', 'wbcr_factory_clearfy_240') ?><p>
400
  <?php else: ?>
401
- <p><?php _e('Have a key to activate the plugin? Paste it here:', 'wbcr_factory_clearfy_240') ?>
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_240') ?>
407
  </button>
408
  <div class="license-key-wrap">
409
  <input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
+
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
7
  exit;
13
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
14
  * @since 2.0.7
15
  */
16
+ class License extends PageBase {
17
 
18
  /**
19
  * {@inheritdoc}
82
 
83
  /**
84
  * @since 2.0.7
85
+ * @var \WBCR\Factory_449\Premium\Provider
86
  */
87
  protected $premium;
88
 
100
 
101
  /**
102
  * @since 2.0.7
103
+ * @var \WBCR\Factory_449\Premium\Interfaces\License
104
  */
105
  protected $premium_license;
106
 
109
 
110
  /**
111
  * {@inheritdoc}
112
+ * @param \Wbcr_Factory449_Plugin $plugin
113
  */
114
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
115
  {
116
  $this->plugin = $plugin;
117
 
138
  {
139
  parent::assets($scripts, $styles);
140
 
141
+ $this->styles->add(FACTORY_TEMPLATES_101_URL . '/assets/css/license-manager.css');
142
+ $this->scripts->add(FACTORY_TEMPLATES_101_URL . '/assets/js/clearfy-license-manager.js');
143
  }
144
 
145
  /**
149
  */
150
  public function ajax_handler()
151
  {
152
+ wbcr_factory_templates_101_check_license($this->plugin);
153
  }
154
 
155
  /**
159
  {
160
  ?>
161
  <div id="wcl-license-wrapper"
162
+ data-loader="<?php echo FACTORY_TEMPLATES_101_URL . '/assets/img/loader.gif'; ?>"
163
  data-plugin-name="<?php echo esc_attr($this->plugin_name); ?>"
164
  data-nonce="<?php echo wp_create_nonce("clearfy_activate_license_for_{$this->plugin_name}") ?>">
165
  <?php $this->show_license_form(); ?>
265
  if( $this->is_premium ):
266
  ?>
267
  <p style="margin-top: 10px;">
268
+ <?php printf(__('<a href="%s" target="_blank" rel="noopener">Lean more</a> about the premium version and get the license key to activate it now!', 'wbcr_factory_templates_101'), $this->plugin->get_support()->get_pricing_url(true, 'license_page')); ?>
269
  </p>
270
  <?php else: ?>
271
  <p style="margin-top: 10px;">
272
+ <?php printf(__('Can’t find your key? Go to <a href="%s" target="_blank" rel="noopener">this page</a> and login using the e-mail address associated with your purchase.', 'wbcr_factory_templates_101'), $this->plugin->get_support()->get_contacts_url(true, 'license_page')) ?>
273
  </p>
274
  <?php endif;
275
  }
281
  {
282
  ?>
283
  <div id="license-manager"
284
+ class="factory-bootstrap-449 onp-page-wrap <?= $this->get_license_type() ?>-license-manager-content">
285
  <div>
286
+ <h3><?php printf(__('Activate %s', 'wbcr_factory_templates_101'), $this->plan_name) ?></h3>
287
  <?php echo $this->get_plan_description() ?>
288
  </div>
289
  <br>
290
  <?php if( is_wp_error($notice) ) : ?>
291
  <div class="license-message <?= $this->get_license_type() ?>-license-message">
292
  <div class="alert <?php echo esc_attr($notice->get_error_code()); ?>">
293
+ <h4 class="alert-heading"><?php _e($notice->get_error_message(), 'wbcr_factory_templates_101') ?></h4>
294
  </div>
295
  </div>
296
  <?php endif; ?>
300
  <a href="<?php echo $this->plugin->get_support()->get_pricing_url(true, 'license_page'); ?>"
301
  class="purchase-premium" target="_blank" rel="noopener">
302
  <span class="btn btn-gold btn-inner-wrap">
303
+ <?php _e('Upgrade to Premium', 'wbcr_factory_templates_101') ?>
304
  </span>
305
  </a>
306
+ <p><?php printf(__('Your current license for %1$s:', 'wbcr_factory_templates_101'), $this->plugin->getPluginTitle()) ?></p>
307
  <?php endif; ?>
308
  <div class="license-details-block <?= $this->get_license_type() ?>-details-block">
309
  <?php if( $this->is_premium ): ?>
310
  <a data-action="deactivate" href="#"
311
  class="btn btn-default btn-small license-delete-button wcl-control-btn">
312
+ <?php _e('Delete Key', 'wbcr_factory_templates_101') ?>
313
  </a>
314
  <a data-action="sync" href="#"
315
  class="btn btn-default btn-small license-synchronization-button wcl-control-btn">
316
+ <?php _e('Synchronization', 'wbcr_factory_templates_101') ?>
317
  </a>
318
  <?php endif; ?>
319
  <h3>
332
  <?php endif; ?>
333
  <div class="license-key-description">
334
  <?php if( !$this->is_premium ): ?>
335
+ <p><?php _e('Public License is a GPLv3 compatible license allowing you to change and use this version of the plugin for free. Please keep in mind this license covers only free edition of the plugin. Premium versions are distributed with other type of a license.', 'wbcr_factory_templates_101') ?></p>
336
  <?php else: ?>
337
+ <p><?php _e('Сommercial license, only to the premium add-on to this free plugin. You cannot distribute or modify the premium add-on. But free plugin is a GPLv3 compatible license allowing you to change and use this version of the plugin for free.', 'wbcr_factory_templates_101') ?></p>
338
  <?php endif; ?>
339
  <?php if( $this->is_premium && $this->premium_has_subscription ): ?>
340
  <p class="activate-trial-hint">
341
+ <?php _e('You use a paid subscription for the plugin updates. In case you don’t want to receive paid updates, please, click <a data-action="unsubscribe" class="wcl-control-btn" href="#">cancel subscription</a>', 'wbcr_factory_templates_101') ?>
342
  </p>
343
  <?php endif; ?>
344
 
345
  <?php if( $this->get_license_type() == 'trial' ): ?>
346
  <p class="activate-error-hint">
347
+ <?php printf(__('Your license has expired, please extend the license to get updates and support.', 'wbcr_factory_templates_101'), '') ?>
348
  </p>
349
  <?php endif; ?>
350
  </div>
352
  <tr>
353
  <!--<td class="license-param license-param-domain">
354
  <span class="license-value"><?php echo esc_attr($_SERVER['SERVER_NAME']); ?></span>
355
+ <span class="license-value-name"><?php _e('domain', 'wbcr_factory_templates_101') ?></span>
356
  </td>-->
357
  <td class="license-param license-param-days">
358
  <span class="license-value"><?= $this->get_plan() ?></span>
359
+ <span class="license-value-name"><?php _e('plan', 'wbcr_factory_templates_101') ?></span>
360
  </td>
361
  <?php if( $this->is_premium ) : ?>
362
  <td class="license-param license-param-sites">
363
  <span class="license-value">
364
  <?php echo esc_attr($this->premium_license->get_count_active_sites()); ?>
365
+ <?php _e('of', 'wbcr_factory_templates_101') ?>
366
  <?php echo esc_attr($this->premium_license->get_sites_quota()); ?></span>
367
+ <span class="license-value-name"><?php _e('active sites', 'wbcr_factory_templates_101') ?></span>
368
  </td>
369
  <?php endif; ?>
370
  <td class="license-param license-param-version">
374
  <?php if( $this->is_premium ): ?>
375
  <td class="license-param license-param-days">
376
  <?php if( $this->get_license_type() == 'trial' ): ?>
377
+ <span class="license-value"><?php _e('EXPIRED!', 'wbcr_factory_templates_101') ?></span>
378
+ <span class="license-value-name"><?php _e('please update the key', 'wbcr_factory_templates_101') ?></span>
379
  <?php else: ?>
380
  <span class="license-value">
381
  <?php
385
  echo $this->get_expiration_days();
386
  }
387
  ?>
388
+ <small> <?php _e('day(s)', 'wbcr_factory_templates_101') ?></small>
389
  </span>
390
+ <span class="license-value-name"><?php _e('remained', 'wbcr_factory_templates_101') ?></span>
391
  <?php endif; ?>
392
  </td>
393
  <?php endif; ?>
398
  <div class="license-input">
399
  <form action="" method="post">
400
  <?php if($this->is_premium): ?>
401
+ <p><?php _e('Have a key to activate the premium version? Paste it here:', 'wbcr_factory_templates_101') ?><p>
402
  <?php else: ?>
403
+ <p><?php _e('Have a key to activate the plugin? Paste it here:', 'wbcr_factory_templates_101') ?>
404
  <p>
405
  <?php endif; ?>
406
  <button data-action="activate" class="btn btn-default wcl-control-btn" type="button"
407
  id="license-submit">
408
+ <?php _e('Submit Key', 'wbcr_factory_templates_101') ?>
409
  </button>
410
  <div class="license-key-wrap">
411
  <input type="text" id="license-key" name="licensekey" value="" class="form-control"/>
libs/factory/templates/pages/class-page-more-features.php ADDED
@@ -0,0 +1,176 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
+
5
+ /**
6
+ * The page Settings.
7
+ *
8
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
9
+ * @since 1.0.1
10
+ * @package clearfy
11
+ * @copyright (c) 2018, Webcraftic Ltd
12
+ *
13
+ */
14
+
15
+ // Exit if accessed directly
16
+ if( !defined('ABSPATH') ) {
17
+ exit;
18
+ }
19
+
20
+
21
+ class MoreFeatures extends \WBCR\Factory_Templates_101\Impressive {
22
+
23
+ /**
24
+ * {@inheritDoc}
25
+ *
26
+ * @var string
27
+ */
28
+ public $id = "more_features";
29
+
30
+ /**
31
+ * {@inheritDoc}
32
+ *
33
+ * @var string
34
+ */
35
+ public $page_menu_dashicon = 'dashicons-star-filled wbcr-factory-orange-color';
36
+
37
+ /**
38
+ * {@inheritDoc}
39
+ *
40
+ * @var string
41
+ */
42
+ public $page_menu_position = 5;
43
+
44
+ /**
45
+ * {@inheritDoc}
46
+ *
47
+ * @var string
48
+ */
49
+ public $type = 'page';
50
+
51
+ /**
52
+ * {@inheritDoc}
53
+ *
54
+ * @var bool
55
+ */
56
+ public $available_for_multisite = true;
57
+
58
+ /**
59
+ * {@inheritDoc}
60
+ *
61
+ * @since 2.0.6 - добавлен
62
+ * @var bool
63
+ */
64
+ public $internal = true;
65
+
66
+ public function __construct(Wbcr_Factory449_Plugin $plugin)
67
+ {
68
+ $this->menu_title = __('More features (<b>free</b>)', 'wbcr_factory_templates_101');
69
+
70
+ parent::__construct($plugin);
71
+
72
+ $this->plugin = $plugin;
73
+ }
74
+
75
+ /**
76
+ * {@inheritDoc}
77
+ *
78
+ * @return string
79
+ */
80
+ public function getPageTitle()
81
+ {
82
+ return __('More features', 'wbcr_factory_templates_101');
83
+ }
84
+
85
+ /**
86
+ * {@inheritDoc}
87
+ *
88
+ * @return void
89
+ */
90
+ public function showPageContent()
91
+ {
92
+ ?>
93
+ <div class="row">
94
+ <div class="col-sm-4">
95
+ <div class="wbcr-factory-feature-box">
96
+ <span class="dashicons dashicons-yes"></span>
97
+ <h3><?php _e('Code cleaning', 'wbcr_factory_templates_101') ?></h3>
98
+ <p><?php _e('Clears the source code of the page from unused code.', 'wbcr_factory_templates_101') ?></p>
99
+ </div>
100
+ </div>
101
+ <div class="col-sm-4">
102
+ <div class="wbcr-factory-feature-box">
103
+ <span class="dashicons dashicons-chart-bar"></span>
104
+ <h3><?php _e('Improve SEO', 'wbcr_factory_templates_101') ?></h3>
105
+ <p><?php _e('Removes duplicate pages, closes external links, changes the headers of the server.', 'wbcr_factory_templates_101') ?></p>
106
+ </div>
107
+ </div>
108
+ <div class="col-sm-4">
109
+ <div class="wbcr-factory-feature-box">
110
+ <span class="dashicons dashicons-shield-alt"></span>
111
+ <h3><?php _e('Site protection', 'wbcr_factory_templates_101') ?></h3>
112
+ <p><?php _e('Enables and disables features that improve the protection of your site.', 'wbcr_factory_templates_101') ?></p>
113
+ </div>
114
+ </div>
115
+ <div class="col-sm-4">
116
+ <div class="wbcr-factory-feature-box">
117
+ <span class="dashicons dashicons-welcome-comments"></span>
118
+ <h3><?php _e('Disable comments', 'wbcr_factory_templates_101') ?></h3>
119
+ <p><?php _e('Disables comments on the entire site or on specific pages.', 'wbcr_factory_templates_101') ?></p>
120
+ </div>
121
+ </div>
122
+ <div class="col-sm-4">
123
+ <div class="wbcr-factory-feature-box">
124
+ <span class="dashicons dashicons-update"></span>
125
+ <h3><?php _e('Manage updates', 'wbcr_factory_templates_101') ?></h3>
126
+ <p><?php _e('Enables or disables automatically updates for plugins, themes and core. It is also possible
127
+ to disable all updates.', 'wbcr_factory_templates_101') ?></p>
128
+ </div>
129
+ </div>
130
+ <div class="col-sm-4">
131
+ <div class="wbcr-factory-feature-box">
132
+ <span class="dashicons dashicons-admin-plugins"></span>
133
+ <h3><?php _e('Manage widgets', 'wbcr_factory_templates_101') ?></h3>
134
+ <p><?php _e('Allows you to remove unused widgets.', 'wbcr_factory_templates_101') ?></p>
135
+ </div>
136
+ </div>
137
+ <div class="col-sm-4">
138
+ <div class="wbcr-factory-feature-box">
139
+ <span class="dashicons dashicons-dashboard"></span>
140
+ <h3><?php _e('Speed Optimization', 'wbcr_factory_templates_101') ?></h3>
141
+ <p><?php _e('Increases performance by disabling unused functions and reducing the number of requests.', 'wbcr_factory_templates_101') ?></p>
142
+ </div>
143
+ </div>
144
+ <div class="col-sm-4">
145
+ <div class="wbcr-factory-feature-box">
146
+ <span class="dashicons dashicons-visibility"></span>
147
+ <h3><?php _e('Site privacy', 'wbcr_factory_templates_101') ?></h3>
148
+ <p><?php _e('Allows you to hide the version of the site and plugins. Allows you to hide your
149
+ WordPress.', 'wbcr_factory_templates_101') ?></p>
150
+ </div>
151
+ </div>
152
+ <div class="col-sm-4">
153
+ <div class="wbcr-factory-feature-box">
154
+ <span class="dashicons dashicons-admin-settings"></span>
155
+ <h3><?php _e('Easy setup', 'wbcr_factory_templates_101') ?></h3>
156
+ <p><?php _e('In quick mode, you can easily configure the plugin according to your needs.', 'wbcr_factory_templates_101') ?></p>
157
+ </div>
158
+ </div>
159
+ </div>
160
+ <div class="wbcr-factory-buttons-wrap">
161
+ <?php
162
+ $url = 'https://clearfy.pro';
163
+
164
+ if( get_locale() == 'ru_RU' ) {
165
+ $url = 'https://ru.clearfy.pro';
166
+ }
167
+ $url .= '?utm_source=wordpress.org&utm_campaign=' . $this->plugin->getPluginName();
168
+ ?>
169
+ <a href="<?= $url ?>" class="wbcr-factory-premium-button" target="_blank">
170
+ <?php _e('Get the ultimate plugin 100% FREE', 'wbcr_factory_templates_101') ?>
171
+ </a>
172
+ </div>
173
+ <?php
174
+ }
175
+ }
176
+
libs/factory/{clearfy → templates}/pages/class-page-setup.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\FactoryClearfy240\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
@@ -10,15 +10,15 @@ if( !defined('ABSPATH') ) {
10
  /**
11
  * Класс страницы, которая реализует функции мастера установки.
12
  *
13
- * Этот класс унаследован от стандартного шаблона страницы \Wbcr_FactoryPages447_ImpressiveThemplate,
14
  * поэтому все его инструменты могут быть применены и в этом классе. Но вы должны учитывать, что
15
  * поведение экшенов страницы было изменено. В данной реализации экшены используется для пагинации шагов.
16
  *
17
- * @package WBCR\FactoryClearfy240\Pages
18
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @since 2.2.2
20
  */
21
- class Setup extends \Wbcr_FactoryPages447_ImpressiveThemplate {
22
 
23
  const DEFAULT_STEP = 'step0';
24
 
@@ -68,20 +68,20 @@ class Setup extends \Wbcr_FactoryPages447_ImpressiveThemplate {
68
  private $steps = [];
69
 
70
  /**
71
- * @param \Wbcr_Factory448_Plugin $plugin
72
  */
73
- public function __construct(\Wbcr_Factory448_Plugin $plugin)
74
  {
75
  $this->id = 'setup';
76
 
77
- $this->menu_title = __('Setup master', 'wbcr_factory_clearfy_240');
78
- $this->page_menu_short_description = __('Setup master', 'wbcr_factory_clearfy_240');
79
  parent::__construct($plugin);
80
  }
81
 
82
  public function getPageTitle()
83
  {
84
- return __('Setup', 'wbcr_factory_clearfy_240');
85
  }
86
 
87
  public function get_close_wizard_url()
@@ -135,18 +135,18 @@ class Setup extends \Wbcr_FactoryPages447_ImpressiveThemplate {
135
  /**
136
  * Requests assets (js and css) for the page.
137
  *
138
- * @param \Wbcr_Factory448_ScriptList $scripts
139
- * @param \Wbcr_Factory448_StyleList $styles
140
  *
141
  * @return void
142
- * @see Wbcr_FactoryPages447_AdminPage
143
  *
144
  */
145
  public function assets($scripts, $styles)
146
  {
147
  parent::assets($scripts, $styles);
148
 
149
- $this->styles->add(FACTORY_CLEARFY_240_URL . '/assets/css/page-setup.css');
150
 
151
  // Require step assets
152
  if( isset($_GET['action']) && false !== strpos($_GET['action'], 'step') && isset($this->steps[$_GET['action']]) ) {
@@ -163,8 +163,8 @@ class Setup extends \Wbcr_FactoryPages447_ImpressiveThemplate {
163
  protected function showPage($content = null)
164
  {
165
  ?>
166
- <div class="w-factory-clearfy-240-setup">
167
- <ol class="w-factory-clearfy-240-setup-steps">
168
  <?php foreach($this->steps as $step): ?>
169
  <?php if( self::DEFAULT_STEP === $step->get_id() ) {
170
  continue;
@@ -172,11 +172,11 @@ class Setup extends \Wbcr_FactoryPages447_ImpressiveThemplate {
172
  <li <?php if($this->current_step === $step->get_id()): ?>class="active"<?php endif; ?>><?php echo $step->get_title(); ?></li>
173
  <?php endforeach; ?>
174
  </ol>
175
- <div class="w-factory-clearfy-240-setup-content">
176
  <?php echo $content; ?>
177
  </div>
178
- <a class="w-factory-clearfy-240-setup-footer-links" href="<?php echo esc_url($this->get_close_wizard_url()); ?>">
179
- <?php _e('Not now', 'wbcr_factory_clearfy_240') ?>
180
  </a>
181
  </div>
182
  <?php
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
 
5
  // Exit if accessed directly
6
  if( !defined('ABSPATH') ) {
10
  /**
11
  * Класс страницы, которая реализует функции мастера установки.
12
  *
13
+ * Этот класс унаследован от стандартного шаблона страницы \Wbcr_FactoryPages448_ImpressiveThemplate,
14
  * поэтому все его инструменты могут быть применены и в этом классе. Но вы должны учитывать, что
15
  * поведение экшенов страницы было изменено. В данной реализации экшены используется для пагинации шагов.
16
  *
17
+ * @package WBCR\Factory_Templates_101\Pages
18
  * @author Alex Kovalev <alex.kovalevv@gmail.com>, Github: https://github.com/alexkovalevv
19
  * @since 2.2.2
20
  */
21
+ class Setup extends \WBCR\Factory_Templates_101\Impressive {
22
 
23
  const DEFAULT_STEP = 'step0';
24
 
68
  private $steps = [];
69
 
70
  /**
71
+ * @param \Wbcr_Factory449_Plugin $plugin
72
  */
73
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
74
  {
75
  $this->id = 'setup';
76
 
77
+ $this->menu_title = __('Setup master', 'wbcr_factory_templates_101');
78
+ $this->page_menu_short_description = __('Setup master', 'wbcr_factory_templates_101');
79
  parent::__construct($plugin);
80
  }
81
 
82
  public function getPageTitle()
83
  {
84
+ return __('Setup', 'wbcr_factory_templates_101');
85
  }
86
 
87
  public function get_close_wizard_url()
135
  /**
136
  * Requests assets (js and css) for the page.
137
  *
138
+ * @param \Wbcr_Factory449_ScriptList $scripts
139
+ * @param \Wbcr_Factory449_StyleList $styles
140
  *
141
  * @return void
142
+ * @see Wbcr_FactoryPages448_AdminPage
143
  *
144
  */
145
  public function assets($scripts, $styles)
146
  {
147
  parent::assets($scripts, $styles);
148
 
149
+ $this->styles->add(FACTORY_TEMPLATES_101_URL . '/assets/css/page-setup.css');
150
 
151
  // Require step assets
152
  if( isset($_GET['action']) && false !== strpos($_GET['action'], 'step') && isset($this->steps[$_GET['action']]) ) {
163
  protected function showPage($content = null)
164
  {
165
  ?>
166
+ <div class="w-factory-templates-101-setup">
167
+ <ol class="w-factory-templates-101-setup-steps">
168
  <?php foreach($this->steps as $step): ?>
169
  <?php if( self::DEFAULT_STEP === $step->get_id() ) {
170
  continue;
172
  <li <?php if($this->current_step === $step->get_id()): ?>class="active"<?php endif; ?>><?php echo $step->get_title(); ?></li>
173
  <?php endforeach; ?>
174
  </ol>
175
+ <div class="w-factory-templates-101-setup-content">
176
  <?php echo $content; ?>
177
  </div>
178
+ <a class="w-factory-templates-101-setup-footer-links" href="<?php echo esc_url($this->get_close_wizard_url()); ?>">
179
+ <?php _e('Not now', 'wbcr_factory_templates_101') ?>
180
  </a>
181
  </div>
182
  <?php
libs/factory/{clearfy → templates}/pages/class-pages-components.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\FactoryClearfy240\Pages;
4
 
5
  /**
6
  * This file is the add-ons page.
@@ -16,7 +16,7 @@ if( !defined('ABSPATH') ) {
16
  exit;
17
  }
18
 
19
- class Components extends \Wbcr_FactoryClearfy240_PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
@@ -24,7 +24,7 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
- * @see FactoryPages447_AdminPage
28
  *
29
  * @var string
30
  */
@@ -41,12 +41,12 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
41
  public $available_for_multisite = true;
42
 
43
  /**
44
- * @param \Wbcr_Factory448_Plugin $plugin
45
  */
46
- public function __construct(\Wbcr_Factory448_Plugin $plugin)
47
  {
48
- $this->menu_title = __('Components', 'wbcr_factory_clearfy_240');
49
- $this->page_menu_short_description = __('More features for plugin', 'wbcr_factory_clearfy_240');
50
 
51
  parent::__construct($plugin);
52
 
@@ -58,18 +58,18 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
58
  *
59
  * @return void
60
  * @since 1.0.0
61
- * @see FactoryPages447_AdminPage
62
  *
63
  */
64
  public function assets($scripts, $styles)
65
  {
66
  parent::assets($scripts, $styles);
67
 
68
- $this->styles->add(FACTORY_CLEARFY_240_URL . '/assets/css/components.css');
69
 
70
  /**
71
- * @param \Wbcr_Factory448_StyleList $styles
72
- * @param \Wbcr_Factory448_ScriptList $scripts
73
  * @since 1.4.0
74
  *
75
  */
@@ -80,10 +80,10 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
80
  * We register notifications for some actions
81
  *
82
  * @param $notices
83
- * @param \Wbcr_Factory448_Plugin $plugin
84
  *
85
  * @return array
86
- * @see libs\factory\pages\themplates\FactoryPages447_ImpressiveThemplate
87
  */
88
  public function getActionNotices($notices)
89
  {
@@ -92,7 +92,7 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
92
  'wbcr-force-update-components-success' => 1
93
  ],
94
  'type' => 'success',
95
- 'message' => __('Components have been successfully updated to the latest version.', 'wbcr_factory_clearfy_240')
96
  ];
97
 
98
  $notices[] = [
@@ -100,7 +100,7 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
100
  'wbcr-force-update-components-error' => 'inactive_licence'
101
  ],
102
  'type' => 'danger',
103
- 'message' => __('To use premium components, you need activate a license!', 'wbcr_factory_clearfy_240') . '<a href="admin.php?page=license-wbcr_clearfy" class="btn btn-gold">' . __('Activate license', 'wbcr_factory_clearfy_240') . '</a>'
104
  ];
105
 
106
  $notices[] = [
@@ -173,12 +173,12 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
173
  $components = apply_filters('wbcr/clearfy/components/items_list', $components);
174
 
175
  ?>
176
- <div class="wbcr-factory-page-group-header"><?php _e('<strong>Plugin Components</strong>.', 'wbcr_factory_clearfy_240') ?>
177
  <p>
178
- <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'wbcr_factory_clearfy_240') ?>
179
  </p>
180
  </div>
181
- <div class="wbc-factory-clearfy-240-components">
182
  <?php
183
  /**
184
  * @since 1.4.0
@@ -229,7 +229,7 @@ class Components extends \Wbcr_FactoryClearfy240_PageBase {
229
  <div class="plugin-card-bottom">
230
  <?php if( !(isset($component['disable_button']) && $component['disable_button']) ): ?>
231
  <?php if( 'premium' === $component['build'] && !($this->plugin->premium->is_activate() && $this->plugin->premium->is_install_package()) ): ?>
232
- <a target="_blank" href="<?php echo esc_url($component['url']) ?>" class="button button-default install-now"><?php _e('Read more', 'wbcr_factory_clearfy_240'); ?></a>
233
  <?php else: ?>
234
  <?php $delete_button->render_button(); ?><?php $install_button->render_button(); ?>
235
  <?php endif; ?>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
 
5
  /**
6
  * This file is the add-ons page.
16
  exit;
17
  }
18
 
19
+ class Components extends \WBCR\Factory_Templates_101\Pages\PageBase {
20
 
21
  /**
22
  * The id of the page in the admin menu.
24
  * Mainly used to navigate between pages.
25
  *
26
  * @since 1.0.0
27
+ * @see FactoryPages448_AdminPage
28
  *
29
  * @var string
30
  */
41
  public $available_for_multisite = true;
42
 
43
  /**
44
+ * @param \Wbcr_Factory449_Plugin $plugin
45
  */
46
+ public function __construct(\Wbcr_Factory449_Plugin $plugin)
47
  {
48
+ $this->menu_title = __('Components', 'wbcr_factory_templates_101');
49
+ $this->page_menu_short_description = __('More features for plugin', 'wbcr_factory_templates_101');
50
 
51
  parent::__construct($plugin);
52
 
58
  *
59
  * @return void
60
  * @since 1.0.0
61
+ * @see FactoryPages448_AdminPage
62
  *
63
  */
64
  public function assets($scripts, $styles)
65
  {
66
  parent::assets($scripts, $styles);
67
 
68
+ $this->styles->add(FACTORY_TEMPLATES_101_URL . '/assets/css/components.css');
69
 
70
  /**
71
+ * @param \Wbcr_Factory449_StyleList $styles
72
+ * @param \Wbcr_Factory449_ScriptList $scripts
73
  * @since 1.4.0
74
  *
75
  */
80
  * We register notifications for some actions
81
  *
82
  * @param $notices
83
+ * @param \Wbcr_Factory449_Plugin $plugin
84
  *
85
  * @return array
86
+ * @see libs\factory\pages\themplates\FactoryPages448_ImpressiveThemplate
87
  */
88
  public function getActionNotices($notices)
89
  {
92
  'wbcr-force-update-components-success' => 1
93
  ],
94
  'type' => 'success',
95
+ 'message' => __('Components have been successfully updated to the latest version.', 'wbcr_factory_templates_101')
96
  ];
97
 
98
  $notices[] = [
100
  'wbcr-force-update-components-error' => 'inactive_licence'
101
  ],
102
  'type' => 'danger',
103
+ 'message' => __('To use premium components, you need activate a license!', 'wbcr_factory_templates_101') . '<a href="admin.php?page=license-wbcr_clearfy" class="btn btn-gold">' . __('Activate license', 'wbcr_factory_templates_101') . '</a>'
104
  ];
105
 
106
  $notices[] = [
173
  $components = apply_filters('wbcr/clearfy/components/items_list', $components);
174
 
175
  ?>
176
+ <div class="wbcr-factory-page-group-header"><?php _e('<strong>Plugin Components</strong>.', 'wbcr_factory_templates_101') ?>
177
  <p>
178
+ <?php _e('These are components of the plugin bundle. When you activate the plugin, all the components turned on by default. If you don’t need some function, you can easily turn it off on this page.', 'wbcr_factory_templates_101') ?>
179
  </p>
180
  </div>
181
+ <div class="wbc-factory-templates-101-components">
182
  <?php
183
  /**
184
  * @since 1.4.0
229
  <div class="plugin-card-bottom">
230
  <?php if( !(isset($component['disable_button']) && $component['disable_button']) ): ?>
231
  <?php if( 'premium' === $component['build'] && !($this->plugin->premium->is_activate() && $this->plugin->premium->is_install_package()) ): ?>
232
+ <a target="_blank" href="<?php echo esc_url($component['url']) ?>" class="button button-default install-now"><?php _e('Read more', 'wbcr_factory_templates_101'); ?></a>
233
  <?php else: ?>
234
  <?php $delete_button->render_button(); ?><?php $install_button->render_button(); ?>
235
  <?php endif; ?>
libs/factory/{clearfy → templates}/pages/index.php RENAMED
File without changes
libs/factory/{clearfy → templates}/pages/setup-parts/class-step-custom.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\FactoryClearfy240\Pages;
4
 
5
  /**
6
  * Step
@@ -18,10 +18,10 @@ class Step_Custom extends Step {
18
  public function render_button($continue = true, $skip = false, $custom_title = null, $align = 'right')
19
  {
20
  $this->set_button_handler();
21
- $button_title = !empty($custom_title) ? $custom_title : __('Continue', 'wbcr_factory_clearfy_240');
22
 
23
  if( !$this->get_next_id() ) {
24
- $button_title = __('Finish', 'wbcr_factory_clearfy_240');
25
  }
26
 
27
  if( !in_array($align, ['center', 'left', 'right']) ) {
@@ -29,13 +29,13 @@ class Step_Custom extends Step {
29
  }
30
 
31
  ?>
32
- <form method="post" id="w-factory-clearfy-240__setup-form-<?php echo $this->get_id() ?>" class="form-horizontal">
33
- <div class="w-factory-clearfy-240__form-buttons" style="text-align: <?php echo esc_attr($align); ?>">
34
  <?php if( $skip ): ?>
35
- <input type="submit" name="skip_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-clearfy-240__skip-button" value="<?php _e('Skip', 'wbcr_factory_clearfy_240') ?>">
36
  <?php endif; ?>
37
  <?php if( $continue ): ?>
38
- <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-clearfy-240__continue-button" value="<?php echo $button_title; ?>">
39
  <?php endif; ?>
40
  </div>
41
  </form>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
 
5
  /**
6
  * Step
18
  public function render_button($continue = true, $skip = false, $custom_title = null, $align = 'right')
19
  {
20
  $this->set_button_handler();
21
+ $button_title = !empty($custom_title) ? $custom_title : __('Continue', 'wbcr_factory_templates_101');
22
 
23
  if( !$this->get_next_id() ) {
24
+ $button_title = __('Finish', 'wbcr_factory_templates_101');
25
  }
26
 
27
  if( !in_array($align, ['center', 'left', 'right']) ) {
29
  }
30
 
31
  ?>
32
+ <form method="post" id="w-factory-templates-101__setup-form-<?php echo $this->get_id() ?>" class="form-horizontal">
33
+ <div class="w-factory-templates-101__form-buttons" style="text-align: <?php echo esc_attr($align); ?>">
34
  <?php if( $skip ): ?>
35
+ <input type="submit" name="skip_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-101__skip-button" value="<?php _e('Skip', 'wbcr_factory_templates_101') ?>">
36
  <?php endif; ?>
37
  <?php if( $continue ): ?>
38
+ <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-101__continue-button" value="<?php echo $button_title; ?>">
39
  <?php endif; ?>
40
  </div>
41
  </form>
libs/factory/{clearfy → templates}/pages/setup-parts/class-step-form.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\FactoryClearfy240\Pages;
4
 
5
  /**
6
  * Step
@@ -10,7 +10,7 @@ namespace WBCR\FactoryClearfy240\Pages;
10
  */
11
  class Step_Form extends Step {
12
 
13
- public function __construct(\WBCR\FactoryClearfy240\Pages\Setup $page)
14
  {
15
  parent::__construct($page);
16
  }
@@ -33,12 +33,12 @@ class Step_Form extends Step {
33
  protected function instance_form($options)
34
  {
35
 
36
- $form = new \Wbcr_FactoryForms445_Form([
37
  'scope' => rtrim($this->plugin->getPrefix(), '_'),
38
  'name' => $this->page->getResultId() . "-options-" . $this->get_id()
39
  ], $this->plugin);
40
 
41
- $form->setProvider(new \Wbcr_FactoryForms445_OptionsValueProvider($this->plugin));
42
 
43
  $form_options = [];
44
 
@@ -83,20 +83,20 @@ class Step_Form extends Step {
83
  return $form;
84
  }
85
 
86
- protected function render_form(\Wbcr_FactoryForms445_Form $form)
87
  {
88
  ?>
89
- <form method="post" id="w-factory-clearfy-240__setup-form-<?php echo $this->get_id() ?>" class="w-factory-clearfy-240__setup-form form-horizontal">
90
  <?php $form->html(); ?>
91
- <div class="w-factory-clearfy-240__form-buttons">
92
- <!--<input type="submit" name="skip_button_<?php /*echo $this->get_id() */ ?>" class="button-primary button button-large w-factory-clearfy-240__skip-button" value="<?php /*_e('Skip', 'wbcr_factory_clearfy_240') */ ?>">-->
93
- <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-clearfy-240__continue-button" value="<?php _e('Continue', 'wbcr_factory_clearfy_240') ?>">
94
  </div>
95
  </form>
96
  <?php
97
  }
98
 
99
- protected function set_form_handler(\Wbcr_FactoryForms445_Form $form)
100
  {
101
  if( isset($_POST['continue_button_' . $this->get_id()]) ) {
102
  $form->save();
@@ -123,8 +123,8 @@ class Step_Form extends Step {
123
  $form = $this->instance_form($this->get_form_options());
124
  ?>
125
  <div id="WBCR" class="wrap">
126
- <div class="wbcr-factory-pages-447-impressive-page-template factory-bootstrap-448 factory-fontawesome-000">
127
- <div class="w-factory-clearfy-240-setup__inner-wrap">
128
  <h3><?php echo $this->get_title(); ?></h3>
129
  <p style="text-align: left;"><?php echo $this->get_form_description(); ?></p>
130
  </div>
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
 
5
  /**
6
  * Step
10
  */
11
  class Step_Form extends Step {
12
 
13
+ public function __construct(\WBCR\Factory_Templates_101\Pages\Setup $page)
14
  {
15
  parent::__construct($page);
16
  }
33
  protected function instance_form($options)
34
  {
35
 
36
+ $form = new \Wbcr_FactoryForms446_Form([
37
  'scope' => rtrim($this->plugin->getPrefix(), '_'),
38
  'name' => $this->page->getResultId() . "-options-" . $this->get_id()
39
  ], $this->plugin);
40
 
41
+ $form->setProvider(new \Wbcr_FactoryForms446_OptionsValueProvider($this->plugin));
42
 
43
  $form_options = [];
44
 
83
  return $form;
84
  }
85
 
86
+ protected function render_form(\Wbcr_FactoryForms446_Form $form)
87
  {
88
  ?>
89
+ <form method="post" id="w-factory-templates-101__setup-form-<?php echo $this->get_id() ?>" class="w-factory-templates-101__setup-form form-horizontal">
90
  <?php $form->html(); ?>
91
+ <div class="w-factory-templates-101__form-buttons">
92
+ <!--<input type="submit" name="skip_button_<?php /*echo $this->get_id() */ ?>" class="button-primary button button-large w-factory-templates-101__skip-button" value="<?php /*_e('Skip', 'wbcr_factory_templates_101') */ ?>">-->
93
+ <input type="submit" name="continue_button_<?php echo $this->get_id() ?>" class="button-primary button button-large w-factory-templates-101__continue-button" value="<?php _e('Continue', 'wbcr_factory_templates_101') ?>">
94
  </div>
95
  </form>
96
  <?php
97
  }
98
 
99
+ protected function set_form_handler(\Wbcr_FactoryForms446_Form $form)
100
  {
101
  if( isset($_POST['continue_button_' . $this->get_id()]) ) {
102
  $form->save();
123
  $form = $this->instance_form($this->get_form_options());
124
  ?>
125
  <div id="WBCR" class="wrap">
126
+ <div class="wbcr-factory-templates-101-impressive-page-template factory-bootstrap-449 factory-fontawesome-000">
127
+ <div class="w-factory-templates-101-setup__inner-wrap">
128
  <h3><?php echo $this->get_title(); ?></h3>
129
  <p style="text-align: left;"><?php echo $this->get_form_description(); ?></p>
130
  </div>
libs/factory/{clearfy → templates}/pages/setup-parts/class-step.php RENAMED
@@ -1,6 +1,6 @@
1
  <?php
2
 
3
- namespace WBCR\FactoryClearfy240\Pages;
4
 
5
  /**
6
  * Step
@@ -16,16 +16,16 @@ abstract class Step {
16
  protected $next_id = false;
17
 
18
  /**
19
- * @var \WBCR\FactoryClearfy240\Pages\Setup
20
  */
21
  protected $page;
22
 
23
  /**
24
- * @var \Wbcr_Factory448_Plugin
25
  */
26
  protected $plugin;
27
 
28
- public function __construct(\WBCR\FactoryClearfy240\Pages\Setup $page)
29
  {
30
  $this->page = $page;
31
  $this->plugin = $page->plugin;
@@ -51,7 +51,7 @@ abstract class Step {
51
  *
52
  * @return void
53
  * @since 1.0.0
54
- * @see FactoryPages447_AdminPage
55
  *
56
  */
57
  public function assets($scripts, $styles)
1
  <?php
2
 
3
+ namespace WBCR\Factory_Templates_101\Pages;
4
 
5
  /**
6
  * Step
16
  protected $next_id = false;
17
 
18
  /**
19
+ * @var \WBCR\Factory_Templates_101\Pages\Setup
20
  */
21
  protected $page;
22
 
23
  /**
24
+ * @var \Wbcr_Factory449_Plugin
25
  */
26
  protected $plugin;
27
 
28
+ public function __construct(\WBCR\Factory_Templates_101\Pages\Setup $page)
29
  {
30
  $this->page = $page;
31
  $this->plugin = $page->plugin;
51
  *
52
  * @return void
53
  * @since 1.0.0
54
+ * @see FactoryPages448_AdminPage
55
  *
56
  */
57
  public function assets($scripts, $styles)
libs/factory/templates/pages/templates/impressive-lite/assets/css/impressive-lite.page.template.css ADDED
@@ -0,0 +1,612 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * General styles
3
+ * @author Alex Kovalev <alex.kovalevv@gmail.com>
4
+ * @copyright Alex Kovalev
5
+ * @copyright Artem Prihodko
6
+ */
7
+ #wpcontent {
8
+ padding-left: 0;
9
+ }
10
+ #wpfooter,
11
+ #wpbody {
12
+ background-color: #32373c;
13
+ }
14
+ #wpfooter {
15
+ color: #f7f7f7;
16
+ }
17
+ #WBCR.wrap,
18
+ #WBCR .wrap {
19
+ margin: 0;
20
+ }
21
+ #WBCR .updated,
22
+ #WBCR .notice,
23
+ #WBCR .error,
24
+ #WBCR .wdan-notices-compact-panel {
25
+ display: none !important;
26
+ }
27
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template {
28
+ position: relative;
29
+ background-color: #32373c;
30
+ /**
31
+ Content sections
32
+ */
33
+ /**
34
+ Widget in the sidebar of the plugin
35
+ */
36
+ }
37
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .row {
38
+ margin: 0 10px;
39
+ }
40
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-color-grey {
41
+ color: #9a9a9a;
42
+ }
43
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-orange-color {
44
+ color: #ffc107;
45
+ }
46
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-light-orange-color {
47
+ color: #ffeb3b;
48
+ }
49
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .form-group {
50
+ padding: 0 20px;
51
+ }
52
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .form-group label {
53
+ font-weight: normal;
54
+ }
55
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .form-horizontal .control-label {
56
+ max-width: 300px;
57
+ }
58
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .factory-control-buttons {
59
+ text-align: right;
60
+ padding-right: 20px;
61
+ }
62
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .factory-from-control-list label span {
63
+ display: inline-block;
64
+ vertical-align: bottom;
65
+ }
66
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"],
67
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .factory-from-control-list label span input[type="checkbox"]:focus {
68
+ outline: none;
69
+ }
70
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-header {
71
+ padding: 20px 20px 40px;
72
+ }
73
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-recomended-text {
74
+ display: block;
75
+ font-size: 11px;
76
+ font-weight: lighter;
77
+ color: #179347;
78
+ }
79
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-options,
80
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page {
81
+ position: relative;
82
+ overflow: hidden;
83
+ }
84
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-options:after,
85
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page:after {
86
+ display: block;
87
+ content: '';
88
+ clear: both;
89
+ }
90
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-group-header {
91
+ background: #efefef;
92
+ padding: 20px 0 10px 20px;
93
+ margin: 30px 0;
94
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
95
+ }
96
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-group-header:first-child {
97
+ margin-top: 0;
98
+ }
99
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-group-header strong {
100
+ font-size: 15px;
101
+ }
102
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-group-header p {
103
+ color: #8c8888;
104
+ font-size: 12px;
105
+ }
106
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-inner-wrap {
107
+ margin: 0 15px;
108
+ padding: 10px 0 0 0;
109
+ vertical-align: top;
110
+ background: #f7f7f7;
111
+ border-radius: 0 5px 0 0;
112
+ }
113
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-header {
114
+ display: flex;
115
+ overflow: hidden;
116
+ background-color: #32373c;
117
+ color: #fff;
118
+ border-radius: 0;
119
+ padding: 10px;
120
+ flex-direction: row;
121
+ flex-wrap: nowrap;
122
+ justify-content: space-between;
123
+ }
124
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-logo {
125
+ float: left;
126
+ padding: 15px 0;
127
+ font-size: 24px;
128
+ line-height: 30px;
129
+ font-weight: 400;
130
+ text-align: center;
131
+ color: #ccc;
132
+ padding-left: 25px;
133
+ margin-right: 10px;
134
+ }
135
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title {
136
+ display: inline-block;
137
+ vertical-align: middle;
138
+ }
139
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-header-title h2 {
140
+ font-size: 18px;
141
+ line-height: 30px;
142
+ font-weight: 300;
143
+ padding: 0 !important;
144
+ margin: 0 !important;
145
+ overflow: hidden;
146
+ white-space: nowrap;
147
+ text-overflow: ellipsis;
148
+ color: #fff;
149
+ }
150
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-page-header .wbcr-factory-control {
151
+ position: relative;
152
+ float: right;
153
+ margin: 12px;
154
+ }
155
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu {
156
+ border: 0;
157
+ padding: 0;
158
+ margin: 0 0 0 15px;
159
+ background: #32373c;
160
+ min-height: 40px;
161
+ display: flex;
162
+ font-size: 14px;
163
+ font-weight: 500;
164
+ }
165
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab:active,
166
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab:focus {
167
+ box-shadow: none;
168
+ outline: none;
169
+ }
170
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab {
171
+ background: #efefef;
172
+ color: #585858;
173
+ padding: 5px 20px 5px 10px;
174
+ margin-right: 5px !important;
175
+ text-decoration: none;
176
+ border-bottom: 1px solid rgba(50, 55, 60, 0.5);
177
+ border-radius: 5px 5px 0 0;
178
+ display: flex;
179
+ align-content: center;
180
+ justify-content: center;
181
+ align-items: center;
182
+ }
183
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab-active {
184
+ background: #f7f7f7;
185
+ border-color: #f7f7f7;
186
+ color: #222;
187
+ font-weight: bold;
188
+ z-index: 1;
189
+ }
190
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab:hover {
191
+ background: #f7f7f7;
192
+ border-color: #f7f7f7;
193
+ z-index: 1;
194
+ }
195
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab-active:hover {
196
+ font-weight: bold !important;
197
+ }
198
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab .dashicons {
199
+ display: inline-block;
200
+ font-size: 25px;
201
+ margin-right: 10px;
202
+ color: #d4d4d4;
203
+ vertical-align: sub;
204
+ }
205
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab-active .dashicons {
206
+ color: #222;
207
+ }
208
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .w-factory-templates-101-horizontal-menu__nav-tab_short-description {
209
+ color: #868686;
210
+ padding: 0;
211
+ margin: 0;
212
+ line-height: 1;
213
+ text-transform: none;
214
+ font-weight: normal;
215
+ }
216
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar {
217
+ float: left;
218
+ vertical-align: top;
219
+ width: 230px;
220
+ background: #e6e6e6;
221
+ }
222
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul {
223
+ padding: 0;
224
+ margin-bottom: 0;
225
+ margin-top: 80px;
226
+ }
227
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab {
228
+ display: block;
229
+ background: #efefef;
230
+ margin: 1px 0;
231
+ }
232
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link {
233
+ display: block;
234
+ width: 100%;
235
+ padding: 20px 20px;
236
+ font-size: 12px;
237
+ color: #585858;
238
+ text-decoration: none;
239
+ text-transform: uppercase;
240
+ text-align: left;
241
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
242
+ }
243
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__title {
244
+ display: block;
245
+ font-weight: bold;
246
+ }
247
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .wbcr-factory-tab__short-description {
248
+ display: block;
249
+ font-size: 13px;
250
+ font-weight: normal;
251
+ text-transform: none;
252
+ color: #9a9a9a;
253
+ }
254
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link .dashicons {
255
+ float: right;
256
+ color: #ccc;
257
+ }
258
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link::after {
259
+ clear: both;
260
+ }
261
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover {
262
+ background: #f7f6f6;
263
+ }
264
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:hover .dashicons {
265
+ color: #9a9a9a;
266
+ }
267
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link,
268
+ #WBCR .wbcr-factory-templates-101-impressive-lite-page-template .wbcr-factory-left-navigation-bar ul .wbcr-factory-nav-tab .wbcr-factory-tab__link:active,
269
+ #WBCR .wbcr-fact